久久久国产一区-久久久国产一区二区三区丝-久久久国产一区二区三区丝袜-久久久国产综合视频-久久久精品白浆无码-久久久精品波多野结衣

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

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

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

    主站蜘蛛池模板: 精品欧洲av无码一区二区三区 | 日本x69中国| aⅴ三级综合在线观看 | 亚洲精品无码国产 | 亚洲成人国产精品 | 国产欧美va欧美va香蕉在线观看 | 日韩精品一卡2卡3卡4卡5卡 | 亚洲天堂涩涩 | 亚洲精品国产一区二区在线 | 91福利国产在线观看香蕉 | 少妇午夜福利一区二区三区 | 丁香婷婷色五月激情综合深爱 | 亚洲美女视频高清在线看 | 亚洲精品无码成人A片色欲 亚洲精品无码成人A片在 | 亚洲蜜桃麻豆成人av在线 | 九九热在线视频观看这里只有精品 | 国产91精品不卡在线 | 国产一区二区最新免费视频 | 国产又硬又粗进去好爽A片软件 | 亚洲欧美洲成人一区二区三区 | 狼人大香伊蕉国产WWW亚洲 | 麻豆最新免费版 | 日本在线观看一区二区三区 | 欧美激情精品久久久久久久 | 久久久国产99久久国产首页 | 国产成人a区在线观看视频 国产成人a人亚洲精品无码 | 中文字幕 欧美精品 第1页 | 日韩欧美亚洲每日更新在线 | 天天综合免费精品7799视频 | 欧美日韩中文在线字幕视频 | 亚色在线视频 | 亚洲午夜精品久久久久 | 91日韩天堂一区二区二区 | 精品人妻一区二区三区 | 视频列表--国产 | 中文字幕奈奈美被公侵犯 | 妖精视频一区二区三区亚洲 | 欧美在线观看日韩欧美在线观看 | 国产无套精品久久久久久辛芷蕾 | 国产欧美成人xxx视频 | 性夜色噜噜噜网站2258KK |