/*****************************************************************************
Copyright: 2013
File name: main.c
Description: DSP280x的数模转换设计
Author:
Version: 1.0
Date: 2013.07.23
History: 无
*****************************************************************************/
#include "DSP280x_Device.h"
#include "DSP280x_Examples.h"
unsigned char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void init(void)
{
 EALLOW;
 EALLOW;
 GpioCtrlRegs.GPAMUX1.bit.GPIO15=0;
 GpioCtrlRegs.GPADIR.bit.GPIO15=1;
 GpioCtrlRegs.GPAMUX2.bit.GPIO27=0;
 GpioCtrlRegs.GPADIR.bit.GPIO27=1;
 GpioCtrlRegs.GPAMUX2.bit.GPIO30=0;
 GpioCtrlRegs.GPADIR.bit.GPIO30=1;
 GpioCtrlRegs.GPAMUX2.bit.GPIO31=0;
 GpioCtrlRegs.GPADIR.bit.GPIO31=1;
 EDIS;
}
void delay(int k)
{
 int i,j;
 for(i=0;i<2505;i++)
  for(j=k;j>0;j--);
}
void display(unsigned char dua)
{
 int k;
 for(k=0;k<8;k++)
 {
  GpioDataRegs.GPADAT.bit.GPIO15=0;
  GpioDataRegs.GPADAT.bit.GPIO27=(dua&0x80)>>7;
  GpioDataRegs.GPADAT.bit.GPIO15=1;
  dua=dua<<1;
 }
 GpioDataRegs.GPADAT.bit.GPIO31=0;
 GpioDataRegs.GPADAT.bit.GPIO31=1;
   
}
void displaynum(unsigned char num,unsigned char wei)
{
 display(num);
 display(wei);
}
/*************************************************
Function: AD_init()
Description: 初始化函数
Calls: NULL
Called By: main()
Table Accessed:
Table Updated:
Input:
Output:
Return:
Others:
*************************************************/
void AD_init(void)
{
 InitSysCtrl();
 InitAdc();
 AdcRegs.ADCTRL1.bit.ACQ_PS=0;//ADC的采样窗口时间,较低的采样频率和较大的采样窗口
 AdcRegs.ADCTRL1.bit.CPS=0;//核时钟预定标器,等于0,未将时钟进行2分频
 AdcRegs.ADCTRL1.bit.SEQ_CASC=1;
 AdcRegs.ADCTRL3.bit.ADCCLKPS=10;//ADC内核时钟分频器
 AdcRegs.ADCTRL3.bit.SMODE_SEL=0;
 AdcRegs.ADCMAXCONV.bit.MAX_CONV1=1;
 AdcRegs.ADCCHSELSEQ1.bit.CONV00=0;
// AdcRegs.ADCTRL2.all = 0x2000;//这一条是关键
 AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;
}

/*************************************************
Function: main()
Description: 主函数
Calls: AD_init()
Called By: NULL
Table Accessed:
Table Updated:
Input:
Output:
Return:
Others:
*************************************************/
void main(void)
{
 float adc;
 int a,b;
 AD_init();
 init();
 while(1)
 {
  adc=((float)AdcRegs.ADCRESULT0)*3.0/65520.0;
  a=((int)adc);
  b=((int)(adc*10))%10;
  displaynum(0xef,~table[a]);
  delay(10);
  displaynum(0xdf,~table[b]);
  delay(10);
  displaynum(0xbf,~table[a]);
  delay(10);
  displaynum(0x7f,~table[b]);
  delay(10);
  AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;
 }
}

