基于51單片機的無線通信_第1頁
基于51單片機的無線通信_第2頁
基于51單片機的無線通信_第3頁
基于51單片機的無線通信_第4頁
基于51單片機的無線通信_第5頁
免費預覽已結(jié)束,剩余14頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、湖北民族學院信息工程學院課程設(shè)計報告書題目: 基于51單片機的無線通信課 程:數(shù)字通信系統(tǒng)課程設(shè)計專業(yè):電子班 級:0314411學號:031學1119學生姓名:田紫龍指導教師:黃雙林2017年06月18日摘要本文設(shè)計了一種以AT89S52單片機為控制核心的無線通信控制模塊,詳細說明 了該系統(tǒng)的基本原理、主要電路、硬件框架以及軟件框架。整個系統(tǒng)采用模塊化設(shè) 計,主要包括單片機與下位機之間的無線通信控制電路,以及無線通信模塊與51單 片機之間通信接口電路。該通信控制系統(tǒng)通過51單片機和nrf2401的spi通信,從 而通過無線通信控制模塊形成與下位機的聯(lián)系,控制下位機運動控制器,并且將通 信接收

2、的數(shù)據(jù)保存到擴展的存儲器內(nèi)。本模塊的通信方法簡便,除了可以進行遠程實時控制外,還可廣泛的應用于工 業(yè)監(jiān)控和數(shù)據(jù)采集系統(tǒng)。本系統(tǒng)具有性能可靠、抗干擾能力強、功耗低、性價比高 等優(yōu)點,在無線通信領(lǐng)域具有重要的應用價值和良好的發(fā)展前景。關(guān)鍵字:無線通信控制;AT89S52; nRF24Cl:串行通信目錄1緒論12總體設(shè)計23各個模塊簡介31.單片機STC89C52和nRF2401的接口電路33. 1NRF24L01無線模塊簡介43.21602 簡介44各個模塊設(shè)計103.1 硬件電路板的設(shè)計103.2 軟件程序設(shè)計114. 2. 1主程序模塊114.3結(jié)果與分析13總結(jié)14參考文獻151緒論伴隨著短

3、距離低功率無線數(shù)據(jù)傳輸技術(shù)的成熟,無線數(shù)據(jù)傳輸被越來越多地應用到新的 領(lǐng)域。與有線通信方式相比,無線通信以其不需鋪設(shè)明線,使用便捷等一系列優(yōu)點,在現(xiàn)代 通信領(lǐng)域占重要地位。以往的無線產(chǎn)品存在范圍和方向上的局限,例如,一些無線產(chǎn)品在使用時,無法將信息 反饋給控制者:還有一些無線產(chǎn)品不能很好地顯示參數(shù)或狀態(tài)信息,如果能在系統(tǒng)中增加一 塊小型液晶顯示電路,產(chǎn)品不僅能向用戶顯示其狀態(tài)或狀態(tài)的改變,而且可以大大降低成本。 正如人們所發(fā)現(xiàn)的,只要建立雙向無線通信-雙工通信并且選無線數(shù)據(jù)傳輸模塊基于微功耗 單片射頻收發(fā)器NRF24LO1設(shè)計,采用89C52單片機完成數(shù)據(jù)的處理和控制擇成本低的收發(fā) 芯片,就會

4、出現(xiàn)許多新應用。本次設(shè)計主要是利用無線收發(fā)電路,加上單片機控制與液晶顯示制成一套完整的點時點 數(shù)據(jù)收發(fā)系統(tǒng)??紤]到目前市場上的一些需求,設(shè)計的主要要求是方案成本低,體積小,低 功耗,集成度高,盡量無需調(diào)外部元件,傳輸時間短,接II簡單。162總體設(shè)計本設(shè)計使用M3單片機和51單片機通過nRF24L01模塊進行通信實現(xiàn)51單片機發(fā)送字符 到M3單片機上顯示。系統(tǒng)原理框如圖2.1所示.圖2.1系統(tǒng)原理框圖當51單片機通過spi對2101進行數(shù)據(jù)讀寫完畢后,2401將儲存的字符通過射頻技術(shù) 發(fā)送給等待的2401,這時M3對2401接受到的數(shù)據(jù)進行讀寫,然后再TFT屏上顯示接收到 的內(nèi)容3各個模塊簡介

