国产一区二区三区毛片_亚洲乱码AV中文一区二区_亚洲精品无码专区在线播放_日韩欧美一二_咪咪av影院_欧久久av一区二区

wqlcd2011
http://www.qxlcd.com
級別: 探索解密
精華主題: 0
發帖數量: 33 個
工控威望: 101 點
下載積分: 651 分
在線時間: 16(小時)
注冊時間: 2010-12-30
最后登錄: 2014-04-10
查看wqlcd2011的 主題 / 回貼
樓主  發表于: 2011-11-07 09:49


很多時候,工業控制或者產品設計方面受到PLC這種功能確定,擴展麻煩,成本昂貴等方面的制約因素,需要獨立開發一種特殊功能,但是又需要連接觸摸屏通訊,工程師在這個方面往往需要花費很大功夫,現在我要幫大家解決的問題就是 單片機與人機界面觸摸屏通訊的最簡單,最有效的 2種方法,其實就是分為2種通訊協議,即工業標準的 Modbus RTU協議和 工程師自己定義的  自由協議。



本實例采用廣州市微嵌計算機科技有限公司(公司網站:http://www.wqlcd.com)的人機界面作為參考,因為公司提供一系列的技術支持和公布單片機源代碼,加上公司的人機界面支持自由協議等等先天優勢,開發工程方便有效。
      方案比較:
方案一  modbus—rtu協議:
     優點:工業標準通訊協議,具有通用性,,傳輸數據量大
     缺點:需要時間去了解協議的格式和以及按照規定編寫通訊程序(我們提供MODBUS-RTU源代碼,客戶直接移植就可以,不必費心)
方案二   自由協議:
     優點:數據格式客戶自己定義,靈活多變,定制性強,可以模擬任何已知報文的通訊協議
     缺點:傳輸數據量不大,通用性不強,移植不方便


  工程師可以根據以上兩種通訊協議的優缺點來選擇理想的方案;

實現方法:首先下載公司的人機界面組態軟件(下載地址http://dl.dbank.com/c0c85mpr86   用戶名: wqlcd_911@163.com    密碼:123456)
方案一:
1. 工程屬性選用MODBUS-RTU協議;
2. 先了解MODBUS-RTU協議,基本的01 03 05 06 16 的功能碼需要了解,其他可以不去深究;提供相關的資料
3. 使用我們提供的MODBUS-RTU協議(C語言)開發源代碼,把主要的01 03 05 06 16 函數移植到單片機通訊上,大大節省了開發時間;



方案二:
1. 工程屬性選用FreeProtocol協議;



3. 打開控制令編輯器(設定—>宏指令—>宏指令編輯器)或者直接按F8;
4. 新增宏指令,在宏指令里面使用到Output()、Input()、SetWordData()、GetWordData()這四個函數;注:可以參考附一
5. Output()函數,把設定好的字符串發送到相應的串口輸出;Input()函數,從設定好的串口讀取需要的字符串;
6. 采集顯示:
SetWordData()函數,把Input()函數接收回來的數據,發送給HIM用戶自定義寄存器里,然后在顯示控件里填上已經有數據的HIM寄存器,即可顯示單片機采集上來的數據;
7. 改寫發送:
在顯示控件了把需要改寫的數據綁定HIM寄存器,使用GetWordData()獲得修改后的數據,通過output()發送把數據發送到單片機;

資料下載:
http://dl.dbank.com/c0e9kek2e1
Output();
【描述】
第一個參數channel表示通道,如果通道為com1,則channel=1;如果通道為com2,則channel=2,數據類型為int。
第二個參數pString表示從通道輸出的字符串的地址,數據類型為unsigned char *。
第三個參數count表示字符串中的字符個數,數據類型為int。
第四個參數result表示Output函數運行后返回的結果,如果result大于0,則表示讀寫有效,數據類型為int。
注意:此函數只能用在freeprotocol(自由協議通道)中。
【用法】
Output(channel,pString,count,result);
【舉例】
char srt[9];
int result;
Output(1,str[0],9,result);



Input();
【描述】
第一個參數channel表示通道,如果通道為com1,則channel=1;如果通道為com2,則channel=2,數據類型為int。
第二個參數pString表示寫入通道的字符串的地址,數據類型為unsigned char *。
第三個參數count表示字符串中的字符個數,數據類型為int。
第四個參數result表示Output函數運行后返回的結果,如果result大于0,則表示讀寫有效,數據類型為int。
注意:此函數只能用在freeprotocol(自由協議通道)中。
【用法】
Input(channel,pString,count,result);
【舉例】
char srt[9];
int result;
Input(1,str[0],9,result);

GetWordData();
【描述】
函數功能:從通道中讀取Word數據。
第一個參數channel表示通道,數據類型為unsigned char。
第二個參數slaveID表示從機號,數據類型為unsigned char。
第三個參數address表示系統通道地址,數據類型為unsigned short。
第四個參數count表示要讀出的字的個數,數據類型為unsigned short。
第五個參數表示命令號,數據類型為unsigned char。
第六個參數pvalue用來保存從系統通道讀出的count個字,數據類型為unsigned short *。
【用法】
GetWordData(channel,slaveID,address,count,cmd,pvalue);
【舉例】
unsigned short wordData[10];
GetWordData(0, 1,8000, 10, 0,wordData);
從系統通道 8000地址中讀取10個數據到wordData

SetWordData();
【描述】
函數功能:從通道中寫入一個Word數據。
第一個參數channel表示通道,數據類型為unsigned char。
第二個參數slaveID表示從機號,數據類型為unsigned char。
第三個參數address表示系統通道地址,數據類型為unsigned short。
第四個參數cmd表示命令號,數據類型為unsigned char。
第五個參數pvalue用來保存寫入系統通道的字,數據類型為unsigned short。
【用法】
SetWordData(channel,slaveID,address,cmd,source);
【舉例】
unsigned short wordData = 1;
SetWordData(0, 1,1000,0,wordData);
把wordData中的Word數據寫到系統通道 1000地址處


附錄二:
使用自由協議來模擬modbus-RTU

//COM1:freeprotocol
//COM2:modbus-RTU
/*自由協議通道采集數據存放在系統通道,在界面顯示
   modbus通道采集到的數據,處理后,發送到自由協議的設備上*/
unsigned char command[32];

unsigned char response[32];

unsigned char temp1,temp2;

unsigned short address, checksum;

unsigned short read_no, return_value1, return_value2,return_value3,read_data[2], i;

unsigned short com2_data;
/****************以上是新建需要使用的變量***********/

Fill(command, 0, 32);// initialize command[0]~command[31] to 0

Fill(response, 0, 32);  //把command 和response 初始化

command[0] = 0x1;// 設置發送字符竄的第一個數據  station number

command[1] = 0x3;// 設置發送字符竄的第二個數據 read holding registers (function code is 0x3)

address = 0;// starting address (4x_1) is 0

HiByte(address, command[2]);//設置發送字符竄的第三個數據

LoByte(address, command[3]);//設置發送字符竄的第四個數據

read_no = 2;// the total words of reading is 2 words

HiByte(read_no, command[4]);//設置發送字符竄的第五個數據

LoByte(read_no, command[5]);//設置發送字符竄的第六個數據

CRC(command, 6,checksum);// calculate 16-bit CRC

LoByte(checksum, command[6]); //設置發送字符竄的第七個數據

HiByte(checksum, command[7]); //設置發送字符竄的第八個數據

Output(1,command,8, return_value1); //把設置好的8個數據,從通訊口1發送出去,具體參數設置參考Output()使用

Input(1,response,9,return_value2); //從通訊口1等待接收9個字符數據,并且放在response[0]~response[8],具體參數設置參考Intput()使用

CRC(response, 7,checksum); //對采集上來的9個數據中前7個進行了CRC-16校驗,校驗結果存放在checksum

LoByte(checksum, temp1);  //把checksum的低8位放在temp1

HiByte(checksum, temp2);  //把checksum的高8位放在temp1

if(temp1==response[7]&&temp2==response[8])    //CRC校驗碼進行對比判別時候接收正確

{  
                                                                           //CRC檢驗正確后,把采集來的數據中指定需要的數據放在read_data[]
read_data[0] = response[4] + (response[3] << 8);    

read_data[1] = response[6] + (response[5] << 8);

SetWordData(0 ,1 ,0 ,2,0 , read_data); // 通過SetWordData()函數,把read_data送到系統寄存器中,具體使用需要參考SetWordData()函數使用
}

GetWordData( 2, 1, 2, 2, 3, &com2_data);   // 通訊口2,使用的是modbus-RTU協議,

command[0] = 0x1;// station number

command[1] = 0x6;// wirte holding registers (function code is 0x6)

address=10;

checksum=0;

HiByte(address, command[2]);

LoByte(address, command[3]);

HiByte(com2_data, command[4]);

LoByte(com2_data, command[5]);

CRC(command, 6,checksum);// calculate 16-bit CRC

LoByte(checksum, command[6]);

HiByte(checksum, command[7]);

Output(1,command,8, return_value3);  //發出定義好8個字符串

qxlcd.com
58000
級別: *
精華主題: * 篇
發帖數量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看58000的 主題 / 回貼
1樓  發表于: 2011-11-07 16:07
資料很好,收下了

主站蜘蛛池模板: 无遮挡拍拍拍免费观看_99日韩_亚洲国产欧美日韩另类_毛片免费全部播放无码_狂野欧美激情性xxxx喷水_视频在线国产_超碰pron人人_免费h动漫无码网站 | 久久精品国产9久久综合_午夜一级片_99小视频_国产高清av在线播放_久久人久久_2021精品国产自在现线_亚洲精品伦理熟女国产一区二区_最新在线国产 | 亚洲不卡视频在线_亚洲福利网址_啦啦啦中文免费观看在线_草久视频免费观看_丁香五月天一二三四在线视频_成人午夜国产内射主播_九九久久精品视频_真人与拘做受免费视频 久久久无码精品亚洲日韩啪啪网站_国产三级三级看三级_天堂一区人妻无码_国产成人久久精品_最近中文字幕2019视频1_思思久热_亚洲成AV人在线观看成年美女_日韩少妇内射免费播放18禁裸乳 | 色妹子一区二区_成人在线观看网站_国产自偷在线拍精品热乐播AV_爆操极品尤物_欧美精品久久久久a片一二三区_九色视频91_jizzjizz日本护士_国产综合久久久久久鬼色 | 天堂网中文_国产丰满乱子伦无码专_91插插插影_国产精品乱码高清在线观看_国内av免费看_精品无码免费专区毛片_国产露脸无码a区久久蘑菇_国产美女二区 | 国产精品伦一区二区三区妓女_caoporn人人_性一交一乱一色一欲_免费在线看黄_国产乱妇乱子视频_日韩男女在线_韩日三级视频_www.色小妹.com | 国产高清免费在线_国产美女久久久久_毛片在线不卡_亚洲在线一区二区_超碰免费视_24小时日本在线视频_国产啪视频1000部免费_精品国产一区二区三区四区阿崩 | 亚洲日韩国产成网在线观看_69久久久_伊人久久精品无码麻豆一区_亚洲欧美日韩在线观看a三区_日本网站在线_av在线免费观看国产_最近免费中文字幕大全高清MV_性欧美长视频免费观看不卡 | 中文字幕55页_亚洲国产精品无码久久久五月天_麻豆短视频传媒_免费色视频在线观看_一区二区三区无码免费看_免费一级做a爰片性色毛片_亚洲欧美一级_久久久亚洲蜜桃 | 国产精品国产精品国产专区不卡_欧美精品人人做人人爱视频_aa亚洲一区一区三区_一级黄色片在线播放_av中文精品无码在线不卡_在线中文日韩_日韩免费_久久久精品美女 | 最新免费av在线观看_天天躁躁水汪汪人碰人_说英雄谁是英雄免费观看影视大全_丰满少妇被粗大的猛烈进出视频_亚洲综合久久精品_婷婷亚洲影院_www999久久_成人在线观看日韩 | 日本特级_天天天天做夜夜夜做_亚洲中文字幕久爱亚洲伊人_一区二区视频播放_男女边吃奶边做边爱视频_h版在线观看_国产午夜手机精彩视频_老司机精品久久 | 亚洲AV无码乱码精品国产_日韩亚射吧_四虎影视国产精品久久_最近好看中文字幕日产_欧美jjzz_精品无码人妻一区二区免费蜜桃_xxxx69在线观看_青草草在线视频 | 亚洲天堂男人的天堂_久久动漫精品_久久黄网_国产午夜小视频_一级特大毛片_欧美88888_亚洲区中文字幕_亚洲高清专区日韩精品 | 99riav国产一区二区三区_婷婷综合久久一区二区三区_天天干91_日韩欧美在线观看一区二区三区_中文字幕亚洲一区_99视频精品全部免费免费观看_久久精品国产亚洲AV网站_粗长巨龙挤进新婚少妇 | 午夜视频免费看_7788私人影院_7777精品久久久大香线蕉_曰曰摸夜夜添夜夜添高潮出水_伊人狠狠操_青青免费视频在线_色婷婷欧美在线播放内射_少妇性饥渴无码A区免费 | 欧洲免费看片尺码大_高清无码爆乳系列_亚洲福利片_chinese东北嫖妓女hd_国内精品久久久久精品97感谢的访问_xxxx国产_日日干日日摸_亚洲欧美日韩V在线播放 | 中文一区一区三区免费在线观看_日本伊人色综合网_最近更新中文字幕在线2018二_黄色片免费在线_色婷婷香蕉在线一区二区_国产女性无套免费网站_边啃奶头边躁高h裴钰莫捷_国产一级淫片s片sss毛片s级 | 另类激情五月_中文天堂在线观看视频_视频一区二区免费_久久久久蜜桃精品成人片公司_精品成人无码A片观看香草视频_亚洲3atv精品一区二区三区_午夜男人网站_国产精品浓毛一区二区三区 | 超薄丝袜足J好爽在线观看_欧美成人一区亚洲一区_亚洲AV高清一区二区三区尤物_天堂一区二区mv在线观看_麻豆视传媒官网免费观看_日韩欧美视频免费_1024国产在线在线视频_AV无码中文字幕不卡一区二区三区 | 99综合视频_综合精品欧美日韩国产在线_欧美精品久_国产精品免费麻豆入口_中文字幕二区在线观看_欧美天堂影院_不卡三区_亚洲高清无码久久成人精品 | 在线观看91精品国产麻豆_少妇p毛又多水又大又黑_超碰91人人_segui88久久综合_国产JIZZJIZZ麻豆全部免费_国产精品一区二区三区av麻_色多多污_四虎www4hv | 法国《性迷宫》在线观看_亚洲色欲天天天堂色欲网_av永久免费在线观看_JIZZ国产精品_国产精品视频三区_免费无码毛片一区二三区_风间由美久久久_黄色片av网站 | 亚洲欧洲日产国产av无码_亚洲网友自拍_永久免费的无码中文字幕_成在线人永久免费视频播放_aaa一区_日本教室三级在线看_国产成人精品大尺度在线观看_一本大道在线视频 | 亚洲最大成人av_国产精品一品二区三区在线观看_免费看a毛片_终极斗罗4第三季免费播放_国产乱码精品一区二区三区中文_四虎影院4hu_91精品国产综合久_国产男女视频在线 | 91视频免费看网站_300部国产真实乱_国产麻豆乱码精品一区二区三区_999久久久精品免费毛片_国产精品爽爽va在线观看无码_最好的2019中文大全在线观看_国产又黄又爽又色的免费视频白丝_九九视频在线观看 | 国产精品18久久久久久av小说_91高清一区_好男人资源在线www免费_久久久噜噜噜久久中文福利_日本中文字幕一级_99精品视频免费观看_免费看片源_亚洲精品国男人在线视频 | 中国老熟妇XXXXX_av日韩免费在线观看_91精品国产自产91精品_国产一级性生活_无码午夜人妻一区二区不卡视频_97超爽成人免费视频在线播放_中文字幕在线观看视频一区_国产成人综合av | 狠狠干人人干超碰_亚洲另类欧美综合久久图片区_中文字幕av高清片_国产在人线免费视频精品_yourporn国产在线精品_亚洲毛片多多影院_天天都色_免费在线观看av片 | se94se欧美_九一在线看_亚洲男女自偷自拍_日韩精品一区二区三区乱码_日韩人妻无码精品系列_天天热天天干_蜜桃免费视频_性视频1819p久久 | 久久久无码精品亚洲日韩啪啪网站_国产三级三级看三级_天堂一区人妻无码_国产成人久久精品_最近中文字幕2019视频1_思思久热_亚洲成AV人在线观看成年美女_日韩少妇内射免费播放18禁裸乳 | 最近国产中文字幕_av在线免费播_亚洲裸男gv网站_www黄色毛片_四虎现在的网址是什么_欧美国产精品久久久乱码_亚洲一区二区三区四区在线免费观看_av美女网 | 三级网站免费观看_欧美乱妇高清无乱码免费_一天av在线高清免费观看_国产亚洲一区字幕_高清视频一区二区三区_成人福利片在线_久久这里只精品_久久精品国产99精品国产亚洲性色 | 91少妇丨porny丨_中文字幕av一区二区_亚洲精品视频三区_骚妇内射中岀群交_欧美久久大片_欧美日本日韩aⅴ在线视频_国产91久久久久蜜臀青青天草二_97色伦婷婷综合色情网 | 亚洲国产一区在线_日韩久久久一区二区_99久久国产综合精品五月天_h视频在线观看网站_91精品啪在线观看国产日本_不卡无在线一区二区三区_亚洲色WWW永久网站_毛片在线看看 | 一级黄色绿像片_曰韩精品无码_日本真人啪啪免费无遮挡_欧美一区二区久久久_亚洲精品92内射_乱子伦av无码中文字幕_视频,国产成人精品日本亚洲18_水莓100完全国产免费 | 久久精品国产9久久综合_午夜一级片_99小视频_国产高清av在线播放_久久人久久_2021精品国产自在现线_亚洲精品伦理熟女国产一区二区_最新在线国产 | 中国熟妇色xxxxx老妇_东京热无码一区二区三区av_女人自慰喷水高清播放_超碰在线人人干_国产午夜大地久久_麻豆爽爽妓女国产99RE小说_美女视频无遮挡永久网站_精品视频免费在线观看 | 人妻互换精品一区二区_一区二区亚洲精品国产_久久在线_一本色道久久综合狠狠躁的番外_av中文字幕网站_www.xxx久久_成本大片免费播放网站_妖精森林的救世主动漫在线观看 | 亚洲精品成人无限看_亚洲精华液_国产剧情素人搭讪在线_日本久久高清一区二区三区毛片_国产一区高清_黄秋生伊波拉病毒_亚洲国产成人精品久久一区二区_中国av中文字幕 | 野花社区无码HD在线播放_最新的中文字幕_国产私拍精品88福利视频_黄色片在线观看网址_蜜桃成人在线视频_九色在线_青青草污_久久精品欧美 |