火車站信號自動語音播報系統的設計
2.2 信號查詢子程序
信號查詢子程序的流程見圖7,系統30多路信號分別占用AT89C51單片機的部分I/O線和可編程接口8255的A、B、C口24路輸入線。程序對多路信號進行逐一查詢,并對到來的有效信號進行分單元標記儲存,以便將參數傳遞給主控程序。本文引用地址:http://www.ex-cimer.com/article/188578.htm
2.3 語音播報子程序
ISD4004芯片所有操作必須由微控制器控制的操作命令,通過串行通信協議SPI接口送入。SPI控制寄存器控制芯片的錄放音、信息檢索、上電、掉電、開始和停止等功能,由軟件編程指令改變SPI控制寄存器的控制位來實現,SPI控制寄存器的控制位如圖8所示,指令格式是:8位控制碼+16位地址碼。ISD的任何操作在運行位C4置1時開始,置0時結束,如果遇到EOM或OVF,則產生一個中斷,使用“讀”指令使中斷狀態(tài)位移出ISD的MISO引腳時,控制及地址數據也同步從MOSI端移入。因此要注意移入的數據是否與器件當前進行的操作兼容。當然,也允許在一個SPI周期里,同時執(zhí)行讀狀態(tài)和開始新的操作(即新移入的數據與器件當前的操作可以不兼容)。
語音播報子程序,要嚴格按照以上ISD4004的要求編程,其流程見圖9。系統確認當前播報信號有效時,通過查找語音存放地址,得到16位的播報地址。首先要調用上電子程序,送上電指令,然后等待約25μs的延遲,再傳送16位放音起始地址參數和8位從指定地址開始放音的指令,分別調用數據發(fā)送子程序,完成信息的播報。
2.4 數據發(fā)送子程序
數據發(fā)送子程序流程圖見圖1O,主要將16位放音地址和8位功能控制指令數據按照SPI協議標準,在串行時鐘同步下傳送到ISD4004的MOSI。
2.5 上電、掉電子程序
ISD4004可實現電源操作模式的管理,通過指令編程完成上電和掉電的操作,其程序流程圖見圖11和圖12。芯片掉電后進入低功耗狀態(tài),耗電電流1μA左右,只有在上電操作完成后芯片才能正常工作。
3 結 語
闡述了基于ISD4004芯片設計的單片機控制語音播報系統在火車站信號控制室實際應用的一個事例,主要介紹了系統軟、硬件的設計方法,其目的就在于提供一種多路工業(yè)過程控制在線語音提示或報警的微機控制模塊,可以稍加改造,方便地與常規(guī)工業(yè)控制系統或設備配合使用,甚至還可以方便地與復雜系統和DCS系統配合使用,完成各種工業(yè)控制和監(jiān)測系統的工作狀態(tài)報警和操作提示。
評論