数模转换ADC08009应用

发布者:星光闪耀最新更新时间:2024-08-14 来源: cnblogs关键字:数模转换  AT89C51 手机看文章 扫描二维码
随时随地手机看文章

 

 1 #include              //头文件

 2 #define uchar unsigned char           //宏定义无符号字符型

 3 #define uint  unsigned  int           //宏定义无符号整型

 4 code uchar seg7code[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //显示段码 数码管字跟

 5 uchar wei[4]={0XEf,0XDf,0XBf,0X7f};  //位的控制端                                                                 //位控制码

 6 sbit ST=P3^0;   //A/D启动转换信号

 7 sbit OE=P3^1;   //数据输出允许信号

 8 sbit EOC=P3^2;  //A/D转换结束信号

 9 sbit CLK=P3^3;  //时钟脉冲  

10 uint z,x,c,v,AD0809, date;        //定义数据类型

11 /******************************************************************

12 延时函数

13 ******************************************************************/

14 void delay(uchar t)

15 {

16   uchar i,j;

17    for(i=0;i18    {

19             for(j=13;j>0;j--);

20          { ;

21          }

22    }

23 }

24 /**********************************************************************

25                 数码管动态扫描

26 *********************************************************************/

27 void xianshi() //显示函数

28  { 

29 uint z,x,c,v;

30   z=date/1000;                         //求千位

31   x=date%1000/100;                 //求百位

32   c=date%100/10;                 //求十位

33   v=date%10;                         //求个位

34 

35       P2=0XFF;

36           P0=seg7code[z]&0x7f;

37           P2=wei[0];

38           delay(80);

39           P2=0XFF;  

40       P0=seg7code[x];

41           P2=wei[1];

42           delay(80);

43           P2=0XFF;  

44              P0=seg7code[c];

45           P2=wei[2];

46           delay(80);

47           P2=0XFF;  

48       P0=seg7code[v];

49           P2=wei[3];

50           delay(80); 

51           P2=0XFF;

52   }

53  /*************************************************************************

54                                 CLK振荡信号        

55 **************************************************************************/

56 void timer0( ) interrupt 1 //定时器0工作方式1

57 {

58 

59 TH0=(65536-2)/256;          //重装计数初值

60 TL0=(65536-2)%256;          //重装计数初值

61 CLK=!CLK;                          //取反

62 }

63 

64  /*************************************************************************

65                                 主函数        

66 **************************************************************************/

67  void main()

68 { 

69 TMOD=0X01;                          //定时器中断0

70 

71 CLK=0;                                  //脉冲信号初始值为0

72 TH0=(65536-2)/256;          //定时时间高八位初值

73 TL0=(65536-2)%256;          //定时时间低八位初值

74 EA=1;                                  //开CPU中断

75 ET0=1;                                  //开T/C0中断

76 TR0=1;

77  while(1)                           //无限循环

78         {

79         ST=0;                                //使采集信号为低

80         ST=1;                                //开始数据转换

81         ST=0;                                //停止数据转换

82         while(!EOC);                //等待数据转换完毕

83         OE=1;                                //允许数据输出信号

84         AD0809=P1;                    //读取数据

85         OE=0;                                //关闭数据输出允许信号

86         if(AD0809>=251)                //电压显示不能超过5V

87         AD0809=250;

88         date=AD0809*20;                //数码管显示的数据值,其中20为采集数据的毫安值

89         xianshi();                        //数码管显示函数

90     

91     }

92 }       


关键字:数模转换  AT89C51 引用地址:数模转换ADC08009应用

上一篇:自定义reg52.h头文件(单片机学习重难点核心知识点)
下一篇:基于AT89C51单片机烟雾传感器

推荐阅读最新更新时间:2024-11-13 18:20

AT89C51单片机游戏(俄罗斯方块)
一、电路设计 此电路由AT89C51最小系统、12864显示模块和独立按键组成。可实现类似俄罗斯方块的游戏 二、运行效果 三、部分代码 /*想要更多项目私wo!!!*/ #include REGX52.H #include pic.c #include intrins.h #define LCD_DATA P2 #define button_delay 150 //按键延时 #define button_acceleration 65 //按键加速度阈值 #define GAME_LOCATION 30 sbit button_a = P3^4; //变形 sbit button_b = P3^5; //开始 s
[单片机]
基于嵌入式器件AT89C51SNDlC的电子治疗仪设计解析
目前采用两个电极片对称覆盖治疗人体部位的电子治疗仪,是通过电极片上的脉动电压与治疗人体部位电阻产生作用,在治疗部位产生人体能够感知的脉动电流,刺激神经肌肉,使其收缩和舒张,产生运动效应,以达到治疗目的。但目前市场上此类型治疗仪产生的脉动电压只有少数几种,由于脉动电流频率周期固定,如果某治疗部位长期接受其脉动,就会产生抗疗作用,引起自发性紧张,从而降低治疗效果。为了解决这一问题,将MP3发出的随机音乐信号引入治疗仪,使音频信号与2.4 kHz的中频治疗频率进行调制,产生多种脉动电压和频率周期不断变换的脉动电流。它们随音乐信号起伏变化而发生作用,使患者一边欣赏着喜欢的音乐一边接受治疗,分散注意力,缓解紧张情绪,从而有助于提高治疗效果。
[单片机]
基于嵌入式器件<font color='red'>AT89C51</font>SNDlC的电子治疗仪设计解析
基于AT89C51SND1C的MP3技术方案
随着人们对便携式音乐播放器要求的提高,MP3播放器以其较小的体积和较好的音质赢得了广大音乐爱好者的青睐。起初,MP3文件只能由电脑来播放,随着互联网的发展,促进了MP3播放器的产生,随着人们对MP3产品进一步的认识和更高层次的需求,MP3发生了一系列的变化,其更加小巧精致,更人机化和情趣化,个性区分也越来越强。还出现了功能的融人和产品的整合,总之,MP3播放器正朝着功能强大、外观丰富、价格便宜的方向发展。这里提出一种基于AT89C51SND1C的MP3播放器设计方案。 1 MP3播放器简介 MP3播放器是一种新兴的数字音乐播放器,播放MP3、WMA等格式的文件。通过用MPEG-1 Layer 3编码技术,可以得到大约12:1压缩
[单片机]
基于<font color='red'>AT89C51</font>SND1C的MP3技术方案
基于USB 的无线传输系统设计与实现
  0 引言   距离产生了通信的需求,距离的增加对通信提出了更高的要求。和有线通信相比,无线通信技术由于其更为方便实用而越来越得到更多的应用,实现无线传输的方案也是多种多样。本文中设计并实现了一种应用无线传输技术的单片机系统,该系统中使用USB2.0 接口与上位机相连,将数据传输到下位机,数据经无线传输后控制手持式便携设备。应用该系统的教学仿真器已经在实际中进行了应用,且得到了很好的效果。   1 系统的设计   为了实现计算机对某些系统的控制,常常使用单片机对下位机进行控制,而上位机和下位机之间可以通过串行接口、并行接口等接口实现通信。本文中通过USB2.0 接口实现了一个无线通信系统,系统的连接如图1 所示。 图
[单片机]
基于USB 的无线传输系统设计与实现
基于AT89c51单片机的音乐闹钟
基于51芯片用proteus仿真制作的音乐闹钟,四个按键用来设置时间,和整定闹钟时间,如果要做实物的话,记得参考源码的io口,也可修改 说明: 用的是1602lcd显示屏; 本项目是天空之城的纯音乐,如果要其他的音乐代码可以找我要,也可以网上找; 单片机源码: #include reg51.h #define uchar unsigned char #define uint unsigned int sbit lcdrs=P3^5; //定义lcd口 sbit lcden=P3^4; sbit s1=P3^0; sbit s2=P3^1; sbit s3=P3^2; sbit s4=P3^3; s
[单片机]
基于<font color='red'>AT89c51</font>单片机的音乐闹钟
OLED多电子图文广告屏设计
  1 引言   新一代显示器件有机电致发光显示器件OLED(OrganicLightEmittingDiode)厚度为LCD的1/3,响应速度是LCD 元件的1000倍,低温特性好,在-40℃能正常显示。设计开发一套能在多个公共场合(如厂区、校区)同步发布电子公告的多电子图文 广告屏 。该系统基于通用串行总线(USB)传输,速度快、 可靠性高,有效地克服了传统广告图文传输的缺陷。   2系统设计   多场合同步发布电子广告屏系统由位于Internet网络的PC机(上位机)和位于各LED控制器上的单片机(下位机)组成,采用USB总线进 行主从式通信。图1为控制系统的逻辑结构框图。上位机主要完成图文编辑、字模提取与保存、图
[单片机]
OLED多电子图文广告屏设计
AT89C51单片机为核心的高频开关电源设计
简介:本系统是多台高频开关电源(1000A/15V)智能模块并联,电源单元和监控单元均以AT89C51单片机为核心,电源单元的均流由监控单元来协调,监控单元既可以与各电源单元通信,也可以与PC通信,实现远程监控。 0 引言 模块化是开关电源的发展趋势,并联运行是电源产品大容量化的一个有效方案,可以通过设计N+l冗余电源系统,实现容量扩展。本系统是多台高频开关电源(1000A/15V)智能模块并联,电源单元和监控单元均以AT89C51单片机为核心,电源单元的均流由监控单元来协调,监控单元既可以与各电源单元通信,也可以与PC通信,实现远程监控。 1 PWM控制电路 TL494是一种性能优良的脉宽调制控制器,TL494由5V基准
[单片机]
以<font color='red'>AT89C51</font>单片机为核心的高频开关电源设计
基于SA8282的三相逆变电源设计
  1.引言   逆变器是构成交流不间断电源(UPS)及交流变频调速系统的核心部分,可独立构成系统成为变频电源装置,逆变电源在工业上有着广泛的应用,而大部分逆变电源电路结构和控制软件复杂,采用SPWM集成电路和关断开关设计逆变电源有较多的优越性。英国MITEL公司的推出的新型全数字化三相SPWM发生器SA8282,输出频率宽、精度高,可与微处理器接口,能完成外围控制功能和保护功能,可实现系统的智能化设计 。   本文介绍一种简单的三相逆变电源的设计,采用AT89C51单片机、SA8282波形发生器及交直交主电路构成。SA8282仅需要少量的外围硬件,而无需复杂的软件编程,使得本系统的电路结构简单、控制方便、性能稳定,同时设计有
[单片机]
基于SA8282的三相逆变电源设计
小广播
设计资源 培训 开发板 精华推荐

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

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved