久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

基于51單片機(jī)的ADC0804的電壓表設(shè)計(jì)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
最近看網(wǎng)上有很少的ADC0804的設(shè)計(jì)了,都由0809代替,但是有個(gè)別因?yàn)槌杀驹蚝蛯W(xué)校課程設(shè)計(jì)要求需要ADC0804的,可以看此程序,仿真一并配齊,全套資料請(qǐng)打包下載:




單片機(jī)源程序如下:
  1. #include<reg51.h>
  2. #include<intrins.h>
  3. #define uint unsigned int
  4. #define uchar unsigned char

  5. sbit rd=P3^6; //ADC0804IO口定義
  6. sbit wr=P3^5;
  7. sbit cs=P3^7;
  8. sbit int1=P3^4;
  9. //液晶LCD1602定義
  10. sbit rs=P2^5;
  11. sbit rw=P2^6;
  12. sbit e=P2^7;
  13. //0804轉(zhuǎn)換變量
  14. unsigned int date;
  15. uchar Vol;
  16. uint V;
  17. void delay_uint(uint z)                  //液晶驅(qū)動(dòng)延遲
  18. {
  19.         while(z--);
  20. }
  21. /********************************************************************
  22. * 名稱 : write_com(uchar com)
  23. * 功能 : 1602命令函數(shù)
  24. * 輸入 : 輸入的命令值
  25. * 輸出 : 無(wú)
  26. ***********************************************************************/
  27. void write_com(uchar com)
  28. {
  29.         e=0;
  30.         rs=0;
  31.         rw=0;
  32.         P0=com;
  33.         delay_uint(25);
  34.         e=1;
  35.         delay_uint(100);
  36.         e=0;
  37. }

  38. /********************************************************************
  39. * 名稱 : write_data(uchar dat)
  40. * 功能 : 1602寫數(shù)據(jù)函數(shù)
  41. * 輸入 : 需要寫入1602的數(shù)據(jù)
  42. * 輸出 : 無(wú)
  43. ***********************************************************************/
  44. void write_data(uchar dat)
  45. {
  46.         e=0;
  47.         rs=1;
  48.         rw=0;
  49.         P0=dat;
  50.         delay_uint(25);
  51.         e=1;
  52.         delay_uint(100);
  53.         e=0;        
  54. }
  55. /***********************lcd1602上顯示字符函數(shù)************************/
  56. void write_string(uchar hang,uchar add,uchar *p)
  57. {
  58.         if(hang==1)   
  59.                 write_com(0x80+add);
  60.         else
  61.                 write_com(0x80+0x40+add);
  62.                 while(1)                                                                                                                 
  63.                 {
  64.                         if(*p == '\0')  break;
  65.                         write_data(*p);
  66.                         p++;
  67.                 }        
  68. }
  69. /***********************lcd1602上顯示兩位十進(jìn)制數(shù)************************/
  70. void write_sfm2(uchar hang,uchar add,uint date)
  71. {
  72.         if(hang==1)   
  73.                 write_com(0x80+add);
  74.         else
  75.                 write_com(0x80+0x40+add);
  76.         write_data(0x30+date/100);
  77.         write_string(2,8,".");  
  78.         write_data(0x30+date/10%10);
  79.         write_data(0x30+date%10);        
  80. }

  81. /***********************lcd1602初始化設(shè)置************************/
  82. void init_1602()        //lcd1602初始化
  83. {
  84.         write_com(0x38);        
  85.         write_com(0x0c);
  86.         write_com(0x06);
  87.         delay_uint(1000);
  88.         write_string(1,0,"The Voltage is: ");
  89.         write_string(2,8,".");  
  90.         write_string(2,11,"V    ");         
  91.         write_sfm2(2,7,date);
  92. }
  93. void delay(uint z)
  94. {
  95.         uint x;
  96.         while(z--)
  97.                 for(x=0;x<120;x++);
  98. }
  99. uchar read_0804()
  100. {
  101.         wr=0; //在片選信號(hào)CS為低電平情況下(由于CS接地,所以始終為低電平),
  102.         _nop_(); //WR由低電平到高電平時(shí),即上升沿時(shí),AD開始采樣轉(zhuǎn)換  
  103.         wr=1;  
  104.         delay(1); //延時(shí)1ms,等待采樣轉(zhuǎn)換結(jié)束   
  105.         P1=0xff;   //這條語(yǔ)句不能少,我也還不知道為什么  
  106. ……………………

  107. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
056-ADC0804電壓表.zip (2.83 MB, 下載次數(shù): 126)



評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:337367 發(fā)表于 2018-6-12 22:14 | 只看該作者
謝謝分享
回復(fù)

使用道具 舉報(bào)

板凳
ID:236171 發(fā)表于 2018-6-27 11:28 | 只看該作者
   P1=0xff;   //這條語(yǔ)句不能少,我也還不知道為什么  

回復(fù)樓主一下,因?yàn)镻1做數(shù)據(jù)線的時(shí)候要先拉高才能讀取數(shù)據(jù)
回復(fù)

使用道具 舉報(bào)

地板
ID:360242 發(fā)表于 2018-6-27 14:24 | 只看該作者
謝謝了老鐵,666
回復(fù)

使用道具 舉報(bào)

5#
ID:313760 發(fā)表于 2018-7-19 16:12 | 只看該作者
謝謝樓主
回復(fù)

使用道具 舉報(bào)

6#
ID:111875 發(fā)表于 2024-5-2 07:10 | 只看該作者
好資料感謝分享
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 毛片一级片 | 日韩欧美亚洲 | 伦理二区 | 国产成人叼嘿视频在线观看 | 噜久寡妇噜噜久久寡妇 | 日韩欧美一区二区三区免费观看 | 激情久久av一区av二区av三区 | 日本成人中文字幕 | 91国内精精品久久久久久婷婷 | 一区二区三区回区在观看免费视频 | 伊人色综合久久久天天蜜桃 | 国产精品亚洲精品日韩已方 | 欧美一区在线视频 | 精品少妇一区二区三区在线播放 | gav成人免费播放视频 | 久久99深爱久久99精品 | 久久影音先锋 | 99影视 | 精品一区二区电影 | 视频精品一区二区三区 | 一区二区中文字幕 | 亚洲高清三级 | 青娱乐一区二区 | 性视频一区 | 国产精品久久久久aaaa九色 | 亚洲九色 | 亚洲精品免费在线观看 | 成人在线视频观看 | 国产精品视频网 | 欧美在线一区二区三区 | 国产一区二区电影 | 最新国产精品精品视频 | 中文字幕一区二区三区乱码在线 | 亚洲一区二区在线 | 97超碰人人| 99热成人在线 | av大片| 欧美激情视频网站 | 在线国产小视频 | 国产精品久久久久久久久久久免费看 | 综合久久亚洲 |