



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Private Function CRC16(data() As Byte) As String Dim CRC16Lo As Byte, CRC16Hi As Byte CRC寄存器 Dim CL As Byte, CH As Byte 多项式码&HA001 Dim CRCLo As String, CRCHi As String Dim SaveHi As Byte, SaveLo As Byte Dim i As Integer Dim Flag As Integer CRC16Lo = &HFF CRC16Hi = &HFF CL = &H1 CH = &HA0 For i = 0 To UBound(data) CRC16Lo = CRC16Lo Xor data(i) 每一个数据与CRC寄存器进行异或 For Flag = 0 To 7 SaveHi = CRC16Hi SaveLo = CRC16Lo CRC16Hi = CRC16Hi 2 高位右移一位 CRC16Lo = CRC16Lo 2 低位右移一位 If (SaveHi And &H1) = &H1) Then 如果高位字节最后一位为1 CRC16Lo = CRC16Lo Or &H80 否则低位字节右移后前面补1 End If 否则自动补0 If (SaveLo And &H1) = &H1) Then 如果LSB为1,则与多项式码进行异或 CRC16Hi = CRC16Hi Xor CH CRC16Lo = CRC16Lo Xor CL End If Next Flag Next i If Len(Hex(CRC16Hi) = 1 Then CRCHi = 0 + Hex(CRC16Hi) Else CRCHi = Hex(CRC16Hi) End If If Len(Hex(CRC16Lo) = 1 Then CRCLo = 0 + Hex(CRC16Lo) Else CRCLo = Hex(CRC16Lo) End If CRC16 = CRCLo + CRCHiEnd Function 0|评论2009-6-12 11:19vlaoda|十级Private Sub Command1_Click()Dim 数据() As Byte Dim 校验码 As IntegerDim 字节数 As LongDim 低位 As Boolean校验码 = -1数据 = StrConv(Text1, vbFromUnicode)字节数 = UBound(数据)For i = 0 To 字节数低位 = ture For j = 1 To 8 If 低位 Then 校验码 = 校验码 Xor 数据(i) 低位 = 数据(i) And 1 数据(i) = 数据(i) 2 Next jNext iText2 = Hex(校验码)End Sub算法大概就是这样了方法 2form1-form8,8个窗体,一个模块form6Private Sub Command1_Click()Dim CRC As ByteDim s1 As StringDim lens1 As IntegerDim d() As Byte 待传输数据Dim sd() As String显示的字符Text2.Text = s1 = Replace(Text1.Text, , )lens1 = Len(s1)If lens1 Mod 2 0 Or lens1 47 And sd(i) 64 And sd(i) 96 And sd(i) 103) ThenElseMsgBox 数据输入有误!, 64, 信息提示! Text1.SetFocusExit SubEnd IfNext iReDim d(lens1 2) As ByteFor i = 0 To (lens1 2) - 1 Step 2d(i) = &H & Mid(s1, i * 2 + 1, 2)Next iCRC = d(3)For i = 4 To (lens1 2 - 1)CRC = CRC Xor d(i)Next id(lens1 2) = CRCReDim sd(lens1 2) As StringFor i = 0 To (lens1 2)If Val(d(i) 16 Thensd(i) = 0 & Hex(d(i)Elsesd(i) = Hex(d(i)End IfIf Text2.Text = ThenText2.Text = sd(i)ElseText2.Text = Text2.Text & & sd(i)End IfNext iLabel5.Caption = & lens1 2Label7.Caption = & lens1 2 + 1End SubPrivate Sub Command2_Click()Text1.Text = End SubPrivate Sub Command3_Click()Label5.Caption = & 0Label7.Caption = & 0End SubPrivate Sub Command7_Click()Unload MeForm1.ShowEnd SubPrivate Sub Command8_Click()EndEnd SubPrivate Sub Form_Load()Text1.Text = Text2.Text = Label5.Caption = & 0Label7.Caption = & 0Text3.Text = AA BB 05 FA 00 00 0C 52 A4 & Chr(13) + Chr(10) & _AA BB 07 F8 00 01 0C 00 04 00 F1 & Chr(13) + Chr(10) & _AA BB 05 FA 00 01 0C EC 1BText4.Text = AA BB 04 FB 00 00 0D F6 & Chr(13) + Chr(10) & _AA BB 09 F6 00 01 0D 00 XX XX XX XX CRCText5.Text = AA BB 08 F7 00 00 0E XX XX XX XX CRC & Chr(13) + Chr(10) & _AA BB 06 F9 00 01 0E 00 08 FEText6.Text = AA BB 0C F3 00 00 12 60 01 29 03 29 03 29 03 AA & Chr(13) + Chr(10) & _AA BB 0C F3 00 00 12 60 01 00 21 64 36 62 17 86 & Chr(13) + Chr(10) & _AA BB 05 FA 00 01 12 E7 0E & Chr(13) + Chr(10) & _AA BB 05 FA 00 01 12 00 E9Text7.Text = AA BB 05 FA 00 00 16 01 ED & Chr(13) + Chr(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年阿里5次面试碰壁100天深造-Jetpack架构组件从入门到精通险获腾讯年薪45w+offer
- 2024-2025学年下学期高一生物人教版期末必刷常考题之人类遗传病
- 建筑施工特种作业-建筑起重机械安装拆卸工(物料提升机)真题库-4
- 国家开放大学电大《资源与运营管理》机考终结性2套真题题库及答案9
- 色彩与心理题目及答案
- 软考信管题目及答案
- 11 1 用样本估计总体-2026版53高考数学总复习A版精炼
- 5 2 平面向量的数量积及其应用-高考数学真题分类 十年高考
- 2023-2024学年河南省许昌市高二下学期7月期末教学质量检测数学试题(解析版)
- 2024-2025学年陕西省西安市部分学校联考高一上学期期末考试语文试题(解析版)
- 太阳系中的有趣科学学习通超星期末考试答案章节答案2024年
- 上海市幼儿园幼小衔接活动指导意见(修订稿)
- 培训学校收费和退费管理制度
- 法社会学教程(第三版)教学
- 国内外高等教育教材比较研究课题
- 浙江省绍兴市诸暨市2023-2024学年五年级下学期期末数学试卷
- 煤矿调度智能化培训课件
- 基于PLC的啤酒发酵自动控制系统
- 重庆市沙坪坝区2022-2023学年八年级下学期期末英语试题
- 思辨与创新智慧树知到期末考试答案章节答案2024年复旦大学
- 手术室-标准侧卧位摆放
评论
0/150
提交评论