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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

acs712和TLC549檢測電流在LCD上顯示 單片機(jī)程序哪兒出問題?

[復(fù)制鏈接]
回帖獎勵 5 黑幣 回復(fù)本帖可獲得 5 黑幣獎勵! 每人限 1 次
跳轉(zhuǎn)到指定樓層
樓主


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

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

  5. void delay(uchar ms);    //延時函數(shù)
  6. void wr_com(unsigned char com);    //寫入指令數(shù)據(jù)到LCD
  7. void wr_dat(unsigned char dat);    //寫入字符顯示數(shù)據(jù)到LCD
  8. void xianshi(uchar dizhi, uchar suzi);   //單獨(dú)寫數(shù)到液晶函數(shù) ( 地址  數(shù)據(jù) )
  9. //uchar TLC549_ADC(void);   //TLC549模數(shù)轉(zhuǎn)換
  10. //uchar get_cur(void);
  11. void uart_init();         //串口初始化函數(shù)

  12. sbit rs = P2^0;
  13. sbit rw = P2^1;
  14. sbit e = P2^2;

  15. sbit DI  = P1^0;
  16. sbit CS  = P1^1;
  17. sbit CLK = P1^2;

  18. uchar ad_0;
  19. uint AD;


  20. ////-------------------------------------
  21. ////                    主函數(shù)
  22. ////-------------------------------------
  23. //void main()
  24. //{
  25. //        uart_init();
  26. //        wr_com(0x01);    //顯示清屏
  27. //        wr_com(0x38);   //顯示模式設(shè)置
  28. //                wr_com(0x0c);     //光標(biāo)設(shè)置
  29. //        while(1)
  30. //         {
  31. //          delay(100);
  32. //          ad_0=TLC549_ADC();
  33. //    AD=ad_0*1.97
  34. //          xianshi(0x80+2,'A');
  35. //          xianshi(0x80+3,'=');
  36. //          xianshi(0x80+5,0x30+AD%1000/100);
  37. //          xianshi(0x80+6,'.');
  38. //          xianshi(0x80+7,0x30+AD%100/10);
  39. //          xianshi(0x80+8,0x30+AD%10);
  40. //          xianshi(0x80+9,'A');
  41. //        }
  42. //}

  43. //----------------------------------
  44. //               延時子程序
  45. //----------------------------------
  46. void delay(uchar ms)   
  47. {      
  48.          uchar i ;
  49.          while(ms--)
  50.          {
  51.                   for(i = 0 ; i<250;i++) ;
  52.          }
  53. }

  54. //-------------------------------------
  55. //         寫入指令數(shù)據(jù)到LCD
  56. //-------------------------------------
  57. void wr_com(unsigned char com)   
  58. {      

  59.          rs = 0 ;
  60.           rw = 0 ;
  61.           e = 0 ;
  62.           P0 = com ; //P0=D0-D7
  63.         delay(1);
  64.           e = 1 ;//清屏 上升沿寫入命令
  65.         delay(1);
  66.           e = 0 ;
  67. }               
  68.            
  69. //-------------------------------------------------
  70. //             寫入字符顯示數(shù)據(jù)到LCD
  71. //--------------------------------------------------
  72. void wr_dat(unsigned char dat)
  73. {      

  74.          rs = 1 ;
  75.           rw = 0 ;
  76.           e = 0 ;
  77.           P0 = dat ;
  78.                 delay(1);
  79.           e = 1 ;  //E上升沿寫入數(shù)據(jù)
  80.         delay(1);
  81.           e = 0 ;
  82. }

  83. //------------------------------------------------------
  84. //     單獨(dú)寫數(shù)到液晶函數(shù) ( 地址  數(shù)據(jù) )
  85. //------------------------------------------------------
  86. void xianshi(uchar dizhi, uchar suzi)
  87. {
  88.                  wr_com(dizhi);
  89.          wr_dat(suzi);
  90. }

  91. //-----------------------------------------
  92. //            TLC549模數(shù)轉(zhuǎn)換
  93. //-----------------------------------------
  94. uchar TLC549_ADC(uchar ain)
  95. {
  96.            uchar n, tmp;

  97.         CS  = 1;                     //CS置高,片選無效
  98.         CLK = 0;

  99.         CS  = 0;                     //CS置低,片選有效,同時DO輸出高位
  100.         _nop_();
  101.         _nop_();                     //適當(dāng)延遲時間1.4us Setup Time

  102.         for(n = 0; n < 8; n++) //串行數(shù)據(jù)移位輸入
  103.         {
  104.                 tmp <<= 1;//每個高電平時鐘讀取1個bit,8個時鐘可以讀取1個byte的轉(zhuǎn)換結(jié)果,數(shù)據(jù)高位先讀取
  105.                 tmp |=  DI;//程序中用八次循環(huán),可以讀出一個字節(jié)的轉(zhuǎn)換結(jié)果

  106.                 CLK = 1;        //0.4us
  107.                 _nop_();        //延遲0.1us
  108.                 CLK = 0;        //0.4us
  109.         }
  110.         CS = 1;            //CS置高,片選無效
  111.         for(n = 17; n != 0; n--) _nop_();  //下一次轉(zhuǎn)換需要延遲17us   n不等于0
  112.         return (tmp);

  113. }
  114. uint get_cur()
  115. {
  116.         uint vol,cur_1;
  117.         vol = TLC549_ADC(0) * 0.49; //輸入adc電壓的100倍。4.9=5(參照電壓)*/1024(10位)*100(用于顯示)
  118.         cur_1 = 5*vol-1250; //實(shí)際電流的100倍用于顯示,cur_real=(vol_real-2.5)*5
  119.         return cur_1;
  120. }
  121. //------------------------------------------
  122. //              串口初始化函數(shù) 一樣
  123. //------------------------------------------
  124. void uart_init()
  125. {
  126.         TMOD=0x20;                //9600bps
  127.         SCON=0x50;
  128.         TH1=0xFD;
  129.         TL1=0xFD;
  130.         TR1=1;
  131.         EA=1;
  132. }
  133. //-------------------------------------
  134. //                    主函數(shù)
  135. //-------------------------------------
  136. void main()
  137. {
  138.         uart_init();
  139.         wr_com(0x01);    //顯示清屏
  140.         wr_com(0x38);   //顯示模式設(shè)置
  141.     wr_com(0x0c);     //光標(biāo)設(shè)置
  142.         while(1)
  143.          {
  144.           delay(100);
  145.           AD=get_cur();
  146.           //AD=5*ad_0-1250;
  147.           xianshi(0x80+2,'A');
  148.           xianshi(0x80+3,'=');
  149.           xianshi(0x80+5,0x30+AD%1000/100);
  150.           xianshi(0x80+6,'.');
  151.           xianshi(0x80+7,0x30+AD%100/10);
  152.           xianshi(0x80+8,0x30+AD%10);
  153.           xianshi(0x80+9,'A');
  154.         }
  155. }
