第一范文网 - 专业文章范例文档资料分享平台

MODBUS通讯+C语言源代码 - 图文 

来源:用户分享 时间:2025/5/18 14:49:29 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

/*********************************************************************************/

/*函数名称: strmcpy() *输入参数: 共 个参数; *输出参数: 共 个参数; *返回值:

*需储存的参数: 共 个参数; *功能介绍:

(1)字符数组拷贝; *修改日志:

*[2006-3-6 17:07] Ver. 1.00 开始编写; 完成; /* */ /*********************************************************************************/

void strmcpy(unsigned char dest[], unsigned char src[], int count) {

int i;

for(i = 0; i < count; i ++) {

dest[i] = src[i]; }

dest[i] = '\\0'; }

/*****************************************************************************/

/*********************************************************************************/

/*函数名称: bitmcpy() *输入参数: 共 个参数; *输出参数: 共 个参数; *返回值:

*需储存的参数: 共 个参数; *功能介绍:

(1)开关量数组拷贝; *修改日志:

*[2006-3-7 14:59] Ver. 1.00

开始编写; 完成; /* */ /*********************************************************************************/

void bitmcpy(int dest[], int src[], int count) {

int i;

for(i = 0; i < count; i ++) {

dest[i] = src[i]; } }

/*****************************************************************************/

/*********************************************************************************/

/*函数名称: strmcmp() *输入参数: 共 个参数; *输出参数: 共 个参数; *返回值:

*需储存的参数: 共 个参数; *功能介绍:

(1)字符数组比较;相同则返回0,不相同则返回1; *修改日志:

*[2006-3-6 17:41] Ver. 1.00 开始编写; 完成; /* */ /*********************************************************************************/

int strmcmp(unsigned char str1[], unsigned char str2[], int count) {

int i;

for(i = 0; i < count; i ++) {

if(str1[i] != str2[i]) {

return 1; } }

return 0; }

/*****************************************************************************/

/*********************************************************************************/

/*函数名称: Datamcmp() *输入参数: 共 个参数; *输出参数: 共 个参数; *返回值:

*需储存的参数: 共 个参数; *功能介绍:

(1)浮点数组比较;相同则返回0,不相同则返回1; *修改日志:

*[2006-3-6 18:05] Ver. 1.00 开始编写; 完成; *[2006-3-9 13:52]

加了一层括号,以前是错误的 if(!((data1[i] - data2[i] < 0.0001) && (data1[i] - data2[i] > -0.0001))) /* */ /*********************************************************************************/

int Datamcmp(float data1[], float data2[], int count) {

int i;

for(i = 0; i < count; i ++) {

if(!((data1[i] - data2[i] < 0.0001) && (data1[i] - data2[i] > -0.0001)))

{

return 1; } }

return 0; }

/*****************************************************************************/

/*********************************************************************************/

/*函数名称: Bitmcmp() *输入参数: 共 个参数; *输出参数: 共 个参数; *返回值:

*需储存的参数: 共 个参数; *功能介绍:

(1)开关量数组比较;相同则返回0,不相同则返回1; *修改日志:

*[2006-3-6 18:10] Ver. 1.00 开始编写; 完成; /* */ /*********************************************************************************/

int Bitmcmp(int data1[], int data2[], int count) {

int i;

for(i = 0; i < count; i ++) {

if(data1[i] != data2[i]) {

return 1; } }

return 0; }

/********************************************************************

*********/

/*********************************************************************************/

/*函数名称: GetCRC16() *输入参数: 共 个参数; *输出参数: 共 个参数; *返回值:

*需储存的参数: 共 个参数; *功能介绍:

(1)CRC16校验; 返回校验码; *修改日志:

*[2005-11-28 16:40] Ver. 1.00 开始编写; 完成; /* */ /*********************************************************************************/

unsigned short GetCRC16(unsigned char *puchMsg, unsigned short usDataLen) {

/* CRC 高位字节值表 */

unsigned char auchCRCHi[256] = {

0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41,

搜索更多关于: MODBUS通讯+C语言源代码 - 图文  的文档
MODBUS通讯+C语言源代码 - 图文 .doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c80bt478kp07b3ef97wu606i7k4ff8500zdy_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top