日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開(kāi)發(fā)網(wǎng)

電子開(kāi)發(fā)網(wǎng)電子設(shè)計(jì) | 電子開(kāi)發(fā)網(wǎng)Rss 2.0 會(huì)員中心 會(huì)員注冊(cè)
搜索: 您現(xiàn)在的位置: 電子開(kāi)發(fā)網(wǎng) >> 電子開(kāi)發(fā) >> 嵌入式系統(tǒng) >> PIC單片機(jī) >> 正文

使用PIC單片機(jī)制的簡(jiǎn)單拍手開(kāi)關(guān)

作者:佚名    文章來(lái)源:本站原創(chuàng)    點(diǎn)擊數(shù):    更新時(shí)間:2022-05-06

  拍手開(kāi)關(guān)對(duì)于初學(xué)者來(lái)說(shuō)是一個(gè)很有趣的單片機(jī)方案。它以拍手的聲音打開(kāi)和關(guān)閉電器。在本文中,單片機(jī)開(kāi)發(fā)工程師們將使用PIC單片機(jī)制作一個(gè)簡(jiǎn)單的拍手開(kāi)關(guān),當(dāng)它連續(xù)檢測(cè)到兩個(gè)拍手聲音時(shí),該開(kāi)關(guān)便會(huì)運(yùn)行。在這個(gè)方案中,使用駐極體麥克風(fēng)作為換能器,將拍手聲轉(zhuǎn)換為電信號(hào)。麥克風(fēng)的輸出由晶體管放大,然后發(fā)送到PIC12F683單片機(jī),當(dāng)檢測(cè)到有效拍手時(shí),PIC12F683單片機(jī)執(zhí)行ON/OFF切換動(dòng)作。

  聲控拍手開(kāi)關(guān)的原理

  拍手開(kāi)關(guān)的輸入端需要一個(gè)換能器,以將拍手的聲音振動(dòng)轉(zhuǎn)換為電能。為此使用駐極體麥克風(fēng)或簡(jiǎn)單的麥克風(fēng)(OBO-04FN-0B)。麥克風(fēng)的輸出中的聲音信號(hào)電流很低,因此我們需要一個(gè)放大器電路來(lái)增強(qiáng)檢測(cè)到的聲音信號(hào)。以下電路圖顯示了麥克風(fēng)和單個(gè)晶體管放大器。當(dāng)沒(méi)有聲音時(shí),飽和的晶體管的集電極電壓(Vout)約為0.2V。當(dāng)麥克風(fēng)檢測(cè)到拍手聲時(shí),其兩端的電壓突然下降。由于電容麥克風(fēng)的輸出電壓通過(guò)電容器C1耦合到晶體管的基極,因此基極-發(fā)射極電壓也降低了,因此基極-發(fā)射極結(jié)點(diǎn)的正向偏置較少。拍手時(shí),可以看到峰值電壓可以高達(dá)4.0V,具體取決于拍手的響度。

  使用PIC單片機(jī)制的簡(jiǎn)單拍手開(kāi)關(guān)

  使用PIC單片機(jī)制的簡(jiǎn)單拍手開(kāi)關(guān)

  我們將集電極輸出電壓(Vout)與內(nèi)部產(chǎn)生的參考電壓進(jìn)行比較。參考電壓在內(nèi)部連接到比較器模塊的正輸入(CIN +),而傳感器的輸出電壓則饋送到比較器的負(fù)輸入(CIN-)。CIN-引腳與PIC12F683的GP1 I/O引腳復(fù)用。參考電壓的大小可通過(guò)VRCON寄存器進(jìn)行編程和控制。我們將參考電壓設(shè)置為0.625V(假設(shè)電源電壓為5.0V)。因此,在正常情況下,參考電壓(0.625V)大于Vout(= 0.2V),比較器輸出(COUT)為高。COUT可通過(guò)GP2 I/O引腳在內(nèi)部和外部進(jìn)行訪問(wèn)。當(dāng)有拍手聲時(shí),COUT會(huì)變低。通過(guò)將CMCON0寄存器中的比較器輸出反相(CIN)位置1,可以將比較器輸出邏輯反相。可以對(duì)PIC12F683單片機(jī)進(jìn)行編程,以根據(jù)比較器輸出采取開(kāi)關(guān)動(dòng)作。

  聲控拍手開(kāi)關(guān)電路原理圖

  這個(gè)簡(jiǎn)單的拍擊開(kāi)關(guān)方案的完整電路圖如下所示。內(nèi)部比較器模塊的正和負(fù)輸入分別可通過(guò)GP0/CIN +和GP1/CIN-引腳從外部訪問(wèn)。由于正輸入連接到內(nèi)部基準(zhǔn)電壓源,因此GP1引腳可用作I/O引腳。傳感器放大器的輸出將到達(dá)GP0/CIN +引腳。LED連接到GP5引腳以指示單片機(jī)的開(kāi)關(guān)動(dòng)作。當(dāng)單片機(jī)連續(xù)檢測(cè)到兩個(gè)拍手聲時(shí),它將在GP5引腳上切換邏輯輸出。LED在這里用于說(shuō)明目的,如果您想用它來(lái)控制電器,可以用機(jī)電繼電器代替。

  使用PIC單片機(jī)制的簡(jiǎn)單拍手開(kāi)關(guān)

  聲控拍手開(kāi)關(guān)程序

  該程序用C語(yǔ)言開(kāi)發(fā),并使用MikroC Pro進(jìn)行PIC編譯器編譯。程序以1.5秒的間隔連續(xù)尋找兩個(gè)拍手聲。如果發(fā)生這種情況,則將GP5引腳切換。當(dāng)檢測(cè)到拍手時(shí),TImer1模塊將打開(kāi)以保持時(shí)間記錄。 1.5秒后,它將生成一個(gè)超時(shí)信號(hào)。如果在此之前沒(méi)有第二個(gè)拍手,則單片機(jī)將忽略第一個(gè)拍手,并返回到主程序。

  sbit Output_LED at GP5_bit;

  unsigned short i, TIME_UP;

  void interrupt(void){

  if(PIR1.TMR1IF) {

  i ++;

  if(i == 3) TIME_UP = 1; // TIme Up in 1.5 sec

  PIR1.TMR1IF = 0;

  }

  }

  void main() {

  TRISIO = 0b00000011 ;

  ANSEL = 0x00;

  INTCON = 0b11000000 ; // Enable GIE and PEIE for Timer1 overflow interrpt

  PIE1 = 0b00000001 ; // Enable TMR1IE

  // Configure Comparator module

  // CIN- pin is configured as analog,

  // CIN+ pin is configured as I/O,

  // COUT pin is configured as I/O,

  // Comparator output available internally,

  // CVREF is non-inverting input

  // CINV is set to 1

  CMCON0 = 0b00010100;

  VRCON = 0b10100011; // Vref is set to VDD/8

  Output_LED = 0;

  do{

  TMR1H = 0x00;

  TMR1L = 0x00;

  TIME_UP = 0;

  i = 0;

  T1CON = 0b00110000; // Configure Timer 1

  if(CMCON0.COUT){ // First clap detected

  Delay_ms(100);

  T1CON.TMR1ON = 1; // Start Timer1

  while(!CMCON0.COUT && !TIME_UP); // Wait until second clap is

  T1CON.TMR1ON = 0; // detected or Timer1 overflows

  if(CMCON0.COUT && !TIME_UP) Output_LED = ~Output_LED;

  Delay_ms(100);

  }

  } while(1);

  }

Tags:PIC單片機(jī),拍手開(kāi)關(guān)  
責(zé)任編輯:admin
請(qǐng)文明參與討論,禁止漫罵攻擊,不要惡意評(píng)論、違禁詞語(yǔ)。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個(gè)字
[ 查看全部 ] 網(wǎng)友評(píng)論
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁(yè)面
下到頁(yè)底
晶體管查詢
主站蜘蛛池模板: 蓬安县| 甘德县| 洪泽县| 横山县| 石阡县| 宜宾县| 京山县| 庆安县| 巫溪县| 凉城县| 桃源县| 和田市| 阜南县| 施秉县| 鸡西市| 荣成市| 电白县| 麟游县| 车致| 濉溪县| 招远市| 黔西县| 福贡县| 阿坝| 承德市| 双江| 多伦县| 呼图壁县| 阳高县| 彩票| 司法| 湄潭县| 慈利县| 凉城县| 尉犁县| 湖北省| 陵川县| 榆林市| 漳浦县| 奎屯市| 拜泉县|