復(fù)制代碼


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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产成在线观看免费视频 | 国产一区二区三区久久久久久久久 | 中文字幕一区在线 | 先锋资源亚洲 | 午夜在线观看免费 | 国产精品久久久久aaaa樱花 | 欧美日韩国产精品一区二区 | 国产不卡一区 | 日韩在线一区二区三区 | 久久一二区 | 国产欧美一区二区三区久久人妖 | 欧美一级欧美一级在线播放 | 亚洲福利 | 91观看| 成人午夜影院 | 精品国产第一区二区三区 | 日本欧美黄色片 | 亚洲精品自拍视频 | 欧美一区二区在线播放 | 99热99| 色综合99 | 色偷偷888欧美精品久久久 | 1000部精品久久久久久久久 | 99在线视频观看 | 亚洲影音先锋 | 午夜伊人| 欧美一级久久 | 国产一区二区三区在线看 | 色偷偷噜噜噜亚洲男人 | 精品国产一二三区 | 日本不卡高字幕在线2019 | 黄色毛片免费 | 国产高清免费视频 | 天天插天天操 | 亚洲日日夜夜 | 黄色免费在线观看网站 | 国产精品99久久久久久动医院 | 久久久久一区二区三区 | 秋霞影院一区二区 | 国产乱码精品一区二区三区忘忧草 | 亚洲麻豆 |