基于SC89F5162的老人生理智能監(jiān)控預(yù)警系統(tǒng)設(shè)計
3、軟件設(shè)計原理
本文引用地址:http://cafeforensic.com/article/236648.htm本課題的軟件設(shè)計分為2部分,一、單片機(jī)程序設(shè)計:基于子系統(tǒng)功能而設(shè)計的單片機(jī)驅(qū)動程序的開發(fā)環(huán)境為Keil4,開發(fā)語言用C語言。單片機(jī)的驅(qū)動程序用到了SC89F5162的S輸入/輸出(I/O)準(zhǔn)雙向模式、增強(qiáng)型通用異步收發(fā)器(EUART)和模/數(shù)轉(zhuǎn)換器(ADC)等特色功能。
增強(qiáng)型通用異步收發(fā)器(EUART)設(shè)計原理:EUART首先將接收到的并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)來傳輸。消息幀從一個低位起始位開始,后面是5~8個數(shù)據(jù)位,一個可用的奇偶位和一個或幾個高位停止位。接收器發(fā)現(xiàn)開始位時它就知道數(shù)據(jù)準(zhǔn)備發(fā)送,并嘗試與發(fā)送器時鐘頻率同步。如果選擇了奇偶,UART就在數(shù)據(jù)位后面加上奇偶位。奇偶位可用來幫助錯誤校驗(yàn)。在接收過程中,UART從消息幀中去掉起始位和結(jié)束位,對進(jìn)來的字節(jié)進(jìn)行奇偶校驗(yàn),并將數(shù)據(jù)字節(jié)從串行轉(zhuǎn)換成并行。UART也產(chǎn)生額外的信號來指示發(fā)送和接收的狀態(tài)。例如,如果產(chǎn)生一個奇偶錯誤,UART就置位奇偶標(biāo)志。由此原理合理的配置EUART的相關(guān)寄存器和設(shè)置參數(shù)。
模/數(shù)轉(zhuǎn)換器(ADC)軟件設(shè)計原理:SC89F5162包含一個單端型、 10位逐次逼近型模數(shù)轉(zhuǎn)換器(ADC)。ADC內(nèi)建的基準(zhǔn)電壓VREF直接和VDD相連,用戶也可以選擇VREF端口輸入基準(zhǔn)電壓。8個ADC通道都可以獨(dú)立輸入模擬信號,但是每次轉(zhuǎn)換只能使用一個通道。GO/DONE信號控制開始轉(zhuǎn)換,提示轉(zhuǎn)換結(jié)束。當(dāng)轉(zhuǎn)換完成時,更新ADC數(shù)據(jù)寄存器與此同時,設(shè)置ADCON寄存器中的ADCIF位,并且產(chǎn)生一個中斷(如果允許ADC中斷)。ADC模塊整合數(shù)字比較功能可以比較ADC中的模擬輸入的值與數(shù)字值。如果允許數(shù)字比較功能(在ADCON寄存器中的EC位置1),并且ADC模塊使能 (在ADCON寄存器中的ADON位置1),只有當(dāng)相應(yīng)的模擬輸入的數(shù)字值大于或等于寄存器中的比較值(ADDH/L)時,才會產(chǎn)生ADC中斷。當(dāng)GO/DONE置1時,數(shù)字比較功能會持續(xù)工作,直到GO/DONE清0。這一點(diǎn)與模數(shù)轉(zhuǎn)換工作方式不同。帶數(shù)字比較功能的ADC模塊能在Idle模式下工作,并且ADC中斷能夠喚醒Idle模式。但是,在Power-Down模式下,ADC模塊被禁止。由此原理合理的配置ADC的相關(guān)寄存器和設(shè)置參數(shù)。
三、項目設(shè)計框圖
1、硬件設(shè)計框圖
?
?
2、軟件設(shè)計框圖
系統(tǒng)總體程序設(shè)計流程圖:
?
?
基于GPS芯片的位置獲取子系統(tǒng)程序流程圖:
?
?
GSM/GPRS通信子系統(tǒng)程序流程圖:
?
?
四、測試結(jié)果
本系統(tǒng)的測試分為總系統(tǒng)測試和子系統(tǒng)測試,詳見測試視頻。網(wǎng)址為:http://pan.baidu.com/s/1i30t1e1。
加速度計相關(guān)文章:加速度計原理
評論