基于STM32的稅控器方案
M41T83是一款提供出廠(chǎng)前校準的串行實(shí)時(shí)時(shí)鐘(RTC)芯片(圖4),包括一個(gè)400kHz的I2C接口、模擬校準、一個(gè)可編程的自動(dòng)重載計數器/計時(shí)器和兩個(gè)鬧鈴。它采用內建晶體的封裝,提前校準精度大約為5ppm,利用一個(gè)一次性可編程(OTP)寄存器,可以在工廠(chǎng)測試期間微調片上32.768kHz振蕩器的內部負載電容,確保這些產(chǎn)品每月計時(shí)精確度在12s內。另外,當電源電壓VCC斷開(kāi)時(shí),芯片會(huì )自動(dòng)轉接備用電源,備用電流低至450nA(典型值),還有一個(gè)內置電池監控器負責檢查備用電源電壓,當需要更換電池時(shí)發(fā)出提示信號。在電源恢復后產(chǎn)生200ms的復位信號,這個(gè)上電復位/低壓檢測功能可以為設計工程師節省一個(gè)獨立的板上復位IC。ST還應不同客戶(hù)應用的需要,提供M41T82的低價(jià)解決方案:去掉了看門(mén)狗、方波信號發(fā)生器和鬧鈴提醒功能,但是保留了400kHz I2C總線(xiàn)接口、模擬用戶(hù)校準、電源切換高精度電壓參考管、電池監控器、12字節的NVRAM和復位輸出,并采用占位很小的8引腳SOIC低價(jià)封裝。
● 電源管理
整個(gè)系統可以通過(guò)USB連接PC供電或通過(guò)板上的插座外接電源供電。另外設計了專(zhuān)用的電壓檢測電路對外部供電進(jìn)行監控,并采用一個(gè)2.7V、3.3F的電容作為外部供電停止后的備用電源,保證當前稅控流程的完整,防止操作中數據丟失,其保護時(shí)間可達15s。
● 數據存儲
FLASH M25P64通過(guò)SPI串行接口與MCU連接,大大簡(jiǎn)化了系統設計,減少了封裝的引腳數量及總線(xiàn)干擾。FLASH采用優(yōu)質(zhì)的CMOS制造工藝,數據保存期限至少20年,每扇區擦寫(xiě)次數保證10萬(wàn)次,其中包括整體擦除和扇區擦除指令。它的數據傳輸時(shí)鐘頻率可達50MHz,數據讀取吞吐量最高50Mbps,并設計有深節能模式(power-down),僅消耗1mA電流,從而大幅度降低了系統功耗。在設計中,為了迎合不同用戶(hù)的需求,從2MB~16MB容量型號的芯片軟硬件完全兼容,其中軟件被分為兩層:底層API是以頁(yè)面和扇區為對象的讀寫(xiě)和擦除操作;高層API是以整個(gè)統一存儲空間為對象的讀寫(xiě)透明操作,完全無(wú)需顧及因為硬件的特殊性而產(chǎn)生的各種限制(如跨頁(yè)編程、跨扇區編程、在已經(jīng)有內容的區域更新內容、跨頁(yè)更新內容、跨扇區更新內容等等)。FLASH的寫(xiě)操作流程見(jiàn)圖5。
● U盤(pán)讀寫(xiě)
CH375是一個(gè)帶UART接口的USB總線(xiàn)通用接口芯片,內部集成了PLL倍頻器、主從USB接口SIE、數據緩沖區、被動(dòng)并行接口、異步串行接口、命令解釋器、控制傳輸的協(xié)議處理器和通用的固件程序等;串行接口速度可達460800bps,利用其動(dòng)態(tài)鏈接庫實(shí)現USB-HOST主機方式讀寫(xiě)U盤(pán)。支持常用的FAT12、FAT16和FAT32文件系統,支持U盤(pán)最大容量100GB。在讀寫(xiě)操作中,不需要考慮文件系統,只需要了解文件名、文件長(cháng)度等基本資料。
● 軟件流程
STM32稅控器適用于PC開(kāi)具稅控發(fā)票的場(chǎng)所,通過(guò)稅控IC卡的相互認證,可連接外部稅控打印機打印稅控防偽發(fā)票,存儲相關(guān)稅控數據,并完成申報完稅及核查的所有稅控應用。其軟硬件設計均通過(guò)國家電子計算機質(zhì)量監督檢驗中心的稅控檢測,完全符合國家稅控標準。
結束語(yǔ)
本方案與其他廠(chǎng)家稅控器方案比較,在生產(chǎn)和研發(fā)成本大大降低的條件下,安全性、功耗和性能方面還有很大的提升。
參考文獻
1. STM32F103xx、M25P64、M41T83、CH375數據手冊
2. ST Tax Box Application Note
3.《GB 18240稅控收款機國家標準》
評論