5、1.單片機STC89C52和nRF2401的接口電路STC89C52 有 UART 和 SPI 接口,而 nRF2401 用的是 DRI、CLK 和 DATA 三線傳 輸。考慮到速率的因數(shù),STC89c52和nRF2401的連接準備用SPI接口實現(xiàn)。 SPI(Serial Peripheral Interface,串行外設(shè)接口)接口是一種同步串行外設(shè)接 口,它可以使MCU和各種外闈設(shè)備進行通信以交換信息。外圍設(shè)備包括Flash RAM, 網(wǎng)絡(luò)控制器,LCD顯示驅(qū)動器,A/D轉(zhuǎn)換器和MUC等。圖4說明了一個典型的SPI主從式總線結(jié)構(gòu)。它使用3根線連接了所有的設(shè) 備。主設(shè)備通過并行的4個管腳來控制

6、各個從設(shè)備的交腳來選擇從設(shè)備。圖2典型的SPI主從式總線結(jié)構(gòu)1、 MOSI(MasterOutputSlaveInput):這個Ibit的信號直接連接主設(shè)備和從設(shè)備。信號通過MOSI線從主設(shè)備串行 傳輸?shù)綇脑O(shè)備。因此對主設(shè)備而言,MOSI是信號輸出端口,對從設(shè)備而言,則是 信號輸入端口。在這條線上,一個Byte的信號通過高位(MSB)到低位(LSB)的傳輸。2、MISO(MasterInputS1aveOutput):通過這個lbit的信號線,信號由從設(shè)備傳輸?shù)街髟O(shè)備,因此它是主設(shè)備的信 號輸入端口,從設(shè)備的信號輸出端口。信號同樣是從MBS到LBS的傳輸。3、SCK(SPISerialCloc

7、k):這個信號來同步所有設(shè)備的進出MOSI和MISO的數(shù)據(jù)。它通過主設(shè)備的8 個時鐘吧來驅(qū)動,允許交換串行線上的1個Byte的信號。4、 SS (SlaveSelect)通過使某個從設(shè)備的克管腳保持低電平來選擇該從設(shè)備。顯然只有主設(shè)備 (它的兗管腳保持高電平)才能驅(qū)動這個系統(tǒng)。主設(shè)備通過軟件,利用端口來選擇 從設(shè)備。通過阻止MISO線上的沖突,來保證主設(shè)備每次傳輸只選擇一個從設(shè)備。 在設(shè)置主設(shè)備時,克管腳可以和SPI的狀態(tài)寄存器SPSTA中的MODF一起工作來阻 止多個主設(shè)備一起驅(qū)動MOSI和SCKo3. 1NRF24L01無線模塊簡介NRF24L01無線模塊,采用的芯片是NRF24L01,該

8、芯片的主要特點如下:1) 2. 4G全球開放的ISM頻段,免許可證使用。2)最高工作速率2Mbps,高校的GFSK調(diào)制,抗干擾能力強。3) 125個可選的頻道,滿足多點通信和調(diào)頻通信的需要。4)內(nèi)置CRC檢錯和點對多點的通信地址控制。5)低工作電壓(1. 9"3.6V)o6)可設(shè)置自動應答,確保數(shù)據(jù)可靠傳輸。該芯片通過SPI與外部MCU通信,最大的SPI速度可以達到lOMhz,本章我們 用到的模塊是深圳云佳科技生產(chǎn)的NRF24L01,該模塊成熟度和穩(wěn)定性都是相當不錯的。 該模塊的外形和引腳圖如圖3.1所示:圖3.1 NRF24L01無線模塊外形和引腳圖模塊VCC腳的電壓范圍為L93.

9、6V, it議不要超過3.6V,否則可能燒壞模塊, 一般用3. 3V電壓比較合適。除了 VCC和GND腳,其他引腳都可以和5V單片機的10 口直連,正是因為其兼容5V單片機的10,故使用上具有很大優(yōu)勢。3.21602 簡介1. 1602字符液晶顯示模塊,可顯示數(shù)字和字母,與數(shù)碼管相比顯示內(nèi)容更豐富, 而且編程簡單。它能夠顯示系統(tǒng)的當前工作時間、時間以及溫質(zhì)傳感器檢測到的 溫度。為使用者觀察提供了方便。LCD1602的接口信號說明如表3表3 LCD1602的接口信號編號引腳符號功能說明編號引腳符號功能說明1VSS電源地9D2DATA I/O2VDD電源正極10D3DATA I/O3VL液晶顯示偏

10、壓信號11D4DATA I/O4RS數(shù)據(jù)/命令選擇端12D5DATA I/O(H/L)5R/W讀/寫選擇端(H/L)13D6DATA I/O6E使能信號14D7DATA I/Or1DODATA I/O15BLA背光正極8DIDATA I/O16BLK背光負極1)2)3)4)讀狀態(tài):寫指令:讀數(shù)據(jù):寫數(shù)據(jù):RS二L,RS 二L,RS=H,RS=H,RW=H, E=HRW=L, DOD7二指令碼,E二高脈沖RW=H, E=HRW=L, DOD7=數(shù)據(jù),E=高脈沖2.基本操作時序如下:3.初始化設(shè)置1)顯示模式設(shè)置如表5表4顯示模式設(shè)置指令碼功能一001 1 1 000設(shè)置 16*2 顯示,5*7

