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

正文內容

液晶gps定位信息顯示器-圖順序錯位-預覽頁

2025-07-14 00:26 上一頁面

下一頁面
 

【正文】 功能要求本設計要求利用單片機、液晶顯示器和GPS的OEM板設計開發(fā)一種GPS定位信息顯示器,要求能顯示經(jīng)緯度、時間和水平面高度等實時信息。 1.衛(wèi)星軌跡 全球有24顆GPS衛(wèi)星沿6條軌道繞地球運行(每4個一組),GPS接收模塊就是靠接收這些衛(wèi)星來進行定位的。計算LAT/LONG(二維)坐標至少需要3顆衛(wèi)星,4顆衛(wèi)星可以計算三維坐標。一般12通道接收器不需要外置天線,除非是在封閉的空間中,如船艙、車廂中。 5.DGPS功能為了將SA和大氣層折射帶來的影響降為最低,有一種叫做DGPS發(fā)送機的設備。許多GPS設備提供商在一些地區(qū)設置了DGPS發(fā)送機,供客戶免費使用,只要客戶所購買的GPS接收器有DGPS功能即可。一些GPS接收器有單獨的天線可以貼在擋風玻璃上,或者一個外置天線可以放在車頂上,這有助于接收器收到更多的衛(wèi)星信號。 1.VFD顯示器 VFD顯示器是由電子管發(fā)展過來的一種顯示器件。動態(tài)比靜態(tài)多一極:柵極。VFD顯示器具有高清晰度,高亮度,寬視角,反應速度快及從紅色到藍色多種色彩等特點,顯示效果好。 2.LED顯示器LED顯示器是由LED發(fā)光二極管發(fā)展過來的一種顯示器件,是LED發(fā)光二極管的改型,一般分為LED數(shù)碼管顯示器和LED點陣顯示器。 3.LCD液晶顯示器LCD液晶顯示器是利用光的偏振現(xiàn)象來顯示的。該顯示器具有12232點陣,不僅可以顯示數(shù)字,還可以顯示中文、英文甚至圖片等,體積只有61 mm19 mm mm,功耗僅為5V mA= mW(不開背光)。3 系統(tǒng)硬件電路的設計 圖1所示為GPS定位信息顯示器系統(tǒng)設計原理框圖。上電復位電路為單片機上電提供上電復位。 電源電路 電源電路采用機內變壓器供電和機外外接電源供電兩種供電方式,如圖3所示。經(jīng)過橋式整流輸出大約9V的脈動電壓,經(jīng)過470μF的濾波電容可得到平穩(wěn)的直流電壓。當輸入直流電源時,由DD4或者DD3中的一組完成極性轉換。AT89C51單片機的電源、復位、晶振振蕩電路如圖4所示。隨著充電的進行,電容器上的電壓不斷上升,RST上的電壓就隨著下降,RST腳上只要保持10 ms以上高電平,系統(tǒng)就會有效復位。當外接石英晶體時,電容CC2選30pF177。外接電容CC2的大小會影響振蕩器頻率的高低、振蕩頻率的穩(wěn)定度、起振時間及溫度穩(wěn)定性。 圖5 鍵盤電路原理圖 本鍵盤為最簡單的點式鍵盤,由單片機I/O口進行掃描。本設計只設置兩個按鍵,用來進行顯示信息的翻頁。 引腳3:秒脈沖輸出端,精度為177。 引腳7:外部備用電源輸入端。 引腳11:空腳NC。在本系統(tǒng)中,將串行2用于計算機作GPSOEM板設置用,本機顯示GPS信息從NMEA口送出。它原是基于公用電話網(wǎng)的一種串行通信標準,推薦電纜的長度最長為15 m(50 ft)。因此兩者之間邏輯電平不兼容,兩者通信時必須進行電平轉換。12 V或者177。為此推出了只用單一電壓且具有發(fā)送/接收雙重功能的電路。其內部電荷泵電路先將+5V提升到+10V,然后再用電壓反轉電路將+10V變成10V,這樣就得到了RS232所需的177。通過對RS232電平和TTL電平(見表2)分析,決定采用三極管來進行轉換,而不用MAX232等專用RS 232與TTL電平轉換器。當RS232 IN端輸入RS232邏輯電平1,也就是輸入3~25 V時,三極管截止。)為0~55℃(常溫)/20~70℃(寬溫); 保存溫度(TSTG)為10—70℃。 液晶顯示器CGM 12232的引腳功能如圖11所示,具體介紹如下: 引腳1:VDD正電源輸入。 引腳5:芯片1使能信號,高電平有效。 引腳9—16:液晶并行數(shù)據(jù)。CGM12232的引腳9~16接單片P2口進行數(shù)據(jù)傳輸,引腳58的3根控制線接PO口。 圖12 單片機與液晶顯示器接口電路圖4 系統(tǒng)程序的設計 系統(tǒng)軟件采用C語言編寫,C編譯器為Keil C51。 SEDI520FOA屬行列驅動及控制合一的小規(guī)模液晶顯示驅動芯片,電路簡單,經(jīng)濟實用,內含振蕩器,只需外接振蕩電阻即可工作(已經(jīng)接在板上)。對顯示RAM的一個字節(jié)單元賦值就是對當前列的8行(一頁)像素點是否顯示進行控制。AO=1表示出現(xiàn)在數(shù)據(jù)總線上的是數(shù)據(jù);AO=0表示出現(xiàn)在數(shù)據(jù)總線上的是指令或讀出的狀態(tài)。WR(R/W):在Intel 8080時序時為寫,低電平有效;在M6800時序時為讀、寫選擇信號,R/W=1為讀,R/W=O為寫。表6所列為與M6800系列單片機接口為例(RES=1)而總結出的指令。 安全模式下的內部狀態(tài):停止LCD驅動Segment和Common輸出VDD電平;停止晶體振蕩并禁止外部時鐘輸入,晶振輸入OSC2引腳處于不確定狀態(tài);顯示數(shù)據(jù)和內部模式不變。 設置頁地址指令功能:設置頁地址。當單片機要對DD RAM進行讀寫操作前,首先要設置頁地址和列地址()。 ADC為顯示方向位,ADC=O:反向顯示;ADC=l:正向顯示。該指令執(zhí)行后,列地址自動加1,所以可以連續(xù)將數(shù)據(jù)寫入DD RAM,而不用重新設置列地址。這是因為設置完列地址后,第1次讀數(shù)據(jù)時,出現(xiàn)在數(shù)據(jù)總線上的數(shù)據(jù)是列地址,而不是所要讀出的數(shù)據(jù)。 占空比選擇指令功能:設置D=O表示1/16 DUTY;D一1表示1/32 DUTY。 改寫結束指令功能:關閉“讀修改寫”模式,并把列地址指針恢復到打開“讀修改寫”模式前的位置。 表7 頁地址對應表 A1 AO頁地址O0 0O1 110 211 3 表8 列地址對應表A6A5A4A3A2A1AO列地址OOOOOO0 O00OOOO1 1 ……10O1110 4E10O1111 4F 2.CGM 12232型LCD液晶顯示器軟件設計 CGM 12232型LCD液晶顯示器軟件設計從底層寫起,逐步提高,最后完成顯示一個code區(qū)域的數(shù)據(jù)功能。 調用方式:void send_si(uchar instruction) 函數(shù)說明:發(fā)指令instruction到從窗口(內函數(shù),私有,用戶不能直接調用)。其流程圖如11. 16所示。芯片判忙子程序流程如圖17所示。具體流程如圖18所示。 調用方式:void SetAddress(uchar address) 函數(shù)說明:同時設置主(右)從(左)列地址為0~61列。由于這兩個程序只是簡單地將兩個特定值發(fā)送給LCD液晶屏,所以對于其行地址這里就不再詳述。Flash ROM置0是只要把0寫進去即可,置1則需要擦除。清屏子程序流程如圖19所示。0表示上半部分;非O表示下半部分。畫圖子程序流程如圖20所示。通常使用NMEA 0183格式輸出,數(shù)據(jù)代碼為ASCII碼字符。這里接收的是“$GPGGA”這條語句的數(shù)據(jù)。 由于GPS OEM發(fā)送的不止一條語句,且要完整地接收這條$GPGGA語句,就必須判斷這條語句的頭,也就是“$ GPGGA,”這7個字符??梢赃x擇顯示的信息包括經(jīng)緯度、北京時間和大地水準面高度3條信息。圖21 單片機串行中斷接收子程序流程圖 圖22 鍵盤子程序流程圖 顯示子程序顯示子程序是根據(jù)鍵盤值將經(jīng)緯度、北京時間和大地水準面高度這3條信息選擇一個顯示到LCD液晶顯示器。 顯示的信息為其中,GPS OEM板發(fā)送的信息和要顯示的信息有所不同。具體流程如圖 23所示。顯示的信息為初看起來好像GPS OEM板傳過來的時間格式與要顯示的時間格式是一致的,似乎不用轉換。具體流程如圖24所示。 另外,天線離海平面的高度、大地水準面高度在串行緩沖里面的數(shù)據(jù)位置都是浮動的。 具體流程如圖25所示。特殊功能寄存器的初始化包括定時器的初始值的裝入、中斷的開放等。 特殊功能寄存器初始化和外圍設備初始化在main()主函數(shù)處開始,在進入功能函數(shù)循環(huán)前完成初始化。定時器O(TO)主要是背光顯示延時10s熄滅用。若需要,則更新顯示;若不需要,則返回。2 硬件及軟件綜合調試。 //數(shù)據(jù)1/命令0選擇sbit RW = P0^6。 //背光 sbit up = P0^0。 //鍵盤值uchar serial_counter。 //串行接收頭部標志,一下8個都定義在39。sbit G2flag = serial_byte^3。sbit ENflag = serial_byte^7。$39。P39。G39。,39。 說明:LCD初始化。 //LCD初始化void lcd_clr(void)。 //ASCII碼轉換為BCD碼 void logo(void)。 //軟件計數(shù)器+1。 }}//////////////////////////////////////////////////////////////////////////////////串行口中斷函數(shù),用于語句39。 pp=SBUF。$GPGGA39。結束接收 else { serial_buff[serial_counter]=pp。 } } else if(Aflag==1) //第六個為39。 { if(pp==44) DFflag=1。 //不是39。,判斷第六個是不是39。A39。 //不是39。,判斷第五個是不是39。G39。 //不是39。,判斷第四個是不是39。G39。 //不是39。,判斷第三個是不是39。P39。 //不是39。,判斷第二個是不是39。G39。 //不是39。 //串行計數(shù)器清零 } } /*void serial() interrupt 4 using 2{ uchar i,buff。 serial_counter ++。i7。 } } } } else { if(SBUF == 39。 serial_counter ++。 //關Slaver E1 = 1。 //寫觸發(fā) data = instruction。 //開Masterwait_ready()。 //數(shù)據(jù)E1 = 0。 //判斷忙A = 0。 //關Slaver}//////////////////////////////////////////////////////////////////////////////////調用方式:void send_sd(uchar data)//函數(shù)說明:發(fā)數(shù)據(jù)data到從窗口(內函數(shù),私有,用戶不直接調用)////////////////////////////////////////////////////////////////////////////////void send_sd(uchar c){E1 = 0。 //數(shù)據(jù)RW = 0。 //指令RW = 1。 //讀入LCD狀態(tài),1=忙,一直等待LCD內部操作完成}//////////////////////////////////////////////////////////////////////////////////調用方式:void lcd_init(void)//函數(shù)說明:122x32LCD初始化,開機后僅調用一次////////////////////////////////////////////////////////////////////////////////void lcd_init(void){send_mi(reset)。send_mi(dynamic_driver)。send_mi(adc_select)。send_mi(col_addr_set)。send_mi(disp_on)。page4。 //主窗口設置為0列 send_si(0)。 send_sd(0x00)。0x7F)。}//////////////////////////////////////////////////////////////////////////////////調用方式:void putchar_l(uchar c)//函數(shù)說明:在左頁(主窗口)當前地址畫一個字節(jié)(8點)////////////////////////////////////////////////////////////////////////////////void putchar_l(uchar c){send_md(c)。 uchar address。 //page表示上下兩頁,window表示左右窗口(0左,1右)if (layer) page=2。 //防止顯示亂碼 if (x60) //左右窗
點擊復制文檔內容
范文總結相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1