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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于89c51單片機(jī)的紅外通訊軟件設(shè)計(jì)(存儲(chǔ)版)

2025-07-15 01:50上一頁面

下一頁面
  

【正文】 uf_count 的次數(shù)來判斷是 0 還是 1 , 再 給buf_key_code 賦值 。然后再進(jìn)行判斷 ,是否為起始碼,如果是則 buf_count 的次數(shù)應(yīng)該為 250buf_count300 因?yàn)?9ms+=即 ,13500/50=275,這時(shí)候接受狀態(tài) ir_status=1,表示已經(jīng)接受過起始碼,那么接下來接受的應(yīng)該是系統(tǒng)識(shí)別碼。 buf_count:儲(chǔ)存 Count 計(jì)數(shù) 。TH0 設(shè)置為 0XF3, TL0=0XF3。DataCode(0X55)。程序中,采用的是模擬發(fā)送一次原碼后 再發(fā)送一次反碼的形式。0XF0 得到列的狀態(tài)值,再將該值加上行值 ,如是第一行則加上該值加上 0X0E, 便 可得到行和列的值。 而不管是寫指令還是寫數(shù)據(jù),都應(yīng)該注意 LCD1602 的延時(shí)時(shí)序,由于 E 為高脈沖的時(shí)候?qū)憯?shù)據(jù)和寫指令,所以程序中在 E為高脈沖后使用 基于單片 機(jī)的紅外 通訊軟件設(shè)計(jì) 1 22 延時(shí)函數(shù) DelayNMS(1)讓其符合 LCD1602 的延時(shí)時(shí)序,讓指令和數(shù)據(jù)準(zhǔn)確讀入到顯示器中。根據(jù)位 0和位 1的脈沖寬度可知,如果 40Count50 則說明接收到一個(gè) 1,20Count30 則說明接收到一個(gè) 0。根據(jù)發(fā)射端和接收端的通信協(xié)議(在“ ”頭文件中)在 Transmit()編碼函數(shù)中 發(fā)送按鍵數(shù)值指定的數(shù)據(jù)碼 ,依次先發(fā)送一次起始碼(9ms 高電平 , 低電平 ),然后發(fā)送兩次系統(tǒng)識(shí)別碼 (0x55 與 0xAA),一次 數(shù)據(jù)碼 碼一次 數(shù)據(jù)碼 的反碼,最后再發(fā)送一次結(jié)束碼 ( 9ms 高電平 , 低電平 , 高電平) ,這樣一套順序組成一個(gè)完整操作碼 , 完全模擬 編碼芯片。軟件有效率性,效率性是指軟件在編寫的時(shí)候應(yīng)該注意運(yùn)行時(shí),盡可能得少用計(jì)算機(jī)內(nèi)存,并且采用最優(yōu)的算法來處理數(shù)據(jù)結(jié)構(gòu),讓軟件在計(jì)算機(jī)中運(yùn)行時(shí)所占用的內(nèi)存達(dá)到最低,這點(diǎn)很考研開發(fā)人員的水平。軟件的可修改性,在軟件編寫完成后,可能在后續(xù)部分根據(jù)用戶的需求反應(yīng),或者其他原因,可能需要修改軟件。軟件要有一定的可靠性,軟件系統(tǒng)規(guī)模越大越復(fù)雜,可知這時(shí)候軟件的可靠性就越來越難保證 。 基于單片 機(jī)的紅外 通訊軟件設(shè)計(jì) 1 17 開發(fā)環(huán)境 ,即編程軟件的選擇 本次紅外通訊系統(tǒng)的程序編寫的開發(fā)環(huán) 境,選擇 使用 Keil uVersion3。且 C 編寫的程序比匯編更符合人們的思考習(xí)慣,開發(fā)者能更專心的考慮程序設(shè)計(jì)而不是考慮些細(xì)節(jié)問題,這樣就減少了開發(fā)和調(diào)試的時(shí)間 [10]。 液晶顯示電路和電機(jī)電路 根據(jù)解碼后得到的用戶原始輸入數(shù)據(jù),通過程序控制液晶顯示器的顯示,和電機(jī)的運(yùn)轉(zhuǎn)。 ( 這里的編碼電路沒有經(jīng)過載波就發(fā)送,是因?yàn)檫@是單獨(dú)繪制的編碼和紅外發(fā)射電路 ,并沒有應(yīng)用到仿真。所以,紅外通訊系統(tǒng)中的發(fā)射端和接收端都需要有如下圖所示的基本電路模塊: 基于單片 機(jī)的紅外 通訊軟件設(shè)計(jì) 1 11 圖 34 這里值得注意的是:仿真的時(shí)候 VCC 和 VSS 都默認(rèn)地接 5V電源和接地,所以不需要再添加,但是繪制原理圖和制作 PCB 板時(shí),不能將 VCC和 VSS 遺漏,否則單片機(jī)無法正常 工作。為了適應(yīng)不同的工作電壓,回路中常串有限流電阻 ??臻e方式停止 CPU 工作,但允許 RAM、定時(shí) /計(jì)數(shù)器、串行通信口及中斷系統(tǒng)繼續(xù)工作,掉電方式保存 RAM 的數(shù)據(jù),但振蕩器停止工作并禁止其它所有部件工作指導(dǎo)下一個(gè)硬件復(fù)位 。 單片機(jī) 介紹及選擇 單片機(jī)是微機(jī)控制的典型代表,它在一片硅片上集成了中央處理器 、 存儲(chǔ)器和各種輸入輸出接口,如 I/O 口,定時(shí)器 /計(jì)數(shù)器接口,外部中斷接口,串口 ,讀 /寫接口等)。 載波信號(hào)電路 紅外線的傳播不一定準(zhǔn)確而且不一定 夠遠(yuǎn),所以利用 89C51 單片機(jī)定時(shí)器產(chǎn)生 38KHz 的方波輸出 電路,在編碼信號(hào)輸出端加上一個(gè)高頻載波信號(hào),通過載波信號(hào)的調(diào)制,把編碼信號(hào)的有用信“攜帶著”傳播出去,這樣的紅外線信號(hào)能夠傳得更遠(yuǎn)而且也能更有效的避免干擾 紅外接受器 紅外接收器部分使用紅外專用接收集成電路 HS0038 來完成紅外信號(hào)的光電轉(zhuǎn)換及接收。 1993 年國(guó)際紅外線協(xié)會(huì)在美國(guó)成立,積極整合建立紅外傳輸?shù)臉?biāo)準(zhǔn),極大地推動(dòng)了紅外產(chǎn)品的發(fā)展。而 隨著社會(huì)的不斷發(fā)展,人們的安全防范意識(shí)愈來愈強(qiáng)烈, 通訊的必要性也越來越突出可見,由于紅外線為不可見光,具有很強(qiáng)的隱藏性和保密性, 因此紅外在安防 和通訊 領(lǐng)域大展身手, 不論國(guó)內(nèi)外,目前正在市場(chǎng)掀起一股 ” 紅外潮 ” 。在某些應(yīng)用場(chǎng)合,比無線電通信具有更好的綜合效果。 在電腦技術(shù)發(fā)展早期,數(shù)據(jù)都是通過線纜傳輸?shù)模€纜傳輸連線麻煩,需要特制接口,頗為不便 。當(dāng)前單片機(jī)對(duì)家用電器控制呈現(xiàn)出外型簡(jiǎn)單化、功能多樣化、性能優(yōu)越化的發(fā)展趨向。在家庭生活中,錄音機(jī)、音響設(shè)備、空調(diào)彩電都采用了紅外 通訊 系統(tǒng)。 課題的研究意義 信息時(shí)代,通信技術(shù)的發(fā)展總是走在各種技術(shù)的最前沿。第二次世界大戰(zhàn)中美國(guó)、日本、蘇聯(lián)也都是用過紅外無線通信。 2021 年全球已有 1. 7億臺(tái)配有國(guó)際紅外線協(xié)會(huì)模組的電子產(chǎn)品進(jìn)入市場(chǎng),尤其在電子游戲機(jī)市場(chǎng)有極大的潛力。 系統(tǒng)設(shè)計(jì)需解決的難點(diǎn)要點(diǎn) 整 個(gè)系統(tǒng)設(shè)計(jì)中有幾個(gè)部分是難點(diǎn)也是系統(tǒng)正常運(yùn)行的關(guān)鍵核心。故,系統(tǒng)設(shè)計(jì)應(yīng)該分為兩部分電路,發(fā)射和接收。 鍵盤接受模塊 鍵盤接受模塊采用四乘四的外接矩陣鍵盤,在程序中對(duì)矩陣鍵盤行和列的高低變換來得到用戶在鍵盤的輸入情況,需要用到單片機(jī)的 8 個(gè)管腳,系統(tǒng)中使用了發(fā)射端的 P2口的八個(gè)管腳 ,若使用的是 P0口的八個(gè)管腳則需要外接上拉電阻,阻值大約在 510K 之間 。 系統(tǒng)設(shè)計(jì)技巧 在系統(tǒng)仿真過程中沒有現(xiàn)成的 SE303 的紅外發(fā)射器和 HS0038 紅外接收器,所以本系統(tǒng)仿真時(shí)采用引用接收端和發(fā)射端的各自一個(gè)管腳相連通,中間裝一個(gè)LED 指 示燈來指示信號(hào)的傳遞;在發(fā)射的根據(jù) uPD6121 的編碼發(fā)射原理,對(duì)發(fā)射端的管腳進(jìn)行 ,低電平脈寬為 高電平脈寬為 組成一個(gè)周期為 的位“ 0”,而低電平脈寬為 高電平脈寬為 組成一個(gè)周期為 的位“ 1”,發(fā)送接收端的管腳。自從 20 世紀(jì) 70年代中期美國(guó)仙童公司推出第一臺(tái) F8單片機(jī)以來,單片機(jī)已經(jīng)有 30 多年的發(fā)展歷史??梢匀〈?SAA3049 等芯片 ;而能夠與 BC7210解碼芯片互相支持的多個(gè)芯片中又屬 Upd6121編碼芯片最為合適 [13]。 接收方一般使用 HS0038 一體化紅外線接收器進(jìn)行接收解碼,當(dāng) HS0038 接收到 38kHz 紅外信號(hào)時(shí),輸出端輸出低電平,否則為高電平。 按鍵輸入模塊電路如下圖所示 : 圖 35 圖 35 基于單片 機(jī)的紅外 通訊軟件設(shè)計(jì) 1 12 紅外編碼電路 及其紅外發(fā)射 紅外編碼電路的 編碼主要是由用戶碼和數(shù)據(jù)碼構(gòu)成 ,用戶碼和數(shù)據(jù)碼統(tǒng)稱為傳送碼 ,通常為 8 位或 16 位的“ 0”“ 1”碼 ,為了避免出現(xiàn)差錯(cuò) ,每次發(fā)射的傳送碼中一般都包含兩次編碼 :一次為原碼 ,一次為反碼 。為使紅外信號(hào)能夠正確的傳送出去和傳送更長(zhǎng)的距離,我們也需要在編碼信號(hào)輸出的同端加上一個(gè)高頻載波信號(hào)。 這里電機(jī)采用直流電機(jī),而控制直流電機(jī)的轉(zhuǎn)速主要是通過控制其電壓實(shí)現(xiàn),所以電路中用 三個(gè) 2N3055 三極管 ,三個(gè)三極管的基極分別接單片機(jī)的 P11,P12, P13 三個(gè)管腳,集電極接不同大小的電阻再接電源,然后通過程序來控制使用不同的三極管,從而控制不同的直流電機(jī)電壓,達(dá)到改變轉(zhuǎn)速的效果。 并且 表達(dá)能力強(qiáng) , 豐富的數(shù)據(jù)結(jié)構(gòu)類型,用戶根據(jù)需要,采用多種數(shù)據(jù)類型來控制各種復(fù)雜的數(shù)據(jù); C語言還有多種運(yùn)算符,用戶可以靈活地進(jìn)行簡(jiǎn)單 或者復(fù)雜的算術(shù)運(yùn)算 , 表達(dá)方式 也很 靈活。在 Keil uVersion3 上編寫的 C 語言程序可以直接生成一個(gè) .HEX 文件在 Proteus 中直接將 HEX 文件 調(diào)入 到單片機(jī)中 便可直接運(yùn)行程序 ,方便程序在單片機(jī)環(huán)境下的運(yùn)行和調(diào)試。 在進(jìn)行軟件設(shè)計(jì)之前 的 軟件的 可靠性必須在設(shè)計(jì)階段就確定,在生產(chǎn)和測(cè)試階段再考慮就困難了。軟件編寫要容易理解,這個(gè)其實(shí)和可修改性是相關(guān)聯(lián)的。 定時(shí)器 0開始計(jì)數(shù) 50us中斷一次,定時(shí)器 0的中斷函數(shù) time0內(nèi)部對(duì) Count 進(jìn)行計(jì)數(shù)。 發(fā)射端和接收端的通信協(xié)議如下 : 按鍵值 用于通信的操作碼值 按鍵值 用于通信的操作碼值 1 0X61 0 0X60 2 0X62 A ‘ A’ (自動(dòng)轉(zhuǎn)換成二進(jìn)制 ) 3 0X63 B ‘ B’ 4 0X64 C ‘ C’ 5 0X65 D ‘ D’ 6 0X66 E ‘ E’ 7 0X67 F ‘ F’ 8 0X68 9 0X69 按鍵功能簡(jiǎn)介如下: 按鍵值 功能 按鍵值 功能 09 定時(shí)數(shù)字輸入(秒為單位) A(ON/C) 啟動(dòng)電機(jī) B( =) 定時(shí)開啟 C( +) 增檔 D( ) 減檔 F(247。 矩陣鍵盤行列檢測(cè)軟件設(shè)計(jì) 發(fā)射端的單片機(jī) P0 口外接一個(gè)四行四列的矩陣鍵盤,由于使用的是 P0 口所以應(yīng)該在外部接上拉電阻,才能使 P0 口正常使用。 uPD6121芯片 的工作原 理和M5046 PT6221類似, 都是通過編碼后的串行數(shù)據(jù)對(duì) 38~ 40kHz 的方波進(jìn)行脈沖寬度調(diào)制。 StarCode()函數(shù) 用于發(fā)送起始 碼,先發(fā)送一段 ,即讓 P30出于,用來濾去接收端運(yùn)行時(shí)就開始累計(jì)計(jì)數(shù)的用來存儲(chǔ)發(fā)射端發(fā)送的脈寬寬度的 碼,接收端接收到起始碼后便知道接下來開始接受系統(tǒng)識(shí)別碼。DataCode(~ SendCode)。 解碼程序設(shè)計(jì) 可想而知解碼程序在紅外通訊系統(tǒng)的接收端中,編碼和解碼是一個(gè) 可逆的過程,若要能解碼編碼過的數(shù)據(jù)那么解碼程序應(yīng)該知道編碼時(shí)對(duì)于位 0和位 1采用的是 什么樣 的波形。 部中斷接受到下降沿的脈沖后將會(huì)進(jìn)入外部中斷函數(shù) recive,獲取 Count的計(jì)數(shù),將 Count 存入 buf_count 中 ,然后 Count 清零。每接收一位, key_bit_count 就累加一次, key_code 獲取一位數(shù)據(jù), 加到 8位后, key_code 獲得完整的操作碼, IsNewCode=1,程序接下去運(yùn)行,根據(jù)不同的操作碼做出不同的 電機(jī)操作和不同的顯示器電機(jī)狀態(tài)顯示。 基于單片 機(jī)的紅外 通訊軟件設(shè)計(jì) 1 28 發(fā)射端與接收端的通信協(xié)議設(shè)計(jì) 如果想讓發(fā)射端能夠控制接收端,那么除了正確的編碼解碼之外,雙方之間必須要有一個(gè)通信協(xié)議。所以程序中,通過對(duì) P1 口賦予不同的值來改變電機(jī)轉(zhuǎn)速。硬件措施如果得當(dāng),可將絕大部分干擾拒之門外,但仍然會(huì)有少數(shù)干擾進(jìn)入微機(jī)系統(tǒng),故軟件措施作為第二道防線必不可少。以上這些都是開發(fā)的大忌。對(duì)于常用功能,主要進(jìn)行易用性和性能測(cè)試。選中其中的“ Add file to Group” Souce Group1”,對(duì)話框,要求尋找源文件,注意該對(duì)話框下面的“文件類型“默認(rèn)為 C Souce file (*.c),也就是以 C 為擴(kuò)展名的文件,我們的文件是以 C 為擴(kuò)展名的,所以在列表框中可以直接找到 ,雙擊 ,將源文件加入到工程中,然后再用同樣的方法建立一個(gè) ” ” 文件和一個(gè) ” ” ,也加入到項(xiàng)目中。 ① 邏輯錯(cuò)誤:在紅外通訊系統(tǒng)接收端的代碼編寫過程中,有一段代碼是用switch()..case 語句來根據(jù)用戶輸入選擇操作碼的發(fā)送;在第一次編寫時(shí),我由于大意,在每個(gè) case 語句結(jié)束,遺漏了 break。所以解碼過程,始終是要等到第二位的數(shù)據(jù)的高電平變?yōu)榈碗娖讲拍芘袛嗲耙晃坏碗娖降膶挾龋坏莿傞_始并沒有意識(shí)到這個(gè)問題,所以接收端接收到的只有 7位,最后一位被當(dāng)做結(jié)束碼濾掉。當(dāng)然,紅外通訊技術(shù)還存在缺點(diǎn),但是我們可以不斷努力改進(jìn)它,讓它更好地造福于人類。 本論文對(duì)紅外通訊系統(tǒng)進(jìn)行了細(xì)致的研究,從編碼解碼芯片,紅外發(fā)射接收器件開始了解;隨后根據(jù)編碼解碼芯片的原理,自己在軟件設(shè)計(jì)上模擬了編碼解碼芯片的過程,并且運(yùn)用于仿真系統(tǒng)中,達(dá)到紅外通訊的效果,了解并且模擬運(yùn)用紅外通訊的核心技術(shù)。所以接收端每次都收到多個(gè)操作碼,造成多次有多次按鍵輸入的效果。 其調(diào)試結(jié)果如下圖所示: 與建立紅外通訊系統(tǒng)一樣的方法,再建立一個(gè)名稱為 ”紅外通訊系統(tǒng)接收端 ”的項(xiàng)目(之前紅外通訊系統(tǒng)為發(fā)射端);同樣編寫代碼進(jìn)行調(diào)試,然后生成“紅外通訊系統(tǒng)接收端 .hex”的文件。之后便可以選中單片機(jī)的類型,我們選擇 AT89C51。對(duì)于 用戶利益相關(guān)的功能 ,要保證 bug 盡可能少(尤其是安全性、穩(wěn)定性、健壯性的 bug)。 系統(tǒng)軟件設(shè)計(jì)注意事項(xiàng) 早設(shè)計(jì)和編寫系統(tǒng)軟件時(shí),有幾個(gè)方面需要注意: 系統(tǒng)設(shè)計(jì)方面:在進(jìn)行程序編寫之前,需要設(shè)計(jì)程序編寫的大致方面。若達(dá)到中斷次數(shù)后,電機(jī)停轉(zhuǎn), LED指示燈關(guān)閉, TimeCount 清零用于下一次定時(shí)。接收端解碼后,得到 SENDCODE0 的原碼,再用 switch()語句來執(zhí)行 case SENDCODE0:后面的語句。 mon_code_count=15? ir_status 賦值為 2,表示接收完系統(tǒng)碼。buf_count300)。 Count:計(jì)數(shù) 。 內(nèi)部的程序設(shè)計(jì)這部分較為簡(jiǎn)單,啟用定時(shí)中斷 0,將定時(shí)器 0的模式設(shè)置為工作方式
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1