找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2285|回复: 0
打印 上一主题 下一主题
收起左侧

基于51单片机数码管显示经ADC0808转化1K电位器分压5V模拟量为数字量的项目工程

[复制链接]
跳转到指定楼层
楼主
本帖最后由 51黑电子会员 于 2020-5-1 21:47 编辑
  1. #include<reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. sbit START=P1^0;//启动信号
  5. sbit EOC=P1^1;//转换结束信号
  6. sbit ENA=P1^2;//输出使能
  7. sbit CLK=P1^3;//时钟信号
  8. uchar temp;//电位器分压5V电压模拟量经ADC0808转化为数字量变量
  9. uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阴数码管段码表,高电平段导通,低电平位导通。
  10.   void DelayMS(uint t)
  11. {
  12.    uchar i;
  13.    while(t--)
  14.     for(i=0;i<120;i++);
  15.   }
  16.   void Display_Result(uchar temp)
  17. {
  18.    P2=0xfe;//第1个数码管显示个位数
  19.    P0=DSY_CODE[temp/100];
  20.    DelayMS(1);
  21.    P0=0x00;
  22.    P2=0xfd;//第2个数码管显示十位数
  23.    P0=DSY_CODE[temp%100/10];
  24.    DelayMS(1);
  25.    P0=0x00;
  26.    P2=0xfb;//第3个数码管显示百位数
  27.    P0=DSY_CODE[temp%10];
  28.    DelayMS(1);
  29.    P0=0x00;
  30.   }
  31.   void main()
  32. {
  33.    TMOD=0x02;//定时器0工作模式2
  34.    TH0=0x14;//十六进制0x14转化为十进制数为20,20为装入定时器初始值,按12MHz晶振算,那么256-20=236就是计时时间,即定时时间为236微妙,即0.236毫秒,亦0.000236秒。
  35.    TL0=0x00;//低8位定时计数寄存器从0开始计数,计满256个数后,高8位定时计数寄存器把十六进制0x14所表示十进制数20赋给低8位定时计数寄存器重新开始计数,不断重复。
  36.    IE=0x82;//相当于EA=1,ET0=1。
  37.    TR0=1;//启动定时0
  38.    P1=0x0f;
  39.    while(1)
  40. {
  41.      START=0;//启动信号初始为低电平
  42.      START=1;//启动信号由低电平变为高电平,产生上升沿,内部寄存器清零。
  43.      START=0;//启动信号由高电平变为低电平,产生下降沿,开始A/D转换
  44.      while(EOC==0);//等待转换完成,开始A/D转换时为低电平,A/D转换结束后为高电平。
  45.      ENA=1;//允许输出A/D数据到单片机
  46.      temp=P3;//电位器分压5V电压模拟量经ADC0808转化为数字量变量数据
  47.      Display_Result(temp);//显示电位器分压5V电压模拟量经ADC0808转化为数字量变量
  48.      ENA=0;//关闭允许输出A/D数据到单片机
  49.    }
  50. }
  51.   void Timer0() interrupt 1
  52. {
  53.    CLK=~CLK;//时钟信号输入端一般为500KHz,该定时器0定时时间为236微妙,即0.236毫秒,亦0.000236秒,相当于高低电平各占0.000236秒,一个周期就是高低电平时间,则T=0.000236sX2=0.000472s,大概T=0.000500s,频率为1/0.000500=2000Hz=2KHz。
  54. }
复制代码


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表