📄 unit1.~cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "stdio.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
#define INIT 0x0000
#define POLINOMIAL 0x1021
unsigned short calc_crc(unsigned short crc,unsigned short ch);
unsigned short GetCRC(unsigned char *p,unsigned short n);
unsigned short calc_crc(unsigned short crc,unsigned short ch)
{
unsigned short i;
ch<<=8;
for(i=8;i>0;i--){
if ((ch ^crc)&0x8000){
crc=(crc<<1)^POLINOMIAL;
}
else {
crc<<=1;
}
ch<<=1;
}
return crc;
}
unsigned short GetCRC(unsigned char *p,unsigned short n)
{
unsigned char ch;
unsigned short i;
unsigned short crc=INIT;
for(i=0;i<n;i++){
ch=*p++;
crc=calc_crc(crc,(unsigned short)ch);
}
return crc;
}
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
/*
stx:f2h
len:00 08h;
text(C0032400)
*/
//AnsiString str =Edit1->Text;
//0xF2,0x00,0x08,0x43,0x30,0x30,0x33,0x32,0x34,0x30,0x30,0x00,0x00
// unsigned char TransCommand[13]={0xF2,0x00,0x08,0x43,0x30,0x30,0x33,0x32,0x34,0x30,0x30,0x00,0x00};
// unsigned char TransCommand[13]={0xF2,0x00,0x08,0x43,0x32,0x30,0x00,0x00,0x00,0x00,0x00};
// unsigned char TransCommand[13]={0xF2,0x00,0x08,0x43,0x41,0x30,0x00,0x00,0x00,0x00,0x00};
unsigned char TransCommand[6]={0xF2,0x00,0x03,0x43,0x49,0x42};
unsigned short TextLength =6 ;
unsigned short crc;
crc=GetCRC(TransCommand,TextLength);
TransCommand[4]=(crc>>8)&0xFF;
TransCommand[5]=crc&0xFF;
// unsigned char TransCommand[7]={0xF2,0x00,0x04,0x43,0x49,0x40,0x36};
// unsigned short TextLength = 7;
// unsigned short crc;
// crc=GetCRC(TransCommand,TextLength);
// TransCommand[5]=(crc>>8)&0xFF;
// TransCommand[6]=crc&0xFF;
Edit2->Text=crc;
return ;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -