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

正文內(nèi)容

基于gps的四旋翼飛行器的設(shè)計(jì)與實(shí)現(xiàn)-閱讀頁

2024-11-30 16:01本頁面
  

【正文】 間與 GPS 衛(wèi)星時(shí)鐘的差別。 DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK LCD 顯示模塊介紹 LCD11264 是一種圖形點(diǎn)陣液晶串口顯示屏,點(diǎn)陣數(shù) 112*64,可以顯示 4*7 行 16*16的漢字。 圖 25 屏幕機(jī)械圖 DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK LCD 顯示屏引腳介紹: 圖 37 LCD 引腳圖 從左到右為 LCD 的 1 到 8 腳: 1 腳 GND 為接地 2 腳 VCC 接工作電壓 3 腳 CS 為片選端 4 腳 A0 為地址選擇,接低電平為寫命令,接高電平為寫數(shù)據(jù) 5 腳 SCLK 為時(shí)鐘信號(hào)線 6 腳 SI 為數(shù)據(jù)線 7 腳 RST 為復(fù)位端 8 腳 BL_SW 為背光燈 鍵盤模塊 設(shè)計(jì) 2 個(gè)按鍵,直接采用 I/O 口控制,采用軟件去消除抖動(dòng)的影響,如圖 28 所示。為了匹配 89C51 的TTL 電平和 GPS 模塊的 RS232C 標(biāo)準(zhǔn)接口,采用 MAX232 進(jìn)行電平轉(zhuǎn)換,如下圖所示: 圖 27 串口硬件圖 DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK 3 軟件設(shè)計(jì) GPS 模塊程序設(shè)計(jì) 該模塊主要負(fù)責(zé)接收 GPS 發(fā)送過來的導(dǎo)航定位信息,并對(duì)這些信息進(jìn)行提取和解析,保 存在相應(yīng)的全局?jǐn)?shù)組中,以供調(diào)用。//緯度數(shù)據(jù) unsigned char GPS_longitude[15]。//緯度方向 unsigned char GPS_longitude_dir[3]。//速度方位數(shù)據(jù) unsigned char GPS_speed[8]。//數(shù)據(jù)已經(jīng)獲得的標(biāo)志 unsigned char GPS_height[10]。//時(shí)間數(shù)據(jù) 1 unsigned char GPS_time2[10]。//模式數(shù)據(jù) GPS 數(shù)據(jù)格式 (NMEA0183) 例如 : $GPRMC,A,N,E,150706,A*50 其中各參數(shù)的意義 : 字段 0: $GPRMC,語句 ID,表明該語句為 Remended Minimum Specific GPS/TRANSIT Data(RMC)推薦最小定位信息 字段 1: UTC 格林威治時(shí)間,格式是 hh mm 字段 2:狀態(tài), A 代表定位, V 代表未定位 字段 3:緯度,格式為 ,度分格式位數(shù)不足就補(bǔ)上 0 字段 4:緯度 S 即南緯,緯度 N 即北緯 字段 5:經(jīng)度,格式為 ,度分格式位數(shù)不足是就補(bǔ) 上 0 字段 6:經(jīng)度 E 即東經(jīng),經(jīng)度 W 即西經(jīng) 字段 7:速度,節(jié), Knots 字段 8:方位角,單位為度 DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK 字段 9: UTC 格林威治日期,格式為 DDMMYY 字段 10:磁偏角, (000180)度,位數(shù)不足就補(bǔ)上 0 字段 11:磁偏角方向, W 代表西 E,代表東 字段 12:數(shù)據(jù)校驗(yàn)值 GPS 接收機(jī)只要上電并處于工作狀態(tài),就會(huì)循環(huán)不停地把接收并計(jì)算 GPS 導(dǎo)航定位信息,并由串行接口傳送給單片機(jī)。根據(jù)幀頭不同,采集需要的幀數(shù)據(jù),幀頭主要有 $GPGGA、$GPGSA、 $GPGSV 以及 $GPRMC,這些幀頭表示后續(xù)幀內(nèi)數(shù)據(jù)的內(nèi)容,每一幀數(shù)據(jù)都用回車符和換行符作為幀尾來表示一幀數(shù)據(jù)內(nèi)容的結(jié)束??梢酝ㄟ^ SWITCH(CASE)語句按次序?qū)⒏鱾€(gè)幀數(shù)據(jù)信息從提取出來存入建立的數(shù)組中,將其轉(zhuǎn)換成有需要的、并可使用的定位信息數(shù)據(jù)。而對(duì)于時(shí)間信息,因?yàn)閺?GPS 接收機(jī)中獲得的時(shí)間信息為格林威治時(shí)間,還要在獲取時(shí)間上加上 8 小時(shí)才能得到準(zhǔn)確的北京時(shí)間。對(duì)于顯示 ACSII 碼字符顯示的操作 ,由于 ACSII 碼字符 種類很少,只需要 8 位就可以表示。而剩下的低 128 位用來顯示英文字符,即英文內(nèi)碼。A39。 DFF 置高時(shí)為顯示打開,命令為 DISPLAY ON, DDRAM 的內(nèi)容可以在屏幕上顯示; DFF置低時(shí)為顯示關(guān)閉,命令為 DISPLAY OFF。 (2) 忙標(biāo)志 BF: BF 標(biāo)志表示內(nèi)部的工作情況。 BF 為低電平時(shí),模塊為待機(jī)狀態(tài),隨時(shí)可接受外部指令和數(shù)據(jù)控制。同時(shí), DDRAM 也可以用來存儲(chǔ)一些圖片的點(diǎn)陣模。此計(jì)數(shù)器可以循環(huán)記數(shù),用于顯示行掃描同步。 RST 復(fù)位時(shí)Z 地址計(jì)數(shù)器將會(huì)被清 0。這個(gè) 11264LCD 液晶模塊的 DDRAM 一共有 64行,也就是說屏幕有 64行可以顯示液晶點(diǎn)。只能用指令設(shè)置 X 地址計(jì)數(shù)器是高 3位, Y 地址計(jì)數(shù)器是低 6位。各顯示數(shù)據(jù)輸入 LCD 后,Y 地址自加 1, Y 地址指針從 0加到 63。如下圖: 圖 34 漢字字模建立 在選項(xiàng)中選擇 C51 格式,陰碼以及逆向列行式: 圖 35 字模設(shè)置 并將建立的漢字字模以數(shù)組的形式存放字庫頭文件中: code unsigned char Char_data_1[]= DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK {0x10,0x60,0x02,0x0C,0xC0,0x04,0x04,0x04,0x04,0xFC,0x04,0x04,0x04,0x04,0x00,0x00, 0x04,0x04,0x7C,0x03,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x00,/*江 ,0*/ 0x04,0x04,0xE4,0x24,0x24,0x24,0x24,0x3F,0x24,0x24,0x24,0x24,0xE4,0x04,0x04,0x00, 0x80,0x80,0x43,0x22,0x12,0x0E,0x02,0x02,0x02,0x7E,0x82,0x82,0x83,0x80,0xE0,0x00,/*克 ,1*/ 0x10,0x10,0xD0,0xFF,0x90,0x10,0xE4,0x24,0x64,0xA4,0x3F,0xA4,0x64,0x24,0xE4,0x00, 0x04,0x03,0x00,0xFF,0x00,0x01,0xFF,0x00,0x09,0x09,0x7F,0x09,0x49,0x80,0x7F,0x00}/*楠 ,2*/ 在主函數(shù)中定義一個(gè)指針 p,指向頭文件中的數(shù)組,即 p=Char_data_1。 Cl_addr=X*8。nchar_count。//輸入列地址 Write_LCD_cmd(0x04+(Cl_addramp。 Write_LCD_cmd(0xb0+Y*2)。i16。 Write_LCD_cmd(0x11+(Cl_addr4))。0x0f))。//寫 入高 8 位部分?jǐn)?shù)據(jù) for(i=0。i++) Write_LCD_dat(*ptr++)。//將列地址增量 } } DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK 字庫的建立 圖 36 自動(dòng)生成 ASCII 碼 生成的字模選取需要的部分存入字庫頭文件中: 圖 37 字模存入數(shù)組 字模從“空格”建立到小寫“ z”,由以下子程序輸出對(duì)應(yīng)的 ASCII 碼: void disp_char_ASCII(unsigned char Y,unsigned char X,unsigned char a[],unsigned char char_count) { unsigned char Cl_addr,i,n。 char x=0。 for(n=0。n++) { x=a[n]0x20。 Write_LCD_cmd(0x11+(Cl_addr4))。0x0f))。//寫入低 8 位部分 數(shù)據(jù) for(i=0。i++) Write_LCD_dat(*p++)。//輸入列地址 Write_LCD_cmd(0x04+(Cl_addramp。 Write_LCD_cmd(0xb0+Y*2+1)。i8。 Cl_addr+=8。 鍵盤模塊 2 個(gè)按鍵實(shí)現(xiàn)翻頁,記錄坐標(biāo)等功能,按鍵分為 k1 和 k2 具體定義如下: 短按 k1:進(jìn)入時(shí)間顯示界面 (Flag=1)。 短按 3 次 k1:回到主界面 (Flag=0)。 短按 k2→短按 k1→短按 k2:開始以記錄的目的地導(dǎo)航 (Flag=5)。 短按 2 次 k2 后回到 主界面 (Flag=0)。 DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK 圖 38 按鍵程序流程圖 導(dǎo)航軟件設(shè)計(jì) 將目標(biāo)點(diǎn)的經(jīng)緯度存入數(shù)組,并實(shí)時(shí)將接收到的當(dāng)前經(jīng)緯度與數(shù)組中的值進(jìn)行比較,控制飛行器前進(jìn)后退、或左飛右飛和 45176。 DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK 圖 39 導(dǎo)航流程圖 由于沒有裝載電子羅盤,只能人工將飛行器起飛時(shí)的方向朝北。斜向飛至目標(biāo)點(diǎn)正下方或正左方,再前飛或右飛至目標(biāo)點(diǎn)。 圖 311 多個(gè)目標(biāo)點(diǎn)的行走方向 4 數(shù)據(jù)傳輸 在實(shí)物電路板上, LCD 采用 I2C 方式, SDA 接 口, SCL 接 口。 DHJKSDH JD JKHFJKDSH JKDFHJK HJFKDHJK JKDHFJH JDKFHJK HFJKDHJ KDHFJH JDHSJK JK I2C 總線在 LCD 上的應(yīng)用 本文采用的 11264 點(diǎn)陣液晶顯示屏即采用 I2C 通信方式,只需要兩根線就能傳輸數(shù)據(jù),極大減少了 LCD 對(duì)單片機(jī)端口的占用。 它是同步通信的一種特殊形式,具有接口線少,方式控制簡單,器件封 裝小,通信速率較高等優(yōu)點(diǎn)。 I2C 總線特征 (1) 沖突檢測(cè)和仲裁 可以 防止數(shù)據(jù) 不完整 ; (2) 只 需要 兩條總線:一條 為 串行時(shí)鐘 信號(hào)線 SCL,一條 為 串行數(shù)據(jù) 信號(hào) SDA; (3) 連接到總線的每個(gè)器件都 能夠由 的 設(shè)定的 主從機(jī)關(guān)系 和 唯一的 硬件 地址 來設(shè)置它的 軟件地址,主機(jī) 也能 作 主機(jī)接收裝置和主機(jī)發(fā)送裝置 ; (4) 它是一個(gè) 可以實(shí)現(xiàn) 多主機(jī) 通信的 總線, 即使超過 2臺(tái) 主機(jī) 在同一時(shí)刻進(jìn)行 初始化,也可以通過 仲裁 的方式進(jìn)行數(shù)據(jù)傳遞; (5) 在標(biāo)準(zhǔn)模式下 , 8 位串行 的 雙向數(shù)據(jù)傳輸位可達(dá) 到大約 100kbit/s 的 速率, 在 快速模式 下 可 以 達(dá) 到 400kbit/s,高速模式下 甚至 可達(dá) 到 ; (6) 最大電容 400pF 限制 了 連接到相同總線的 IC 數(shù)量 。 數(shù)據(jù)有效性 SDA 線上的數(shù)據(jù)必須在時(shí)鐘 信號(hào) 的高電平周期保持穩(wěn)定。 圖 41數(shù)據(jù)有效性 起始和停止 的 條件 SCL 線電平 為高 時(shí), SDA 線從高電平向低電平 跳變 ,這個(gè)情況表示 數(shù)據(jù) 起始條件; SCL 線電平 為低 時(shí), SDA 線由低電平向高電平 跳變 ,這個(gè)情況表示 數(shù)據(jù) 停止條件。 總線會(huì)一直處于忙狀態(tài)如果重復(fù) 地 產(chǎn)生起始條件 卻 不 去 產(chǎn)生停止條件,此時(shí)在功能上 , 重復(fù)起始條件 (Sr)和起始條件 (S)可以被認(rèn)定為是一樣的 。首先是數(shù)據(jù)的最高位 (MSB)送往主機(jī),也就是單片機(jī) ,如果從機(jī) ,即 LCD11264 要完成一些其他功能后 ,然后 才能接 收或發(fā)送下一個(gè)完整的數(shù)據(jù)字節(jié), 也 可以 將 時(shí)鐘線 SCL 置為 低電平, 強(qiáng)行將 主機(jī)進(jìn)入等待狀態(tài),當(dāng)從機(jī) 可以接收數(shù)據(jù)的時(shí)候軟件置高 SCL 時(shí)鐘線,然后接收下個(gè)字節(jié)數(shù)據(jù)。在響應(yīng)的時(shí)鐘脈沖期間 ,主機(jī)的 發(fā)送器 將 SDA 數(shù)據(jù)傳輸 線 置低電平,并使之在 SCL 的高電平期間保持平穩(wěn) 。當(dāng)從機(jī)不能響應(yīng)從機(jī)地址時(shí) (例如它正在執(zhí)行一些實(shí)時(shí)函數(shù) 從而 不能接收或發(fā)送 數(shù)據(jù) ), 這時(shí) 從機(jī)必須 將 數(shù)據(jù)線保持 在 高 電平,然后 由主機(jī) 產(chǎn)生 一個(gè) 重復(fù)起始條件開始新的傳輸 或產(chǎn)生 一個(gè)停止條件 來 終止 數(shù)據(jù)的 傳輸。這個(gè)情況 相當(dāng)于 從機(jī)在第一個(gè)字節(jié)后 就 沒有產(chǎn)生響應(yīng)。 如果傳輸中有主機(jī)接收器,它必須通過在從機(jī)不產(chǎn)生時(shí)鐘的最后一個(gè)字節(jié)不產(chǎn)生一個(gè)響應(yīng),向從機(jī)發(fā)送器通知數(shù)據(jù)結(jié)束。 圖 43 I2C 時(shí)序 在 LCD 中的實(shí)際應(yīng)用 以下為寫入一字節(jié)到 LCD 的子程序: 先使 SCL 置低,數(shù)據(jù)從高到低發(fā)送,判斷數(shù)據(jù)最高位的高低后將 clk 置高,開始寫入數(shù)據(jù)到 SDA,最后 SCL 置低。 LCD_CLK_L()。i8。0x80) LCD_DAT_H()。 LCD
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1