張航 祝家奇 鄧云飛
摘 要:本文單片機計數器以單片機和各種元器件為基礎,設計電路硬件系統。計數器可以實現信號的獲取、信號的轉換處理、信號的記錄及顯示功能。借助Keil 軟件實現對C語言的編譯以適用單片機的運行環境,使用protel繪制電路原理圖及PCB印刷電路板。最終,將硬件電路與軟件程序結合以達到計數的目標,設計出一款具有七位數計數能力和自帶檢測功能的計數器。
關鍵詞:單片機;計數器
隨著計數器應用越來越多,計數器有同步計數器、異步計數器、加法計數器、減法計數器以及不同進制的計數器等[1, 2]。計數器的身影早已出現在了各行各業中,如物流、工程測量、航空、電力、采礦、儀表、自動化控制、包裝、機械加工、冶金、制藥、機械、軍工、石化、運輸計數、人流計數等[3, 4]。
基于國內外研究分析,本次設計是用單片機、LCD顯示器、控制按鍵為元件來設計的計算器,主要實現計數信號的采集,分析及輸出顯示功能,最終設計目標是系統本身要有抗干擾能力、一定的穩定性并能精確計數,能夠正確顯示、能進行自測以及具有通用性。
1 電路設計
1)方案設計。
stm32系列的單片機則是高性能的單片機,運行內存比較大,能夠適應較復雜環境使用,所以選用stm32系列單片機進行設計。對于單片機計數器系統的設計需要分為幾大模塊,整個系統包括作為運算核心的單片機芯片、按鍵輸入模塊、脈沖信號模塊、晶振電路模塊、顯示模塊以及外部電路集成,如圖1所示。
2)整體電路方案。
計數器以單片機為整個系統核心,需要晶振電路、電源電路、復位電路、顯示電路等。由單片機芯片、脈沖電路、復位電路以及芯片外圍集成電路組成PCU電路,而由LCD顯示器與PWM調光電路組成液晶顯示模塊,如圖3所示。最后,電源系統是單片機系統中最重要的模塊之一,如圖4所示。
2 軟件結構設計
計數器的研制基于模塊化的思想,如圖5所示,整個單片機系統分為一個主程序調動各個子程。
3 硬件設計
在PCB界面添加材料封裝,調整尺寸、邊框等,將元件布置好,如圖6所示。焊接PCB電路板,將各個原部件焊接在電路板上,組成計數器系統,如圖7所示。
安裝計數器系統后,對系統進行調節。光電編碼器順時針旋轉,CNT1通道信號提前,試驗結果為通道記錄55個脈沖,通道2記錄54個脈沖,如圖8所示。光電編碼器逆時針旋轉,CNT2通道信號提前,試驗結果為通道1記錄75個脈沖,通道2記錄76個脈沖,如圖9所示。最終,系統調試顯示測試成功。
4 結論
基于單片機設計計數器,計數器系統主要由單片機芯片、按鍵輸入模塊、脈沖信號模塊、晶振電路模塊、顯示模塊以及外部電路集成。單片機計數器硬件電路為基礎,結合軟件程序達到計數的目標。使用protel繪制電路原理圖和PCB圖,并進行分析、修改。采用計算機c語言對預先設計的單片機運行規則進行編程,在IAR環境中對c程序進行編譯,并下載到IAR仿真器中完成仿真。最終,設計出一款具有七位數計數能力和自帶檢測功能的計數器。
參考文獻:
[1]徐瑋,沈建良,等. AVR單片機快速入門.北京:機械工業出版社,2011.
[2]張祥雪,張立.單光子計數器的校驗方法研究.光學技術,2007,33(4):561563.
[3]沈建良,賈玉坤,等.STM32F10X系列ARM微控制器入門與提高.北京:北京航空航天大學出版社,2013.
[4]楊之廉,許軍.集成電路導論.北京:清華大學出版社,2012.