完善资料让更多小伙伴认识你,还能领取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个回答
|
|
发程序的目的是什么呢
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
643 浏览 0 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
914 浏览 2 评论
2026 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1125 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1550 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-20 23:39 , Processed in 0.464511 second(s), Total 75, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号