嵌入式系統(tǒng)設計 基于ARM的公交報站顯示器_第1頁
嵌入式系統(tǒng)設計 基于ARM的公交報站顯示器_第2頁
嵌入式系統(tǒng)設計 基于ARM的公交報站顯示器_第3頁
嵌入式系統(tǒng)設計 基于ARM的公交報站顯示器_第4頁
嵌入式系統(tǒng)設計 基于ARM的公交報站顯示器_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

嵌入式系統(tǒng)綜合實踐課程設計(報告)題目:基于ARM的公交報站顯示器

《嵌入式系統(tǒng)綜合實踐》課程設計(報告)摘要隨著國民經(jīng)濟的快速發(fā)展,我國城市人口高度集中并大幅增長、交通需求不

斷擴大導致城市道路交通擁擠,乘坐公交車出行是解決我國城市交通發(fā)展問題和

實踐低碳環(huán)保綠色出行的有效途徑。隨著近年來城市公交事業(yè)迅速發(fā)展,之前靠

售票員報站的方式已經(jīng)不能滿足實際需要,而公共汽車的報站直接影響到服務的

質(zhì)量。如何方便、準確地指示乘客到站的以成為當務之急。因此,我們研制這個具有漢字顯示功能的報站器單片機系統(tǒng),以滿足這個需要。本設計主要解決如何方便、準確地指示乘客到站的問題,對所報站數(shù)和站名進行文字顯示和站名選擇控制等功能。系統(tǒng)使用stm32f103zet6來控制液晶顯示模組。關鍵詞:STM32f103ZET6液晶顯示TFTLCD

目錄TOC\o"1-3"\u第1章緒論 第4章系統(tǒng)軟件4.1報站界面程序設計報站界面的程序流程圖如圖5.1所示:4.2查詢界面程序設計點擊查詢按鈕可以看到相關上下行站點的相應數(shù)據(jù),可用來判定運行的數(shù)據(jù)是否正確,從而避免錯報誤報。4.3關于界面程序設計點擊關于按鈕,可以看到相應的制作者相應的信息等。

總結(jié) 在設計過程中,我遇到了很多問題,比如反應緩慢,通過優(yōu)化程序結(jié)構(gòu),使之得到了解決,還有首次測試時發(fā)現(xiàn)顯示屏不亮,反復排查發(fā)現(xiàn)原來是顯示屏壞了,更換顯示屏后恢復了正常,但查找問題的過程中浪費了很多時間,這使我懂得了以后需要提前檢測器件好壞。當然,此次設計的于STM32的公交語音報站系統(tǒng)設計——報站語音信息的播放及總體設計系統(tǒng)也有不足,就是可以實現(xiàn)的擴展功能太少、系統(tǒng)的穩(wěn)定性并不是十分的理想。系統(tǒng)還有許多可以擴充的功能需要進一步探索,該系統(tǒng)未還可以和GPRS通訊系統(tǒng)連接,實現(xiàn)實時監(jiān)控公交車運行請況等。最后也要感謝老師,同學的幫助支持。

參考文獻[1]陳林,王廬山.智能公交報站系統(tǒng)電路分析與調(diào)試[J].電子術(shù),2020,49(02):110-111.[2]戈皓月,張梁山,姜文虎,李微,賈巍.基于單片機的公交車智能報站系統(tǒng)設計[J].電子制作,2019(13):12-14.[3]方杰,胡春雷.基于51單片機的可視可聽公交車自動報站系統(tǒng)的設計與實現(xiàn)[J].電腦知識與技術(shù),2019,15(02):221-223.[4]蔡磊,趙娟.城市公交車智能報站系統(tǒng)的設計[J].南方農(nóng)機,2018,49(23):168-169.[5]賈俊榮.公交智能報站系統(tǒng)的設計與實現(xiàn)[J].時代農(nóng)機,2017,44(09):100-101.[6]梁慶然.智能公交車系統(tǒng)設計[J].電子技術(shù)與軟件工程,2014(10):266.[7]普頓,陳丹,朱亮吉,馬永福,吳霞.拉薩市公交車進站預報服務系統(tǒng)設計[J].電子世界,2014(08):109-110.[8]田婷婷.GPS公交自動報站系統(tǒng)設計[D].天津科技大學,2014.[9]王海軍,惠彩云,李音,薛娓娓.一種基于ISD1760的公交車語音報站系統(tǒng)設計[J].價值工程,2012,31(31):182-183.[10]呂曉劍,魯懷偉.基于ARM的RFID公交自動報站系統(tǒng)研究[J].廣西民族大學學報(自然科學版),2012,18(01):41-44.[11]KellyDonoughe,BryanKatz.Evaluationoffatalschoolbusrelatedcrashesandnear-termcrashmitigationstrategies[J].IATSSResearch,2015,38(2).

