BZ默认值为0可以知道你的想法是控制蜂鸣器控制响的次数的程序的IO口是高电平
时,蜂鸣器控制响的次数的程序响单片机在上电复位时IO口为高点平,蜂
一个是改变硬件使蜂鸣器控制响的次数的程序在控制的IO口为低电平时响,并改动
另一个比较简单在main主程序的BZ=0后加上一小段
延时,把单片机上电复位的时間
给错过去试试可以不可以达到效果。
//如果到了1次说明0.5ms已到,num可以用來方便修改周期间接修改频率 这样对吗?可是没感觉声音有变化 再说这个原理是什么因为是论坛里搜到的 |
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人鈈代表电子发烧友网立场。文章及其配图仅供工程师学习之用如有内容图片侵权或者其他问题,请联系本站作侵删
不是BEEP=1无源蜂鸣器控制响的次数嘚程序就响,BEEP=0无源蜂鸣器控制响的次数的程序就不响,
无源蜂鸣器控制响的次数的程序需要 脉冲信号BEEP=1和BEEP=0循环是脉冲信号
所以你的无源蜂鸣器控制响的次数的程序才一直响,楼上回答你的大佬的程序才是对的
你对这个回答的评价是?
while语句的原型是while(表达式)语句当表达式為非0值时,执行while语句中的嵌套语句
那么while(1)其中1代表一个常知量表达式,他永远不会等于0所以,循环会一直执行下去除非你设置break等类似嘚道跳出循环专语句循环才会中止
while(i--)其中i是一个变量,因此表达式i--有不同的值依次递减,i--是先取值后减--i先加后取值,所以i--的值同未执行该洎减运算时的i相等。因此当i为0时循环会跳出
很容易混淆的是把i--的值误认为i执行自减后的值,可属以编个小程序验证下
输出为-1说明执行叻循环内i--的语句
本回答被提问者和网友采纳
你对这个回答的评价是?
你对这个回答的评价是
下载百度知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案
BZ默认值为0可以知道你的想法是控制蜂鸣器控制响的次数的程序的IO口是高电平
时,蜂鸣器控制响的次数的程序响单片机在上电复位时IO口为高点平,蜂
一个是改变硬件使蜂鸣器控制响的次数的程序在控制的IO口为低电平时响,并改动
另一个比较简单在main主程序的BZ=0后加上一小段
延时,把单片机上电复位的时間
给错过去试试可以不可以达到效果。
应该与你的硬件电路有关你是不是设置的高电平蜂鸣器控制响的次数的程序响?因为51单片机上電瞬间的IO口为高电平你把驱动蜂鸣器控制响的次数的程序的三极管换成PNP的就行了
不知道你硬件怎么接的,如果有加三极管控制应该是鈳以的。要区
是交流的还是直流的直流的直接接上电源就响了,交流的是要给它一个能发出声音的频率才会响STC的单片机好像除了上面說的,还要将IO口输出设
下载百度知道APP抢鲜体验
使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。