基于STC12C2052單片機(jī)的串口ID讀卡器設(shè)計(jì)
接收回路首先采用一個(gè)二極管檢波電路進(jìn)行包絡(luò)檢波,選擇適當(dāng)?shù)腞C和二極管可使傳輸系數(shù)接近為1,防止隋性失真的產(chǎn)生,包絡(luò)檢波器的輸出波形與調(diào)幅波包絡(luò)線基本一致[3]。再通過(guò)運(yùn)算放大器對(duì)信號(hào)進(jìn)行放大,以便通過(guò)比較器使模擬信號(hào)轉(zhuǎn)變成數(shù)字信號(hào),最終完成ASK的解調(diào)輸出。
本文引用地址:http://butianyuan.cn/article/110954.htm主控模塊
主控模塊主要實(shí)現(xiàn)對(duì)解調(diào)信號(hào)進(jìn)行解碼,同時(shí)將得到的卡號(hào)數(shù)據(jù)通過(guò)UART向PC機(jī)傳輸。本設(shè)計(jì)采用STC12C2052單片機(jī)作為主控芯片,該單片機(jī)成本低,同時(shí)兼容8051單片機(jī)內(nèi)核,具有運(yùn)算速度高,功耗低,內(nèi)部具有UART模塊,可直接與PC通信,滿足本設(shè)計(jì)要求[5]。MCU部分電路圖見圖3。
解調(diào)電路輸出的已調(diào)數(shù)字信號(hào)從單片機(jī)P3.2引腳輸入,P3.2是外部中斷INT0輸入引腳,設(shè)置INT0為下降沿中斷。當(dāng)接收到已調(diào)信號(hào)時(shí),觸發(fā)中斷,同時(shí)打開定時(shí)器進(jìn)行計(jì)數(shù),在下一中斷到來(lái)時(shí),統(tǒng)計(jì)計(jì)數(shù)值進(jìn)行判斷。采用外部16MHz晶振,R15與C17構(gòu)成了復(fù)位電路;P3.0和P3.1作為UART的RX和TX引腳,構(gòu)成人機(jī)交互接口。P1.4 、P1.3分別作為指示燈、蜂鳴器的輸出引腳,平時(shí)燈一直為亮,在剛通電與讀到卡時(shí),會(huì)閃一下,同時(shí)蜂鳴器也會(huì)響一下作為警示。
系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)流程圖如圖4所示。系統(tǒng)上電后首先進(jìn)行一系列設(shè)置,包括UART波特率、定時(shí)器計(jì)數(shù)方式和計(jì)數(shù)時(shí)鐘選擇、外部下降沿中斷觸發(fā)式的設(shè)置等,設(shè)置完成后會(huì)響一聲作為提示。然后進(jìn)行曼徹斯特解碼和奇偶校驗(yàn),當(dāng)奇偶校驗(yàn)正確之后,將收到的32位卡號(hào)數(shù)據(jù)轉(zhuǎn)化為10位ASCII碼,單片機(jī)會(huì)將這10位ASCII碼送入串口數(shù)據(jù)寄存器中,通過(guò)TXD引腳送給PC。通過(guò)設(shè)置單片機(jī)內(nèi)部寄存器TM0D可以得到需要的波特率。
結(jié)語(yǔ)
本讀卡器設(shè)計(jì)具有電路簡(jiǎn)單,成本低,靈敏度高,讀取效率高的特點(diǎn);在軟件上對(duì)曼徹斯特碼進(jìn)行同步解碼,讀卡速度比較快,由于對(duì)載波頻率的變化不敏感,故讀卡成功率非常高;同時(shí)可以實(shí)現(xiàn)波特率從1200~115200的設(shè)置。實(shí)際應(yīng)用表明讀取距離可達(dá)到7cm左右。
參考文獻(xiàn):
[1] Klaus F.射頻識(shí)別(RFID)技術(shù)(第二版)[M].陳大才,譯.北京:電子工業(yè)出版社,2001
[2] 中山市達(dá)華智能科技有限公司.125KHz只讀型非接觸式ID芯片TK4100[J].金卡工程, 2004(3):58
[3] 張肅文.高頻電子線路(第四版)[M].北京: 高等教育出版社
[4] 謝方樂(lè),張紅雨,文維.基于USB接口ID讀卡器的設(shè)計(jì)[J].電子設(shè)計(jì)工程, 2009(11):24~26
[5] 宏晶科技公司.STC12C2052AD.pdf[OL].2008
[6] 單承贛,馬海燕.TYPE A型卡的曼徹斯特碼的編解碼技術(shù)[J].通信技術(shù). 2003(3):51~56
蜂鳴器相關(guān)文章:蜂鳴器原理
評(píng)論