云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于单片机的太阳能充电器的设计毕业设计

基于单片机的太阳能充电器的设计毕业设计

  • 62 次阅读
  • 3 次下载
  • 2025/5/24 18:01:19

void convert(uint x) //定义显示码转换子函数/ {

uchar code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //定义0~9显示码/

x=x*1.0/255*5000; // 处理数据使其在0~5v范围内/ disp[3]=dispcode[x]; //第三位小数,最低位/ disp[2]=dispcode[x/10]; //第二位小数/ disp[1]=dispcode[x/100]; //第一位小数/ disp[0]=dispcode[x/1000]; //整数部分/ }

void timer0() interrupt 1 using 1 {

TH0=0xff; /*定时器初值重装载*/ TL0=0xf6; time++; if(time==high) /*高电平持续时间结束,变低*/ { PWM=th0; /*经过反相器反相*/ }

else if(time==period) /*周期时间到,变高*/ { time=0;

PWM=tl0; /*经过反相器反相*/ } }

void timer1() interrupt 3 using 3 {

TH1=0xff; /*定时器初值重装载*/ TL1=0xf6; time1++; if(time1==high1) /*高电平持续时间结束,变低*/ { PWM=th0; /*经过反相器反相*/ }

else if(time1==period) /*周期时间到,变高*/ { time1=0;

PWM=tl0; /*经过反相器反相*/ } }

void main() {

OE=0; //ADC0808初始化/ START=0; EOC=1; //将单片机的引脚(EOC输入端)置成输入状态/ P3_3=0;

P3_4=0; P3_6=1; P3_7=1;

TMOD=0x11; /*定时器0方式1*/

TH0=0xff; /*定时器装载初值,设置脉冲信号的占空比为1/5*/ TL0=0xf6; ET0=1; // TR0=1; TH1=0xff; /*定时器装载初值,设置脉冲信号的占空比为1/5*/ TL1=0xf6; ET1=1; // TR1=1;

while(1) { if(P3_3==1) { EA=1; /*开CPU中断*/ TR0=1; TR1=0; P3_4=0; du: for(i=0;i<14;i++) { P3_7=1; high1=0; high=high+2; for(j=0;j<5;j++) { P3_6=0; convert(ADC0808()); //每1s启动A/D转换一次,把读入数据转换为显示数据/ display(); delay(10); // 调用显示子函数/ } } if(high==34) { P3_6=1; P3_7=0; delay(100); TR0=0; } }

if(P3_4==1) { TR0=0; TR1=1; P3_6=1; EA=1; high1=high1+4; if(high1==40) high1=16; if(P3_3==1) {P3_7=1; goto du; } while(P3_4!=0) {}; convert(ADC0808()); //每1s启动A/D转换一次,把读入数据转换为显示数据/ display(); // 调用显示子函数/ } convert(ADC0808()); //每1s启动A/D转换一次,把读入数据转换为显示数据/ display(); // 调用显示子函数/ } }

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

void convert(uint x) //定义显示码转换子函数/ { uchar code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //定义0~9显示码/ x=x*1.0/255*5000; // 处理数据使其在0~5v范围内/ disp[3]=dispcode[x]; //第三位小数,最低位/ disp[2]=dispcode[x/10]; //第二位小数/ disp[1]=dispcode[x/100]; //第一位小数/ disp[0]=dispcode[x/1000]; //整数部分/ } void timer0() interrupt 1 using 1

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com