新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 基于單片機的車輛蓄電池報警器設計

        基于單片機的車輛蓄電池報警器設計

        作者: 時間:2013-06-10 來源:網絡 收藏

        2.2 軟件設計

        報警器軟件采用模塊化設計,分成main ,B T _timer,SD16 三個模塊。每個模塊由C 語言編程的若干子程序塊組成。其中包括主程序,數據采集及處理子程序,顯示子程序,超限判斷及報警子程序,中斷處理子程序等。

        2.2.1 main模塊。

        Main 模塊由系統主程序與PORT 中斷程序組成,主程序用于完成自檢和初始化。自檢包括RAM 工作區、A /D 轉換器及其模擬采樣通道、顯示模塊等的自檢。初始化將對儀器初始狀態給予設定,包括定時器和串口的設定及分配、中斷系統的開放、看門狗的啟動等,系統初始化完成后進入LPM0 低功耗模式。PORT 中斷處理程序完成對按鍵輸入的處理。

        2.2.2 BT_timer模塊。

        BT_timer 模塊由BT_timer 初始化程序,BT_timer 中斷處理程序,LED 顯示處理程序組成,其中BT_timer 初始化程序主要完成對基本定時器的初始化,設定的定時周期為250ms;BT_timer 中斷處理程序完成報警后1 分鐘報警解除處理,刷新LED 處理,定時啟動SD16 模塊等功能,其程序流程圖如圖5 所示。LED 顯示處理程序,主要根據程序的顯示字,顯示模式字來完成對L E D ,蜂鳴器硬件操作,包括顯示、閃爍、鳴叫等。

        圖5 BT_timer中斷處理程序

        圖5 BT_timer中斷處理程序

        2.2.3 SD16模塊。

        SD16 模塊主要包括SD16模塊初始化程序,SD16(ADC)中斷處理程序。SD16模塊初始化程序主要完成MSP430 內置數/ 模轉換模塊SD16 的初始化設置;SD16(ADC)中斷處理程序,主要完成電壓數據采集,處理,判定,顯示字與顯示模式字的修改等功能,該程序是數據處理的核心程序。

        SD16 中斷處理程序流程圖如圖6 所示。

        圖6 SD16中斷處理程序流程圖

        圖6 SD16中斷處理程序流程圖

        2.2.4 報警判定處理。

        設立一個先進先出的緩沖隊列,存放端電壓值隨時間變化曲線。依據緩沖隊列中的電壓采樣值監測車輛電壓范圍,判斷啟動、內阻大、充電等狀態變化并伺機報警。當端電壓值超過或低于門限值達3000ms,即做高(低)報警;如端電壓值單位時間內下降幅度較大,則意味著蓄電池性能變差,做內阻大報警;如端電壓值單位時間內變化超過一定值,則可判別發動機啟動,充電等狀態,在單次起動時間超過5 s 、相鄰兩次啟動時間少于1 5 s、連續啟動次數超過3 次時,做非規范啟動報警。

        3 結束語

        產品設計中的技術路線選擇,以滿足設計功能基礎上的合用性為原則,同時綜合考慮實際使用條件,安裝,成本等因素。

        以上設計的報警器結構緊湊小巧,安裝方便,使用直觀,功能齊全,為駕、修人員提供一個方便的車輛蓄電池監測手段,產品已投入實際使用。


        上一頁 1 2 3 下一頁

        關鍵詞: 蓄電池 單片機 電源

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 长葛市| 股票| 建瓯市| 泸定县| 新安县| 大厂| 高安市| 长宁县| 新竹县| 肃宁县| 云和县| 濉溪县| 渑池县| 淄博市| 仙桃市| 襄樊市| 柘荣县| 济宁市| 新建县| 开原市| 保德县| 府谷县| 华容县| 万全县| 凯里市| 新密市| 乌兰浩特市| 兴和县| 赤水市| 巴彦县| 荥阳市| 香格里拉县| 南汇区| 临澧县| 和田市| 五大连池市| 桂东县| 江达县| 开江县| 南溪县| 郴州市|