找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4655|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

51單片機ad0809轉(zhuǎn)換 數(shù)碼管輸出工程

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:403791 發(fā)表于 2018-9-28 21:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
這個項目主要是應(yīng)用51單片機實現(xiàn),ad轉(zhuǎn)換+數(shù)碼管輸出、

注意:ad0809這個型號在Proteus中沒有所以用ad0808代替仿真。

單片機源程序如下:
  1. #include "reg51.h"                        
  2. typedef unsigned int u16;         
  3. typedef unsigned char u8;


  4. sbit sla=P3^0;//選擇輸入口定義
  5. sbit slb=P3^1;
  6. sbit slc=P3^3;//裝置為3.仿真為6
  7. sbit dia=P0^7;


  8. sbit ALE=P3^4        ;//AD鎖存器允許信號(4)仿真為3
  9. sbit CLOCK=P3^5;//時鐘信號(5)仿真為4
  10. sbit ST=P3^7;//裝置為(7)仿真為5
  11. sbit EOC=P3^2;//轉(zhuǎn)換完成信號
  12. sbit OE=P3^6;//允許輸出信號裝置為(6)仿真為7

  13. sbit dula=P2^6;//數(shù)碼管鎖存信號,裝置為6/7,仿真為0/1
  14. sbit wula=P2^7;

  15. u8 code table[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
  16.                                        
  17. u16 t0, votage;

  18. void delay(u16 i)
  19. {
  20.         u16 m,n;
  21.         for(m=i;m>0;m--)
  22.                 for(n=110;n>0;n--);               
  23. }

  24. u16 trans(u16 x)//將二進制轉(zhuǎn)化為十進制
  25. {
  26.         
  27.         u16 d;
  28.         d=(19.6078431372549)*x;
  29.         
  30.         return d;
  31.         
  32. }
  33. void display(u16 v)
  34. {
  35.         P0=0x00;
  36.         dula=1;
  37.         P0=table[v/1000];
  38.         dia=1;
  39.         dula=0;
  40.         P0=0x00;
  41.         wula=1;
  42.         P0=0xfe;
  43.         wula=0;
  44.         delay(2);
  45.         
  46.         P0=0x00;
  47.         dula=1;
  48.         P0=table[(v%1000)/100];
  49.         dula=0;
  50.         P0=0x00;
  51.         wula=1;
  52.         P0=0xfd;
  53.         wula=0;
  54.         delay(2);        
  55.         
  56.         P0=0x00;
  57.         dula=1;
  58.         P0=table[((v%1000)%100)/10];
  59.         dula=0;
  60.         P0=0x00;
  61.         wula=1;
  62.         P0=0xfb;
  63.         wula=0;
  64.         delay(2);
  65.         
  66.         P0=0x00;
  67.         dula=1;
  68.         P0=table[v%10];
  69.         dula=0;
  70.         P0=0x00;
  71.         wula=1;
  72.         P0=0xf7;
  73.         wula=0;
  74.         delay(2);
  75.         
  76.         
  77. }
  78. void main()
  79. {
  80.         
  81.         sla=0;//0號作為口輸入模擬信號
  82.         slb=0;
  83.         slc=0;
  84.         
  85.         OE=0;
  86.         ST=0;
  87.         
  88.         TMOD=0x01;
  89.         TH0=(65536-2)/256;
  90.         TL0=(65536-2)%256;
  91.         EA=1;
  92.         ET0=1;
  93.         TR0=1;
  94.         
  95.         
  96.         

  97.         while(1)
  98.   {
  99.                         ST=0;ST=1;ST=0;//啟動轉(zhuǎn)換
  100.                         while(EOC==0)
  101.                         {
  102.                         OE=1;
  103.                         display(trans(P1));
  104.                         OE=0;
  105.                         }
  106.                         trans(P1);
  107.   }
  108. }


  109. void T0_time() interrupt 1//TO計時器給ADC提供時鐘信號
  110. {
  111.         TH0=(65536-2)/256;
  112.   TL0=(65536-2)%256;
  113.         CLOCK=~CLOCK;
  114. }
復(fù)制代碼

Keil5工程文件,仿真圖在下面jpg圖片格式,大家自己打開Proteus畫一下吧,下面的附件里面只有代碼的Keil文件:
AD_51.rar (12.8 KB, 下載次數(shù): 45)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:1 發(fā)表于 2018-9-28 21:33 | 只看該作者
補全原理圖或者詳細說明一下電路連接即可獲得100+黑幣
回復(fù)

使用道具 舉報

板凳
ID:403791 發(fā)表于 2018-9-28 21:44 | 只看該作者
這個就是電路原理圖圖。

厲害了.png (53.37 KB, 下載次數(shù): 28)

這里是電路圖,用到兩片74h573鎖存器

這里是電路圖,用到兩片74h573鎖存器

評分

參與人數(shù) 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

地板
ID:403791 發(fā)表于 2018-9-28 21:48 | 只看該作者
admin 發(fā)表于 2018-9-28 21:33
補全原理圖或者詳細說明一下電路連接即可獲得100+黑幣

好了,老大。
回復(fù)

使用道具 舉報

5#
ID:675597 發(fā)表于 2019-12-27 18:22 | 只看該作者

你好,可以電路圖詳細發(fā)一下嘛
回復(fù)

使用道具 舉報

6#
ID:939357 發(fā)表于 2021-6-18 10:25 | 只看該作者
亮不起來
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表