wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4913|回復: 2
打印 上一主題 下一主題
收起左側

C51單片機+ADC0809的多路數字電壓表Proteus仿真程序

  [復制鏈接]
跳轉到指定樓層
樓主
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)




八路電壓表元件清單
1)    9*15萬用板
2)    stc89c51單片機
3)    ADC0809
4)    40腳座
5)    28腳座(寬)
6)    1602液晶
7)    16p母座
8)    16p排針
9)    10uF電解電容
10)    30pF瓷片電容*2
11)    10k電阻*2
12)    1k電阻
13)    按鍵*3
14)    鱷魚夾*9(8紅1黑)
15)    3p接線端子*3
16)    紅黑并線1米
17)    103排阻
18)    103電位器藍*8
19)    12MHz晶振
20)    自鎖開關
21)    DC002接口
22)    導線若干
23)    焊錫若干
24)    USB電源線

單片機源程序如下:
  1. #include<reg52.h>                                   //包含頭文件
  2. #include <math.h>
  3. #include "uart.h"
  4. #include "display.h"
  5. #define uint unsigned int
  6. #define uchar unsigned char                   //宏定義
  7. sbit ale=P2^6;
  8. sbit start=P2^7;
  9. sbit eoc=P3^2;
  10. sbit oe=P3^3;                                           //定義adc0809的控制引腳
  11. sbit adda=P2^0;
  12. sbit addb=P2^1;
  13. sbit addc=P2^2;                                           //adc0809的地址引腳
  14. //sbit rs=P2^3;
  15. //sbit rw=P2^4;
  16. //sbit en=P2^5;                                           //液晶的控制引腳
  17. sbit key1=P3^4;
  18. sbit key2=P3^5;
  19. unsigned long voltdata[8];
  20. uint realvolt,i,j,k,l,t,sum,a[5];         //定義全局變量
  21. unsigned char CH;
  22. uchar add;                                                                         //地址變量
  23. uchar TxBuf[8];                //四個顯示的位
  24. unsigned char t0Count;
  25. unsigned char flagAu=1;
  26. uchar code t1[]={"DC Voltmeter:IN "};
  27. uchar code t2[]={" (0~20V):  .  V "};
  28. uchar code t3[]={"      Hello!    "};
  29. uchar code t4[]={"     Welcome!   "};                 //初始化顯示

  30. /*
  31. 函數說明
  32. */
  33. void addselect()                //量程選擇
  34. {
  35.   CH++;                                                //通道號加
  36.   if(CH>7)                                        //最大到7                  符號&:按位與符號,二進制的對應位如果都為1,那么結果的對應位就為1,否則為0
  37.   CH=0;                                                //清零,一共八個通道0 1 2 3 4 5 6 7,對應二進制是0000.0001.0010.0011.0100.0101.0110.0111
  38.   adda=CH&0x01;                                //例如5通道計算方法:將通道對應的二進制0101&0001,結果就是0001,賦值給adda(引腳只能接受最低位的數據,只有1和0),那么adda引腳就是高電平
  39.   addb=(CH&0x02)>>1;                //然后將通道5的二進制0101&0010,結果就是0000(因為所有位都不同),然后整組數據右移一位,賦值給addb,那么addb引腳就是低電平
  40.   addc=(CH&0x04)>>2;                 //然后將通道5的二進制0101&0100,結果就是0100,然后整組數據右移兩位,賦值給addc,那么addc引腳就是高電平,最后芯片的通道選擇引腳的狀態就是101,則選擇的就是通道5了
  41.   delay(5);                                        //短延時
  42. }
  43. uint adtrans()                         //AD轉換
  44. {
  45.         addselect();
  46.         sum=0;                     //濾波開始
  47.         for (i=0;i<5;i++)           
  48.         {
  49.                 ale=1;
  50.                 ale=0;
  51.                 start=1;                         //啟動AD轉換。
  52.                 start=0;
  53.                 while(eoc==0);                 //等待轉換結束。
  54.                 oe=1;
  55.                 a[i]=P1;             //出入轉換結果。
  56.                 delay(5);                  ////每隔5usAD轉換并采集一次數據,將得到的數值存入數組中
  57.         }
  58.         for (j=0;j<4;j++)                                
  59.                 for(i=0;i<4-j;i++)
  60.                         if(a[i]>a[i+1])
  61.                         {
  62.                                 t=a[i];
  63.                                 a[i]=a[i+1];
  64.                                 a[i+1]=t;
  65.                         }
  66.         for(i=1;i<4;i++)
  67.         {
  68.                 sum+=a[i];
  69.         }                                  //采用冒泡法比較,取中間3個數值
  70.         voltdata[CH]=sum/3;
  71.         
  72.         delay(1);
  73.         oe=0;
  74.         voltdata[CH]=4*(100*voltdata[CH])/51;                   //處理運算結果。
  75.         //voltdata[CH]是讀取到的ad值,乘以100是讓小數點后移兩位,乘以4是量程擴大四倍也就是5*4=20V,然后除以51(和乘以0.0196一樣)得到實際的電壓值
  76.         //8位AD最小分辨率就是0.0196V
  77.         return voltdata[CH];
  78. }
  79. void disvolt()                                //顯示函數        
  80. {
  81.         realvolt=voltdata[add];
  82.         writelcd_cmd(0x80);
  83.         writelcd_dat('1'+add);
  84.         TxBuf[1]=realvolt/1000+0x30;
  85.         TxBuf[2]=realvolt/100%10+0x30;
  86.         TxBuf[4]=realvolt/10%10+0x30;
  87.         TxBuf[5]=realvolt%10+0x30;                 //將電壓值分成4個一位數,方便顯示
  88.         writelcd_cmd(0x82);           //顯示電壓值
  89.         writelcd_dat(TxBuf[1]);
  90.         writelcd_dat(TxBuf[2]);
  91.         writelcd_cmd(0x85);
  92.         writelcd_dat(TxBuf[4]);
  93.         writelcd_dat(TxBuf[5]);
  94.         realvolt=voltdata[add+1];
  95.         writelcd_cmd(0x88);
  96.         writelcd_dat('1'+add+1);
  97.         TxBuf[1]=realvolt/1000+0x30;
  98.         TxBuf[2]=realvolt/100%10+0x30;
  99.         TxBuf[4]=realvolt/10%10+0x30;
  100.         TxBuf[5]=realvolt%10+0x30;                 //將電壓值分成4個一位數,方便顯示
  101.         writelcd_cmd(0x8a);           //顯示電壓值
  102.         writelcd_dat(TxBuf[1]);
  103.         writelcd_dat(TxBuf[2]);
  104.         writelcd_cmd(0x8d);
  105.         writelcd_dat(TxBuf[4]);
  106.         writelcd_dat(TxBuf[5]);

  107.         realvolt=voltdata[add+2];
  108.         writelcd_cmd(0xc0);
  109.         writelcd_dat('1'+add+2);
  110.         TxBuf[1]=realvolt/1000+0x30;
  111.         TxBuf[2]=realvolt/100%10+0x30;
  112.         TxBuf[4]=realvolt/10%10+0x30;
  113.         TxBuf[5]=realvolt%10+0x30;                 //將電壓值分成4個一位數,方便顯示
  114.         writelcd_cmd(0xc2);           //顯示電壓值
  115.         writelcd_dat(TxBuf[1]);
  116.         writelcd_dat(TxBuf[2]);
  117.         writelcd_cmd(0xc5);
  118.         writelcd_dat(TxBuf[4]);
  119.         writelcd_dat(TxBuf[5]);
  120.         realvolt=voltdata[add+3];
  121.         writelcd_cmd(0xc8);
  122.         writelcd_dat('1'+add+3);
  123.         TxBuf[1]=realvolt/1000+0x30;
  124.         TxBuf[2]=realvolt/100%10+0x30;
  125.         TxBuf[4]=realvolt/10%10+0x30;
  126.         TxBuf[5]=realvolt%10+0x30;                 //將電壓值分成4個一位數,方便顯示
  127.         writelcd_cmd(0xca);           //顯示電壓值
  128.         writelcd_dat(TxBuf[1]);
  129.         writelcd_dat(TxBuf[2]);
  130.         writelcd_cmd(0xcd);
  131.         writelcd_dat(TxBuf[4]);
  132.         writelcd_dat(TxBuf[5]);
  133. }
  134. void anjian()                                //按鍵掃描函數
  135. {

  136.         if(key1==0)                                //第一個按鍵按下
  137.         {
  138.                  delay(20);
  139.                 if(key1==0)
  140.                 {
  141.                  if(add==0)
  142.                  add=4;
  143.                  else
  144.                  add=0;
  145.                  flagAu=0;
  146.                  while(key1==0);
  147.                 }
  148.         }
  149.         if(key2==0)
  150.         {
  151.                  delay(20);
  152.                 if(key2==0)
  153.                 {
  154.                  
  155.              flagAu=1;
  156.                  while(key2==0);
  157.                 }
  158.         }
  159.                                          //切換檔位
  160.         TxBuf[6]=CH+0x31;

  161. }
  162. void init()                                         //初始化函數
  163. {

  164.         add=0;                                
  165.                 addselect();
  166.         lcd_init();                                //液晶顯示初始化
  167.     write_string(0x80,"1:  .  V2:  .  V");
  168.         write_string(0xc0,"3:  .  V4:  .  V");

  169. ;
  170.         TxBuf[3]='.';
  171.         TxBuf[7]='\0';
  172. }
  173. void main()                                  //主程序
  174. {
  175.         init();                                  //調用初始化函數
  176.         Uart_init();
  177.         while(1)                          //進入while循環
  178.         {   
  179.                 anjian();                  //掃描按鍵
  180.                 adtrans();                  //ad函數
  181.                 disvolt();                  //顯示電壓
  182.         }                           
  183. }
  184. void timer0() interrupt 1
  185. {
  186.   TH0=0x4c;
  187.   TL0=0x00;
  188.   t0Count++;
  189.   if(t0Count>=40)
  190.   {
  191.    t0Count=0;
  192.    if(flagAu==1)
  193.    {
  194.     if(add==0)
  195.         add=4;
  196.         else
  197.         add=0;
  198.    }
  199.   }
  200. }
