生成ASICII码用于命令反馈

简介: 生成ASICII码用于命令反馈

说明

Sprintf 功能 把格式化的数据写入某个字符串缓冲区。

头文件

stdio.h

原型

int sprintf( char buffer, const charformat, [ argument] … );

转换字符

%% 印出百分比符号,不转换。

%c 整数转成对应的 ASCII 字元。

%d 整数转成十进位。

%f 倍精确度数字转成浮点数。

%o 整数转成八进位。

%s 整数转成字符串。

%x 整数转成小写十六进位。

%X 整数转成大写十六进位


代码


void SendRepayPacket(char*replay_cmd,unsigned int pCmdData)
{ unsignedchar pPacket[20];
unsignedshort wdLen = 0;
     unsignedchar btCheckSum = 0;
     unsignedchar i;
     unsignedchar pCmdData_buffer[20];
     unsignedshort sendBufferLen = 0;
     sprintf(pCmdData_buffer,"%s,%d,",replay_cmd,pCmdData);
     wdLen= strlen(pCmdData_buffer);
     pPacket[0]= DALI_STX;
     pPacket[1]= (wdLen + 1) & 0xFF;
     pPacket[2]= (wdLen + 1) >> 8;
     pPacket[3]= Address;
     for(i= 0;i<wdLen;i++)
     {
               pPacket[4+ i] = pCmdData_buffer[i];
     }       
     for(i=0;i< wdLen;i++)
     {
               btCheckSum+= pCmdData_buffer[i];
     }
     pPacket[4+ wdLen] = btCheckSum;
     pPacket[5+ wdLen] = DALI_ETX;
     sendBufferLen= wdLen + 5 + 1;
     MAX3485_UART_SendData(pPacket,sendBufferLen);
}



void SendRepayPacket_2(char*replay_cmd,unsigned int pCmdData,unsigned int pCmdData1)
{ unsignedchar pPacket[20];
unsignedshort wdLen = 0;
     unsignedchar btCheckSum = 0;
     unsignedchar i;
     unsignedchar pCmdData_buffer[20];
     unsignedshort sendBufferLen = 0;
     sprintf(pCmdData_buffer,"%s,%d,%d,",replay_cmd,pCmdData,pCmdData1);
     wdLen= strlen(pCmdData_buffer);
     pPacket[0]= DALI_STX;
     pPacket[1]= (wdLen + 1) & 0xFF;
     pPacket[2]= (wdLen + 1) >> 8;
     pPacket[3]= Address;
     for(i= 0;i<wdLen;i++)
     {
               pPacket[4+ i] = pCmdData_buffer[i];
     }       
     for(i=0;i< wdLen;i++)
     {
               btCheckSum+= pCmdData_buffer[i];
     }
     pPacket[4+ wdLen] = btCheckSum;
     pPacket[5+ wdLen] = DALI_ETX;
     sendBufferLen= wdLen + 5 + 1;
     MAX3485_UART_SendData(pPacket,sendBufferLen);
}


相关文章
|
8月前
|
机器人 API
钉钉里{"code: 400, 错误描述:机器人权限校验不通过;解决方案:请登陆开放平台后台,检查机器人是否归属于token对应的主应用名下 请问场景机器人-发消息-这个报错什么原因导致的啊?
钉钉里{"code: 400, 错误描述:机器人权限校验不通过;解决方案:请登陆开放平台后台,检查机器人是否归属于token对应的主应用名下 请问场景机器人-发消息-这个报错什么原因导致的啊?
465 0
|
Java Linux 数据安全/隐私保护
R语言自动发送运行提示邮件
R语言自动发送运行提示邮件
|
数据采集
在线接受短信验证码进行识别
当我们做爬虫或其他的一些应用的时候,如果需要一些短信验证,但是又没有那么多手机号,又不能放人在那里一直输入的时候?怎么办?
在线接受短信验证码进行识别
|
传感器 运维 网络协议
Modbus故障码速查手册(故障码含义、分析原因、详细解读)
当涉及到Modbus通信协议的故障排查和调试时,速查手册是一项极为重要的资源。了解故障码及其含义能够帮助工程师在通信问题出现时迅速定位和解决相关故障。 本篇文章旨在为读者提供一个方便快速查阅的资源,以便快速获取有关Modbus通信中可能出现的故障码的信息。通过仔细研究这些故障码,读者可以更有效地诊断和解决通信问题,减少故障排查的时间。
2041 0
|
开发者
评审不通过开发者的提交工具一直显示推送状态,必须通过后推送的信息才会消失
在使用sourcetree时,开发者提交推送代码后,评审不通过,sourcetree上边一直显示推送的状态,只有通过评审推送状态才会消失。
|
JavaScript API 容器
手机短信验证码登录功能的开发实录(机器识别码、短信限流、错误提示、发送验证码倒计时60秒)
手机短信验证码登录功能的开发实录(机器识别码、短信限流、错误提示、发送验证码倒计时60秒)
316 1
|
PyTorch TensorFlow 算法框架/工具
福利:推荐你在线码代码
福利:推荐你在线码代码
117 0
|
存储
系统码的编译码与汉明码
系统码的编译码与汉明码
172 0
系统码的编译码与汉明码
|
程序员 C# 数据安全/隐私保护
【C#】发送QQ邮箱信息之步骤和代码实现
本篇文章就来讲讲,通过C#来实现,发送消息到QQ邮箱 使用场景可以是发送一些通知,或者重置密码通知之类,甚至是验证码,提高安全性
339 0
|
安全 Java 数据库
案例之授权码模式测试|学习笔记
快速学习案例之授权码模式测试
案例之授权码模式测试|学习笔记

热门文章

最新文章