freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

40-畢業(yè)設(shè)計論文-基于單片機的汽車行駛狀態(tài)記錄儀系統(tǒng)的軟件設(shè)計-在線瀏覽

2024-09-16 05:05本頁面
  

【正文】 CLK串行時鐘。ZLG7289與單片機的接口采用3線制SPI串行總線,由CS、CLK和DIO這3條信號線組成。DIO信號是雙向的,必須接到單片機上具有雙向功能的I/O上。鍵盤接口電路如圖37所示。但對于某些緊急狀態(tài)或反常狀態(tài),為了使操作人員不致忽視,以便及時采取措施,往往還需要有某種更能引人注意、提起警覺的報警信號。電路圖中的3個發(fā)光二極管的功能分別是:超速報警燈(J1),車輛正常工作指示燈(J2)和電源指示燈(J3)。當(dāng)車輛電源正常工作時,J3燈一直亮著。本次設(shè)計中FM1808作片外數(shù)據(jù)存儲器,起緩沖器作用。數(shù)據(jù)存儲器擴展電路如圖39所示:圖39 FM1808數(shù)據(jù)存儲器擴展電路4 系統(tǒng)軟件設(shè)計在單片機應(yīng)用系統(tǒng)開發(fā)過程中,程序設(shè)計有兩種方法:一種是基于匯編語言的程序設(shè)計方法,另一種是基于C語言的程序設(shè)計方法。此外,由于C語言有很好的層次結(jié)構(gòu),使其編寫的程序更容易閱讀和維護(hù)。所以,C語言已成為在單片機應(yīng)用系統(tǒng)開發(fā)中程序設(shè)計的主流語言。C語言是現(xiàn)有程序設(shè)計語言中規(guī)模最小的語言之一,ANSIC標(biāo)準(zhǔn)C語言只有32個關(guān)鍵字,9種流程控制語句。采用C語言編寫的程序,不依賴機器硬件,可以不加修改地移植到別的機器上。C語言具有豐富的數(shù)據(jù)結(jié)構(gòu)類型,用戶可根據(jù)需要,采用多種數(shù)據(jù)類型來實現(xiàn)各種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)運算;C語言還有多種運算符,用戶可靈活使用各種運算符實現(xiàn)復(fù)雜運算。利用C語言提供的多種運算符,可以組成各種表達(dá)式,還可以采用多種方法來獲得表達(dá)式的值,從而使用戶在程序設(shè)計中具有更大的靈活性。C語言以函數(shù)作為程序設(shè)計的基本單位,C語言程序中的函數(shù)相當(dāng)于一般語言中的子程序。C語言具有直接訪問機器物理地址的能力,Keil的C51編譯器和Franklin的C51編譯器都可以直接對單片機的內(nèi)部特殊功能寄存器和I/O端口進(jìn)行操作,可以直接訪問片內(nèi)或片尾存儲器,還可以進(jìn)行各種位操作。目前針對不同廠家的不同單片機,所采用的開發(fā)環(huán)境也不同,如PIC單片機采用的MPLAB IDE開發(fā)環(huán)境,HOLTEK單片機采用的HTIDE3000開發(fā)環(huán)境等。尤其是C編譯工具在產(chǎn)生代碼的準(zhǔn)確性和效率方面達(dá)到了較高的水平,而且可以附加靈活地控制選項,在開發(fā)大型項目時非常理想,是目前應(yīng)用最廣泛的單片機開發(fā)環(huán)境之一[19]。我們依據(jù)系統(tǒng)的功能要求,將整體軟件系統(tǒng)分割成若干個獨立的程序模塊。隨后,根據(jù)各個程序模塊的實現(xiàn)功能寫出流程,一般需要寫出具體的實現(xiàn)功能描述。合理的軟件結(jié)構(gòu)是設(shè)計出一個性能優(yōu)良的單片機應(yīng)用系統(tǒng)軟件的基礎(chǔ),必須充分重視。對于簡單的單片機應(yīng)用系統(tǒng),可采用順序結(jié)構(gòu)設(shè)計方法,其系統(tǒng)軟件由主程序和若干個中斷服務(wù)程序構(gòu)成。對于復(fù)雜的實時控制系統(tǒng),可采用實時多任務(wù)操作系統(tǒng)。在程序設(shè)計方法上,模塊程序設(shè)計是單片機應(yīng)用中最常用的程序設(shè)計方法。根據(jù)需要也可采用自上而下的程序設(shè)計方法,此方法是先從主程序開始設(shè)計,然后再編制各從屬的程序和子程序。軟件結(jié)構(gòu)設(shè)計和程序設(shè)計方法確定后,根據(jù)系統(tǒng)功能定義,可先畫出程序粗框圖,再對粗框圖進(jìn)行擴充和具體化,即對存儲器、寄存器、標(biāo)志位等工作單元作具體的分配和說明,再繪制出詳細(xì)的程序流程圖。 系統(tǒng)的功能決定了系統(tǒng)程序設(shè)計,由于系統(tǒng)的功能需求直接明了,所以軟件流程也相應(yīng)清晰,易于設(shè)計。汽車啟動后,系統(tǒng)先進(jìn)行初始化,包括對程序執(zhí)行過程中用到的相關(guān)變量初始化和各模塊初始化。程序中設(shè)置車輛狀態(tài)變量car_state,通過測試變量car_state的值來判斷車輛的運行狀態(tài)。當(dāng)車輛第一次處于行駛狀態(tài)時,主程序通過調(diào)用日歷芯片子程序和液晶顯示子程序,在液晶主屏上顯示實時時間和汽車所行駛的里程信息,每分鐘記錄1次數(shù)據(jù)并存入IC卡中。速度信號可看作是脈沖信號,單片機利用定時器0中斷定時,利用外部中斷0記錄脈沖個數(shù),從而得到速度等信息。通過測試car_state是否等于OXFF,判斷是否停車:若未停車,則繼續(xù)實時顯示時間、里程等信息。反之,表示車輛到站,記錄到站時間,停車次數(shù)加1后存入IC卡中。液晶顯示界面如下圖所示:車號XX工號XX起始站圖41 汽車啟動后主屏顯示提示信息及相關(guān)輸入界面20XX年XX月XX日XX時XX分里程XXKm圖42 汽車行駛、停車及到站實時顯示界面終點站圖43 汽車到達(dá)終點站顯示界面汽車啟動初 始 化主屏顯示提示信息輸入相關(guān)信息并存入IC卡車輛行駛? N 實時顯示日歷 里程等信息 Y 每分鐘記錄1次數(shù)據(jù)并存入IC卡Y啟動聲光報警超速? N 停車? N Y N記錄停車時間停車次數(shù)加1到站鍵按下? Y記錄到站時間,停車次數(shù)加1,并存入IC卡終點站? NY 按鍵并存儲信息主屏顯示終點站 圖44 主程序流程圖 DM12864液晶顯示軟件設(shè)計DM12864有兩種數(shù)據(jù)傳送方式:串行數(shù)據(jù)傳送和并行數(shù)據(jù)傳送。8位并行數(shù)據(jù)傳送時序下圖如所示:圖45 單片機寫數(shù)據(jù)到DM12864時序圖圖46 單片機從DM12864讀出數(shù)據(jù)時序圖RS為并行的指令/數(shù)據(jù)選擇信號,RS=0表示并行指令選擇信號,RS=1表示并行數(shù)據(jù)選擇信號;E為DM12864的使能信號,由時序圖可知,使能信號為高電平有效;R/W為并行的讀寫選擇信號,邏輯“1”表示讀,邏輯“0”表示寫。1.功能設(shè)定指令:D7 D6 D5 D4 D3 D2 D1 D00011XREXX其中RE=1為擴充指令集動作,RE=0為基本指令集動作,初始化中RE=0。3.清除顯示指令:D7 D6 D5 D4 D3 D2 D1 D0000000014.進(jìn)入點設(shè)定指令:D7 D6 D5 D4 D3 D2 D1 D0000001I/DS其中I/D=1表示游標(biāo)右移,S=1表示畫面不移動。指令代碼如下:D7 D6 D5 D4 D3 D2 D1 D01AC6AC5AC4AC3AC2AC1AC0DM12864每頁能顯示32(4行8列)個漢字,顯示位址的范圍從80H~9FH,具體顯示位置如表所示。DDRAM提供32個漢字的空間,當(dāng)寫入文本顯示RAM時,可以顯示中文字型:將兩字節(jié)編碼寫入DDRAMK,范圍為A1A0H~F7FFH(國標(biāo)碼)。按鍵掃描采用ZLG7289芯片。同時還能夠掃描管理多達(dá)64只按鍵,自動消除抖動[21]。ZLG7289與微控制器的接口采用3線制SPI串行總線,由CS、CLK和DIO這3根信號線組成。DIO信號是雙向的,必須接到微控制器上具有雙向功能的I/O上。表42 ZLG7289的SPI串行接口信號信號名稱引腳序號描述CS6SPI總線片選輸入信號,低電平有效CLK7SPI總線時鐘輸入信號,上升沿有效DIO8SPI總線數(shù)據(jù)信號,雙向圖47讀鍵盤指令時序圖(命令字在前,鍵值在后)ZLG7289在掃描鍵盤時,已經(jīng)采取了消抖動措施,因此在程序中不必另外編寫消抖動的代碼。主控制器既可以采用中斷方式處理,也可以采用查詢INT引腳電平狀態(tài)的方法處理。應(yīng)當(dāng)在INT引腳出現(xiàn)低電平時及時地讀取鍵值。如果沒有及時讀取按鍵值,則按鍵抬起后INT引腳也將恢復(fù)到高電平,而在INT引腳處于高電平期間,試圖去讀取鍵值將可能得不到有意義的數(shù)據(jù)。按下某個鍵時,ZLG7289B會在INT引腳產(chǎn)生低電平信號,這低電平信號直到松開按鍵時才會撤除。如果不等待,讀完鍵值后就直接從中斷返回主程序,那么由于INT信號還是低電平,這將再次觸發(fā)中斷,從而導(dǎo)致程序錯誤。讀鍵盤數(shù)據(jù)指令當(dāng)有鍵按下時,ZLG7289B的INT引腳會變成低電平。第1字節(jié)為命令字,第2字節(jié)是ZLG7289B向單片機返回的鍵值。本次論文設(shè)計了16個按鍵,故在軟件設(shè)計時,可將第2字節(jié)的高4位均置0,低4位表示鍵值的范圍0~15(0X00~0X0F)。 IC卡存儲軟件設(shè)計IC卡采用AT45DB041,該芯片包含主內(nèi)存和兩塊緩沖區(qū),并提供專門的讀寫指令對它們操作。芯片允許對頁進(jìn)行寫入操作,可以整塊或整頁進(jìn)行擦除操作。AT45DB041通過SPI總線進(jìn)行訪問,在訪問的過程中,首先應(yīng)該將片選端CS置低,然后通過時鐘信號SCK控制數(shù)據(jù)的輸出或輸入。車輛實時數(shù)據(jù)存入IC卡程序設(shè)計主要包括寫字節(jié)、讀字節(jié)、讀狀態(tài)寄存器、將數(shù)據(jù)寫入從某個地址(0~263)開始的buffer(緩存)中及將緩存中的數(shù)據(jù)寫入主內(nèi)存中5個部分。執(zhí)行過程:Bytename和80H相與,判斷其最高位的狀態(tài),若為1,則SI引腳置1,若為0,則SI引腳置0;判斷完最高位狀態(tài)后,將Bytename向左移1位,用同樣的方法,目的是判斷要寫入字節(jié)的次高位狀態(tài)。程序執(zhí)行過程中需要模擬時鐘信號。執(zhí)行過程:初始化變量rByte,通過對SCKFlash賦值來模擬時鐘信號,rByte和SO引腳的信號相或后,其值仍賦值給rByte,后將rByte向左移一位。程序為uchar AT45DB041B_StatusRegisterRead(void)??梢栽谌我鈺r間讀取狀態(tài)寄存器,即使在芯片編程和擦除器件時也可以讀。狀態(tài)寄存器的值是持續(xù)更新的,所以能不斷讀出新的數(shù)據(jù)。緩存內(nèi)容寫入主存、頁擦除、主存緩存對比等操作都會導(dǎo)致芯片進(jìn)入忙狀態(tài)。Bit5Bit2為器件標(biāo)志號,可以用讀取該數(shù)據(jù)來判斷AT45DB041的好壞。4. 將數(shù)據(jù)寫入從某個地址(0~263)開始的buffer(緩存)中在輪換時鐘作用下,數(shù)據(jù)可以從SI引腳送到緩存1或緩存2,程序為void AT45DB041_BufferWrite (uchar buffer,uint BFA,uchar *pHeader,uint len)。程序的主要功能是將數(shù)據(jù)寫入緩存區(qū)中。(1)寫264字節(jié)的頁:命令字由控制字84H(選擇緩存1)/87H(選擇緩存2)+15bit任意碼+9bit緩存地址碼組成,其中的9bit地址碼用于指定緩存中要寫入的首字節(jié)。執(zhí)行過程:首先選通AT45DB041,然后通過AT45DB041的SI引腳寫入命令字(40bit),緊跟著繼續(xù)通過AT45DB041的SI引腳寫入數(shù)據(jù),當(dāng)寫入完需要的數(shù)據(jù)后,CS置高,結(jié)束操作。本次程序設(shè)計中選擇寫264字節(jié)的頁緩存方式。程序的主要功能是芯片自動完成對指定頁的擦除,同時自動將寫到緩存區(qū)中的數(shù)據(jù)寫入主內(nèi)存的該頁。(1)寫264字節(jié)的頁:命令字由83H(選擇緩存1)/86H(選擇緩存2)+4bit任意碼+11bit頁地址碼+9bit任意碼組成,其中的11bit頁地址碼用于指定主內(nèi)存中要寫入的首字節(jié)。執(zhí)行過程:首先選通AT45DB041,然后通過AT45DB041的SI引腳寫入命令字(32bit),CS置高,結(jié)束操作。如果芯片內(nèi)部正在進(jìn)行擦除或?qū)懭氩僮?,狀態(tài)寄存器將會指示忙狀態(tài)。TMOD、TCON及SCON為串行通信軟件設(shè)計中需要用到的寄存器,下面先對3個寄存器做簡要的介紹:D7 D6 D5 D4 D3 D2 D1 D0GATEC/TM1M0GATEC/TM1M0定時器T1定時器T0C/T:計數(shù)工作方式/定時器工作方式選擇位。GATE=0,INT0/INT1被封鎖,只要用軟件對TR0(或TR)置“1”就啟動了定時器;GATE=1,定時器/計數(shù)器的計數(shù)受外部引腳輸入電平控制。M1,M0:工作方式控制位,可構(gòu)成以下四種工作方式:M0 M1 工作方式 說明 0 0 0 13位計數(shù)器 0 1
點擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1