基于单片机电动自行车太阳能充电系统设计-protues电路仿真资料

该博客介绍了如何利用单片机实现充电管理,通过设定目标电压和电流值来判断电池是否充满。当充电达到设定值时,LED灯显示已充满,否则显示未充满。文中涉及的硬件接口包括IO口、LED灯和按键,并提供了延时函数及与1602液晶屏的交互函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

资料下载地址-1009(百度网盘):点击下载

可以设定目标电压和电流值,仿真通过模拟未达到设定的电流电压值来判定是否充满电,充电则充满LED灯显示,如果其中电流或者电压未达到设定值,则标定位未充满,未充满led灯亮。

#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define IO_1602 P2 //IO口
sbit RS_1602=P0^5;
sbit RW_1602=P0^6;
sbit E_1602=P0^7;
sbit CS=P3^0;
sbit CLK=P3^1;
sbit DIO=P3^2;
sbit led1=P3^6;
sbit led2=P3^7;
sbit key1=P1^2;
sbit key2=P1^3;
sbit key3=P1^4;
sbit key4=P1^5;
void delay_ms(unsigned int t)//11.0592MHz 1ms 
{
	uchar x,y;
	for (t;t>0;t--) 
	{
		for (x=0;x<114;x++)
		  for (y=0;y<1;y++);
	}
}
void Wr1602Cmd(unsigned char dat) 
{
	//写命令函数
	E_1602=0;
	IO_1602=dat;
	RS_1602=0;
	RW_1602=0;
	E_1602=1;
	delay_ms(1);
	E_1602=0;
	delay_ms(1);
}
void Wr1602Dat(unsigned char dat) 
{
	//写数据函数
	E_1602=0;
	IO_1602=dat;
	RS_1602=1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值