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

正文內(nèi)容

紅外多路遙控發(fā)射及接收系統(tǒng)設(shè)計(jì)與制作畢業(yè)設(shè)計(jì)(編輯修改稿)

2025-04-08 15:58 本頁面
 

【文章內(nèi)容簡介】 6 使能第 1 行(置低電平),然后看哪一列的數(shù)據(jù)變成低電平了,如果高 4 位數(shù)據(jù)沒有變?yōu)榈碗娖絼t使能下一行。找到了按鍵所在的行并測出列數(shù)據(jù)就可以調(diào)用相應(yīng)處理程序。 逐行掃描的照逐點(diǎn)掃描要好的多,程序相對(duì)簡單,速度快,也支持同時(shí)多按鍵處理。一般的掃描鍵盤多用此法。 全局掃描法:全局掃描是只先設(shè) P1 的高 4 位為 1,低 4 位為 0,即 F0H,然后讀取 P1 口的數(shù)據(jù)如果不為 F0H 說明有鍵按下,經(jīng)過延時(shí)去抖處理后讀出 P1 口 的值,因?yàn)榈? 4 位是 0 無論按鍵如果都不會(huì)影響它,只有高 4 位被改變。將數(shù)據(jù)寄存起來后再把 P1 的狀態(tài)反過來,將 P1 的高 4 位置 0,低 4 位置 1,即 0FH,再讀一次數(shù)據(jù)。這時(shí)高 4 位的值是 0 依然不變。這樣兩次讀取我們就得到了 2 個(gè)字節(jié)的數(shù)據(jù)( XXXX0000和 0000XXXX, X 為讀到的數(shù)據(jù)),最后我們將這兩個(gè)數(shù)相或(將兩個(gè)半字節(jié)數(shù)據(jù)溶合為一個(gè)字節(jié)),就得到了一個(gè)新的字節(jié),用這個(gè)字節(jié)和我們的設(shè)定的數(shù)據(jù)比較來決定鍵值。 全局掃描只用兩次掃描,速度快,易學(xué)易用,程序簡單,可是它不支持同 時(shí)多鍵處理,最佳適用 4*4 掃描鍵盤,可以用在一般的用途。 按鍵接口電路如圖: 圖 31 ( 2)顯示電路 在顯示電路部分用到 八段 LED 顯示器。八段 LED 顯示器由 8 個(gè)發(fā)光二極管組成。其中 7 個(gè)長形條的發(fā)光管排列成 ” 日 ” 字形,另一個(gè)賀點(diǎn)形的發(fā)光管在顯示器的右下角 作為顯示小數(shù)點(diǎn)用,它能顯示各種數(shù)字及部分英文字母。 LED 顯示器有兩種不同的形式:一種是 8 個(gè)發(fā)光二極管的陽極都連在一起的,稱為共陽極 LED 顯示器;另一種是 8 個(gè)發(fā)光二極管的陰極都連在一起的,稱之為共陰極 LED 顯示器。如下圖 4 所示。 紅外多路遙控發(fā)射與接收系統(tǒng)設(shè)計(jì) 7 gfedcba共陽極7段 數(shù)碼管a b c d e f g h+5VGND共陰極7段 數(shù)碼管hgfedcba 圖 32 數(shù)碼管電路圖 共陰和共陽結(jié)構(gòu)的 LED 顯示器各筆劃段名和安排位置時(shí)相同的。當(dāng)二極管導(dǎo)通時(shí),相應(yīng)的筆劃段發(fā)亮,由發(fā)亮的筆劃 段組合而顯示的各種字符。 8 個(gè)筆劃段 hgfedcba 對(duì)應(yīng)于一個(gè)字節(jié)( 8 位)的 D7 D6 D5 D4 D3 D2 D1 D0,于是用 8 位二進(jìn)制就可以表示欲顯示字符的字形代碼。例如,對(duì)于共陰 LED 顯示器,當(dāng)公共陰極接地(為零電平),而陰極 hgfedcba 各段為 01110011 時(shí),顯示器顯示 “ P” 字符,即對(duì)于共陰 LED 顯示器, “ P” 字符的字形碼是 73H。如果是共陽 LED 顯示器,公共陽極接高電平,顯示 “ P” 字符的字形代碼應(yīng)為10001100( 8CH)。 設(shè)計(jì)要求用數(shù)字顯示所控制的路數(shù),即將發(fā)送的鍵值轉(zhuǎn)換成與數(shù)碼管顯 示相對(duì)應(yīng)的字符碼。選 89C51 的 P2 口作為字符碼輸出端口。因?yàn)?51 單片機(jī) I/O 口輸出低電平時(shí)輸出的電流很小,數(shù)碼管不會(huì)太亮,所以用鎖存器 74HC373 來驅(qū)動(dòng)數(shù)碼管發(fā)光,顯示接口電路見附圖 1。數(shù)碼管顯示 1~8 數(shù)字時(shí), P2 口應(yīng)送出的字符值分別為: F9H、 A4H、 B0H、 99H、92H、 83H、 F8H、 80H。并用 89C51 的 、 口分別控制 74HC373 允許輸入 G 與輸出控制 /OE。 ( 3)編碼電路 編碼電路有集成電路 VD5026 組成,它將進(jìn)行的 4 位 BCD 碼變換成串行的編碼信號(hào)。其功能是將并行的 4 位 BCD 碼轉(zhuǎn)換成串行輸出信號(hào),經(jīng)調(diào)制以后發(fā)射。將 89C51 單片機(jī)P3 口的 ~ 直接接到 VD5026 的數(shù)據(jù)輸入 D3~D0 端,另外用 接發(fā)射指令,VD5026 的工作原理與性能見器件介紹。具體電路見附圖 1。 ( 4) 脈沖調(diào)制振蕩電路 為了提高傳輸信號(hào)的抗干擾能力,還需要將編碼信號(hào)調(diào)制在較高頻率的載波上發(fā)射。紅外多路遙控發(fā)射與接收系統(tǒng)設(shè)計(jì) 8 本課題要求載波頻率為 40KHz,故可采用 CMOS 門電路構(gòu)成的脈沖調(diào)制電路。當(dāng)編碼信號(hào)A 為高電平時(shí),振蕩器工作,輸出為載頻信號(hào);當(dāng)編碼信號(hào)為低電平時(shí),振蕩器不工作,輸出為低電平。輸出的編碼調(diào)制信號(hào)波形 如下圖 5 中的 B 所示。 A B 圖 33 編碼調(diào)制波形圖 脈碼調(diào)制振蕩電路見下圖 6 所示 圖 34 脈碼調(diào)制振蕩電路圖 ( 5)紅外發(fā)射電路 紅外發(fā)射電路有放大電路和紅外發(fā)射管組成。 G G4 為隔離級(jí),其作用是減少發(fā)射時(shí)的大電流對(duì)振蕩級(jí)的影響;三極管對(duì)發(fā)射信號(hào)進(jìn)行電流放大。當(dāng) G4 輸出為高電平是,三極管導(dǎo)通,紅外管工作,當(dāng) G4 輸出為低電平時(shí),三極管截止,紅外管不工作。 紅外多路遙控發(fā)射與接收系統(tǒng)設(shè)計(jì) 9 圖 35 紅外發(fā)射電路圖 軟件設(shè)計(jì) 軟件設(shè)計(jì)有兩種方法:一種是自上而下,逐步細(xì)化;一種是自下而上,先設(shè)計(jì)出每一個(gè)具體的模塊(子程序),然后再慢慢擴(kuò)大,最后組成一個(gè)系統(tǒng)。在本設(shè)計(jì)中我用自下而上的設(shè)計(jì)方法。首先設(shè)計(jì)出一個(gè)延時(shí)子程序,再設(shè)計(jì)顯示子程序,最后組成一個(gè) 按鍵查詢程序。當(dāng)然在編程之前要先畫程序流程圖。 畫程序流程圖是程序設(shè)計(jì)的一個(gè)重要組成部分,而且決定成敗的關(guān)鍵部分。畫程序流程圖的過程就是進(jìn)行程序的邏輯設(shè)計(jì)過程,這中間的任何錯(cuò)誤或忽視均將導(dǎo)致程序出錯(cuò)或可靠性下降。因此,真正的程序設(shè)計(jì)過程是流程圖設(shè)計(jì),而上機(jī)編程是將設(shè)計(jì)好的程序流程圖轉(zhuǎn)換成程序設(shè)計(jì)語言而已。 正確的流程圖畫法是先粗后細(xì)、一步一個(gè)足印,只考慮邏輯結(jié)構(gòu)和算法,不考慮或少考慮具體指令。這樣畫流程圖就可以集中精力考慮程序的結(jié)構(gòu),從根本上保證程序的合理性和可靠性。接下來就是進(jìn)行指令代換,這時(shí)只要消除語法 錯(cuò)誤,一般就能順利編出源程序。 發(fā)射部分的軟件設(shè)計(jì)有兩種方案。 第一種方案是在發(fā)射部分從編碼程序的設(shè)計(jì)著手,從而設(shè)計(jì)出整個(gè)發(fā)射部分。下面是兩種方案的比較。 ( 1) 方案一: 編碼程序的設(shè)計(jì) 課題要求用數(shù)字顯示所遙控的路數(shù),即將發(fā)送的鍵值與數(shù)碼管顯示相對(duì)應(yīng)的字符碼。鍵盤的每一鍵均表示一種控制,并賦予了鍵值,因此,編碼程序的作用是控制單片機(jī)讀鍵盤,然后生成與鍵值一致的編碼,并用串行數(shù)據(jù)方式發(fā)送編碼,編碼程序流程圖如圖 8 所示。 紅外多路遙控發(fā)射與接收系統(tǒng)設(shè)計(jì) 10 初始化置波特率按鍵否?結(jié)束串行數(shù)據(jù)發(fā)送讀入鍵值延時(shí)10ms讀入鍵值串行數(shù)據(jù)發(fā)送NY 圖 36 編碼流程圖 其中,置波特率子程序用于設(shè)定數(shù)據(jù)傳送速率。當(dāng)選擇串行發(fā)送方式 1 時(shí),其波特率由定時(shí)器 T1 的溢出率和 SMOD 的位狀態(tài)確定。 串行數(shù)據(jù)發(fā)送子程序用來設(shè)定數(shù)據(jù)發(fā)送程序。串行發(fā)送方式 1 是由 10 位異步通信方式,其中 1 個(gè)起始位, 8 個(gè)數(shù)據(jù)位和 1 個(gè)停止位。發(fā)送時(shí),首先送出起始位,而后發(fā)送數(shù)據(jù)位 D0~D7(由低位到高位),最后為停止位。當(dāng) 10 位發(fā)送完畢后, 89C51 的 T1 自動(dòng)跳變?yōu)?1,產(chǎn)生中斷,串行發(fā)送結(jié)束。 注意:在進(jìn)行多 次發(fā)送數(shù)據(jù)時(shí),必須在程序中有清零命令。按鍵子程序用來判斷有無按鍵按下。判斷時(shí)可先將 P1 口中對(duì)應(yīng)行的口全置“ 1”,即 P1 輸出為 0FH,然后用讀引腳的辦法將 P1 口值讀入,讀入值與 0FH 一致,則無鍵按下,否則就有鍵按下。 10ms 延時(shí)程序是為了消除按鍵瞬間按下的抖動(dòng)。 ( 2) 方案二的程序框圖 下面是程序框圖的一部分,是通用的 4*4 矩陣鍵盤按鍵查詢程序框圖。 紅外多路遙控發(fā)射與接收系統(tǒng)設(shè)計(jì) 11 圖 37 4*4 矩陣鍵盤 按鍵查詢程序框圖 N N N Y Y Y 返回鍵值置 0 所有列輸出置 0 設(shè)置列掃描輸出參數(shù)和循環(huán)次數(shù) 列掃描輸出 行輸入 修改列輸出掃描參數(shù) 所有列輸出置 0 設(shè)置列掃描輸出參數(shù)和循環(huán)次數(shù) 所有列輸出置 0 結(jié)束 開始 行輸出全為 1? 逐行檢查是否有鍵按下 4 列掃描完? 紅外多路遙控發(fā)射與接收系統(tǒng)設(shè)計(jì) 12 圖 38 延時(shí)程序框圖 ( 3) 方案二的程序設(shè)計(jì) 主控程序的設(shè)計(jì)思想:發(fā)射控制程序主要用到了獨(dú)立式按鍵查詢程序、延時(shí)程序和查表顯示程序。用 89C51 單片機(jī)的 P1 口作為按鍵的輸入, P2 口作為顯示輸出, P3 口作為鍵值的 BCD 碼輸出和控制輸出。用寄存器 R0 作為計(jì)數(shù)器,初值為零,在每次測試有無按鍵按下之前加 1,直到加到 7 為止,然后又從零開始加,是為了顯示查表子程序中查表的目的。 由于此系統(tǒng)要求是對(duì) 8 路信號(hào)的遙控,在編程時(shí)沒有用到八位二進(jìn)制數(shù)到四位 BCD碼的轉(zhuǎn)換。只判斷輸入健值,然后將其對(duì)應(yīng)的四位 BCD 碼送 P3 口的低四位輸出。 P5 用做鎖存器 74HC373 和編碼器 VD5026 的輸出控制,當(dāng)有信號(hào)要發(fā)射時(shí)此端口為低電平。 用做控制 74HC373 的允許輸入端,高電平有效。 顯示電路的程序設(shè)計(jì)思想:當(dāng)測試到是哪一路信號(hào)輸入時(shí),將其對(duì)應(yīng)值的是十六進(jìn)制數(shù)送 P2 口輸出。其對(duì)應(yīng)情況為: 信號(hào)通道 P2 口輸出(十六進(jìn)制) P3 口輸出(十六進(jìn)制) 按鍵 “ 1” 0F9H 0D1H DELAY R7 設(shè)初值 0AH R6 設(shè)初值 0FFH R61=0 否? R71=0 否? 返回 Y Y N N 紅外多路遙控發(fā)射與接收系統(tǒng)設(shè)計(jì) 13 按鍵 “ 2” 0A4H 0D2H 按鍵 “ 3” 0B0H 0D3H 按鍵 “ 4” 99H 0D4H 按鍵 “ 5” 92H 0D5H 按鍵 “ 6” 83H 0D6H 按鍵 “ 7” 0F8H 0D7H 按鍵 “ 8” 80H 0D8H 查表顯示電路的程序如下: DISP: ;顯示子程序 PUSH SP PUSH PSW MOV DPTR, TAB MOV A, R0 MOVC A, @A+DPTR ;查表 MOV P2, A ;將測試到 的信號(hào)的十六進(jìn)制送 P2 口,顯示輸出 POP PSW POP
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1