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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

DIY毫安微安電流表(單片機10位ADC+LM358)程序原理圖PCB及實物制作圖片

  [復制鏈接]
跳轉到指定樓層
樓主
測試工程師一枚,實際工作中經常要測量產品的待機功耗和休眠功耗。通使用電流表來測產品的工作電流,突然萌生自己制作一個電流表的想法,然后學習了一下電流采樣的原理,自己畫了一個原理圖,請同事幫忙畫了PCB。程序方面借鑒了在51黑找到的一個測溫度的例程。
基本設計:
單片機:使用 STC15W408AS,寬電壓供電,8通道10位ADC,選擇了SOP28封裝引腳夠用
電源:內置9V電池供電,使用LM1117-3.3V穩壓芯片
檢流電阻:毫安檔使用1歐姆2512貼片電阻,微安檔使用100歐姆2512貼片電阻。因考慮到產品實際待機工作電流(小于30mA)和休眠工作電流(小于100uA)。檢流電阻的大小和精度可能在某些場合不合適,但已可以滿足本項目需求。
運算放大器:使用LM358DR組成兩路差分放大電路,分別放大毫安檔和微安檔檢流電阻兩端電壓,放大倍數分別設置為10倍和50倍。
顯示屏:LCD1602 3.3V版

調試結果:
實測LM358有一定的零點漂移,在程序中減掉零點漂移量后,毫安檔和微安檔的電流精度和萬用表對比,結果精度非常高。LM358輸出電壓會比Vcc低大約不到1.5V,這一點一開始沒有想到,這個會影響最大測量范圍以及最大可測量點附近的精度。實際調試后,將量程確定為毫安檔0-200mA和微安檔0-400uA,已足夠工作中的測試使用。如果要調整量程,只要調整檢流電阻或者運放的放大倍數即可。

附件中有電路原理圖和PCB及程序。比較基礎的應用,分享給大家,希望可以給有需要的朋友帶來幫助。
Altium Designer畫的毫安微安電流表原理圖和PCB圖如下:(51hei附件中可下載工程文件)




制作出來的成品實物圖如下:




微安檔精度:


毫安檔精度:





全部資料51hei下載地址:
程序.rar (38.04 KB, 下載次數: 903)
原理圖和PCB.rar (10.88 MB, 下載次數: 1057)

評分

參與人數 6黑幣 +141 收起 理由
AAA_MCU + 6 很給力!
diy619 + 18 共享資料的黑幣獎勵!
topsjb + 5 程序書寫工整、清晰!適合下載學習。
ko44 + 7 共享資料的黑幣獎勵!
kaixuan_27 + 5
admin + 100 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

來自 2#
ID:702386 發表于 2020-12-26 17:08 | 只看該作者

新增NTC測溫功能和秒表功能,采樣和顯示刷新周期由定時器控制。
NTC用的是P1.0口,因為電流采樣很精確,所以沒有使用基準電壓源,把U2/R2/C5/C6/C7全拆掉,R2位置焊上10K 3435的NTC,C7位置焊上10K 1%的0603電阻。
效果好的很。

毫安微安電流表程序V2.1 增加NTC測溫和秒表.rar

51.74 KB, 下載次數: 433, 下載積分: 黑幣 -5

升級程序

評分

