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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2951|回復: 0
收起左側

C51單片機ADC0804模擬轉換Proteus仿真程序

[復制鏈接]
ID:611568 發表于 2020-11-7 22:40 | 顯示全部樓層 |閱讀模式
終于把這個模擬給做出來了,體會到了怎么去發現坑,學著去填坑,仿真文件供大家參考,謝謝。
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
Snipaste_2020-11-07_22-35-35.jpg

單片機源程序如下:
  1. #include<reg52.h>
  2. #include<intrins.h>

  3. //利用_nop_()的等待命令

  4. #define uchar unsigned char
  5. #define uint unsigned int

  6. sbit adwr=P3^2;
  7. sbit adrd=P3^1;
  8. sbit CS=P3^0;
  9. sbit INTR=P3^3;


  10. uchar num;
  11. uchar code display[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  12. //共陽極數碼管的顯示代碼

  13. uchar COM[]={0x01,0x02,0x04,0x08};
  14. //數碼管的位選代碼

  15. uchar num, num2=0,time[4]={0,0,0,0},val;
  16. float val2;
  17. unsigned int val3;


  18. main()
  19. {
  20. //使用定時器0定時對結果掃描顯示
  21. TMOD=0x01;  //定時器的工作方式1
  22. TH0=(65536-917)/256;        //定時定義初值       
  23. TL0=(65536-917)%256;               
  24. EA=1;         //總中斷使能打開
  25. ET0=1;        //定時器0中斷
  26. TR0=1;       //定時器0啟動

  27. CS=0; // 啟動轉換
  28. while(1)
  29. //此處循環等待時間到中斷
  30. {
  31. adwr=1;
  32. _nop_();
  33. adwr=0;
  34. _nop_();
  35. adwr=1;


  36. INTR=0;//intr轉換完成后自動拉低


  37. //當只有一片AD芯片時,可以將CS一直處在低位即可,連續轉換

  38. adrd=1;
  39. _nop_();

  40. adrd=0;
  41. _nop_();

  42. val=P1;
  43. adrd=1;
  44. val2=((val*1.0/255)*5.0);//將數字量轉換為數值。
  45. val3=val2*1000;//將轉化的數值放大后,分別其對應位的值
  46. time[0]=val3/1000;//個位
  47. time[1]=val3%1000/100;//個分位
  48. time[2]=val3%100/10;//十分位
  49. time[3]=val3%10;//千分位

  50. }

  51. }


  52. void Timer_0()  interrupt 1
  53. {

  54.         TH0=(65536-917)/256;        //中斷后計數器重新賦值       
  55.         TL0=(65536-917)%256;

  56.         num++;
  57.         if (num==10)
  58.                 {num=0;

  59.                 P2=COM[num2];//取反后,位選數碼管全部熄滅
  60. //共陽極數碼管時,高電平選通,低電平關閉

  61.                 P0=0xff;//數碼管全部低電平,熄滅

  62.                 {
  63.                 if(num2==0)
  64.                         {P0=display[time[num2]]&0x7F;}  //顯示帶小數點的個位數

  65.                 else
  66.                         {P0=display[time[num2]];}   
  67.                          }
  68.                 num2++;                              
  69.                 if(num2>=4) num2=0;

  70.         }

  71. }
復制代碼

所有資料51hei提供下載:
02_ADC轉換.zip (89.66 KB, 下載次數: 41)



評分

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

查看全部評分

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 午夜看片网站 | 国产一区二区在线免费视频 | 亚洲激情一区二区三区 | 亚洲444kkkk在线观看最新 | 狠狠亚洲 | 国产精品久久久久久久久久了 | 亚洲国产成人精品女人久久久 | 97国产超碰 | 四虎影院一区二区 | 日本视频免费 | 亚洲精品久久久久avwww潮水 | 日日爱夜夜操 | 一区视频在线播放 | 亚洲午夜av久久乱码 | 国产精品视频在线观看 | 亚洲国产精品久久久久秋霞不卡 | 成人一区av | 日韩欧美在线观看视频 | 成人精品一区二区三区 | 成人在线观看免费观看 | 男人天堂av网 | 亚洲国产精品99久久久久久久久 | 精品一区二区三区在线观看国产 | 成人影院网站ww555久久精品 | 精品一区二区三区在线视频 | 亚洲一区二区三区在线免费观看 | 99精品视频免费观看 | 九九久久这里只有精品 | 欧美一区二区三区在线播放 | 小h片免费观看久久久久 | 精品一区二区三区在线视频 | 一区二区三区在线观看免费视频 | 91精品国产乱码久久久久久久久 | 欧美性大战久久久久久久蜜臀 | 日韩欧美精品 | 国产97人人超碰caoprom | 麻豆一区二区三区精品视频 | 国产h在线| 亚洲一区二区视频在线观看 | 国产一区二区自拍 | 日韩亚洲一区二区 |