完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
关于超声波测距,并在不同的范围内嗡鸣器响的频率不同。我写了一个程序,但是在while循环里面,假如使用延时来让嗡鸣器响,会让影响到超声波的接受,使得数据显示迟钝。后来我就想用定时器中断来让嗡鸣器间断发声,但是也影响了超声波接受信号的时间判断。谁能告诉我解决的办法?求大神给点指导,谢谢~!
|
|
相关推荐
4个回答
|
|
给它分个优先级。。。。
|
|
|
|
因为你这两个都是对时间要求敏感的期间,任何一个中断都会影响到另一个。所以最好的办法是换一个带pwm的片子,好像stc15和12系列的就有。
|
|
|
|
我用的就是12系列的 如何用Pwm弄?
|
|
|
|
这是12手册中关于pwm的示例程序,你可以参考。建议用单片机的时候最好下一份资料,虽然他家的资料写的乱,但还是有参考价值的。毕竟12系列增加了很多功能,现在的教程里都是没有的。
用法就是把蜂鸣器的驱动端口接在pwm输出端口上(此程序中pwm输出口为P1.3),只要在主程序里调整CCAP0H和CCAP0L的值,就可以实现蜂鸣器的不同频率的鸣响。从而只用外部中断0来获取超声波测距数据。 |
|
|
|
只有小组成员才能发言,加入小组>>
3323 浏览 9 评论
3000 浏览 16 评论
3498 浏览 1 评论
9073 浏览 16 评论
4093 浏览 18 评论
1193浏览 3评论
613浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
603浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2341浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1899浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 16:02 , Processed in 1.348753 second(s), Total 83, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号