无码精品人妻一区二区三区入口-无码精品人妻一区二区三区夜夜嗨-无码精品人妻一区二区三区颖A片-无码精品日本一区二区桃花岛-无码精品网站-无码精品一

qinchenglim
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 1219 個(gè)
工控威望: 1320 點(diǎn)
下載積分: 3938 分
在線時(shí)間: 739(小時(shí))
注冊時(shí)間: 2009-06-09
最后登錄: 2024-12-05
查看qinchenglim的 主題 / 回貼
樓主  發(fā)表于: 2014-07-16 18:37
現(xiàn)在用到一款溫控器,用RS-232通訊讀取當(dāng)前溫度值。用PLC發(fā)送讀取指令的時(shí)候要發(fā)送FCS效驗(yàn)碼,以前沒有用過這樣的效驗(yàn)方式,不知道怎么計(jì)算,請用過的朋友分享一下計(jì)算方法。先謝謝了!
比如發(fā)送數(shù)據(jù) H4030 H3030 H3131 ,它的FCS效驗(yàn)碼是多少?怎么算的?再次感謝大家。
yamqq
雅馬哈,愛普生,電裝機(jī)器人。
級(jí)別: 網(wǎng)絡(luò)英雄

精華主題: 0
發(fā)帖數(shù)量: 1717 個(gè)
工控威望: 5539 點(diǎn)
下載積分: 24618 分
在線時(shí)間: 300(小時(shí))
注冊時(shí)間: 2008-05-05
最后登錄: 2024-12-24
查看yamqq的 主題 / 回貼
1樓  發(fā)表于: 2014-07-16 18:59
#include "stdafx.h"   char *fnFCS(const char *pstr,int iCount,char *pFCS)    //定義FCS校驗(yàn)函數(shù) {   if(pstr==NULL||pFCS==NULL)       //如果指針為null return NULL;           //返回NULL char ch=*pstr;          //定義字符變量并賦初值 for(int i=1;i<iCount;i++)        //循環(huán)iCount次 {     ch^=*(pstr+i);         //異或運(yùn)算 }   char ct=ch>>4;            //取異或結(jié)果的高四位 if(ct>9)            //轉(zhuǎn)為ASCII碼 ct+='A'-10;            else    ct+='0';  *pFCS=ct; ct=ch&0x0F;           //取異或結(jié)果的低四位 if(ct>9)             //轉(zhuǎn)為ASCII碼 ct+='A'-10;  else    ct+='0';   *(pFCS+1)=ct;    return pFCS;           //返回校驗(yàn)值 }    int main(int argc, char* argv[])       //定義主函數(shù) {  char c,str[100]="";         //定義變量  int i=0;           //定義變量  char jyTemp[2];         //定義變量  printf("請輸入要校驗(yàn)的字符串:\n");     //要求輸入字符串   while((str=getchar())!='\n')       //輸入字符串,直到遇到回車符  {   i+=1;   fnFCS(str,i,&jyTemp[0]);      //調(diào)用FCS計(jì)算函數(shù)  }   printf("以上字符串的FCS校驗(yàn)是:'%c%c'。\n",jyTemp[0],jyTemp[1]);  //輸出結(jié)果  return 0; }
本帖最近評(píng)分記錄:
  • 下載積分:+2(qinchenglim) 熱心助人!
  • 這個(gè)人很懶,什么也沒有留下!
    qinchenglim
    級(jí)別: 論壇先鋒
    精華主題: 0
    發(fā)帖數(shù)量: 1219 個(gè)
    工控威望: 1320 點(diǎn)
    下載積分: 3938 分
    在線時(shí)間: 739(小時(shí))
    注冊時(shí)間: 2009-06-09
    最后登錄: 2024-12-05
    查看qinchenglim的 主題 / 回貼
    2樓  發(fā)表于: 2014-07-17 08:09
    引用
    引用第1樓yamqq于2014-07-16 18:59發(fā)表的  :
    #include "stdafx.h"   char *fnFCS(const char *pstr,int iCount,char *pFCS)    //定義FCS校驗(yàn)函數(shù) {   if(pstr==NULL||pFCS==NULL)       //如果指針為null return NULL;           //返回NULL char ch=*pstr;          //定義字符變量并賦初值 for(int i=1;i<iCount;i++)        //循環(huán)iCount次 {     ch^=*(pstr+i);         //異或運(yùn)算 }   char ct=ch>>4;            //取異或結(jié)果的高四位 if(ct>9)            //轉(zhuǎn)為ASCII碼 ct+='A'-10;            else    ct+='0';  *pFCS=ct; ct=ch&0x0F;           //取異或結(jié)果的低四位 if(ct>9)             //轉(zhuǎn)為ASCII碼 ct+='A'-10;  else    ct+='0';   *(pFCS+1)=ct;    return pFCS;           //返回校驗(yàn)值 }    int main(int argc, char* argv[])       //定義主函數(shù) {  char c,str[100]="";         //定義變量  int i=0;           //定義變量  char jyTemp[2];         //定義變量  printf("請輸入要校驗(yàn)的字符串:\n");     //要求輸入字符串   while((str=getchar())!='\n')       //輸入字符串,直到遇到回車符  {   i+=1;   fnFCS(str,i,&jyTemp[0]);      //調(diào)用FCS計(jì)算函數(shù)  }   printf("以上字符串的FCS校驗(yàn)是:'%c%c'。\n",jyTemp[0],jyTemp[1]);  //輸出結(jié)果  return 0; }

    一樓的朋友能具體解釋一下FCS的計(jì)算原理嗎?這么多高級(jí)語言看著有點(diǎn)眼暈了
    qinchenglim
    級(jí)別: 論壇先鋒
    精華主題: 0
    發(fā)帖數(shù)量: 1219 個(gè)
    工控威望: 1320 點(diǎn)
    下載積分: 3938 分
    在線時(shí)間: 739(小時(shí))
    注冊時(shí)間: 2009-06-09
    最后登錄: 2024-12-05
    查看qinchenglim的 主題 / 回貼
    3樓  發(fā)表于: 2014-07-18 07:35
    自己頂一下,別沉底了

    主站蜘蛛池模板: 婷婷综合导航 | 激情综合婷婷丁香五月合色字幕 | 91精品久久久久久久久无码 | 一区小说区中文字幕 | 日日夜夜精品视频 | 亚洲国产成人久久综合 | 成人日韩熟女高清视频一区 | 国产精品有码专区囯产精品久久精品 | 美女性生活片 | 免费人妻无码不卡中文字幕系 | 欧美精品亚洲精品日韩 | 午夜伦理| 爆乳jk美女脱内衣裸体网站 | 国产亚洲欧美日韩综合一区 | 久久久久精品国产亚洲 | 999久久久无码国产精品 | 四虎影视在线视频大全免费观看 | 一夲道DVD高清无码 一夲道人妻熟女AV网站 | 国产精品不卡一区二区三区四区 | 国产麻豆精品一区二区三区 | 日韩a人毛片精品无人区乱码 | 免费观看的成年网站在线播放 | 少妇无码吹潮久久精品AV网站 | 日韩黄色大片欧美 | 国产成a人亚洲精v品无码樱花 | 东京热av一区二区 | 日韩一区二区三区视频在线观看 | 国产午夜精品一区二区三区老 | 秋秋影视午夜福利高清 | 爱v在线一区二区国产精品 爱爱帝国亚洲一区二区三区 | 永久免费aⅴ无码网站在线观看 | 久久久亚洲av无码精品一区 | 97一期涩涩97片久久久久久久 | 国产伦精品免编号公布 | 中文字幕亚洲码在线 | 四虎影视成人精品永久免费观看 | 无套中出丰满人妻无码 | 国产视频一区二区三区四区五区 | 99久久精品一区二区三区 | 国产成人麻豆精品午夜福利在 | 精品无码国产自产在线观看欧美1区2区3区 |