關於微控制器中的beep 新手問題

2021-04-25 22:42:18 字數 1428 閱讀 9115

1樓:

for(;i>0;i--){ _nop_(); _nop_();}

2樓:匿名使用者

簡單的說將

for(;i>0;i--)

_nop_();

換成delayms(100);//函式自己編嘗試改變1,10,50,100,200就知道其中奧妙了

微控制器c語言中beep=~beep什麼意思

3樓:匿名使用者

beep 取反

應該是驅動蜂鳴器的

當蜂鳴器響的時候執行這一句後就不響了。。

反之一樣。

4樓:匿名使用者

按位取反。

如果你的beep只是一位的話,即

bit beep = 1

那beep = ~beep結果就是0

如果是多位的變數的化就是用二進位制取反,如

int beep = 11001(二進位制,你看到的是二進位制!!不是十進位制)

那beep=~beep就是00110

5樓:

這個是位運算裡的。beep必須是位變數才行。

如果beep=1,則~beep=0.

如果beep=0,則~beep=1.

位變數取反不能用-.因為1用-號取反成-1了。位變數只有0和1。

6樓:

beep估計是定義了某一個輸出口的一位.它接上了蜂鳴器..

看看相關的c檔案或h檔案,在**定義了哪個口哪個位..

51微控制器中直接beep = 1為什麼沒聲音?

7樓:匿名使用者

一種是硬體連線問題,你需要beef=0才能響

還有就是你的蜂鳴器是無源的,需要給高低脈衝才能響。比方beef=0;delay();beef=1;deyal();

外面再套while(1);

8樓:

沒看到你的硬體連線圖,不好判斷。

9樓:匿名使用者

beep = 0 會不會有聲音?

看看電路圖就知道了

10樓:匿名使用者

原理圖呢?是有源的還是無源的?

11樓:匿名使用者

要是無源的蜂鳴器就是不會響。

51微控制器**程式為什麼beep=~beep

12樓:

因為聲波是震動的,以頻率來達到不同的聲律,只有透過反向的指令才能做到類似的東西,只是還要有間隔跟響應時間的長短來模擬聲波

13樓:萍水e相逢

高低電平轉換,類似方波

關於微控制器檢測電流流向的問題,關於微控制器檢測電流流向的一個問題。

採用附圖所示電路,還有隔離效果。左邊的電阻是電流取樣,在能點亮光耦的情況下,阻值儘量小。中間兩個電阻是光耦限流電阻。c d點輸出到微控制器,要分別接上拉電阻。當電流由a流向b時,上面的光耦點亮,c為低電平。當電流由b流向a時,下面的光耦點亮,d為低電平。其實遙控模組實現正反轉的方式是通過一個埠輸出高...

關於微控制器中if,else if 的用法

if.else if.這是預處理語句。預處理就是在進行編譯的第一遍詞法掃描和語法分析之前所作的工作。說白了,就是對原始檔進行編譯前,先對預處理部分進行處理,然後對處理後的 進行編譯。這樣做的好處是,經過處理後的 將會變的很精短。在微控制器中屬於條件編譯,也就是說當滿足條件,就將 if後面的語句進行編...

關於微控制器堆疊指標sp變化的問題

為什麼不是 sp 4fh 應該是4fh。問題二 那50h豈不是沒利用到?50h是不用的。復位後,sp 07h。但是,07h就從來不用於堆疊。第一次壓棧,是壓入了08h單元。第一個問題得實驗一下才知道,按說是先彈出來送到sp中後,sp減1 第二個問題是先加一再進棧,50h作為棧底一直不用。微控制器復位...