资源简介
组态王 modbus协议 驱动 vc++
代码片段和文件信息
/************************************************
Copyright(c) 2006 AsiaControl Company
All rights reserved.
File Name: Check.cpp
Class Name: CCheck
Brief: Check functions class
History:
Date Author Remarks
Aug. 2006 Develop Dep.1
************************************************/
#include “stdafx.h“
#include “Check.h“
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CCheck::CCheck()
{
}
CCheck::~CCheck()
{
}
/****************************************************************************
* Name
LRC_Check
* Type
public
* Function
Sum up data in buffer by byte then inverse the result and add 1 to it
* Return Value
one-byte data.
* Parameters
buf
[in] the pointer to data buffer
nLen
[in] the length of data
*****************************************************************************/
BYTE CCheck::LRC_Check(BYTE *buf int nLen)
{
ASSERT(buf != NULL);
if (buf == NULL)
{
return 0;
}
BYTE checknum=0;
for (int i=0;i {
checknum+=buf[i];
}
checknum=~checknum;
checknum+=1;
checknum&=0xff;
return checknum;
}
/****************************************************************************
* Name
Sum_Check
* Type
public
* Function
Sum up data in buffer by byte and get a low 8-bit value of the result
* Return Value
one-byte data.
* Parameters
buf
[in] the pointer to data buffer
nLen
[in] the length of data
*****************************************************************************/
BYTE CCheck::Sum_Check(BYTE *buf int nLen)
{
ASSERT(buf != NULL);
if (buf == NULL)
{
return 0;
}
BYTE checkSum = 0;
for (int i=0; i {
checkSum += (BYTE)buf[i];
}
return checkSum;
}
/****************************************************************************
* Name
Xor_Check
* Type
public
* Function
XOR(exclusive or) data in buffer by byte and get a low 8-bit value of the result
* Return Value
one-byte data.
* Parameters
buf
[in] the pointer to data buffer
nLen
[in] the length of data
*****************************************************************************/
BYTE CCheck::Xor_Check(BYTE *buf int nLen)
{
ASSERT(buf != NULL);
if (buf == NULL)
{
return 0;
}
BYTE checkSum = (BYTE)*buf;
for(int i=1; i {
checkSum ^= (BYTE)buf[i];
}
return checkSum;
}
//2^bitWidth - 1. e.g. widthMask(16) = 0xFFFF.
inline long widthMask(int bitWidth)
{
return (((1L << (bitWidth - 1)) - 1L) << 1) | 1L;
}
//inverse the low itnumbit For example reflect(0x3e233) = 0x3e26
inline long reflect(long value int numBits) {
long temp = value;
for (int i =
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2148 2009-06-25 11:14 CommHN\atomce.h
文件 7335 2009-06-25 11:14 CommHN\Check.cpp
文件 1131 2009-06-25 11:14 CommHN\Check.h
文件 2710 2009-06-25 11:14 CommHN\CommHN.cpp
文件 266 2009-06-25 11:14 CommHN\CommHN.def
文件 2566 2009-06-25 11:14 CommHN\CommHN.h
文件 183296 2009-07-22 15:18 CommHN\CommHN.ncb
文件 3183 2009-06-25 11:14 CommHN\CommHN.rc
文件 398 2009-06-25 11:14 CommHN\CommHN.rc2
文件 1315 2009-06-25 11:14 CommHN\CommHN.sln
..A..H. 9728 2009-07-22 15:18 CommHN\CommHN.suo
文件 10599 2009-06-25 11:14 CommHN\CommHN.vcproj
文件 20338 2009-06-25 11:14 CommHN\CommHNPro.cpp
文件 3156 2009-06-25 11:14 CommHN\CommHNPro.h
文件 5061 2009-06-25 11:14 CommHN\DataType.h
文件 5429 2009-07-22 15:05 CommHN\Debug\BuildLog.htm
文件 13579 2009-07-22 15:05 CommHN\Debug\Check.obj
文件 149 2009-07-02 15:56 CommHN\Debug\CommHN.des
文件 1667072 2009-07-22 15:05 CommHN\Debug\CommHN.dll
文件 879 2009-07-22 15:05 CommHN\Debug\CommHN.exp
文件 4273408 2009-07-22 15:05 CommHN\Debug\CommHN.ilk
文件 1522 2009-07-22 15:05 CommHN\Debug\CommHN.lib
文件 13956 2009-07-22 15:05 CommHN\Debug\CommHN.obj
文件 12517376 2009-07-22 15:05 CommHN\Debug\CommHN.pch
文件 6073344 2009-07-22 15:05 CommHN\Debug\CommHN.pdb
文件 10728 2009-07-22 15:05 CommHN\Debug\CommHN.res
文件 106681 2009-07-22 15:05 CommHN\Debug\CommHNPro.obj
文件 105937 2009-07-22 15:05 CommHN\Debug\Debug.obj
文件 97542 2009-07-22 15:05 CommHN\Debug\Devba
文件 151604 2009-07-22 15:05 CommHN\Debug\DevCommHN.obj
............此处省略60个文件信息
相关资源
- STM32驱动NRF24L01的视频传输
- C++预装驱动工程源码
- 基于STM32的LED显示控制板卡驱动及GU
- FPGA nios驱动LCD12864实现uart以及菜单功
- 测试驱动嵌入式C语言开发中英文合集
- SMT32电机驱动(舵机和电机)
- ADS112C04 16位AD TM4模拟IIC驱动
- STM32 modbus协议 从机程序
- STM32上驱动基于IIC协议的OLED 128664 0.
- Matrix Vision相机驱动 MV
- SLE4442驱动源码
- AD7683驱动程序
- 51单片机驱动ADC0808电路图C51及汇编程
- win sockket全局代理驱动(c++ spi)
- STM32驱动MCP3421 C语言程序
- MSP430G2553驱动数码管
- 2.13寸电子墨水屏驱动).zip
- Windows文件系统过滤驱动开发教程(第
- CAN总线源代码c语言
- cs5532 的驱动程序C语言
- 如何用C语言编写步进电机驱动程序
- 40G郁金香VC++游戏辅助制作视频教程如
- SuperPid修改进程PID工具驱动级.别名.
- c++ c 数据结构 课程设计 学生成绩管理
- NFC驱动代码PN532
- BS8116A驱动代码
- C语言大作业 菜单驱动的学生成绩管理
- SED1520 C语言驱动程序
- 组态王源代码
- CH422原厂C语言驱动
评论
共有 条评论