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

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

QQ登錄

只需一步,快速開始

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

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

[復(fù)制鏈接]
回帖獎(jiǎng)勵(lì) 5 黑幣 回復(fù)本帖可獲得 5 黑幣獎(jiǎng)勵(lì)! 每人限 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í)函數(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. //               延時(shí)子程序
  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置低,片選有效,同時(shí)DO輸出高位
  100.         _nop_();
  101.         _nop_();                     //適當(dāng)延遲時(shí)間1.4us Setup Time

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

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩中文国产一区发布 | 超碰在线国产 | 亚洲精品久久久久久下一站 | 激情综合五月天 | 在线免费毛片 | 国产成人免费在线 | 午夜资源 | 97视频在线免费 | 欧美一区二区三区久久精品 | 日本一区二区不卡 | 国产成人在线看 | 亚洲成人av在线播放 | 99久久精品免费看国产高清 | 亚洲免费一区二区 | 91精品国产一区二区在线观看 | 99精品国产在热久久 | 国产精品一区二区久久 | 亚洲成人精品影院 | 亚洲综合电影 | 久久久久久久国产 | 亚洲精品小视频在线观看 | 欧美另类视频 | 91观看 | 国产成人小视频 | 久久天天躁狠狠躁夜夜躁2014 | 国产精品av久久久久久久久久 | 国产精品亚洲精品久久 | 国产极品91 | 欧美视频成人 | a黄在线观看 | 久久综合一区二区三区 | 综合国产 | 欧美第一区 | 99精品一级欧美片免费播放 | 黑人精品欧美一区二区蜜桃 | 精品一区二区三区在线观看 | jvid精品资源在线观看 | 亚洲精品电影网在线观看 | 9久9久| 免费观看一级特黄欧美大片 | 欧美黑人一区二区三区 |