參與人數 1黑幣 +30 收起 理由
admin + 30 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:328014 發表于 2020-12-24 20:10 | 只看該作者
太棒了,我一直想制作一個.下面是樓主的程序:
  1. /***************************************/
  2. /*     基于STC15W408AS的電流表設計     */
  3. /*     測量范圍0-200mA,0-400uA         */
  4. /*     創建者 :zsw                    */
  5. /*     創建時間:2020/12/21            */
  6. /***************************************/
  7. //2.5V基準電壓接P1.0,uA采樣接P1.1,mA采樣接P1.2
  8. //毫安檔使用1歐(5%)檢流電阻,微安檔使用100歐(1%)檢流電阻。

  9. #include "STC15W408AS.H"
  10. #include "intrins.h"

  11. #define ADC_POWER    0x80    //ADC電源控制位
  12. #define ADC_FLAG    0x10    //ADC完成標志位
  13. #define ADC_START    0x08    //ADC啟動控制位
  14. #define ADC_SPEED0    0x00    //ADC轉換速度,一次轉換需要540個時鐘
  15. #define ADC_SPEED1    0x20    //ADC轉換速度,一次轉換需要360個時鐘
  16. #define ADC_SPEED2    0x40    //ADC轉換速度,一次轉換需要180個時鐘
  17. #define ADC_SPEED3    0x60    //ADC轉換速度,一次轉換需要90個時鐘

  18. #define N 8    //ADC采樣使用遞推平均濾波算法,采樣次數

  19. sbit lcdrs=P3^2;    //LCD1602指令和數據寄存器選擇,高電平時為數據,低電平選擇命令
  20. sbit lcdrw=P3^3;    //LCD1602讀寫選擇,高電平為讀,低電平為寫
  21. sbit lcden=P3^4;    //LCD1602使能
  22. unsigned char Show[3]={0,0,0};    //顯示數組mA
  23. unsigned char Show1[3]={0,0,0};    //顯示數組uA
  24. unsigned int  ADC_Buf[N+1];        //采樣數組mA
  25. unsigned int  ADC_Buf2[N+1];    //采樣數值uA
  26. unsigned int current=0;            //采樣毫安值
  27. unsigned int current2=0;        //采樣微安值
  28. unsigned char num,ADCcount=0,ADCcount2=0;    //ADC采樣次數變量
  29. unsigned char code table1[]="CURRENT1:";
  30. unsigned char code table2[]="CURRENT2:";

  31. /******************************
  32. 函數說明:延時函數,執行一次1毫秒,STC_ISP軟件給出 @6MHz 1T單片機
  33. 入口參數:ms=延時毫秒數
  34. 出口參數:無
  35. ******************************/
  36. void Delay_MS(unsigned int ms)
  37. {
  38.     unsigned char i, j;
  39.     while(ms--)
  40.     {
  41.         i = 6;    j = 211;
  42.         do{
  43.             while (--j);
  44.         } while (--i);
  45.     }
  46. }

  47. /******************************
  48. 函數說明:LCD1602驅動
  49. ******************************/
  50. void write_com(unsigned char com)
  51. {
  52.     lcdrs=0;         //rs低電平為寫命令
  53.     P2=com;            
  54.     Delay_MS(5);
  55.     lcden=1;         //EN先置高電平
  56.     Delay_MS(5);
  57.     lcden=0;         //短暫延時后EN置低電平
  58. }
  59. void write_dat(unsigned char dat)
  60. {
  61.     lcdrs=1;         //rs高電平為寫數據
  62.     P2=dat;
  63.     Delay_MS(5);
  64.     lcden=1;
  65.     Delay_MS(5);
  66.     lcden=0;
  67. }
  68. /******************************
  69. 函數說明:初始化ADC寄存器
  70. ******************************/
  71. void Init_ADC(void)
  72. {
  73.     P1M1 |= 0x01;
  74.     P1M0 &= ~1;            //設P1.0為高阻輸入。因3.3V電源很精確,暫未使用2.5V基準電壓源。
  75.     P1ASF = 0x06;        //打開P1.2和P1.1口的ADC功能
  76.     ADC_RES = 0;   
  77.     ADC_RESL= 0;        //清掉ADC轉換結果寄存器
  78.     ADC_CONTR = ADC_POWER | ADC_SPEED3;    //使能A/D供電,設置轉換速度90T
  79. }

  80. /******************************
  81. 函數說明:LCD1602初始化
  82. ******************************/
  83. void LCD1602_Init(void)
  84. {
  85.     lcdrw=0;
  86.     lcden=0;
  87.     P2=0;
  88.     write_com(0x38);   //設置顯示模式為兩行5*8顯示
  89.     write_com(0x0C);   //初始化,開顯示
  90.     write_com(0x06);   //初始化,讀寫一個字符后地址指針自動加1
  91.     write_com(0x01);   //清屏
  92.     write_com(0x80);   //數據地址指針從0開始   
  93.     for(num=0;num<9;num++)            //第1行顯示'CURRENT1:'
  94.         write_dat(table1[num]);   
  95.     write_com(0x80+0x40);   //數據地址指針從0開始
  96.     for(num=0;num<9;num++)            //第1行顯示'CURRENT2:'
  97.         write_dat(table2[num]);
  98. }
  99. /******************************
  100. 函數說明:查詢方式讀取ADC轉換結果
  101. 入口參數:ch  ADC采樣通道
  102. 出口參數:int ADC_RES ADC轉換結果
  103. ******************************/
  104. unsigned int Get_ADC_Result(unsigned char ch)
  105. {
  106.     unsigned int result;
  107.     ADC_RES = 0;   
  108.     ADC_RESL= 0;                    //清掉ADC轉換結果寄存器
  109.     ADC_CONTR =ADC_POWER|ADC_SPEED3|ch|ADC_START;//配置ADC,設置轉換通道,啟動轉換
  110.     _nop_();    _nop_();
  111.     _nop_();    _nop_();            //等待設置ADC_POWER完畢
  112.     while (!(ADC_CONTR & ADC_FLAG));//讀取轉換完畢標志位ADC_FLAG
  113.     ADC_CONTR &= ~ADC_FLAG;         //清除ADC_FLAG標志位
  114.     result = ADC_RES<<2|ADC_RESL;    //讀取10位轉換結果保存到result
  115.     return result;                  //返回ADC轉換結果10位
  116. }
  117. /******************************
  118. 函數說明:獲取mA值
  119. ******************************/
  120. void Get_Current1(void)
  121. {
  122.     unsigned char xx;
  123.     unsigned int sum,currentvalue;
  124.     sum = currentvalue =0;   
  125.     ADC_Buf[N]=Get_ADC_Result(2);    //將ADC轉換結果放數組最高位
  126.     if( ++ADCcount < 8)        //采樣初期不使用濾波算法
  127.     {   
  128.         for(xx=0;xx<N;xx++)    //準備濾波算法的數據
  129.         {
  130.             ADC_Buf[xx]=ADC_Buf[xx+1];//所有數據循環左移
  131.         }
  132.         currentvalue=ADC_Buf[N];//采樣初期使用當前采樣值
  133.     }
  134.     else     //只有采樣次數大于8次以后才使用濾波算法   
  135.     {
  136.         ADCcount=8;    //采樣次數超過8次后,固定設置為8
  137.         for(xx=0;xx<N;xx++)    //濾波算法
  138.         {
  139.             ADC_Buf[xx]=ADC_Buf[xx+1];//所有數據循環左移
  140.             sum+=ADC_Buf[xx];    //求和
  141.         }
  142.         currentvalue=sum/N;        //求平均值        
  143.     }   
  144.     currentvalue=currentvalue*0.3223; //ADC平均值轉化成mA電流值
  145.     if(currentvalue>=2)
  146.         currentvalue=currentvalue-2;     //實測零點漂移了2~3mA
  147.     if(currentvalue<=3)                     //顯示門檻
  148.         currentvalue=0;
  149.     current=currentvalue;
  150. }
  151.                                     
  152. /******************************
  153. 函數說明:顯示mA值
  154. ******************************/
  155. void Display_mA(void)
  156. {
  157.     if(current<=200)
  158.     {
  159.         Show[0]=current%1000/100;        //電流值百位
  160.         Show[1]=current%100/10;    //電流值十位
  161.         Show[2]=current%10;        //電流值個位
  162.         write_com(0x80+0x0A);            //第1行第10個字符開始顯示
  163.         if(Show[0]>0)                    
  164.             write_dat(0x30+Show[0]);    //寫電流值百位
  165.         else
  166.             write_dat(' ');
  167.         if((Show[0]==0)&&(Show[1]==0))
  168.             write_dat(' ');                //寫電流值十位
  169.         else
  170.             write_dat(0x30+Show[1]);
  171.         write_dat(0x30+Show[2]);        //寫電流值個位
  172.         write_dat(' ');
  173.         write_dat('m');
  174.         write_dat('A');
  175.     }
  176.     else                               //超量程顯示"999"
  177.     {
  178.         write_com(0x80+0x0A);
  179.         write_dat('9');
  180.         write_dat('9');
  181.         write_dat('9');
  182.         write_dat(' ');
  183.         write_dat('m');
  184.         write_dat('A');   
  185.     }
  186. }

  187. /******************************
  188. 函數說明:獲取uA值
  189. ******************************/
  190. void Get_Current2(void)
  191. {
  192.     unsigned char xx;
  193.     unsigned int sum,currentvalue;
  194.     sum = currentvalue =0;   
  195.     ADC_Buf2[N]=Get_ADC_Result(1);    //將ADC轉換結果放數組最高位
  196.     if( ++ADCcount2 < 8)        //采樣初期不使用濾波算法
  197.     {   
  198.         for(xx=0;xx<N;xx++)    //準備濾波算法的數據
  199.         {
  200.             ADC_Buf2[xx]=ADC_Buf2[xx+1];//所有數據循環左移
  201.         }
  202.         currentvalue=ADC_Buf2[N];//采樣初期使用當前采樣值
  203.     }
  204.     else     //只有采樣次數大于8次以后才使用濾波算法   
  205.     {
  206.         ADCcount2=8;    //采樣次數超過8次后,固定設置為8
  207.         for(xx=0;xx<N;xx++)    //濾波算法
  208.         {
  209.             ADC_Buf2[xx]=ADC_Buf2[xx+1];//所有數據循環左移
  210.             sum+=ADC_Buf2[xx];    //求和
  211.         }
  212.         currentvalue=sum/N;        //求平均值        
  213.     }   
  214.     currentvalue=currentvalue*0.6445; //ADC平均值轉化成uA電流值
  215.     if(currentvalue>=15)
  216.         currentvalue=currentvalue-15;     //實測零點漂移了15uA
  217.     if(currentvalue<=3)                     //顯示門檻
  218.         currentvalue=0;
  219.     current2=currentvalue;
  220. }

  221. /******************************
  222. 函數說明:顯示uA值
  223. ******************************/
  224. void Display_uA(void)
  225. {
  226.     if(current2<=400)
  227.     {
  228.         Show1[0]=current2%1000/100;        //電流值百位
  229.         Show1[1]=current2%100/10;        //電流值十位
  230.         Show1[2]=current2%10;            //電流值個位
  231.         write_com(0x80+0x40+0x0A);            //第2行第10個字符開始顯示
  232.         if(Show1[0]>0)                    
  233.             write_dat(0x30+Show1[0]);    //寫電流值百位
  234.         else
  235.             write_dat(' ');
  236.         if((Show1[0]==0)&&(Show1[1]==0))
  237.             write_dat(' ');                //寫電流值十位
  238.         else
  239.             write_dat(0x30+Show1[1]);
  240.         write_dat(0x30+Show1[2]);        //寫電流值個位
  241.         write_dat(' ');
  242.         write_dat('u');
  243.         write_dat('A');
  244.     }
  245.     else                               //超量程顯示"999"
  246.     {
  247.         write_com(0x80+0x40+0x0A);
  248.         write_dat('9');
  249.         write_dat('9');
  250.         write_dat('9');
  251.         write_dat(' ');
  252.         write_dat('u');
  253.         write_dat('A');   
  254.     }
  255. }

  256. void main(void)
  257. {
  258.     Init_ADC();                //初始化ADC
  259.     LCD1602_Init();            //初始化LCD1602
  260.     while(1)
  261.     {        
  262.         for(num=0;num<8;num++)
  263.         {
  264.             Get_Current1();    //獲取mA電流值
  265.             Get_Current2();    //獲取uA電流值
  266. ……………………

  267. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
回復

使用道具 舉報

地板
ID:430774 發表于 2020-12-24 21:17 | 只看該作者
R8和R13有什么作用,可以去掉的吧
回復

使用道具 舉報

5#
ID:739727 發表于 2020-12-25 00:53 | 只看該作者
zx929747216 發表于 2020-12-24 21:17
R8和R13有什么作用,可以去掉的吧

提供運放差分輸入偏置電流
回復

使用道具 舉報

6#
ID:687694 發表于 2020-12-26 20:11 | 只看該作者
不用提供Avref 15w408內部有1.19V基準。
回復

使用道具 舉報

7#
ID:702386 發表于 2020-12-26 22:07 | 只看該作者
lovexulu 發表于 2020-12-26 20:11
不用提供Avref 15w408內部有1.19V基準。

多謝指點!
回復

使用道具 舉報

8#
ID:64053 發表于 2021-1-19 22:45 | 只看該作者
zsw3721 發表于 2020-12-26 17:08
新增NTC測溫功能和秒表功能,采樣和顯示刷新周期由定時器控制。
NTC用的是P1.0口,因為電流采樣很精確, ...

樓主你好,我的MCU是20P 腳的能幫改一下程序嗎
回復

使用道具 舉報

9#
ID:702386 發表于 2021-1-20 08:55 | 只看該作者
93mxt 發表于 2021-1-19 22:45
樓主你好,我的MCU是20P 腳的能幫改一下程序嗎

也是STC15W408AS嗎?20P的MCU,要調整一下IO口,建議LCD的數據口改到P3口,RS、RW、EN分別改到P1.3、P1.4、P1.5。建議你自己動手喲,這樣才好玩。
回復

使用道具 舉報

10#
ID:276663 發表于 2021-1-20 09:19 | 只看該作者
做的不錯,具有實用價值的東西才是好東西!
回復

使用道具 舉報

11#
ID:235954 發表于 2021-1-27 14:07 | 只看該作者
3D外殼想做來著、
回復

使用道具 舉報

12#
ID:390571 發表于 2021-2-4 11:58 | 只看該作者
正需要這個,看著精度挺不錯,下載學習,屏幕能小型化點便攜就更好了
回復

使用道具 舉報

13#
ID:576203 發表于 2021-2-6 22:22 | 只看該作者
下面那行挺空的,加個電壓顯示就完美了,這個比較實用。我是買的成品毫安和微安表改的。測試脈沖型負載就換成指針微安表,數碼管的反應跟不上
回復

使用道具 舉報

14#
ID:632112 發表于 2021-2-24 11:46 | 只看該作者

做的不錯,下載學習,
回復

使用道具 舉報

15#
ID:799716 發表于 2021-2-25 14:15 | 只看該作者
C程序小白入門 請教currentvalue=currentvalue*0.6445; //ADC平均值轉化成uA電流值  這個0.6445如何的得來的
回復

使用道具 舉報

16#
ID:702386 發表于 2021-2-25 15:50 | 只看該作者
18176214303 發表于 2021-2-25 14:15
C程序小白入門 請教currentvalue=currentvalue*0.6445; //ADC平均值轉化成uA電流值  這個0.6445如何的得來 ...

10位ADC有1024個采樣分辨值,采樣獲得的值ADC=Vadc * (1024/Vcc),連續采樣8次獲得ADC平均值先賦給currentvalue。
微安采樣電阻100歐,運放放大50倍,則AD通道的采樣電壓為Vadc=I(A)*100歐*50=I(uA)*100*50/1000000,代入上式,可算得I(uA)=currentvalue*3.3*1000000/(1024*100*50)=currentvalue*0.6445.
回復

使用道具 舉報

17#
ID:799716 發表于 2021-3-1 10:25 | 只看該作者
zsw3721 發表于 2021-2-25 15:50
10位ADC有1024個采樣分辨值,采樣獲得的值ADC=Vadc * (1024/Vcc),連續采樣8次獲得ADC平均值先賦給curren ...

非常感謝 學習了
回復

使用道具 舉報

18#
ID:460466 發表于 2021-3-1 12:40 | 只看該作者
液晶顯示就不能用中文嗎?!
回復

使用道具 舉報

19#
ID:582255 發表于 2021-3-1 12:58 | 只看該作者
zsw3721 發表于 2020-12-26 17:08
新增NTC測溫功能和秒表功能,采樣和顯示刷新周期由定時器控制。
NTC用的是P1.0口,因為電流采樣很精確, ...

樓主能貼的元件清單不
回復

使用道具 舉報

20#
ID:799716 發表于 2021-3-1 16:39 | 只看該作者
zsw3721 發表于 2021-2-25 15:50
10位ADC有1024個采樣分辨值,采樣獲得的值ADC=Vadc * (1024/Vcc),連續采樣8次獲得ADC平均值先賦給curren ...

電路上,實際是51倍放大吧,計算按50計算
回復

使用道具 舉報

21#
ID:702386 發表于 2021-3-1 21:42 | 只看該作者
18176214303 發表于 2021-3-1 16:39
電路上,實際是51倍放大吧,計算按50計算

微安檔的運算放大器就是按50倍放大的,你可以看一下差分放大器的放大倍數計算公式。
回復

使用道具 舉報

22#
ID:799716 發表于 2021-3-2 08:47 | 只看該作者
zsw3721 發表于 2021-3-1 21:42
微安檔的運算放大器就是按50倍放大的,你可以看一下差分放大器的放大倍數計算公式。

嗯,學習了
回復

使用道具 舉報

23#
ID:796531 發表于 2021-3-18 08:54 | 只看該作者
好東西,在制作一個 耐壓測試儀正好用到參考
回復

使用道具 舉報

24#
ID:796531 發表于 2021-3-18 09:43 | 只看該作者
建議在 100Ω電阻兩端并聯一個正向壓降(Vf)低一點的肖特基二極管,如VS-10BQ015HM3(210mV @ 1A )上正下負 ,保證 設備待機突變為開機時 R5兩端壓降不影響設備工作

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

25#
ID:138956 發表于 2021-3-18 09:48 | 只看該作者


做的不錯,學習學習。
回復

使用道具 舉報

26#
ID:702386 發表于 2021-3-18 14:23 | 只看該作者
paladina 發表于 2021-3-18 09:43
建議在 100Ω電阻兩端并聯一個正向壓降(Vf)低一點的肖特基二極管,如VS-10BQ015HM3(210mV @ 1A )上正下 ...

不錯的建議。謝謝。
回復

使用道具 舉報

27#
ID:856401 發表于 2021-3-20 21:53 | 只看該作者
照著樓主的資料,做一個
回復

使用道具 舉報

28#
ID:92222 發表于 2021-4-2 08:45 | 只看該作者
感謝分享,能出個數碼管顯示的版本就好了,這樣成本低一點
回復

使用道具 舉報

29#
ID:430492 發表于 2021-4-2 11:24 | 只看該作者
設計還是比較巧的,謝謝樓主無私分享!!
回復

使用道具 舉報

30#
ID:702386 發表于 2021-4-2 20:37 | 只看該作者
c51流浪者 發表于 2021-4-2 08:45
感謝分享,能出個數碼管顯示的版本就好了,這樣成本低一點

數碼管的功耗太大,顯示的內容又有限。這塊LCD1602 3.3V的屏大概7塊錢,也能接受吧。
回復

使用道具 舉報

31#
ID:66328 發表于 2021-6-21 11:35 | 只看該作者
感謝樓主分享,樓主還可以看到這個帖子么,請教下,單片機燒錄時選用多大的晶振頻率?謝謝!
回復

使用道具 舉報

32#
ID:702386 發表于 2021-6-21 21:34 | 只看該作者
hnqylgq 發表于 2021-6-21 11:35
感謝樓主分享,樓主還可以看到這個帖子么,請教下,單片機燒錄時選用多大的晶振頻率?謝謝!

選的內部6M的RC頻率。
回復

使用道具 舉報

33#
ID:816540 發表于 2021-6-24 10:32 | 只看該作者
謝謝分享!正在學習51單片機。
回復

使用道具 舉報

34#
ID:948569 發表于 2021-7-3 08:55 | 只看該作者
樓主, 有沒有測試過AD跳動幾個碼
回復

使用道具 舉報

35#
ID:702386 發表于 2021-7-3 11:56 | 只看該作者
KinHimTang 發表于 2021-7-3 08:55
樓主, 有沒有測試過AD跳動幾個碼

拿直流源接色環電阻,毫安和微安檔測量值都很穩定,只波動1mA和1uA左右。
回復

使用道具 舉報

36#
ID:507641 發表于 2021-7-22 03:22 | 只看該作者
學習下,如果用彩屏更炫耀,下來看看
回復

使用道具 舉報

37#
ID:507641 發表于 2021-7-22 03:45 | 只看該作者
建議L358 VCC加R C濾波好的,
回復

使用道具 舉報

38#
ID:936913 發表于 2021-7-22 22:42 | 只看該作者
本帖最后由 wjqzywmm 于 2021-7-24 11:49 編輯

感謝樓主分享,有個小疑問:Get_Current1()中adc結果為什么要循環左移呢?小于8直接給數組賦值應該也可以吧。
今天改造自己的程序,明白了循環左移的意義
回復

使用道具 舉報

39#
ID:27031 發表于 2021-7-22 23:21 | 只看該作者
謝謝分享DIY毫安微安電流表
回復

使用道具 舉報

40#
ID:718536 發表于 2021-8-2 16:21 | 只看該作者
kkk2020 發表于 2021-2-6 22:22
下面那行挺空的,加個電壓顯示就完美了,這個比較實用。我是買的成品毫安和微安表改的。測試脈沖型負載就換 ...

提高一下刷新速度就好很多了
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产91在线 | 亚洲 | 国产精品一区在线观看 | 日本天堂视频 | 看a网站 | 久久成人激情 | 不卡一区二区三区四区 | 欧美日韩高清 | 超碰在线人人干 | 欧美黄色一级毛片 | 国产免费一区二区三区 | 国产精品欧美一区二区 | 超碰免费在线 | 成人av色 | 亚洲一区高清 | 亚洲精品国产综合区久久久久久久 | 久久精品国产一区二区电影 | 女人夜夜春| 国产粉嫩尤物极品99综合精品 | 美女视频一区二区三区 | 久久久青草婷婷精品综合日韩 | 国产中文字幕在线 | 九色在线 | 免费观看的黄色网址 | av网站免费看| 99一级毛片 | 色网站在线免费观看 | 草樱av| 成人性视频免费网站 | 狠狠干美女 | 成人免费视频网站在线看 | 成人av观看 | 日韩视频在线播放 | av网站免费在线观看 | 国产激情一区二区三区 | 成人在线视频网址 | 午夜大片| 中文字幕av在线 | 国产精品.xx视频.xxtv | 美女视频一区 | wwww.xxxx免费 | 亚洲永久精品国产 |