完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
/*************用两个IO口,读取,方波的时间差,用外部中断0和1,分别计数,
定时器0和1,同时触发,然后各自记10个下降沿,分别停止,定时时间差即方波时间差************/ #include #define uchar unsigned char #define uint unsigned int ***it U_FR=P1^5; ***it I_FR=P1^6; uint num1=0; uint num2=0; /*************启动子函数************/ void start(void) { uchar m,n; m=U_FR; n=I_FR; if(m==0||n==0) { TR0=1; TR1=1; } if(num1==10) { TR0=0; } if(num2==10) { TR1=0; } } /*************EX0,EX1,外部中断************/ void ZD0(void) interrupt 0 { U_FR=0; num1++; } void ZD1(void) interrupt 1 { I_FR=0; num2++; } /*************T0,T1,初始化函数************/ void timer0_init(void) { TH0=0; TL0=0; } void Timer1_init(void) { TH1=0; TL1=0; } /*************主函数************/ void main() { uint x,y,z;//z为时间差 EA=1; EX1=1; EX0=1; IT1=0; IT0=0; TMOD=0x00; TH0=0; TL0=0; TH1=0; TL1=0; start(); x=TL1-TL0; y=TH1-TH0;//////////然后用液晶屏显示想x,y } |
|
相关推荐
1个回答
|
|
|
发程序的目的是什么呢
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2961 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2463 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2331 浏览 0 评论
2455 浏览 1 评论
1674 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 13:21 , Processed in 0.655244 second(s), Total 78, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2374