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

正文內(nèi)容

基于modbus協(xié)議的通訊系統(tǒng)畢業(yè)論文(參考版)

2025-05-26 18:22本頁面
  

【正文】 // shift next bit into MSB.. SCK = 1。date39。 0x80)。bit_ctr8。}/****************************************************************************************************/*函數(shù):uint SPI_RW(uint uchar)/*功能:NRF24L01的SPI讀寫時序/****************************************************************************************************/uchar SPI_RW(uchar date){ uint bit_ctr。 write_(0x06)。 write_(0x38)。} void init() //液晶初始化函數(shù){ lcdrw=0。 delayms(1)。 delayms(1)。}void write_data(uchar date) //向液晶寫數(shù)據(jù)函數(shù){ lcdrs=1。 delayms(1)。 delayms(1)。 }void write_(uchar ) //向液晶寫指令函數(shù){ lcdrs=0。y0。x0。 //寫液晶對應(yīng)ASCLL碼/******************************************************************************************/*延時函數(shù)/******************************************************************************************//**************延時x毫秒******************/void delayms(uint x){ uchar y。sbit MAX_RT =sta^4。 //狀態(tài)標(biāo)志sbit RX_DR =sta^6。 //A機地址uchar const B_ADR[RX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x02}。sbit lcden=P2^2。 //************************************液晶控制*********************************************sbit lcdrs=P2^0。sbit s5=P1^4。sbit s3=P1^2。//************************************按鍵***************************************************sbit s1=P1^0。sbit CE =P3^7。sbit MOSI =P3^3。最后,感謝在百忙之中給我審稿的諸位老師。同時感謝付智河老師、 涂二生老師、 李建華老師、 羅錦彬老師、賴義漢等等老師和同學(xué)在學(xué)習(xí)和生活中給予我的幫助,使我提高了分析問題、處理問題、解決問題的能力,真的讓我受益良多。參考文獻[1]石海東單片機數(shù)據(jù)通信技術(shù)從入門到精通,西安電子科技大學(xué)出版社,2002 [2] [M].單片機與嵌入式系統(tǒng)應(yīng)用,2003.[3]郭天祥.51單片機C語言教程.電子工業(yè)出版社[4]李剛、林凌、[5]常曉明,潘衛(wèi)華,(6).4551 [6]張蓮,蔣亮,孫玉林.Protel DXP電路設(shè)計入門與應(yīng)用.機械工業(yè)出版社[7]陳鑫、[J].(3):[8]王綱常、[J].(6):[9]姜風(fēng)武、[J].(4):[10] GB/T ,第1部分:Modbus應(yīng)用協(xié)議[S].北京:中國標(biāo)準(zhǔn)出版社,2008.[11] GB/T ,第2部分:Modbus協(xié)議在串口鏈路上的實現(xiàn)指南[S].北京:中國標(biāo)準(zhǔn)出版社,2008.[12]黃海容.在Windows95下實現(xiàn)PC機與單片機AT89C51的串行通信.微型機與應(yīng)用.1999.[13]“A Power Line Communication Tutorial Challenges and Technologies”.Phil Sutterlin and Walter Downey Echelon Corporation [15]Modbus通信編程.://member.netease./Maoyang/ [16]ModbusPlus Planning and Installation.://.modicon./teehpubs/toc6.html致謝本設(shè)計從開題到方案的設(shè)計、具體電路試驗及論文寫作的實施始終是在老師們的精心指導(dǎo)和周密安排下進行的。⑵因為沒有編程上位機軟件,只是通過串口調(diào)試軟件來觀察數(shù)據(jù)的,如此的話,通過協(xié)議讀取的數(shù)據(jù)信號不能實時性的顯示于上位機上,而且操作非常麻煩,用戶界面很不友好,還有待繼續(xù)完善。⑶設(shè)計了一個基于Modus通訊協(xié)議的單片機通信系統(tǒng)。⑵較詳細地分析了Modus協(xié)議的基本內(nèi)容和工作原理,在實現(xiàn)Modbus通信協(xié)議的基礎(chǔ)上為了預(yù)防干擾,提高系統(tǒng)穩(wěn)定性,防止系統(tǒng)程序跑飛而造成不可預(yù)測的錯誤等,在軟件方面做出了一些優(yōu)化系統(tǒng)設(shè)計。本次設(shè)計功能基本實現(xiàn):A機通過無線模塊控制B機實現(xiàn)溫度或者時鐘顯示實現(xiàn)短距離無線通訊,B機還做為從機通過Modbus與PC機通訊,將從A機無線獲得的時鐘信號和溫度信號傳輸給上位機顯示實現(xiàn)長距離有線通訊?!姹硎?小時表示8小時表示48分鐘圖63 PC機顯示我們發(fā)送:[01][03][01][00][01][00][25][C0] 注釋:讀從機溫度[01][03][02][00][01][00][DD][AA] 注釋:讀從機時鐘的小時 [01][03][03][00][01][00][8C][CA] 注釋:讀從機時鐘的分鐘串口接收:[01][03][02][00][AC][25][C0] 注釋:溫度值回應(yīng)給主機(℃)[01][03][02][00][0B][DD][AA] 注釋:小時值回應(yīng)給主機(8小時) [01][03][02][00][24][8C][CA] 注釋:分鐘值回應(yīng)給主機(48分鐘)03對應(yīng)讀度模擬寄存器功能;[D5]、[08]、[30]就是分別發(fā)送三次命令后讀出的模擬量;℃;8代表8小時;48代表48分鐘。RS232485模塊有:MAX232芯片、MAX485芯片、USB轉(zhuǎn)串口線。A、 B機顯示如圖61所示:溫度顯示溫度顯示萬年歷小時、分鐘顯示圖61 A、B機顯示Rs232485A機B機18B20溫度感器52單片機24l01無線模塊A機5v電池盒1620液晶顯示MAX485芯片MAX232芯片按鍵模塊24l01無線模塊數(shù)碼管顯示串口線B機5v電池盒圖62 實物外觀A機主要有:1602液晶顯示模塊、52單片機、按鍵模塊、NRF24L01無線模塊、5v電源。第6章 通訊系統(tǒng)的實現(xiàn)本章節(jié)主要說明本課題設(shè)計的作品,對整體作品的實物及各部分功能模塊實物作了全面的介紹,并對本課題設(shè)計的作品結(jié)果作了全面的分析與評價。程序流程圖如55所示:讀取一次溫度信息主程序開始無線模塊初始化Timer0中斷開始Timer0、1mTimer串口初始化(設(shè)置波特率等);無線模塊設(shè)置為接收數(shù)碼管掃描時鐘更新中斷返回判斷中斷標(biāo)志rcv為1?無線接收中斷開始讀取接收到的數(shù)據(jù)判斷接收到的命令置位rcvNY顯示時鐘并與A機同步顯示溫度發(fā)回溫度信息LED閃爍檢查uart0口數(shù)據(jù)結(jié)束結(jié)束結(jié)束定時處理圖55 B機流程圖 本章小結(jié) 在這一章中我們介紹了基于MODBUS協(xié)議處理報文的軟件設(shè)計,介紹了報文格式、軟件具體實現(xiàn)的方法和注意事項,并設(shè)計的介紹了流程圖,設(shè)計中對系統(tǒng)穩(wěn)定性方面下了功夫。所以程序中需要初始化無線模塊、串口、定時器等;Modbus協(xié)議都在主程序中得以體現(xiàn)。 流程圖如53所示:檢查Uart0數(shù)據(jù)開始設(shè)備地址、偶校正確否?CRC校驗正確?接受地址偏移寄存器清零偶校驗清零結(jié)束功能碼為03否?NNN:結(jié)束或看是否為其它功能YYY讀取保存寄存器開始讀取接收的邏輯地址讀取地址長度對接收緩沖區(qū)做CRC校驗對應(yīng)邏輯地址處理數(shù)據(jù),需要將溫度、時鐘的時、分等數(shù)據(jù)對應(yīng)給發(fā)送緩沖區(qū)將設(shè)備地址、命令號、返回字節(jié)數(shù)對應(yīng)給發(fā)送緩沖區(qū)對緩沖區(qū)數(shù)據(jù)進行CRC計算開始發(fā)送緩沖區(qū)第一個數(shù)據(jù)圖53 數(shù)據(jù)包處理 A機流程圖和說明 A機的功能是顯示時鐘,能通過按鍵控制B機顯示溫度或把A機的時鐘信號無線傳輸給B機;所以在程序中需要初始化液晶、無線模塊、定時器、還要設(shè)置按鍵掃描和無線接受中斷(這里用單片機外部中斷0來實現(xiàn))。通過邏輯地址我們可以知道要處理的數(shù)據(jù),通過邏輯地址長度我們可以知道需要返回的字節(jié)數(shù)。采用查詢掃描方式,當(dāng)從機接受數(shù)據(jù)包第一個有效數(shù)據(jù)為0X01時說明確實是該機,如果偶校驗也正確的話則繼續(xù)處理接下來的數(shù)據(jù);為保證通訊數(shù)據(jù)的可靠和可信性我們還需要對接收緩沖區(qū)做CRC校驗。發(fā)送接收緩沖區(qū)再與單片機的串口鎖存器sbuf進行交換來實現(xiàn)數(shù)據(jù)包的發(fā)送與接收,在程序中還同時使用偶校驗來對傳輸數(shù)據(jù)進行檢測;在此設(shè)置串口中斷服務(wù)程序,當(dāng)接收或者發(fā)送完8個數(shù)據(jù)后進入服務(wù)程序內(nèi)處理以上功能。在此次程序設(shè)計中設(shè)置了一個1ms定時中斷,在中斷程序中定義一個1ms標(biāo)志位,在定時處理子函數(shù)中判斷是否通訊超時(本次設(shè)定為5s),如果超時,即使已經(jīng)有接受到數(shù)據(jù)也置之不理,進行重置48清零地址偏移器、清零偶校驗;除此之外每次發(fā)送數(shù)據(jù)結(jié)束后我們也需要進行這樣處理。設(shè)計中只返回了[數(shù)據(jù)1][數(shù)據(jù)2],本次設(shè)計中若第一個返回的值是[AC]176。設(shè)計中返回了1個模擬量的數(shù)據(jù),因為一個模擬量需要2個字節(jié)所以共2個字節(jié)。⑵從機響應(yīng)回主機的數(shù)據(jù)包:[設(shè)備地址] [命令號
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1