11、點陣,8 位數(shù)據(jù)接口2)顯示開/關(guān)及光標設(shè)置如表6: 表7顯示開/關(guān)及光標設(shè)置指令碼功能一00001 DCB 1開顯示;D=0關(guān)顯示C=1顯示光標;C=0不顯示光標B二1光標閃爍;B=0光標不顯示000001 N SN=1當讀或?qū)懸粋€字符后地址指針加一,且光標加一N二0當讀或?qū)懸粋€字符后地址指針減一, 且光標減一S=1當寫一個字符,整屏顯示左移(N=1)LCD1602與MCU的接口電路LCD的D0D7分別接單片機的的P0 ,作為數(shù)據(jù)線,因為P0 口內(nèi)部沒有 上拉電阻,所以外部另外加上4.7K的上拉電阻;P2.5P2.7分別接LCD的RS、RW、 E三個控制管腳;RV1用來調(diào)節(jié)LCD的顯示灰度:

12、BLK、BLA為背光的陰極和陽極, 接上相應電平即點亮背光燈。如圖4D3其中1602的第3腳接10K與1. 5K的串聯(lián)電阻起到分壓作用,能夠調(diào)節(jié)第一行與 第二行亮度對比。第16接個三極管的作用放大,是為了能夠讓液晶顯示器的背 光燈亮起,從而在夜間也能觀看顯示內(nèi)容。3. 3STC89C52 單片機單片微型計算機是隨著微型計算機的發(fā)展而產(chǎn)生和發(fā)展的。自從1975年美 國德克薩斯儀器公司的第一臺單片微型計算機(簡稱單片機)TMS-1000問世以 來,迄今為止,單片機技術(shù)已成為計算機技術(shù)的一個獨特分支,單片機的應用領(lǐng) 域也越來越廣泛,特別是在工業(yè)控制中經(jīng)常遇到對某些物理量進行定時采樣與控 制的問題,在

13、儀器儀表智能化中也扮演著極其重要的角色。如果將8位單片機的推出作為起點,那么單片機的發(fā)展歷史大致可以分為以 下幾個階段:第一階段(19761978):單片機的探索階段。以Intel公司的MCS48為代 表。MCS-48的推出是在工控領(lǐng)域的探索,參與這一探索的公司還有Motorola> Zilog等。都取得了滿意的效果。這就是5cM的誕生年代,“單片機”一訶即山此 而來。第二階段(19781982):單片機的完善階段。Intel公司在MCS-48基礎(chǔ)上 推出了完善的、典型的單片機系列MCS-51。它在以下幾個方面奠定了典型的通 用總線型單片機體系結(jié)構(gòu)。(1)完善的外部總線。MCS-51設(shè)置

14、了經(jīng)典的8位單片機的總線結(jié)構(gòu),包括 8位數(shù)據(jù)總線、16位地址總線、控制總線及具有多機通信功能的串行通信接口。(2) CPU外圍功能單元的集中管理模式。(3)體現(xiàn)工控特性的地址空間及位操作方式。(4)指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控制功能的指令。第三階段(19821990):8位單片機的鞏固發(fā)展及16位單片機的推出階段, 也是單片機向微控制器發(fā)展的階段。Intel公司推出的MCS-96系列單片機,將一 些用于測控系統(tǒng)的模數(shù)轉(zhuǎn)換器、程序運行監(jiān)視器、脈寬調(diào)制器等納入片中,體現(xiàn) 了單片機的微控制器特征。第四階段(1990):微控制器的全面發(fā)展階段。隨著單片機在各個領(lǐng)域全 面、深入地發(fā)展和應

