片機系統運行參數的保存及有效性判別
【摘 要】 對單片機控制系統運行參數有效性的判別方法進(jìn)行了介紹,并對系統運行參數如何實(shí)現保存進(jìn)行了探討。同時(shí)給出了存儲過(guò)程中的數據校驗和運行參數的取值范圍檢驗過(guò)程。
關(guān)鍵詞:?jiǎn)纹瑱C,運行參數,數據校驗,取值范圍
1 引 言
在單片機構成的控制系統中,系統控制時(shí)需要使用和保存已經(jīng)設置或優(yōu)化的參數。如果將運行參數僅僅存儲于單片機的RAM區中,則系統在掉電或重啟時(shí)將會(huì )丟失這些重要參數,不能正常運行。為了解決上述問(wèn)題,保證控制系統正常、可靠地運行,需要將這些運行參數保存在足夠容量的電可擦除存儲器(EEPROM)中。在寫(xiě)入或讀出EEPROM中的數據時(shí),為保證數據操作的正確性,則需要進(jìn)行數據校驗。在系統運行這些參數之前,為檢查運行參數的取值是否在許可范圍之內,則需要進(jìn)行參數取值范圍的檢驗。本文結合作者開(kāi)發(fā)的電梯轎廂門(mén)機控制系統,來(lái)詳細討論參數保存和校驗的設計及實(shí)現。
2 系統運行參數的存儲
在單片機組成的控制系統中,系統設置的運行參數是系統正常運行所必須使用的,既要保證運行參數的可修改性,又要保證運行參數在系統停機或掉電的情況下能夠正確保存,因而運行參數應保存在電可擦除存儲器(EEPROM)中。根據參數個(gè)數的多少,決定所使用EEPROM的存儲容量。例如,在本文的單片機系統中,電梯轎廂門(mén)機控制運行所需要的參數有:門(mén)寬參數、有無(wú)光電檢測、輸出保持力矩、開(kāi)門(mén)加速步頻、關(guān)門(mén)加速步頻、開(kāi)門(mén)減速步頻、關(guān)
門(mén)減速步頻、工作計數器等,設計中要求存儲的參數共需28個(gè)字節,再加上一個(gè)字節校驗和,所以選用32字節容量的EEPROM。Xicro公司的X24C44能滿(mǎn)足上述可修改性和容量的要求。
2.1 EPROM芯片簡(jiǎn)介及硬件組成
電可擦除存儲芯片X24C44是一個(gè)八引腳的芯片,其內部有存儲矩陣和RAM兩個(gè)存儲區,外部引腳的功能如圖1所示。芯片各引腳的功能為:CE為芯片使能引腳;Vcc及Vss為電源引腳;電壓為+5V;SK是讀寫(xiě)X24C44數據時(shí)所用到的外部時(shí)鐘同步信號;DI為命令或數據串行輸入X24C44的信號引腳;DO為X24C44數據串行輸出的信號引腳;STORE為低電平時(shí),允許將EEPROM中RAM的內容保存到存儲矩陣;RECALL為低電平時(shí),允許將EEPROM的存儲矩陣的內容傳送到EEPROM的RAM中。

對X24C44的讀寫(xiě)操作是串行數據操作,其讀時(shí)序如圖2所示。結合圖2中的讀時(shí)序,讀出 X24C44中某兩字節的數據操作為:芯片的使能引腳CE為高電平,在時(shí)鐘SK信號的同步下,先向X24C44的數據串行輸入引腳DI送讀出兩字節的命令1AAAA11X(其中AAAA為要讀出的起始地址,X表示X24C44對該值忽略),數據串行輸出引腳在第9個(gè)時(shí)鐘由高阻態(tài)轉為數據串行輸出,16個(gè)比特為一個(gè)讀出內容,通過(guò)將CE信號置為低電平,先關(guān)閉芯片的讀出數據操作。

按照向X24C44寫(xiě)入兩字節內容的時(shí)序,寫(xiě)入兩字節數據的操作類(lèi)似于讀出操作過(guò)程。
X24C44采用串行讀寫(xiě)數據,其與單片機的接線(xiàn)簡(jiǎn)單,除了片選信號CE外,只要與單片機的三根I/O引腳相連即可,作用為時(shí)鐘CLK,數據輸入DI,數據輸出DO,其中DO引腳要接一個(gè)10kΩ的上拉
電阻。硬件電路接線(xiàn)如圖3所示。

2.2 EEPROM讀寫(xiě)的實(shí)現
控制系統中所采用的是51系列單片機,其中讀寫(xiě)子程序設計用匯編也較容易 實(shí)現結構化編程。根據X24C44的時(shí)序和操作過(guò)程,下面給出讀出EEPROM中數據的匯編子程序。單片機將數據寫(xiě)入EEPROM的過(guò)程與讀出過(guò)程相類(lèi)似。讀出EEPROM中數據的匯編子程序如下:
read:push psw;讀數據子程序入口
相關(guān)推薦
技術(shù)專(zhuān)區
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線(xiàn)
- 開(kāi)關(guān)電源
- 單片機
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機控制
- 藍牙
- PLC
- PWM
- 汽車(chē)電子
- 轉換器
- 電源管理
- 信號放大器
評論