- #include <reg51.h>
- #define unit unsigned int
- #define uchar unsigned char
- sbit p10=P1^0;//P1^0输出100HZ波形
- sbit p11=P1^1;//P1^1输出50HZ波形
- sbit p12=P1^2;//P1^2输出25HZ波形
- sbit p13=P1^3;//P1^3输出20HZ波形
- sbit p14=P1^4;//P1^4输出10HZ波形
- sbit p15=P1^5;//P1^5输出5HZ波形
- sbit p16=P1^6;//P1^6输出2HZ波形
- sbit p17=P1^7;//P1^7输出1HZ波形
- uchar count0;//计数
- uchar count1;
- uchar count2;
- uchar count3;
- uchar count4;
- uchar count5;
- uchar count6;
- uchar count7;
- void main()
- {
- count0=1;
- count1=2;
- count2=4;
- count3=5;
- count4=10;
- count5=20;
- count6=50;
- count7=100;
- TMOD=0X01;//定时器0 方式1
- TH0=(65536-5000)/256;//5000个机器周期 5ms
- TL0=(65536-5000)%256;
- EA=1;
- ET0=1;
- TR0=1;
- while(1)
- {
- if(count0==0){count0=1;p10=!p10;}
- if(count1==0){count1=2;p11=!p11;}
- if(count2==0){count2=4;p12=!p12;}
- if(count3==0){count3=5;p13=!p13;}
- if(count4==0){count4=10;p14=!p14;}
- if(count5==0){count5=20;p15=!p15;}
- if(count6==0){count6=50;p16=!p16;}
- if(count7==0){count7=100;p17=!p17;}
- }
- }
- void counter()interrupt 1
- {
- TH0=(65536-4994)/256;
- TL0=(65536-4994)%256;
- count0--;
- count1--;
- count2--;
- count3--;
- count4--;
- count5--;
- count6--;
- count7--;
- }
复制代码
51单片机输出8路脉冲Proteus仿真 程序.rar
(27.78 KB, 售价: 1 E币)
【必读】版权免责声明
1、本主题所有言论和内容纯属会员个人意见,与本论坛立场无关。2、本站对所发内容真实性、客观性、可用性不做任何保证也不负任何责任,网友之间仅出于学习目的进行交流。3、对提供的数字内容不拥有任何权利,其版权归原著者拥有。请勿将该数字内容进行商业交易、转载等行为,该内容只为学习所提供,使用后发生的一切问题与本站无关。 4、本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。 5、本网站所有软件和资料均为网友推荐收集整理而来,仅供学习用途使用,请务必下载后两小时内删除,禁止商用。6、如有侵犯你版权的,请及时联系我们(电子邮箱1370723259@qq.com)指出,本站将立即改正。
|