15、用,出現(xiàn)了高速、大尋址范圍、強運算能力的8位/16位/32位通用型單片機,以及小型廉價的專用型單片機。單片機是在集成電路芯片上集成了各種元件的微型計算機,這些元件包括中 央處理器CPU、數(shù)據(jù)存儲器RAM、程序存儲器ROM、定時/計數(shù)器、中斷系統(tǒng)、 時鐘部件的集成和I/O接口電路。由于單片機具有體積小、價格低、可靠性高、 開發(fā)應用方便等特點,因此在現(xiàn)代電子技術(shù)和工業(yè)領(lǐng)域應用較為廣泛,在智能儀 表中單片機是應用最多、最活躍的領(lǐng)域之一。在控制領(lǐng)域中,現(xiàn)如今人們更注意 計算機的底成本、小體積、運行的可靠性和控制的靈活性。在各類儀器、儀表中 引入單片機,使儀器儀表智能化,提高測試的H動化程度和精度,提高

16、計算機的 運算速度,簡化儀器儀表的硬件結(jié)構(gòu),提高其性能價格比。單片機主要特點:(1)有優(yōu)異的性能價格比。(2)集成度高、體積小、有很高的可靠性。單片機把各功能部件集成在一 塊芯片上,內(nèi)部采用總線結(jié)構(gòu),減少了各芯片之間的連線,大大提高了單片機的 可靠性和抗干擾能力。另外,其體積小,對于強磁場環(huán)境易于采取屏蔽措施,適 合在惡劣環(huán)境下工作。(3)控制功能強。為了滿足工業(yè)控制的要求,一般單片機的指令系統(tǒng)中均 有極豐富的轉(zhuǎn)移指令、I/O 口的邏輯操作以及位處理功能。單片機的邏輯控制功 能及運行速度均高于同一檔次的微機。(4)低功耗、低電壓,便于生產(chǎn)便攜式產(chǎn)品。(5)夕卜部總線增加了 I2C (Inter

17、-Integrated Circuit)及 SPI(Serial Peripheral Interface)等串行總線方式,進一步縮小了體積,簡化了結(jié)構(gòu)。(6)單片機的系統(tǒng)擴展和系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應 用系統(tǒng)。優(yōu)異的性能價格比。1)集成度高、體積小、有很高的可靠性。單片機把各功能部件集成在一塊芯片上,內(nèi)部采用總線結(jié)構(gòu),減少了各芯片 之間的連線,大大提高了單片機的可靠性與抗干擾能力。另外,其體積小,對于 強磁場環(huán)境易于采取屏蔽措施,適合于在惡劣環(huán)境下工作。此外,程序多采取固化形式也可以提高可靠性。2)控制功能強。為了滿足工業(yè)控制要求,一般單片機的指令系統(tǒng)中均有極豐富的轉(zhuǎn)移指令

18、、 I/O 口的邏輯操作以及位處理功能。單片機的邏輯控制功能及運行速度均高于同 一檔次的微機。單片機的系統(tǒng)擴展、系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應用系統(tǒng)。VCC: STC89C52電源正端輸入,接+5V。GND:電源地端。XTAL1:單芯片系統(tǒng)時鐘的反相放大器輸入端。X1AL2:系統(tǒng)時鐘的反相放大器輸出端,一般在設(shè)計上只要在X7AL1和 XTAL2上接上一只石英振蕩晶體系統(tǒng)就可以動作了,此外可以在兩引腳與地之間 加入一 20PF的小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機。RESET: STC89c52的重置引腳,高電平動作,當耍對晶片重置時,只要對此 引腳電平提升至高電平并保持兩個

19、機器周期以上的時間,AT89s51便能完成系統(tǒng) 重置的各項動作,使得內(nèi)部特殊功能寄存器之內(nèi)容均被設(shè)成已知狀態(tài),并且至地 址OOOOH處開始讀入程序代碼而執(zhí)行程序。EA/Vpp: “EA"為英文"External Access”的縮寫,表示存取外部程序代碼之意, 低電平動作,也就是說當此引腳接低電平后,系統(tǒng)會取用外部的程序代碼(存于 外部EPROM中)來執(zhí)行程序。因此在8031及8032中,EA引腳必須接低電平, 因為其內(nèi)部無程序存儲器空間。如果是使用8751內(nèi)部程序空間時,此引腳要接 成高電平。此外,在將程序代碼燒錄至8751內(nèi)部EPROM時,可以利用此引腳來 輸入21V的

