首页 单片机的PWM实验。

单片机的PWM实验。

举报
开通vip

单片机的PWM实验。/* 程序名:单片机的PWM实验。 编写人:曾文豪杰 编写时间:2012年10月13日 硬件环境:STC89C52单片机,12M晶振,2块74HC573锁存器,4位一体共阴数码管。两个触点键盘。 接口说明:74HC573锁存器数据输入口依次接单片机P2口,段选接P1.6,位选接P1.7 */ #include /******************************************************************/ 作用:变量宏定义 备注: /**********...

单片机的PWM实验。
/* 程序名:单片机的PWM实验。 编写人:曾文豪杰 编写时间:2012年10月13日 硬件环境:STC89C52单片机,12M晶振,2块74HC573锁存器,4位一体共阴数码管。两个触点键盘。 接口说明:74HC573锁存器数据输入口依次接单片机P2口,段选接P1.6,位选接P1.7 */ #include /******************************************************************/ 作用:变量宏定义 备注: /******************************************************************/ #define uchar unsignd char #define uint unsigned int /******************************************************************/ 作用:IO口定义 备注:PWM方波输出口接P1.0,74HC573段选接P1.6,位选接P1.7PWM方波输出口接P1.0。两个独立键盘接P3.4和P3.5.分别控制PWM方波的高电平增量和减量 ******************************************************************/ sbit shuchu=P1^0; sbit dula=P2^6; sbit wela=P2^7; sbit jia_key=P3^4; sbit jian_key=P3^5; uchar a,b; ******************************************************************/ 作用:八位共阴数码管编码,码 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 为不带小数 备注:如果想调用小数,可以这样写: table【?】|0x80; ******************************************************************/ uchar code table[]={0x3f,0x06,0x5b,0x4f, //0-3 0x66,0x6d,0x7d,0x07, //4-7 0x7f,0x6f}; //8-9 ******************************************************************/ 函数名:微秒级延时子程序 调用:delayus(?) 参数:0~65535 ******************************************************************/ void delayus(uint xms) { uint i; for(i=xms;i>0;i--); } ******************************************************************/ 函数名:键盘子程序 调用:delayus() 作用:按下jia时实现增大调节PWM方波的占空比,按下jian时实现减小调节PWM方波的占空比。调节级数为100级。 ******************************************************************/ void key() { if(jia_key==0) { delayus(1200); if(jia_key==0) { if(a!=100) a=a+1; else a=100; while(!jia_key); } } if(jian_key==0) { delayus(1200); if(jian_key==0) { if(a!=0) a=a-1; else a=0; while(!jian_key); } } b=100-a; } ******************************************************************/ 函数名:显示子程序 作用:只是提供感性的PWM方波的占空比情况,并不是精确的。 调用:display(?) 参数:0~255 ******************************************************************/ void display(uchar temp) { uchar bai,shi,ge; bai=temp/100; shi=temp%100/10; ge=temp%10; dula=1; P0=table[bai]; dula=0; P0=0xfe; wela=1; wela=0; delayus(120); dula=1; P0=table[shi]; dula=0; P0=0xfd; wela=1; wela=0; delayus(120); dula=1; P0=table[ge]; dula=0; P0=0xfb; wela=1; wela=0; delayus(120); } ******************************************************************/ 函数名:主函数 ******************************************************************/ void main() { uchar i; a=100; b=0; while(1) { for(i=a;i>0;i--) //输出低电平 { shuchu =0; display(a); //把显示和键盘扫描放在这里 key(); //可起到钥匙作用,一举两得 } for(i=b;i>0;i--) //输出高电平 { shuchu =1; display(a); //把显示和键盘扫描放在这里 key(); //可起到钥匙作用,一举两得 } } }
本文档为【单片机的PWM实验。】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_281884
暂无简介~
格式:doc
大小:35KB
软件:Word
页数:5
分类:互联网
上传时间:2012-11-29
浏览量:20