数控直流稳压电源的程序

上传人:20****03 文档编号:170299451 上传时间:2021-03-01 格式:DOC 页数:6 大小:22KB
返回 下载 相关 举报
数控直流稳压电源的程序_第1页
第1页 / 共6页
数控直流稳压电源的程序_第2页
第2页 / 共6页
数控直流稳压电源的程序_第3页
第3页 / 共6页
数控直流稳压电源的程序_第4页
第4页 / 共6页
数控直流稳压电源的程序_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《数控直流稳压电源的程序》由会员分享,可在线阅读,更多相关《数控直流稳压电源的程序(6页珍藏版)》请在金锄头文库上搜索。

1、#include #define uchar unsigned char#define uint unsigned intuchar num,a4=0,b4=0,i=0,j=0,k=0,key_flag;uint value;unsigned char code distab116=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, /共阳数码管段选码表,无小数点 0x7f,0x6f;unsigned char code distab16=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87, /共阳数码管段选码表,有小数点 0xff,0

2、xef;void delay(unsigned int a );void delay_100us(uint z)/延时程序uchar x,y;for(x=0;xz;x+)for(y=0;y100;y+);void keyscan()/4*4矩阵键盘扫描程序uchar cc_h,cc_l,cc;P2=0xf0;cc_h=P2&0xf0;if(cc_h!=0xf0)delay_100us(10);cc_h=P2&0xf0;if(cc_h!=0xf0)cc_h=P2&0xf0;P2=0x0f;cc_l=P2&0x0f;cc=cc_h+cc_l;while(cc_l!=0x0f)cc_l=P2&0x0

3、f;switch(cc)case 0xee: num=1;if(key_flag=1)bj=num;j+;elseai=num;i+;break;case 0xde: num=2;if(key_flag=1)bj=num;j+;elseai=num;i+;break;case 0xbe: num=3;if(key_flag=1)bj=num;j+;elseai=num;i+;break;case 0x7e: num=4;value+=100;break;case 0xed: num=5; if(key_flag=1)bj=num-1;j+;elseai=num-1;i+;break;case

4、0xdd: num=6;if(key_flag=1)bj=num-1;j+;elseai=num-1;i+;break;case 0xbd: num=7; if(key_flag=1)bj=num-1;j+;elseai=num-1;i+;break;case 0x7d: num=8;value-=100;break;case 0xeb: num=9; if(key_flag=1)bj=num-2;j+;elseai=num-2;i+;break;case 0xdb: num=10; if(key_flag=1)bj=num-2;j+;elseai=num-2;i+;break;case 0x

5、bb: num=11; if(key_flag=1)bj=num-2;j+;elseai=num-2;i+;break;case 0x7b: num=12;value+=500;break;case 0xe7: num=13;value-=500;break;case 0xd7: num=14;if(key_flag=1)bj=0;j+;elseai=0;i+;break;case 0xb7: num=15;key_flag=1;break;/小数点标志位case 0x77: num=16;value=a0*1000+b0*100+b1*10+b2;for(i=0;i9&num=4)/不能让数

6、码管显示超过9.9qian=0;bai=0;P1=0xbf;P0=distabqian;delay(1200); /扫描间隙延时P1=0x7f;P0=distab1bai;delay(1200); /扫描间隙延时value=0;/这里是到9.9之后不再增加,如果是要重新开始从0.1-9.9则可以设为198!elseP1=0xbf;P0=distabqian;delay(1200); /扫描间隙延时P1=0x7f;P0=distab1bai;delay(1200); /扫描间隙延时 void main()/主程序入口num=0xff;P2=0xff;value=0;for(i=0;i4;i+)ai=0;bi=0;i=0;j=0;key_flag=0;k=0;while(1)keyscan();/DA显示程序 Show(value);P3=(value/50);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号