20、燒錄高壓(Vpp)oALE/PROG: ALE是英文"Address Latch Enable”的縮寫,表示地址鎖存器啟用 信號。STC89C52可以利用這支引腳來觸發(fā)外部的8位鎖存器(如74LS373),將 端口 0的地址總線(A0A7)鎖進鎖存器中,因為STC89c52是以多工的方式送 出地址及數(shù)據(jù)。平時在程序執(zhí)行時ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6, 因此可以用來驅(qū)動其他周邊晶片的時基輸入。此外在燒錄8751程序代碼時,此 引腳會被當成程序規(guī)劃的特殊功能來使用。PSEN:此為“Program Store Enable”的縮寫,其意為程序儲存啟用,當8051 被設(shè)成為讀

21、取外部程序代碼工作模式時(EA=0),會送出此信號以便取得程序代 碼,通常這支腳是接到EPROM的OE腳。STC89C52可以利用PSEN及RD引腳分 別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲器與程序存儲器可以合并在一 起而共用64K的定址范圍。PORTO (P0.0P0.7):端口 0是一個8位寬的開路汲極(Open Drain)雙向 輸出入端口,共有8個位,P0.0表示位0. P0.1表示位1,依此類推。其他三個 I/O端口(Pl、P2、P3)則不具有此電路組態(tài),而是內(nèi)部有一提升電路,P0在當 做I/O用時可以推動8個LS的TTL負載。PORT? (P2.0P2.7):端口 2是具

22、有內(nèi)部提升電路的雙向I/O端口,每一個 引腳可以推動4個LS的TH負載,若將端口 2的輸出設(shè)為高電平時,此端口便 能當成輸入端口來使用。P2除了當做一般I/O端口使用外,若是在STC89c52擴 充外接程序存儲器或數(shù)據(jù)存儲器時,也提供地址總線的高字節(jié)A8A15,這個時 候P2便不能當做I/O來使用了。PORT1 (P1.0-P1.7):端口 1也是具有內(nèi)部提升電路的雙向I/O端口,其輸 出緩沖器可以推動4個LSTTL負載,同樣地若將端口 1的輸出設(shè)為高電平,便是 由此端口來輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0 乂當做定時器2 的外部脈沖輸入腳,而PL1可以有T2EX功能,可以

23、做外部中斷輸入的觸發(fā)腳位。PORT3 (P3.0-P3.7):端口 3也具有內(nèi)部提升電路的雙向I/O端口,其輸出 緩沖器可以推動4個TTL負載,同時還多工具有其他的額外特殊功能,包括串行 通信、外部中斷控制、計時計數(shù)控制及外部數(shù)據(jù)存儲器內(nèi)容的讀取或?qū)懭肟刂频?功能。其引腳分配如下:P3.0: RXD,串行通信輸入。P3.1: TXD,串行通信輸出。P3.2: INTO.外部中斷0輸入。P3.3: INT1,外部中斷1輸入。P3.4: T0,計時計數(shù)器0輸入。P3.5: T1,計時計數(shù)器1輸入。P3.6: WR:外部數(shù)據(jù)存儲器的寫入信號。P3.7: KD,外部數(shù)據(jù)存儲器的讀取信號。RST:復位輸

24、入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址 的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以 不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對 外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時, 將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE 只有在執(zhí)行MOVX, MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如 果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。PSEN:外部程序存儲器的

25、選通信號。在由外部程序存儲器取指期間,每個 機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信 號將不出現(xiàn)。EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH), 不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET:當 /EA端保持高電平時,此間內(nèi)部程序存儲器。1PIOVCCPHP00P12P01P13P02P14P03P15P04P16P05P17P06RESET_P07, P30/RXDEA/VPP31/1XDALE/PP32/INT0PSENP33/INT1P27P34/TDP26P35£n_P

