|
之前做的簡(jiǎn)單設(shè)計(jì),無(wú)線充電給超級(jí)電容充電,并進(jìn)行檢測(cè)是否充滿,源代碼、和一些電路分享給大家看看,水平有限,希望大家多多指教。
程序流程圖:
0.png (41.66 KB, 下載次數(shù): 75)
下載附件
2019-7-7 02:29 上傳
制作出來(lái)的實(shí)物圖如下:
S[GPOD@0}32RJ0SPTI(J%UA.png (654.33 KB, 下載次數(shù): 76)
下載附件
接線圖
2019-7-6 16:21 上傳
0.png (263.78 KB, 下載次數(shù): 73)
下載附件
2019-7-7 02:28 上傳
單片機(jī)源程序如下:
- /*接好線后記得供地,根據(jù)程序來(lái)決定采集通道是IN幾。開(kāi)始時(shí)的數(shù)據(jù)是變化的當(dāng)采集一點(diǎn)
- 電壓時(shí)就穩(wěn)定顯示采集的電壓,采集電壓時(shí)記得改變基準(zhǔn)電壓,每個(gè)板基準(zhǔn)電壓都不同。
- AIN0~AIN10為模擬輸入端; 為片選端;DIN 為串行數(shù)據(jù)輸入端;
- DOUT為A/D轉(zhuǎn)換結(jié)果的三態(tài)串行輸出端;EOC為轉(zhuǎn)換結(jié)束端;CLK為I/O時(shí)鐘;REF+為正基準(zhǔn)電壓端;REF-為負(fù)基準(zhǔn)電壓端;VCC為電源;GND為地。
- */
- #include <reg52.h>
- #include "12864.h"
- #include "TLC2543.h"
- #define uint unsigned int
- #define uchar unsigned char
- unsigned long r;
- sbit cek1 = P0^0;
- /*主函數(shù)*/
- void main()
- {
- uint V0=0,I=0;
- /*調(diào)用 */
- LCD_init(); //液晶初始化
- LCD_display(); //顯示函數(shù)
- //cek1=0;
- while(1)
- {
- read2543(0x01); //選擇通道IN0測(cè)量電流
- I=(uint)(read2543(0x00)*50000/4095); //TLC2543采集電壓的公式 2的12次方減1=4095 49900是基準(zhǔn)電壓
- shujuxs(I,1,3);
- read2543(0x02); //選擇通道IN1測(cè)量電壓
- V0=(uint)(read2543(0x01)*50000/4095);
- shujux(V0,2,3);
- if(I<500) //判斷電池電壓是否充滿電流滿足
- {
- cek1=1;
- delayms(60000); // 如果充滿就斷電
- }
- else
- {
- cek1=0; //未滿繼續(xù)充電
- }
- }
- }
復(fù)制代碼
0.png (7.81 KB, 下載次數(shù): 74)
下載附件
2019-7-7 02:29 上傳
所有資料51hei提供下載:
無(wú)線充電檢測(cè).zip
(464.06 KB, 下載次數(shù): 128)
2019-7-6 16:22 上傳
點(diǎn)擊文件名下載附件
源代碼和相關(guān)電路 下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|