DSP280x的数模转换使用的更多相关文章

  1. 【.NET 与树莓派】数模转换

    在开始之前,需要说明一对很耳熟的概念--数字信号 & 模拟信号. 这些概念的理论有些复杂,你如果相当有兴趣,可以找来有关的文献细细研究:若你不关心那是啥只想知道咋用,那就通俗但不庸俗地理解一下 ...

  2. 模数转换(A/D)和数模转换(D/A) 图示

    (从书中截图) 在时间域和频率域中示意图: 1.A/D转换 2.D/A转换

  3. (七)DAC0832 数模转换芯片的应用 以及运算放大器的学习 01

    DAC0832是8分辨率的D/A转换集成芯片.与微处理器完全兼容.这个DA芯片以其价格低廉.接口简单.转换控制容易等优点,在单片机应用系统中得到广泛的应用.D/A转换器由8位输入锁存器.8位DAC寄存 ...

  4. TPYBoard开发板ADC数模转换一: 初识ADC使用

    转载请以链接形式注明文章来源,公众号:MicroPython玩家汇 1.前言 ADC,Analog-to-DigitalConverter的缩写,指模/数转换器或者模数转换器[1].是指将连续变化的模 ...

  5. 51单片机学习笔记(清翔版)(21)——ADDA数模转换

    A:anolog模拟的         D:digital数字的 AD模拟转数字,DA数字转模拟 生活中的基本都是模拟量,如温度,可以是10℃,10.1℃等 手机的背光亮度自动调节,拿到太阳光下,亮度 ...

  6. 数模转换ADC08009应用

    #include <reg52.h> //头文件 #define uchar unsigned char //宏定义无符号字符型 #define uint unsigned int //宏 ...

  7. 【ARM】2410裸机系列-ADC数模转换

    开发环境   1.硬件平台:FS2410 2.主机:Ubuntu 12.04 ADC寄存器配置       1.初始化ADC(ADCCON) 设置预分频,预分频因子,选择A/D转换通道,并选择正常模式 ...

  8. STM32 C++编程 004 Adc (数模转换)类

    使用 C++ 语言给 STM32 编写一个 Adc 类 我使用的STM32芯片:STM32F103ZET6 我们使用的STM32库版本:V3.5.0 注意: 想学习本套 STM32 C++编程 的专栏 ...

  9. IOS开发基础知识--碎片50

      1:Masonry 2个或2个以上的控件等间隔排序 /** * 多个控件固定间隔的等间隔排列,变化的是控件的长度或者宽度值 * * @param axisType 轴线方向 * @param fi ...

随机推荐

  1. solr5.5教程-solrconfig.xml,加载schema.xml

    布署完成后,接下来要更深入的研究solr的原理和使用. 首先进入testcore这个文件夹下面,发现这个core的conf里并没有schema.xml.那么数据格式是在哪里定义的呢? 打开 solr_ ...

  2. Android手机指令操作释疑

    有人问我一个关于Android手机root与否的问题,她说明明iTools显示已取得root权限,但她就是没法在该手机上运行需要root权限的App如钛备份等等.我告诉她最好的确认方式便是以adb指令 ...

  3. Chrome不能登录和同步的解决方法

    打开 C:\Windows\System32\drivers\etc 下的 hosts文件 #SmartHosts START #Google Services START .docs.google. ...

  4. phalcon框架学习之view

    phalcon框架的view分多级:全局-控制器视图-动作视图.视图由上到下,按层级嵌套. 全局视图 默认全局视图为Views/index.html,所有的页面展示时,默认调用此页面,在这个页面中必须 ...

  5. [原]sdut2605 A^X mod P 山东省第四届ACM省赛(打表,快速幂模思想,哈希)

    本文出自:http://blog.csdn.net/svitter 题意: f(x) = K, x = 1 f(x) = (a*f(x-1) + b)%m , x > 1 求出( A^(f(1) ...

  6. Div 不换行、垂直居中等样式

    1. Div内文本过长不换行 1.1 文本不换行 超出部分显示"..." .style1 { float:left; white-space:nowrap; text-overfl ...

  7. [leetcode]_Unique Paths

    题目:有一个m * n 的方格,如下图,一个小robot希望从左上角走到右下角,共有多少种不同的路线走法. 思路: 我的错误思路:全排列,从(0,0)走到(m - 1,n - 1)共需要往下走m-1步 ...

  8. URL的语法及HTTP报文

    大多数URL方案的URL语法都建立在这个由9部分构成的通用格式上: scheme://user:password@host:port/path;params?query#frag 方案:http或者h ...

  9. MYSQL的存储引擎一般只要哪些?

    根据个人个人见解: MySQL的存储引擎(构成.安全.锁) Myisam:数据操作快速的一种引擎,支持全文检索.文件保存在数据库名称为目录名的 目录中,有3个文件,分别是表定义文件(.frm).数据文 ...

  10. ListView的几种形式

    一. ArrayAdapter ListView listView = (ListView) findViewById(R.id.list_view);//ListView的参数为id listVie ...