物联网毕业设计 移动共享充电宝设计与实现

文章目录

  • 1 简介
  • 2 主要器件
  • 3 实现效果
  • 4 设计原理
  • 5 关键代码


1 简介

Hi,大家好,今天向大家介绍一个学长做的单片机项目

基于单片机的移动充电宝设计与实现

大家可用于 课程设计 或 毕业设计

选题指导,项目分享:

https://gitee.com/yaa-dc/warehouse-1/blob/master/iot/README.md

2 主要器件

  • 主控:stm32
  • 电池座 18650*2
  • TP4056 电池充电IC
  • MT3608 升压转换器
  • 有一个TP4056电池充电IC,TP4056与DW01A和FS8205A结合使用可提供各种电池保护功能。如过充,过放,短路和反极性保护。
  • 有2个MT3608升压转换器电路,用于5v和可调电压输出。
    一个AMS1117 LDO来获得3.3v输出

3 实现效果

在这里插入图片描述
为单片机设备供电:
在这里插入图片描述

为手机供电:
在这里插入图片描述

4 设计原理

硬件原理图:
在这里插入图片描述

5 关键代码

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "adc.h"
#include "oled.h"
#include "iwdg.h"
int main(void)
{ u8 t;u16 adcx;u16 adcx2,adcx3,adcx4;float temp,temp3,temp4,foult,tempp,power;delay_init();	    	 //延时函数初始化	  uart_init(9600);	 	//串口初始化为9600LED_Init();		  		//初始化与LED连接的硬件接口Adc_Init();		  		//ADC初始化	    OLED_Init();			//初始化OLED  OLED_Clear(); IWDG_Init(4,625);    //与分频数为64,重载值为625,溢出时间为1s	   t=' ';	while(1){OLED_ShowCHinese(18,0,4);//电OLED_ShowCHinese(36,0,5);//压OLED_ShowCHinese(72,0,4);//电OLED_ShowCHinese(90,0,6);//流OLED_ShowCHinese(18,4,7);//功OLED_ShowCHinese(36,4,8);//率adcx3=Get_Adc_Average(ADC_Channel_2,10);printf( "%2d\n",adcx3 );temp4=(float)adcx3*(3.3/4096);temp3=2.0*temp4;tempp=temp3;//adcx3=temp3;OLED_ShowNum(18,2,adcx3,1,16);OLED_ShowString(26,2,".");temp3-=adcx3;temp3*=1000;OLED_ShowNum(28,2,temp3,3,16);adcx=Get_Adc_Average(ADC_Channel_1,10);temp=(float)adcx*(3.3/4096);foult=temp*10*1000;//temp*10为电流值,单位为mAadcx=foult;OLED_ShowNum(72,2,adcx,4,16);power=temp*10*tempp;adcx4=power;OLED_ShowNum(60,4,adcx4,1,16);OLED_ShowString(68,4,".");power-=adcx4;power*=1000;OLED_ShowNum(70,4,temp3,3,16);IWDG_Feed();	//喂狗delay_ms(250);}											    
}	

选题指导,项目分享:

https://gitee.com/yaa-dc/warehouse-1/blob/master/iot/README.md


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部