欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

記錄一個數字直流電壓表的作業

[復制鏈接]
ID:355971 發表于 2018-6-21 14:39 | 顯示全部樓層 |閱讀模式
本帖最后由 Eibles 于 2018-6-21 14:41 編輯
  1. #include<reg51.h>
  2. #define uchar unsigned char //定義數據類型
  3. #define uint unsigned int        //定義數據類型
  4. sbit P2_4=P2^4;
  5. sbit ST=P2^5;
  6. sbit EOC=P2^6;
  7. sbit OE=P2^7;
  8. sbit p2_0=P2^0;
  9. sbit p2_1=P2^1;
  10. sbit p2_2=P2^2;
  11. sbit p2_3=P2^3;
  12. uchar code led_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //建立0-9字模

  13. void delay0(void)
  14. {
  15.         uchar i,j;
  16.         for(i=0;i<10;i++)
  17.         for(j=0;j<100;j++);
  18. }
  19. timer0()interrupt 1
  20. {
  21.         P2_4=!P2_4;                                      //改變電平狀態
  22. }
  23. void main(void)
  24. {
  25.         uchar k;
  26.         uint l;   
  27.         TMOD=0x02;                    //定時器T0方式2       
  28.         TH0=(256-100)%256;            //0.1ms定時,裝載初始值
  29.         TL0=(256-100)%256;
  30.         IE=0x82;
  31.         EA= 1;                                          //開啟全局中斷
  32.         ET0= 1;
  33.         TR0=1;                                          //啟動定時器0
  34.         P2=0x4f;                      //初始化 P2口
  35.         while(1)
  36.         {
  37.                 ST=0;                                                  //發出啟動脈沖信號
  38.                 delay0();
  39.                 ST=1;
  40.                 delay0();
  41.                 ST=0;
  42.                 while(EOC==1);                                  //查詢結束狀態
  43.                 delay0();
  44.                 OE=1;                                                  //OE置1信號
  45.                 k=P1;                                                  //將A/D結果賦值給k
  46.                 l=5000*((float)k/255);                  //計算電壓值       
  47.                 p2_3=0;                                                  //打開p2_3口
  48.                 P0=led_mod[l%10];                          //求個位
  49.                 delay0();
  50.                 p2_3=1;                                                  //關閉p2_3口
  51.                 p2_2=0;                                                  //打開p2_2口
  52.                 P0=led_mod[l/10%10];                  //求十位
  53.                 delay0();
  54.                 p2_2=1;                                                  //關閉p2_2口
  55.                 p2_1=0;                                                  //打開p2_1口
  56.                 P0=led_mod[l/100%10];                  //求百位
  57.                 delay0();
  58.                 p2_1=1;                                                  //關閉p2_1口
  59.                 p2_0=0;                                                  //打開p2_0口
  60.                 P0=led_mod[l/1000];                          //求千位
  61.                 delay0();
  62.                 p2_0=1;                                                  //關閉p2_0口
  63.         }
  64. }
復制代碼



2018621-143850.jpg

評分

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

查看全部評分

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表