26、25P36WRP24P37/RDP23X2P22XIP21GNDP20403933843753663573483393210311 130釜。上 2814。271526爭252423190 )2021圖5 STC89c52單片機引腳圖4各個模塊設(shè)計4.1硬件電路板的設(shè)計在本系統(tǒng)中,電路板的設(shè)計使用的是Protel99SE軟件。電路板設(shè)計的主要步驟是:原理 圖的設(shè)計一產(chǎn)生網(wǎng)絡(luò)表一印制電路板。(由于M3部分使用開發(fā)板這里只進行51部分的敘述)硬件電路板原理圖如圖4. 1. 1所示:31£iJ!K:AlXjI' : p: - p:3黯 Y P: 4(Al:l TPIJCAUJ.;代

27、.rKIMHOlAtlvcc X ADO l M>I(ADII W21AO:; TOXAD) R玄AX XS皿I fO'AX >0 ?lAD'lI- P?>KTT>P3XT1亞P fc XTAL2 XTALI GKDPI KT?)Pl 1 TH:PI : PUPI 4 PI iPl 4 PI *R57PJ OW3>|-二.>m-§ A wra 三二一 .mu vna vru圖4.1硬件電路板原理圖PCB如圖4. L2所示圖4. 1 PCB圖在硬件設(shè)計時,需要注意以下幾點:(1)電源線要加粗,合理走線、接地;(2)布線時避免90度折線

28、,盡最平滑過渡;(3)充分考慮單片機的帶我驅(qū)動能力。(4)盡可能的選擇典型電路,并符合單片機的常規(guī)使用方法:(5)在充分滿足系統(tǒng)功能要求前提下,留余地以便于二次開發(fā);(6)硬件結(jié)構(gòu)設(shè)計應與軟件設(shè)計方案一并考慮;(7)封裝大小要嚴格按照元器件實際尺寸要特別注意元器件豎向所占空間;(8)硬件上要有可靠性與抗干擾設(shè)計,電源要用電容濾波,增強電源的穩(wěn)定性:4. 2軟件程序設(shè)計程序設(shè)計采用模塊化設(shè)計方法,依據(jù)了 “任何復雜的程序都可以分解為順序結(jié)構(gòu)部分、 分支結(jié)構(gòu)部分、循環(huán)結(jié)構(gòu)部分和子程序部分”的原則,將程序進行分解設(shè)計。結(jié)構(gòu)化程序設(shè) 計具有結(jié)構(gòu)清晰、易于讀寫、易于驗證和可靠性高等特:點,在程序設(shè)計中被

29、廣泛使用,易于 文件規(guī)范管理。4. 2.1主程序模塊模塊化程序設(shè)計思想是采用自頂向卜、逐步求精的方法,將一個復雜的問題分解成若干 獨立的子問題,每個子問題對應一個功能獨立的程序模塊,將這些模塊有機的連接在一起, 構(gòu)成完整的程序。先進行主程序模塊的設(shè)計,描述程序的總體框架,在進行子模塊的設(shè)計, 完成相應的子功能。該系統(tǒng)中需要分別設(shè)計發(fā)送端和接收端的程序。在發(fā)送端,首先使其進入發(fā)送工作模式CE=1,通過I/O接口裝入接收端地址和有效數(shù) 據(jù),然后啟動發(fā)送CE二0,發(fā)送端等待數(shù)據(jù)發(fā)送完成。當發(fā)送完成后模塊進入接收狀態(tài),接 收接收端的應答數(shù)據(jù)。發(fā)送端程序流程圖如圖4. 2. 1.1:圖4. 2發(fā)送端程序流程圖在接收端,便能接收。如果接收到發(fā)送端數(shù)據(jù),則將接收到的數(shù)據(jù)送入擴展的外部RAM 中,并且向發(fā)送端發(fā)送應答數(shù)據(jù)。接收端程序流程圖如圖4. 2. 1.1。NN圖1. 2接收端程序流程圖4. 3結(jié)果與分析結(jié)果如圖所示:圖4. 3結(jié)果圖而于2401這個模塊來說,發(fā)送的速率遠大于spi的讀寫速度,所以不能別發(fā)送別讀寫, 只能將發(fā)送的數(shù)據(jù)在2401模塊中進行儲存,然后給控制器一個狀態(tài)位,當控制器通過spi 讀到這個位的數(shù)據(jù)時,就給2401一個發(fā)送的指令這時2401才開始發(fā)送,同樣的對應的接受 端,也是先將接受的數(shù)據(jù)進行儲存之后再用spi對控制器進行讀

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論