电压表实验(AD转换)

发布者:boyatang最新更新时间:2017-01-20 来源: eefocus关键字:电压表实验  AD转换 手机看文章 扫描二维码
随时随地手机看文章

 1 /*电压表 精确到小数点后面三位*/

 2 /*连线:电位器接IN0,AD_CS接CS0,CS1接KEY/LED_CS*/

 3 #include

 4 typedef unsigned char uchar;

 5 xdata uchar LED_CS _at_ 0x9000;

 6 xdata uchar LED_OUTSEG _at_ 0x9004;

 7 xdata uchar LED_OUTBIT _at_ 0x9002;

 8 

 9 xdata uchar AD_CS _at_ 0x8000;

10 xdata uchar AD_MODE _at_ 0x8003;

11 

12 code unsigned char LEDMAP[] = {  // 八段管显示码

13   0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07,

14   0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71

15 };

16 code unsigned char LEDWED[] = {0x20,0x10,0x08,0x04,0x02,0x01};

17 int num[6];

18 void delay(int ms)

19 {

20  int i,j;

21  for(i=0;i

22     for(j=0;j<14;j++)

23          ;

24 }

25 void adf()

26 {

27  AD_CS = 0;

28  delay(10);

29 }

30 void main()

31 {

32  int led_c=0;

33  unsigned char temp;

34  AD_MODE = 0x82;

35  AD_CS = 0;

36  while(1)

37  {

38   adf();

39   delay(10);

40   num[0] = AD_CS*5/256;

41   num[1] = AD_CS*5%256*10/256;

42   num[2] = AD_CS*5%256*10%256*10/256;

43   num[3] = AD_CS*5%256*10%256*10%256*10/256;

44   temp = LEDMAP[num[led_c]];

45   if(led_c == 0)

46            temp = temp|0x80;

47   LED_OUTBIT = LEDWED[led_c];

48   LED_OUTSEG = temp;

49   led_c = (led_c+1)%4;

50   delay(10);

51  }

52 }


关键字:电压表实验  AD转换 引用地址:电压表实验(AD转换)

上一篇:产生波形实验(DA转换)
下一篇:C51单片机中断定义

推荐阅读最新更新时间:2024-03-16 15:31

单片机技术在数据采集及监测过程中的应用
0 引言 软件方面,指令周期短,同时还具有乘除法指令,多种形式的位操作类指令,逻辑运算类指令也独具特色。通过信号调制电路,将输出电流、电压及电位信号转换成0到5V的标准信号,再通过串行A/D转换芯片ADC0834转换成数字信号供存储,以显示和打印。硬件抗干扰方面用到MAX707,对电源起到监控作用,在上电和掉电时自动复位。实时时钟方面用到DS12887新型时钟芯片,断电情况下运行十年以上不丢失数据,计秒、分、时、天、星期、日、月、年,并有闰年补偿功能,可以用二进制数码或BCD码表示时间日历和警报。软件结构设计中采用模块化程序设计,包含数字滤波,软件看门狗等软件抗干扰子程序,为恒电位仪增添了外围的智能系统,方便用户分析、处理数据,
[单片机]
单片机技术在数据采集及监测过程中的应用
PIC单片机A\D转换实验程序代码
实验目的:熟悉A/D转换 ;软件思路:选择RAO做为模拟输入通道; ; 连续转换4次再求平均值做为转换结果 ; 最后结构只取低8位 ; 结果送数码管的低3位显示 ;硬件要求:拨码开关S14第2位置ON,第1位置OFF ; 拨码开关S6全部置ON,S5第4-6位置ON,第1-3位置OFF ; 为不影响结果,其他拨码开关置OFF。 #INCLUDE P16F877a.INC ;包含芯片头文件 __CONFIG _DEBUG_OFF&_CP_ALL&_WRT_HALF&_CPD_ON&_LVP_OFF&_BODEN_OFF&_PWRTE_O
[单片机]
STC单片机AD转换程序设计
#include reg52.H #include intrins.H sfr P1_ADC_EN = 0x97; // A/D 转换功能允许寄存器 sfr ADC_CONTR = 0xC5; //A/D转换控制寄存器 sfr ADC_DATA = 0xC6; //A/D转换结果寄存器 sfr P1M0=0x91; sfr P1M1=0x92; #define uchar unsigned char ; #define uint unsigned int ; void delay(uchar delay_time) // 延时函数 { uchar n; uint m; for (n=0;n delay
[单片机]
LM331在AD转换电路中的应用
数据的采集与处理广泛地应用在自动化领域中,由于应用的场合不同,对数据采集与处理所要求的硬件也不相同.在 控制 过程中,有时要对几个 模拟 信号进行采集与处理,这些信号的采集与处理对速度要求不太高,一般采用AD574或ADC0809等芯片组成的A/D转换 电路 来实现信号的采集与模数转换,而AD574和ADC0809等A/D转换器价格较贵,线路复杂,从而提高了产品价格和项目的费用.在本文中,从实际应用出发,给出了一种应用V/F转换器LM331芯片组成的A/D转换 电路 ,V/F转换器LM331芯片能够把电压信号转换为频率信号,而且线性度好,通过计算机处理,再把频率信号转换为数字信号,就完成了A/D转换。它与AD574等电路相比,具有
[模拟电子]
MSP430常见问题之AD转换
Q1:MSP430F149 AD 的输入阻抗有多大? A1:RC 2000欧*30PF Q2:MSP430 ADC12 模块的速度? A2: ADC12 的转换速率是转换所需的ADC12CLK 以及时钟的一项功能。ADC12CLK 的近似最小值与最大值分别为500kHz 及6.5MHZ。速度最快的整个转换过程可以在17 个周期内完成(13 个周期进行转换,4 个周期进行采样及保持)。6.5MHz/17 = 382ksps。ADC12 的运行速率不能低于最小值的ADC12CLK,但在软件的控制下,采样门可以无限制保持打开状态。如欲了解有关采样与转换时间规范的更多详情,敬请参阅数据表。 Q3:用VREFON开通SD16的Vre
[单片机]
AD转换__HCS12学习笔记(3)
AD转换是非常普遍的模块了,在8位或者16位的单片机上都有应用,在HCS12系列的单片机上内置了一个AD转换器,可用于8位或者10位的AD转换,但做不了DA转换。原理很简单,就不提了。 寄存器: ATDCTL2 AD的电源开关、中断和外部触发信号。 ATDCTL3 AD转换的序列长度、结果寄存器是否采用先进先出方式以及冻结模式下的设置。 ATDCTL4 时钟频率、第二阶段采样的时间长度及AD转换的精度(8位或者10位)。 ATDCTL5 AD转换序列的类型和采样的模拟量输入通道。 ATDSTAT0 包括转换完成标志位、外部触发中断溢出标志位、先入先出模式位和转换结果标号位。 ATDTEST1 用于激活特殊通道 ATDSTAT
[单片机]
基于51单片机的自动温度测量报警系统设计
目前,无论是在工业生产中还是在科研实验中通过对温度测量来进行自动控制的设备越来越普及,应用场合也越来越多。随之而来的问题是,如何能够测得精确的温度以保证自动控制设备能够正确地发出控制指令来控制生产过程。另一方面,如果温度过高可能会对一些设备中的一些半导体元器件造成损坏。因此,对于自动高温报警的需求也在逐渐增加。本文基于以上方面的考虑,研究并设计了一种基于单片机的自动温度测量与报警系统。 1 系统硬件设计 尽管目前市场上单片机的品种多样,功能也越来越多,但是受成本约束,性能优良的8位单片机仍然是工业检测与控制应用领域的首选。 本系统就是以ATMEL公司的AT89C51单片机为中心,通过模数转换器AD7812对温度传感器的输
[单片机]
基于51单片机的自动温度测量报警系统设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved