毕业设计 嵌入式移动共享充电宝设计与实现


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);	 	//串口初始化为9600
 
	LED_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为电流值,单位为mA
		adcx=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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值