完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include
#include #include #include #define uchar unsigned char #define uint unsigned int uint a,c,d; ***it p00=P0^0 ; ***it p01=P0^1 ; ***it p02=P0^2 ; void Inttimer0()interrupt 1 //定时终端函数 { switch(d) { case 1: //执行p0.0 p00=!p00; c=20000-c; TH0=(65536-c)/256; TL0=(65536-c)%256; if(c>=500&&c<=2500)c=a; else if(c>2000) EA=0,ET0=0,TR0=0; else a=a+100; c=20000-a; break; case 2: p01=!p01; c=20000-c; TH0=(65536-c)/256; TL0=(65536-c)%256; if(c>=500&&c<=2500)c=a; else if(c>2000) EA=0,ET0=0,TR0=0; else a=a+100; c=20000-a; break; case 3: //执行p0.2 p02=!p02; c=20000-c; TH0=(65536-c)/256; TL0=(65536-c)%256; if(c>=500&&c<=2500)c=a; else if(c>2000) EA=0,ET0=0,TR0=0; else a=a+100; c=20000-a; break; } } void delay(long j) //延时函数 { for (j;j>0;j--); } void timer_int1() //定是函数1 { TMOD=0x01; p00=1; a=1500; c=a; TH0=(65536-a)/256; TL0=(65536-a)%256; EA=1; ET0=1; TR0=1; } void timer_int2() //定是函数2 { TMOD=0x01; p01=1; a=1500; c=a; TH0=(65536-a)/256;TL0=(65536-a)%256; EA=1; ET0=1; TR0=1; } void timer_int3() //定是函数3 { TMOD=0x01; p02=1 ; a=1500; c=a; TH0=(65536-a)/256;TL0=(65536-a)%256; EA=1; ET0=1; TR0=1; } void main() { d=1 ; timer_int2(); delay(9000); d=2 ; timer_int1(); delay(9000); d=3 ; timer_int3(); delay(9000); while(1); } |
|
相关推荐
3个回答
|
|
你可以上传编译文件和仿真文件。这样好让大家上手。
|
|
|
|
|
|
|
|
路过,学习学习,顶一下
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
6248 浏览 3 评论
7515 浏览 1 评论
7755 浏览 0 评论
Protues中自己封装的芯片元件无Program File、Clock Frequency选项怎么解决,求求大神了!
9563 浏览 1 评论
基于51单片机的车辆倒车雷达报警系统,HC-SR04超声波测距,全套资料
1280 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 00:40 , Processed in 0.658493 second(s), Total 81, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号