復制代碼

所有資料51hei附件下載:
仿真代碼.7z (218.42 KB, 下載次數: 195)

評分

參與人數 1黑幣 +30 收起 理由
admin + 30 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

無效樓層,該帖已經被刪除
無效樓層,該帖已經被刪除
無效樓層,該帖已經被刪除
5#
無效樓層,該帖已經被刪除
6#
ID:1051542 發表于 2023-8-19 09:25 | 只看該作者
可以重新發一次嗎,失效了
回復

使用道具 舉報

7#
無效樓層,該帖已經被刪除
8#
ID:1152647 發表于 2025-6-4 09:01 | 只看該作者
PCB圖能分享一下嗎?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
日韩精品一级| 91激情五月电影| 欧美一区自拍| 麻豆视频在线| 开心婷婷激情| 蜜臀久久久久久999| 国产一区在线观看免费| 久久久久国产一区| 亚洲精品免费在线看| 国产精品久久999| 亚洲乱亚洲乱妇无码| 欧美视频中文字幕在线| av午夜精品一区二区三区| 激情欧美一区| 伊人久久大香线蕉综合网蜜芽| 9999在线视频| 日韩a在线看| aaawww| 亚洲色图首页| 91黄色在线视频| 欧美日韩大片在线观看| 粉嫩精品一区二区三区在线观看| 中文字幕国产日韩| 欧美一区在线视频| 亚洲国产精品久久不卡毛片| 97久久精品人人做人人爽| 另类图片国产| 欧美在线网址| 国产在视频线精品视频www666| 精品九九久久| 爱啪啪综合导航| 第一视频专区在线| 性一爱一乱一交一视频| 午夜羞羞视频| 欧美黑人xxxxx性受| 国产高潮在线观看| 日本特黄一级片| 亚洲综合第一区| 香港三日本8a三级少妇三级99| 主播福利视频一区| 在线播放91灌醉迷j高跟美女| 夜夜亚洲天天久久| 久久久精品免费网站| 国产风韵犹存在线视精品| 免费在线日韩av| 亚洲大黄网站| 亚洲老妇激情| 99re久久最新地址获取| 国产精品一区二区三区av麻| 一区二区精彩视频| 精品国产欧美| 欧美日韩va| 国产精品美女午夜爽爽| 多野结衣av一区| 青青青国内视频在线观看软件| yw193.com尤物在线| 欧美香蕉爽爽人人爽| 中午字幕在线观看| 蜜桃专区在线| 永久免费在线观看| 亚洲综合色视频在线观看| fc2人成共享视频在线观看| 国产911网站| 美女视频黄a视频全免费观看| 黄色成人免费观看| 美女av电影| 免费看成人a| 传媒视频在线| 深夜视频在线免费| 国产综合视频一区二区三区免费| 毛片在线免费| youjizz在线播放| 免费在线午夜视频| 国产福利在线播放麻豆| 在线播放免费av| av老司机免费在线| 免费电影日韩网站| 一级毛片国产| 女人体1963| 污污网站在线| 老司机精品影院| 免费在线中文字幕| 性欧美gay| 麻豆精品久久| 中文字幕亚洲影视| 欧美在线91| 久久最新视频| 国产一区二区三区视频在线播放| 国产福利91精品一区| 久久久久久久久久久99999| 国产精品福利一区二区三区| 亚洲一区二区三区中文字幕| 91久久精品一区二区三区| 欧美一区二区三区在线视频| 精品亚洲永久免费精品| 欧美成人在线免费视频| 国产精品成人播放| 色8久久人人97超碰香蕉987| 欧洲国产伦久久久久久久| 日韩精品一区二区三区在线观看 | 亚欧在线观看视频| 国产精品偷乱一区二区三区| www在线视频观看| 黄动漫在线免费观看| 国产福利片在线| 国产美女高潮在线观看| 韩国一区二区三区视频| 精品色999| 日韩精品视频网站| 26uuu国产在线精品一区二区| 亚洲综合精品自拍| 91麻豆精品国产91久久久久| 在线视频欧美日韩| 国产精品久在线观看| 日本午夜一区二区三区| 国产午夜福利视频在线观看| 欧美一级片黄色| avove在线播放| 国产精品日韩无码| 国产精品久免费的黄网站| 麻豆网址在线观看| 国产精品成人av性教育| 国产精品久久久久久久小唯西川 | 欧美精品一区二区久久婷婷| 乱亲女秽乱长久久久| 国产欧美va欧美va香蕉在线| 日韩中文一区二区三区| 别急慢慢来1978如如2| 日本理论中文字幕| 亚洲天堂网视频| xxxx欧美| 91短视频版在线观看www免费| 91精品国产66| 亚洲色图插插| 99re在线视频这里只有精品| 日本高清不卡视频| www国产精品com| 国产一区二区三区四区五区在线| 久久国产精品视频在线观看| 波多野结衣办公室33分钟| 亚洲一区二区视频在线播放| 乳奴隷乳フ辱| 午夜dj在线观看高清视频完整版 | av在线之家电影网站| 四虎地址8848精品| 亚洲视屏一区| 国产精品久久三区| 六月天综合网| 国产三级久久久| 欧美成人a视频| 欧美国产极速在线| 日韩精品一区二区三区四区五区 | 欧美下载看逼逼| 毛片毛片毛片毛片毛| 久久久久黄色片| 亚洲欧美天堂| 精品电影在线| 欧美1区二区| 国产精品影视在线观看| 欧美色图天堂网| 日本精品视频网站| 青草视频在线观看视频| 日韩激情小视频| 欧美性猛交xxxx免费看手交| 午夜视频在线| 日韩精品首页| 欧美国产一区二区| 亚洲人精选亚洲人成在线| 精品婷婷色一区二区三区蜜桃| 亚欧美一区二区三区| 91成人国产综合久久精品| 猫咪av永久| 88久久精品| www.欧美亚洲| 亚洲国产精品专区久久| 成人片在线免费看| youjizz.com国产| 午夜精品久久久久久久第一页按摩 | 一级全黄裸体免费视频| 肥女人的一级毛片| 91国产一区| 久久超碰97人人做人人爱| 欧美色精品在线视频| 日韩av免费在线看| 欧美成人福利在线观看| av网站在线免费看| 电影在线一区| 999国产精品| 亚洲乱码日产精品bd| 欧美激情图片区| 国产精品一色哟哟| 国产剧情在线视频| 一二三四社区在线视频| 欧美亚视频在线中文字幕免费| 91在线视频官网| 在线观看欧美成人| 18视频在线观看娇喘| 日韩成人av毛片| 国产一级黄色片免费| 美女网站色精品尤物极品姐弟| 26uuu成人网一区二区三区| 一区二区三区 在线观看视| 中文字幕一区二区三区有限公司 | 91伊人久久| 成人一级视频在线观看| 亚洲色图18p| 国产精品www在线观看| 波多野结衣毛片| 国产在线观看免费网站| 狠狠综合久久av一区二区老牛| 在线观看亚洲一区| 久久爱av电影| 欧美色图一区二区| 91精品国产一区二区三密臀| 久久影院一区| 欧美色综合影院| 欧美一区二区影视| 特级毛片www| 搞黄视频在线观看| 国产精品普通话对白| 亚洲精品在线网站| 屁屁影院ccyy国产第一页| 自拍偷拍精品视频| www久久日com| 紧缚奴在线一区二区三区| 亚洲精品资源美女情侣酒店| 国产高清不卡无码视频| 国产又黄又爽视频| 蜜桃传媒在线观看免费进入| 国模无码大尺度一区二区三区| 国产亚洲视频在线观看| 欧美成人xxxxx| 天天干,夜夜爽| 日本黄色一区| 国产精品成人在线观看| 成人黄色短视频在线观看| 国产jizz18女人高潮| 一本大道香蕉久久| 91久久亚洲| 亚洲天堂网站在线观看视频| av动漫免费看| 国产一区二区三区美女秒播| 久久夜色精品国产噜噜av小说| 午夜精品久久久久久久久久 | 久久成人av网站| 女同性αv亚洲女同志| av电影在线观看网站| 国产精品7m凸凹视频分类| 这里只有精品电影| 免费在线观看视频a| 亚洲国产精品久久网午夜小说| 亚洲三区欧美一区国产二区| 激情成人中文字幕| 欧美日韩一区二区三区免费| 亚洲天堂中文字幕在线| 亚洲人免费短视频| 亚洲精品美国一| 99在线视频播放| 无码任你躁久久久久久久| 丁香花在线电影| 中文在线一区二区| 丁香五月网久久综合| 无码人妻丰满熟妇奶水区码| 中文字幕乱码在线播放| 成人欧美一区二区三区小说 | 中国人与牲禽动交精品| 极品人妻一区二区| 黄色漫画在线免费观看| 国产日韩视频| 欧美猛男性生活免费| 亚洲黄色小说视频| 国产中文字幕在线视频| 成人自拍视频在线观看| 成人疯狂猛交xxx| 国产乱国产乱老熟| av在线一区不卡| 欧美丝袜一区二区三区| 黄色成人在线看| 免费看成年视频网页| 亚洲一区二区成人| 久久久久久久影院| 青娱乐在线视频免费观看| 欧美6一10sex性hd| 亚洲精品综合在线| 91视频成人免费| 国产短剧电视剧免费观看| 真实国产乱子伦精品一区二区三区| 一个人www欧美| 日本一二三不卡视频| melody高清在线观看| 久久久无码精品亚洲日韩按摩| 国产尤物91| 狠狠色成人综合网图片区| 久久国产小视频| 日韩亚洲精品电影| 国产成人自拍网站| 综合毛片免费视频| 欧洲精品一区二区三区在线观看| 欧美精品第三页| 免费播放av| 99国产精品国产精品久久| 精品综合久久| 久草在线资源网| 欧美在线亚洲| 久久琪琪电影院| 最新中文字幕一区| 日韩一区二区三区精品| 亚洲精品动漫100p| 免费看的黄色录像| 女人高潮被爽到呻吟在线观看| 欧美网站在线观看| 五月激情婷婷在线| 国内av一区二区三区| 国产精品污网站| 伊人久久在线观看| 成人网18免费软件大全| 粉嫩绯色av一区二区在线观看| 精品国产综合区久久久久久| 欧美另类videosbest视频| 亚洲在线国产日韩欧美| 91在线|亚洲| 亚州欧美色图| 日本中文在线一区| 国产99在线免费| 国内国产区免费视频| 麻豆高清免费国产一区| 激情小说综合区| 日日干夜夜草| 不卡的av网站| 糖心vlog在线免费观看| 116极品美女视频在线观看| 91一区二区在线| 免费在线黄网站| 亚洲小说区图片区情欲小说| 亚洲精品乱码久久久久久| 一区二区成人网| 免费黄色在线观看| 欧美午夜寂寞影院| 成人免费看aa片| 国产精品扒开腿做爽爽爽视频软件| 91精品国产福利| 亚洲精品电影院| 综合成人在线| 久久久久久97| 亚洲第一免费视频| 亚洲少妇诱惑| 久久精品成人一区二区三区蜜臀 | 欧美激情1区| 91夜夜未满十八勿入爽爽影院 | 国产免费不卡av| 欧美欧美天天天天操| 91香蕉嫩草影院入口| 免费观看欧美成人禁片| 国产精一区二区三区| 亚洲第一精品区| 涩爱av在线播放一区二区| 精品久久香蕉国产线看观看亚洲| 亚洲高清无码久久| 成人免费毛片嘿嘿连载视频…| 一本一本久久a久久精品综合小说 一本一本久久a久久精品牛牛影视 | 性猛交xxxx| 日本不卡一区二区三区高清视频| 欧美日韩在线观看一区| av免费高清观看| 亚洲综合色区另类av| 国产+高潮+白浆+无码| 成人亚洲视频| 欧美精品18videos性欧美| 青青草视频社区| 懂色av噜噜一区二区三区av| 成人在线免费观看av| 日韩影视在线| 亚洲日韩欧美视频| 国产视频在线观看免费| 日本伊人色综合网| 欧美黄色免费网址| 麻豆免费在线观看| 日韩久久精品成人| 国产精品爽爽久久久久久| 青青草国产精品97视觉盛宴| 国产 欧美 日韩 一区| 里番在线观看网站| 亚洲乱码av中文一区二区| 97av免费视频| 精品制服美女丁香| 99精品在线免费视频| av3级在线| 欧美日韩国产成人| 国产欧美在线观看视频| 国产精品色哟哟| 91av在线免费| 亚州精品视频| 国产偷久久久精品专区| 一本大道香蕉久在线播放29| 欧美一区二区三区视频在线| 天天爱天天做天天爽| 蜜桃av一区二区三区| 精品久久久久久无码国产| jizzjizz少妇亚洲水多| 欧亚精品中文字幕|