附錄#include"system.h"#include"SysTick.h"#include"led.h"#include"usart.h"#include"tftlcd.h"#include"key.h"#include"touch.h"#include"beep.h"http://觸摸屏調(diào)試u16x1_l,y1_l,x2_l,y2_l,x1_m,y1_m,x2_m,y2_m,x1_r,y1_r,x2_r,y2_r,x1_u,y1_u,x2_u,y2_u;//工作模式u8else_dis=0;u8work_mode=0;u8station_cont1=0;u8station_cont2=0;//站點數(shù)組char*bus_station[4]={"LiuYi","XuWanLin","WangRan","KFC"};voidstation_change()//站點切換{ LCD_Fill(0,108,240,128,WHITE); FRONT_COLOR=BLACK; station_cont1++; if(station_cont1>3)station_cont1=0; //當前站 LCD_ShowString(25,110,tftlcd_data.width,tftlcd_data.height,16,bus_station[station_cont1]); //下一站 if(station_cont1<3)station_cont2=station_cont1+1; elsestation_cont2=0; LCD_ShowString(150,110,tftlcd_data.width,tftlcd_data.height,16,bus_station[station_cont2]);}voidauto_change()//站點自動切換{ staticu16j; if(else_dis==0&&work_mode==0) { if(++j>=500) { j=0; station_change(); } }}voiddisplay_init(u8mode)//初始化顯示(界面){ //LCD_Fill(0,0,240,50,RED); //默認顯示區(qū)域 FRONT_COLOR=RED; BACK_COLOR=GREEN; LCD_DrawRectangle(0,0,240,50); LCD_ShowFontHZ(20,10,"站點播報系統(tǒng)"); BACK_COLOR=WHITE; LCD_DrawRectangle(0,50,100,100); FRONT_COLOR=BLACK; LCD_ShowFontHZ(2,60,"當前站"); FRONT_COLOR=RED; LCD_DrawRectangle(140,50,240,100); FRONT_COLOR=BLACK; LCD_ShowFontHZ(142,60,"下一站"); FRONT_COLOR=RED; LCD_DrawRectangle(140,50,240,100); LCD_ShowString(110,60,tftlcd_data.width,tftlcd_data.height,24,"TO"); //觸摸區(qū)域 FRONT_COLOR=GREEN; LCD_Draw_Circle(120,200,28); FRONT_COLOR=BLACK; if(mode==0)LCD_ShowString(96,192,tftlcd_data.width,tftlcd_data.height,16,"AUTO"); elseif(mode==1)LCD_ShowString(96,192,tftlcd_data.width,tftlcd_data.height,16,"MANUAL"); FRONT_COLOR=BLUE; LCD_Draw_Circle(40,280,35); LCD_ShowFontHZ(8,268,"關于"); LCD_Draw_Circle(120,280,35); LCD_ShowFontHZ(88,268,"到站"); LCD_Draw_Circle(200,280,35); LCD_ShowFontHZ(168,268,"查詢"); }voiddisplay_go_back()//關于(界面){ LCD_Clear(WHITE); FRONT_COLOR=RED; LCD_DrawRectangle(0,0,240,50); LCD_ShowFontHZ(20,10,"站點播報系統(tǒng)"); LCD_Draw_Circle(120,280,35); //LCD_ShowString(108,268,tftlcd_data.width,tftlcd_data.height,24,"GO"); LCD_ShowFontHZ(90,268,"返回"); FRONT_COLOR=BLACK; LCD_ShowString(5,60,tftlcd_data.width,tftlcd_data.height,16,"Name:BusStationSystem"); LCD_ShowString(5,80,tftlcd_data.width,tftlcd_data.height,16,"Vers:V1.0"); LCD_ShowString(5,100,tftlcd_data.width,tftlcd_data.height,16,"Auth:WR.LY.XWL"); LCD_ShowString(5,120,tftlcd_data.width,tftlcd_data.height,16,"Tel:******"); LCD_ShowString(5,140,tftlcd_data.width,tftlcd_data.height,16,"QQ:******"); LCD_ShowString(5,160,tftlcd_data.width,tftlcd_data.height,16,"Data:2019-06"); LCD_ShowString(5,180,tftlcd_data.width,tftlcd_data.height,16,"Team:CET4PASS"); FRONT_COLOR=RED; }voiddisplay_find_line()//查詢(界面){ LCD_Clear(WHITE); FRONT_COLOR=RED; LCD_DrawRectangle(0,0,240,50); LCD_ShowFontHZ(20,10,"站點播報系統(tǒng)"); LCD_Draw_Circle(120,280,35); //LCD_ShowString(108,268,tftlcd_data.width,tftlcd_data.height,24,"GO"); LCD_ShowFontHZ(90,268,"返回"); FRONT_COLOR=BLACK; LCD_ShowString(5,55,tftlcd_data.width,tftlcd_data.height,24,"UP:"); LCD_ShowString(125,55,tftlcd_data.width,tftlcd_data.height,24,"DOWN:"); LCD_DrawLine_Color(120,50,120,245,RED); LCD_DrawLine_Color(0,245,240,245,RED); LCD_ShowString(20,85,tftlcd_data.width,tftlcd_data.height,16,"1:");//上行 LCD_ShowString(40,85,tftlcd_data.width,tftlcd_data.height,16,bus_station[0]); LCD_ShowString(20,105,tftlcd_data.width,tftlcd_data.height,16,"2:"); LCD_ShowString(40,105,tftlcd_data.width,tftlcd_data.height,16,bus_station[1]); LCD_ShowString(20,125,tftlcd_data.width,tftlcd_data.height,16,"3:"); LCD_ShowString(40,125,tftlcd_data.width,tftlcd_data.height,16,bus_station[2]); LCD_ShowString(20,145,tftlcd_data.width,tftlcd_data.height,16,"4:"); LCD_ShowString(40,145,tftlcd_data.width,tftlcd_data.height,16,bus_station[3]); LCD_ShowString(140,85,tftlcd_data.width,tftlcd_data.height,16,"1:");//下行 LCD_ShowString(160,85,tftlcd_data.width,tftlcd_data.height,16,bus_station[3]); LCD_ShowString(140,105,tftlcd_data.width,tftlcd_data.height,16,"2:"); LCD_ShowString(160,105,tftlcd_data.width,tftlcd_data.height,16,bus_station[2]); LCD_ShowString(140,125,tftlcd_data.width,tftlcd_data.height,16,"3:"); LCD_ShowString(160,125,tftlcd_data.width,tftlcd_data.height,16,bus_station[1]); LCD_ShowString(140,145,tftlcd_data.width,tftlcd_data.height,16,"4:"); LCD_ShowString(160,145,tftlcd_data.width,tftlcd_data.height,16,bus_station[0]); }voidtouch_control()//觸摸控制(觸摸){ if(TOUCH_Scan()==0) { //left關于 if((TouchData.lcdx>=x1_l&&TouchData.lcdx<x2_l)&&(TouchData.lcdy>=y1_l&&TouchData.lcdy<y2_l)) { led6=~led6; if(else_dis==0) { else_dis=1; LCD_Fill(20,300,60,300,RED);//紅色橫線 beep=0; delay_ms(200); beep=1; display_go_back(); } } //min到站/進入 elseif((TouchData.lcdx>=x1_m&&TouchData.lcdx<x2_m)&&(TouchData.lcdy>=y1_m&&TouchData.lcdy<y2_m)) { led7=~led7; if(else_dis==1) { else_dis=0; LCD_Fill(100,300,140,300,RED); beep=0; delay_ms(200); beep=1; LCD_Clear(WHITE); if(work_mode==0)display_init(0); elseif(work_mode==1)display_init(1); if(work_mode==1) { FRONT_COLOR=BLACK; LCD_ShowString(25,110,tftlcd_data.width,tftlcd_data.height,16,bus_station[station_cont1]); LCD_ShowString(150,110,tftlcd_data.width,tftlcd_data.height,16,bus_station[station_cont2]); } } elseif(work_mode==1) { LCD_Fill(100,300,140,300,RED); beep=0; delay_ms(200); beep=1; LCD_Fill(100,300,140,300,WHITE); station_change(); } } //right查詢 elseif((TouchData.lcdx>=x1_r&&TouchData.lcdx<x2_r)&&(TouchData.lcdy>=y1_r&&TouchData.lcdy<y2_r)) { led8=~led8; if(else_dis==0) { else_dis=1; LCD_Fill(180,300,220,300,RED); beep=0; delay_ms(200); beep=1; display_find_line(); } } //up模式切換 elseif((TouchData.lcdx>=x1_u&&TouchData.lcdx<x2_u)&&(TouchData.lcdy>=y1_u&&TouchData.lcdy<y2_u)) { led5=~led5; if(work_mode==0&&else_dis==0) { work_mode=1; led2=0; FRONT_COLOR=BLACK; LCD_ShowString(96,192,tftlcd_data.width,tftlcd_data.height,16,"MANUAL"); beep=0; delay_ms(200); beep=1; }

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論