資源描述:
《汽車用車速表和里程表》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、汽車用車速表和里程表1、概述:汽車的車速表和里程表用于指示汽車的行駛速度和行駛的里程數。目前的汽車儀表主要有以下幾種形式:a:機械式(用軟軸)b:動圈式(用動圈機芯)c:十字機芯(用8190、8191系列芯片)。隨著汽車技術和單片機技術的發(fā)展,越來越多的汽車儀表開始使用單片機來控制。本文介紹的是用MC68HC908LJ12單片機來控制步進馬達指示行駛速度,驅動LCD顯示行駛的里程,用EEPROM保存行駛的里程數。2、工作原理:MC68HC908LJ12單片機具有以下功能:●2個16位定時計數器,每一定時器為2通道,任一通道可完成輸入捕捉、
2、輸出比較、PWM輸出功能●12K字節(jié)RAM●最在4*26段LCD驅動,●最大內部總線時鐘在5V時為8MHz,內帶看門狗電路●時實時鐘功能,完成秒、分、時、日、周、月、年計時功能●6通道10位AD功能●有低功耗模式(STOP、WAIT),在線編程●有SPI、UART通訊功能該汽車儀表利用霍爾傳感器輸出的脈沖信號,經整形電路后到單片機的T1M的CH1口,單片機利用下降沿觸發(fā),對輸入脈沖進行捕捉,兩次捕捉的差值送入RAM中保存,同時在中斷中對脈沖進行計數,當計數值達到一定值時(該值和汽車的速比有關)說明汽車行駛了1公里,用LCD把行駛的里程顯示
3、出來,單片機對捕捉的差值進行計算濾波后得出步進馬達的目標步數,該步數同步進馬達的當前步數進行比較確定步進馬達的轉動方向和走過的角度。該儀表的所有功能均由軟件完成,程序流程圖見后頁:主程序根據標志位查詢決定完成輸入脈沖的計算、波紋或累計里程的顯示及存儲或小計按鈕清零、等動作。有三個中斷程序,T1M定時器1通道作為輸入的捕捉,每捕捉到一個脈沖就把該值保存下來,等主程序進行計算波紋,計算出步進馬達的目標步數,并對輸入脈沖進行計數,滿0.1公里后置0.1公里標志位,讓主程序進行里程的累計顯示及存儲。T2M定時器0通道設置為1ms中斷,即每1ms步
4、進馬達走動一步,同時在該中斷中計算步進馬達的目標步數和步進馬達的當前步數的差值決定步進馬達行走的速度,使之有加速、恒速、減速的過程,保證步進馬達行走平穩(wěn)。T2M定時器1通道設置為10ms中斷,每10ms設置允許計算標志位,每0.5秒設置允許顯示標志,每1秒設置清小計標志,所有標志在主程序中查詢后執(zhí)行。3、總結:該儀表具有加工方便、調試簡單、一致性好等特點,加裝合適的外殼就能投入市場,該儀表經適當改動可適合任意速比的汽車。第6頁共6頁4、系統(tǒng)框圖:MC68HC908LJ12里程存儲器小計按鈕整形電路液晶顯示串行通訊微型馬達馬達驅動芯片車速傳
5、感器第6頁共6頁主程序上電復位初始化堆棧,CPU總線時鐘為8MHz是小計清零標志嗎無信號,步進馬達步數清零信號周期置最大,SPOVER是否大于5LCD顯示是0.5秒標志嗎是計算標志嗎是否0.1KM標志嗎?是清SPOVER清小計清零標志,小計清零,LCD顯示清計算標志,計算脈沖周期計算步進馬達的步數清0.1KM標志小計累計加1,存累計值設置T1CH1為外部下降沿中斷,計數周期為8MHz/64,T2計數周期為8MHz/8,T2CH0為1ms中斷T2CH1為10ms中斷開中斷初始化LCDLCD全顯初始化端口,步進馬達反轉300度讀EEPROM數
6、據LCD顯示第6頁共6頁外部中斷T1CH1T2CH0定時1ms中斷保護現場保護現場SPOVER加1T2CH0加上1ms的計數值送回T2CH0二次捕捉之差值存入DATA1HDATA1L步進馬達走1步程序ODOPLUSL、ODOPLUSH加1恢復現場ODOPLUS=585個脈沖中斷返回置0.1KM標志清ODOPLUSLODOPLUSH第6頁共6頁恢復現場中斷返回T2CH1定時10ms中斷保護現場T2CH1加上10ms的計數值送回T2CH1置位計算標志位小計按鈕為零嗎TRIPTIME加1第6頁共6頁TRIPTIME=100?置0.5秒標志,
7、SCNT2送50置小計清零標志清TRIPTIME恢復現場中斷返回SCNT2減1為零嗎第6頁共6頁