找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1433|回复: 0
收起左侧

89C51 ADC0808数模转换实验

[复制链接]
ID:716760 发表于 2020-4-6 21:15 | 显示全部楼层 |阅读模式
  1. #include   "reg51.h"

  2. unsigned char code tab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
  3. unsigned char dat[4];
  4. sbit clock=P1^4;
  5. sbit start=P1^5;
  6. sbit eoc=P1^6;
  7. sbit oe=P1^7;

  8. void delay(unsigned int s){
  9.     unsigned char i;
  10.     while(s--)for(i=0;i<200;i++);
  11. }


  12. void display(unsigned char a)
  13. {
  14.         unsigned char c=0x01,i;
  15.         dat[3]=tab[a%10];dat[2]=tab[a%100/10];
  16.         dat[1]=tab[a/100];dat[0]=tab[a/1000];

  17.         for(i=0;i<4;i++){
  18.                          P1=0xe0|c;
  19.                         P0=dat[i];
  20.                         c=c<<1;
  21.                         delay(2);
  22.         }
  23.                 return;
  24.        

  25. }




  26. initial(){

  27.                    TMOD=0x10;
  28.       TH1=0xff;
  29.       TL1=0x9C;
  30.       ET1=1;
  31.                   EA=1;
  32.                   TR1=1;   
  33. }



  34. void main()  
  35. {
  36.         initial();
  37.    while(1){

  38.                   start=0;
  39.                   start=1;
  40.            start=0;

  41.            while(!eoc);

  42.            oe=1;
  43.             display(P2);   
  44.             oe=0;

  45.   }  
  46. }


  47. t0_int() interrupt  3
  48. {
  49.         TH1=0xff;
  50.       TL1=0x9C;
  51.     clock=!clock;
  52. }
复制代码


dpj3.png

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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