




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、詳細(xì)設(shè)計(jì)1地址符號(hào)的分配所以在編寫在編寫庫(kù)函數(shù)的時(shí)候,不能夠使用絕對(duì)地址進(jìn)行編程,必須使用符號(hào)地址,程序之前須定義符號(hào)地址,符號(hào)地址的定義如下:表1自由口庫(kù)函數(shù)符號(hào)地址定義符號(hào)名地址填充開始地址VW1000發(fā)送數(shù)據(jù)個(gè)數(shù)VB1000發(fā)送幀幀頭VB1001站地址發(fā)送(字)VW1002站地址發(fā)送(字節(jié))VB1002控制碼發(fā)送VB1004發(fā)送控制碼低VB1005數(shù)據(jù)標(biāo)識(shí)發(fā)送(字)VD1006數(shù)據(jù)標(biāo)識(shí)發(fā)送VB1006數(shù)據(jù)長(zhǎng)度發(fā)送VB1010數(shù)據(jù)域發(fā)送VB1012接收數(shù)據(jù)個(gè)數(shù)以字形式表VW1099接收數(shù)據(jù)個(gè)數(shù)高位VB1099接收數(shù)據(jù)緩沖首地址VB1100站地址接收(字)VW1102站地址接收(字節(jié))VB1
2、102接收控制碼高VB1104接收控制碼低VB1105數(shù)據(jù)標(biāo)識(shí)接收VD1106數(shù)據(jù)域長(zhǎng)度高VB1110數(shù)據(jù)域首址VB1112生成控制碼VB1041發(fā)送長(zhǎng)度VW1042發(fā)送長(zhǎng)度高VB1042發(fā)送長(zhǎng)度低VB1043發(fā)送數(shù)據(jù)標(biāo)識(shí)VW1044發(fā)送數(shù)據(jù)標(biāo)識(shí)高VB1044BC版驗(yàn)當(dāng)前循環(huán)次數(shù)VW1046BC俄驗(yàn)當(dāng)前值VB1048BC微驗(yàn)V存儲(chǔ)地址VD1049發(fā)送完成標(biāo)志V1055.0接收完成標(biāo)志V1055.1BC啦驗(yàn)成功標(biāo)志V1055.2接收到信息BCC+算結(jié)果VB1056接收數(shù)據(jù)幀控制碼 16進(jìn)制VB1057接收數(shù)據(jù)幀控制碼_0V1057.0接收數(shù)據(jù)幀控制碼_1V1057.1接收數(shù)據(jù)幀控制碼_2V105
3、7.2接收數(shù)據(jù)幀控制碼_3V1057.3接收數(shù)據(jù)幀控制碼_4V1057.4接收數(shù)據(jù)幀控制碼_5V1057.5接收數(shù)據(jù)幀控制碼_6V1057.6接收數(shù)據(jù)幀控制碼_7V1057.7接收數(shù)據(jù)數(shù)據(jù)域長(zhǎng)度字VW1058接收數(shù)據(jù)數(shù)據(jù)域長(zhǎng)度高VB1058接收數(shù)據(jù)數(shù)據(jù)域長(zhǎng)度低VB1059緩沖區(qū)最后地址VB11992錯(cuò)誤代碼定義在自由口通信中,當(dāng)通信出現(xiàn)錯(cuò)誤時(shí),根據(jù)不同的錯(cuò)誤類型,定義了一些錯(cuò)誤代碼。代碼具體如下:表2自由口通信錯(cuò)誤代碼編號(hào)錯(cuò)誤代碼判斷位置 (主站|從站)代碼意義10x00從站判斷無錯(cuò)誤20x01從站判斷從站接收到數(shù)據(jù)幀指令錯(cuò)誤30x02從站判斷從站接收到數(shù)據(jù)幀 R_W與數(shù)據(jù)標(biāo)識(shí)不匹配40x03
4、從站判斷從站接收到數(shù)據(jù)幀 BCC校驗(yàn)錯(cuò)誤50x04從站判斷從站奇偶校驗(yàn)錯(cuò)誤60x05從站判斷從站接收到數(shù)據(jù)幀控制碼錯(cuò)誤70x11主站判斷主站檢測(cè)設(shè)置的 R_W與數(shù)據(jù)標(biāo)識(shí)符不一致80x12主站判斷應(yīng)答幀數(shù)據(jù)長(zhǎng)度與數(shù)據(jù)域長(zhǎng)度不一致90x13主站判斷運(yùn)算錯(cuò)誤100x14主站判斷應(yīng)答幀BCC校驗(yàn)錯(cuò)誤110x15主站判斷應(yīng)答幀站地址錯(cuò)誤120x16主站判斷應(yīng)答幀數(shù)據(jù)標(biāo)識(shí)與命令幀數(shù)據(jù)標(biāo)識(shí)不一致130x17主站判斷應(yīng)答幀指令錯(cuò)誤140x18主站判斷響應(yīng)超時(shí)3初始化初始化庫(kù)函數(shù)的主要功能是設(shè)置自由口通信的端口、接收信息開始字符、接收信息結(jié)束字符、接收信息控制字節(jié)、空閑檢測(cè)時(shí)間、發(fā)送或接收的最大字符數(shù)。為了貼近
5、于實(shí)際情況,在初始化局部變量中添加了3個(gè)輸入型局部變量。分別用于對(duì)通信端口、接收信息開始字符、接收信息結(jié)束字符的設(shè)置。局部變量表如下:表3初始化局部變量定義符號(hào)變量類型數(shù)據(jù)類型L0.0PortINBOOLLB1FirstINBYTELB2FinalINBYTE4自由口在自由口庫(kù)函數(shù)中添加了 7個(gè)輸入型的局部變量和 2個(gè)輸出型的局部變量,局部變量表如下:表4自由口局部變量定義符號(hào)變量類型數(shù)據(jù)類型L0.0SendINBOOLL0.1R_WINBOOLLB1SlaveINBYTELW2MarkINWORDLB4LenINBYTELD5DataPtrINDWORDLW9TimerINWORDL11.0
6、DoneOUTBOOLLB12ErrorOUTBYTE自由口庫(kù)函數(shù)的主要功能是完成數(shù)據(jù)的發(fā)送、接收、對(duì)接收到數(shù)據(jù)信息BCC校驗(yàn)、對(duì)BCC校驗(yàn)成功的數(shù)據(jù)幀進(jìn)行解碼,在程序上對(duì)數(shù)據(jù)的發(fā)送、對(duì)接收到數(shù)據(jù)信息BCC校驗(yàn)、對(duì)BCC校驗(yàn)成功的數(shù)據(jù)信息進(jìn)行解碼三個(gè)功能是通過順序控制繼電器指令來實(shí)現(xiàn)的,當(dāng)滿 足條件時(shí),分別調(diào)用不同的順序控制繼電器來實(shí)現(xiàn)功能。此外,由于庫(kù)函數(shù)沒有辦法添加中斷來檢測(cè)數(shù)據(jù)幀的發(fā)送完成和接收完成,所以對(duì)于接收完成和發(fā)送完成是在該程序中通過檢測(cè)特殊寄存器來實(shí)現(xiàn)的,該庫(kù)函數(shù)的主體流程如圖1。4.1 數(shù)據(jù)發(fā)送所謂數(shù)據(jù)發(fā)送就是要將幀頭、站地址、控制碼、數(shù)據(jù)標(biāo)識(shí)、數(shù)據(jù)域長(zhǎng)度、數(shù)據(jù)域、BCC校驗(yàn)
7、碼、幀尾組合成為一個(gè)數(shù)據(jù)幀發(fā)送出去。在該環(huán)節(jié)中有兩個(gè)地方需要注意:其一, 求取BCC校驗(yàn)碼時(shí),需先取站地址開始處存儲(chǔ)器里值與一個(gè)初值為0的地址符號(hào)存儲(chǔ)器相異或,將異或所得結(jié)果再與下一個(gè)存儲(chǔ)器相異或,一直到數(shù)據(jù)域的最后一個(gè)存儲(chǔ)器,這個(gè)過程通過一個(gè)循環(huán)來實(shí)現(xiàn),由于數(shù)據(jù)域長(zhǎng)度的不確定,所以需要特別注意循環(huán)的次數(shù)確定;其二,求取到的BCC校驗(yàn)碼在數(shù)據(jù)發(fā)送緩沖區(qū)中存放的具體位置,只知道BCC校驗(yàn)碼是存放在數(shù)據(jù)域的后面,但是由于數(shù)據(jù)域長(zhǎng)度的不確定導(dǎo)致了BCC校驗(yàn)碼存放的位置的不確定,故確定BCC校驗(yàn)碼存放位置也是需要注意的。由口庫(kù)函數(shù)的數(shù)據(jù)發(fā)送流程圖如圖2:4.2 對(duì)應(yīng)答幀BCC校驗(yàn)對(duì)應(yīng)答幀BCC校驗(yàn)是為
8、了檢測(cè)應(yīng)答幀在數(shù)據(jù)傳輸?shù)倪^程中是否出錯(cuò),其校驗(yàn)的方法很簡(jiǎn)單,直接求取接收到的應(yīng)答幀中站地址、控制碼、數(shù)據(jù)標(biāo)識(shí)、數(shù)據(jù)域長(zhǎng)度、數(shù)據(jù)域的BCC校驗(yàn)碼,將所得的結(jié)果與應(yīng)答幀中傳過來的BCC校驗(yàn)碼比較,如果一致,表明數(shù)據(jù)傳輸過程中沒有出錯(cuò),如果不一致表明數(shù)據(jù)傳送過程中出現(xiàn)了錯(cuò)誤。對(duì)于校驗(yàn)發(fā)現(xiàn)出錯(cuò)的應(yīng)答幀,不再對(duì)其進(jìn)行解碼,只需主站將錯(cuò)誤信息代碼通過錯(cuò)誤代碼存儲(chǔ)器指示出來即可,BCC校驗(yàn)的流程圖如圖3:4.3 數(shù)據(jù)解碼數(shù)據(jù)解碼是自由口通信中最為主要的一個(gè)部分,數(shù)據(jù)解碼的結(jié)果是從應(yīng)答幀返回的數(shù)據(jù)幀信息中找出主站需要的信息。在數(shù)據(jù)解碼過程中需要進(jìn)行一些列的容錯(cuò)判斷,比如說:返回的應(yīng)答幀的站地址是否正確;返回幀的數(shù)據(jù)標(biāo)識(shí)是否一致;返回幀的數(shù)據(jù)域長(zhǎng)度是否正確等等,只有當(dāng)所有的信息都正確的情況下,才能將應(yīng)答幀中數(shù)據(jù)域的內(nèi)容取出放入指定地方。數(shù)據(jù)解碼的流程圖如圖 4:開始復(fù)位BCC校驗(yàn)成功標(biāo)志為 0命令幀站地址'應(yīng)答幀站地址否命令赫數(shù)據(jù)標(biāo)識(shí),=應(yīng)答幀數(shù)據(jù)標(biāo)識(shí)問錯(cuò)誤代碼仔儲(chǔ)器Error 寫入 0x15可錯(cuò)誤代碼存儲(chǔ)器Error 寫入 0x16否是命令幀控制碼低位=應(yīng)答幀控制碼低位向錯(cuò)誤代碼存儲(chǔ)器Error
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省無錫錫東片2025屆初三語(yǔ)文試題中考模擬試題含解析
- 五邑大學(xué)《開放性實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 蘆溪縣2025年數(shù)學(xué)三下期末統(tǒng)考模擬試題含解析
- 遼寧稅務(wù)高等專科學(xué)校《機(jī)電工程專業(yè)英語(yǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 嘉興職業(yè)技術(shù)學(xué)院《臨床流行病學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 擔(dān)保協(xié)議書的范例二零二五年
- 二零二五場(chǎng)地轉(zhuǎn)租協(xié)議書
- 知識(shí)產(chǎn)權(quán)委托代理協(xié)議書二零二五年
- 學(xué)校校長(zhǎng)聘用合同書協(xié)議書二零二五年
- 二零二五影視劇導(dǎo)演聘用勞動(dòng)合同書例文
- 毛石擋土墻專項(xiàng)施工方案
- 高中英語(yǔ)-The Wild Within教學(xué)課件設(shè)計(jì)
- 腫瘤生物治療
- 分析化學(xué)(上)-中國(guó)藥科大學(xué)中國(guó)大學(xué)mooc課后章節(jié)答案期末考試題庫(kù)2023年
- 教師資格面試-75篇結(jié)構(gòu)化逐字稿
- 大單元教學(xué)設(shè)計(jì)說課稿《7.3 萬(wàn)有引力理論的成就》
- 工程項(xiàng)目部質(zhì)量管理“四個(gè)責(zé)任體系”實(shí)施細(xì)則
- 資助感恩教育主題班會(huì)ppt課件(圖文)
- 2023年新改版教科版科學(xué)三年級(jí)下冊(cè)活動(dòng)手冊(cè)參考答案(word可編輯)
- 消防重點(diǎn)單位檔案十八張表格doc-消防安全重點(diǎn)單位檔案
- 多模態(tài)視域下北京市核心區(qū)語(yǔ)言景觀研究
評(píng)論
0/150
提交評(píng)論