<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于PIC16F873的16路搶答器

基于PIC16F873的16路搶答器

作者: 時(shí)間:2012-11-27 來(lái)源:網(wǎng)絡(luò ) 收藏

1 系統硬件設計
美國Microchip Technology公司推出的PIC16F87X中檔系列單片機,片內含有A/D、PWM、EEPROM等豐富的接口模塊和FLASH程序存儲器。借助于片內的ADC模塊,使用一條I/O引腳,可以實(shí)現多個(gè)按鈕開(kāi)關(guān)的數字量輸入問(wèn)題。以此原理制成的,電路設計有搶答按鈕開(kāi)關(guān)、狀態(tài)指示燈、復位開(kāi)關(guān)、一只蜂鳴器和兩只數碼管。
設計功能如下,通電后,狀態(tài)指示燈點(diǎn)亮,并且同時(shí)發(fā)出持續1s的類(lèi)似的美妙聲音,表示為搶答作好準備。每當主持人口頭發(fā)出號令之后,哪個(gè)隊先按下座位上的按鈕開(kāi)關(guān),數碼管就顯示該隊的編號。同時(shí)封鎖其他按鈕開(kāi)關(guān)的活動(dòng),狀態(tài)指示燈熄滅,并且同時(shí)發(fā)出持續1s的類(lèi)似的美妙聲音,以聲明此次搶答動(dòng)作已經(jīng)完成。在主持人確認后,按下復位按鈕,狀態(tài)指示燈重新點(diǎn)亮,并且同時(shí)發(fā)出持續1s的類(lèi)似的美妙聲音,為下一次搶答作好準備。在理論上,利用片內的10位A/D轉換器,去除一個(gè)無(wú)鍵按下的“空”狀態(tài),則最多可以區分1023個(gè)按鍵。正是由于利用了片內10位A/D轉換器,才使本搶答器外圍電路比較簡(jiǎn)單,實(shí)用性強,而且本搶答器很容易擴展成更多路搶答器。
如圖1,本搶答器主要由按鍵電路、PIC16F873單片機、三態(tài)輸出鎖存器74LS373及數碼管組成。R16、R17、K0組成單片機的復位電路,按鍵電路由R1-R15、K1-K16組成。PIC16F873單片機系統時(shí)鐘由4MHz的石英晶體經(jīng)其內部振蕩器提供,內部ADC的參考電壓分別為VDD和地,按鍵電路輸出的電壓由數據線(xiàn)AN0輸入,由于軟件可以完成譯碼,因此不需譯碼器。74LS373、數碼管組成顯示電路,R18-R33起到限流的作用。為了使各個(gè)電阻向標稱(chēng)值靠攏,R0-R17的取值如圖1標注,能滿(mǎn)足表1中按鍵位置與輸出電壓的關(guān)系。開(kāi)機后,RC0-RC7輸出“0”的七段碼,RA1輸出高電平,數碼管個(gè)位顯示0,接著(zhù),尺A1輸出低電平,RA2輸出高電平,數碼管十位顯示0,RA2再輸出低電平。RA5輸出高電平,狀態(tài)指示燈LED亮,RA3輸出500Hz、630Hz兩種音頻信號,這兩種音頻信號以10Hz的頻率輪流切換,從而蜂鳴器就發(fā)出類(lèi)似電話(huà)振鈴的美妙聲音,搶答器進(jìn)入準備狀態(tài)。當搶答時(shí),某個(gè)按鍵按下,假如是K12,其他按鍵的活動(dòng)被封鎖,PIC16F873單片機內的A/D轉換器將輸入電壓轉化成10位二進(jìn)制數,通過(guò)單片機處理,RA1輸出高電平,RC0-RC7輸出“2”的七段碼,然后,RA1輸出低電平,將74LS373(2)的輸出碼鎖存,RA2輸出高電平,RC0-RC7輸出“1”的七段碼,RA2再輸出低電平,將74LS373(1)的輸出碼鎖存,這樣數碼管就穩定地顯示出“12”。同時(shí),RA3輸出持續1s的10Hz的頻率輪流切換的500Hz、630Hz兩種音頻信號,蜂鳴器發(fā)出類(lèi)似電話(huà)振鈴的美妙聲音,RA5再輸出低電平,LED熄滅,以聲明此次搶答動(dòng)作已完成。在主持人確認后,按下復位按鍵,兩位數碼管顯示“00”,狀態(tài)指示燈LED亮,搶答器進(jìn)入準備狀態(tài)。
16路搶答器電路圖

表1 按鍵位置與按鍵電路輸出電壓對應關(guān)系
按下的鍵12345678
輸出電壓Vo0(1/16)VDD(2/16)VDD(3/16)VDD(4/16)VDD (5/16)VDD (6/16)VDD(7/16)VDD
轉換結果
(取高8位)
010H20H30H40H50H60H70H
區分按鍵的
分水嶺判別值
08H18H28H38H48H58H68H
按下的鍵910111213141516無(wú)鍵
輸出電壓(8/16)VDD (9/16)VDD (10/16)VDD (11/16)VDD (12/16)VDD (13/16)VDD (14/16)VDD (15/16)VDD VDD
轉換結果
(取高8位)
80H90HA0HB0HC0HD0HE0HF0HFFH
區分按鍵的
分水嶺判別值
78H88H98HA8HB8HC8HD8HE8HF8H

2 軟件設計
取ADC轉換結果的高8位就已經(jīng)滿(mǎn)足本搶答器對分辨率的需要,將相鄰兩個(gè)狀態(tài)的轉換結果的平均值固定下來(lái)作為區分按鍵位置的判別值。例如,(FFH+F0H)/2=F8H,作為空閑狀態(tài)的判別值,只要轉換結果大于該值,即判為無(wú)鍵按下;又例如(10H+20H)/2=18H,作為K2的判別值,只要轉換結果大于該值,即判斷為K2按下。按鍵的掃描采用啟動(dòng)AD轉換的方法來(lái)實(shí)現。每次掃描過(guò)程是從高到低,用各鍵判別值去衡量AD轉化結果,以區分按下的是哪個(gè)鍵或無(wú)鍵按下,這樣便于程序的編寫(xiě)。若無(wú)按鍵,繼續掃描,若有鍵按下,取出AD轉化結果,關(guān)閉AD轉換,判別哪個(gè)鍵按下,并送顯所按下鍵的編號,RA5輸出低電平,熄滅狀態(tài)指示燈,RA3送出持續1s 500Hz和630Hz以10Hz輪流切換的音頻信號。500Hz的音頻產(chǎn)生的方法如下,該信號對應的周期為2000us,該音頻信號一個(gè)的周期之內,保持在高電平和低電平的時(shí)間都是1000us。
利用定時(shí)器/計數器TMR0模塊產(chǎn)生該延時(shí)時(shí)間,分頻比和初始值分別是1:8和131。同理,產(chǎn)生630Hz音頻應該采用的分頻比和初始值分別是1:8和157。這兩個(gè)音頻信號再以10Hz的頻率輪流切換,從單片機的RA3口線(xiàn)上送出,也就是每個(gè)音頻信號持續的時(shí)間是50ms。那么,對于500Hz來(lái)說(shuō),50ms之內包含的周期個(gè)數為25個(gè),包含從低到高的電平切換次數為50次;對于630Hz來(lái)說(shuō),50ms之內包含的周期個(gè)數為31.5個(gè),包含從低到高的電平切換次數為63次。發(fā)生1s需要輪流調用500Hz和630Hz產(chǎn)生的程序各10次。程序流程圖如圖2、圖3、圖4、圖5所示。
基于PIC16F873的16路搶答器



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>