日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

DSP学习--BCC校验(异或校验)

發布時間:2025/3/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DSP学习--BCC校验(异或校验) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

檢驗值(LRC) Data 部分數據各字節異或值。
參看:BCC校驗(異或校驗)在線計算

#include <stdio.h> #include <string.h> #include <stdint.h>static void strToHex(char* pbDest, char* pbSrc, int nLen, int* frameLen) {uint32_t tmpLen = 0;char h1, h2;char s1, s2;char tmppbSrc[65535] = { 0 };for (int j = 0; j < nLen; j++){if (pbSrc[j] != '\0'){if (pbSrc[j] != ' '){tmppbSrc[tmpLen] = pbSrc[j];tmpLen++;}if (pbSrc[j] == '\n'){pbSrc[j] = '\0';}}else{break;}}*frameLen = tmpLen / 2;for (uint32_t i = 0; i < tmpLen / 2; i++){h1 = tmppbSrc[2 * i];h2 = tmppbSrc[2 * i + 1];s1 = toupper(h1) - 0x30;if (s1 > 9){s1 -= 7;}s2 = toupper(h2) - 0x30;if (s2 > 9){s2 -= 7;}pbDest[i] = s1 * 16 + s2;} }static void check_bit(uint8_t* Databuf, uint32_t frameLen, uint8_t* CheckBit) {uint8_t data_check = 0, cfgTail = 0;//uint32_t len = 0;//memcpy(&len, &Databuf[4], 1);//if ((len - 1) == frameLen)//{for (uint32_t i = 0; i < frameLen; i++){cfgTail = cfgTail ^ Databuf[i];}data_check = cfgTail;printf("校驗碼為: %02X\n", data_check);sprintf(CheckBit, "%c%02X", ' ', data_check);printf("\n\n\n[帶校驗碼數據已保存到 CRC.txt]\n");//}//else//{// printf("[ERROR: Data Len is incorrect!!]\n");// getchar();//} }static int Get_check_bit(void) {char CRCData[65536] = { 0 };char CRCData1[65536] = { 0 };char CheckBit[20] = { 0 };FILE* file = NULL;file = fopen ("CRC.txt", "a+");if (NULL == file){printf("file open fault!\n");return -1;}if (fgets(CRCData, 65536, file) != NULL){if (fgets(CRCData1, 65536, file) != NULL){if (strcmp(CRCData1, "\n") == 0){printf("[ERROR: 需要校準的數據,換行太多了!]\n");getchar();}if (strcmp(CRCData1, "Check Out Data:\n") == 0){printf("[ERROR: 數據已經校準了!]\n");getchar();}}int frameLen = 0;char buf[65535] = { 0 };strToHex(buf, CRCData, sizeof(buf), &frameLen);check_bit(buf, frameLen, CheckBit);CRCData[frameLen * 3 - 1] = '\0';}strcat(CRCData, CheckBit);fputs("\nCheck Out Data:\n", file);fputs(CRCData, file);fclose(file);return 0; }int main(int argc, char* argv[]) {printf("[注意: CRC.txt 文件內不能包含校驗碼]\n\n\n");Get_check_bit();getchar();return 0; }

測試:

CRC.txt 內容:30 01 03 Check Out Data: 30 01 03 32

總結

以上是生活随笔為你收集整理的DSP学习--BCC校验(异或校验)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 激情久久网站 | 长腿校花无力呻吟娇喘的视频 | 色天使亚洲 | 特级西西www444人体聚色 | 欧美一级免费片 | a天堂视频 | 91精品国自产 | 久青草视频 | 日本视频在线免费 | 天天草天天射 | 欧美系列在线观看 | 日本黄页视频 | 91禁在线看 | 欧美色图小说 | 国产成人一区二区三区电影 | 理论在线视频 | 免费在线看黄的网站 | 九九久久视频 | 人妻丰满熟妇av无码区免 | 日韩91av| 精品一级少妇久久久久久久 | 亚洲欧美一区二区精品久久久 | 中文字幕在线导航 | 日本不卡在线视频 | 黄色的网站免费看 | 国产主播自拍av | 美女被啪羞羞粉色视频 | 国产欧美一区二区三区在线看蜜臂 | 欧美成人免费在线观看视频 | 日本视频免费观看 | 欧美日韩一区二区视频观看 | 成人精品一区二区 | av漫画在线观看 | 亚洲综合精品视频 | 91日本视频 | 91全免费 | 成人漫画网站 | 亚洲一区二区精品在线观看 | 国产欧美日韩综合精品一区二区 | 国产最爽的乱淫视频国语对白 | 欧美另类自拍 | 国产欧美网站 | 麻豆91精品91久久久 | 国产91免费视频 | 久久久久久国产精品视频 | 欧美日本高清视频 | 成人毛片网站 | 少妇粉嫩小泬喷水视频www | 国产一级黄 | 中文字幕人妻一区二 | 免费手机av | 伊人中文字幕在线 | 午夜国产福利在线观看 | 91精品国产综合久久福利软件 | 亚洲男人在线 | 国产精品福利影院 | 国产乱码一区二区三区在线观看 | 日本少妇色 | 一本大道av | 欧美手机在线 | 亚洲av成人精品毛片 | 亚洲少妇一区二区三区 | 亚洲熟女少妇一区二区 | 国产91在线观看丝袜 | 在线日韩 | 亚洲成人av片 | 欧美日韩二区三区 | 性感美女高潮 | 免费做a爰片77777 | 三级国产在线观看 | 国产小视频免费观看 | 亚洲乱熟女一区二区三区小说 | 少妇久久精品 | 亚洲天堂一区在线观看 | 爱情岛亚洲品质自拍极速福利网站 | 亚洲精品2区| 毛茸茸free性熟hd | 欧美三个黑人玩3p | 国产精品视频123 | 亚洲欧美在线视频观看 | 国产精品16p| 免费成人在线观看 | 老子影院午夜伦不卡大全 | 69xx网站| 少妇喷白浆 | www.蜜臀| 欧美日韩高清在线观看 | 日本黄色免费 | 日韩中文字幕一区二区三区四区 | 人妻丰满熟妇岳av无码区hd | 人人妻人人澡人人爽精品日本 | 成人免费毛片aaaaaa片 | 久久亚洲第一 | 少妇又色又爽又黄的视频 | www.色com| 黄色片网站免费在线观看 | 亚洲v日本 | 亚洲成人第一区 | 国产小视频在线观看免费 |