Foxtable(狐表)用户栏目专家坐堂 → 关于串口CRC校验!


  共有2326人关注过本帖树形打印复制链接

主题:关于串口CRC校验!

帅哥哟,离线,有人找我吗?
lhpc120
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:6314 威望:0 精华:0 注册:2011/5/8 13:21:00
关于串口CRC校验!  发帖心情 Post By:2015/6/4 16:37:00 [只看该作者]

当从串口读取了一个字符串以后,如果想校验?如何校验!

」!@#33
$9

23364355151103657103

上面是例子:分别是传输过来的明文和十进制的ASCII

其中,明文里面的9位CRC校验!

其中,算法为:2+33+64+35+51+51+10 的和 的NOT(反值)  即等于9

以这种校验方法计算的方法,请问哪位大神会啊!

用win系统自带的计算机,设定为科学计算法,程序员模式中,   
十进制  
字节
[此贴子已经被作者于2015/6/4 16:36:54编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lhpc120
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:6314 威望:0 精华:0 注册:2011/5/8 13:21:00
  发帖心情 Post By:2015/6/4 16:39:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:111.png
图片点击可在新窗口打开查看
计算器图片
[此贴子已经被作者于2015/6/4 16:39:16编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lhpc120
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:6314 威望:0 精华:0 注册:2011/5/8 13:21:00
  发帖心情 Post By:2015/6/4 16:53:00 [只看该作者]

没人理吗?

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/4 17:04:00 [只看该作者]

Dim str As String = "23364355151103657103"
str = 0 & str.SubString(0, 13)
Dim sum As Double = 0
For i As Integer = 0 To str.Length - 1 Step 2
    Dim s As String = str.SubString(i, 2)
    sum += val(s)
Next
msgbox(255 - sum)


 回到顶部
帅哥哟,离线,有人找我吗?
lhpc120
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:6314 威望:0 精华:0 注册:2011/5/8 13:21:00
  发帖心情 Post By:2015/6/4 17:17:00 [只看该作者]

这样不对的,如果是总和为:731呢?是不是就超出了255的复数了?那就不对啊

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/4 17:34:00 [只看该作者]

Dim str As String = "23364355151103657103"
str = 0 & str.SubString(0, 13)
Dim sum As Integer = 0
For i As Integer = 0 To str.Length - 1 Step 2
    Dim s As String = str.SubString(i, 2)
    sum += val(s)
Next
str = ""
For Each s As String In DecToBin(sum)
    str &= iif(s=0, 1, 0)
Next
msgbox(BinToDec(str))

 回到顶部