1. 程式人生 > 實用技巧 >376【畢設課設】基於51微控制器手機無線充電器系統鋰電池存電系統設計

376【畢設課設】基於51微控制器手機無線充電器系統鋰電池存電系統設計

【資源下載】下載地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

51微控制器手機無線充電器系統鋰電池存電系統163
本系統由STC89C52微控制器、LCD1602液晶顯示、鋰電池充電檢測、
無線充電模組、鋰電池充電保護TP4056、升壓穩壓組成。
1、通過無線充電器並接給鋰電池供電,同時給檢測是否再給鋰電池進行充電。
2、鋰電池經過升壓模組,給整個微控制器系統及顯示進行供電。
3、顯示充電式累計時間:達到進行充電計時, 達不到自動停止計時,
計時格式時/分/秒/0.1秒。
1、液晶顯示是否在充電狀態。
無線充電器模組分兩部分,一部分12V供電輸出感應,另一部分接收感應
輸出5V給鋰電池充電。

#include<reg52.h> //包含標頭檔案,一般情況不需要改動,標頭檔案包含特殊功能暫存器的定義
#include<stdio.h>
#include "1602.h"
#include "delay.h"

sbit chargePin = P1^0;//充電檢測引腳

char dis0[16];			   //列印陣列初始化
char dis1[16];			   //列印陣列初始化
unsigned long times_20ms=0;	//定時器計數 初始值可以任意值 

unsigned long cgTime100ms=0;	 //充電計數
unsigned char cgTime_h,cgTime_m,cgTime_s,cgTime_ms;//充電時間 

unsigned long times20ms=0;	//定時器計數 初始值可以任意值 

bit chargeFlag = 0;//充電標誌
bit disFlag = 0 ;//定時顯示

void Init_Timer0(void);				//函式宣告

void main (void)
{     
	Init_Timer0();        //定時器0初始化
	times_20ms = 0; //初始化對應值             
	LCD_Init();           //初始化液晶
	DelayMs(20);          //延時有助於穩定
	LCD_Clear(); 

	cgTime_h = cgTime100ms/10/60/60;  //提取小時
	cgTime_m = cgTime100ms/10/60%60;		 //提取分
	cgTime_s = cgTime100ms/10%60;	   //提取s
	cgTime_ms = cgTime100ms%10;		   //0.1s