生成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);
}


相关文章
|
6月前
|
机器人 API
钉钉里{"code: 400, 错误描述:机器人权限校验不通过;解决方案:请登陆开放平台后台,检查机器人是否归属于token对应的主应用名下 请问场景机器人-发消息-这个报错什么原因导致的啊?
钉钉里{"code: 400, 错误描述:机器人权限校验不通过;解决方案:请登陆开放平台后台,检查机器人是否归属于token对应的主应用名下 请问场景机器人-发消息-这个报错什么原因导致的啊?
377 0
|
Java Linux 数据安全/隐私保护
R语言自动发送运行提示邮件
R语言自动发送运行提示邮件
|
数据采集
在线接受短信验证码进行识别
当我们做爬虫或其他的一些应用的时候,如果需要一些短信验证,但是又没有那么多手机号,又不能放人在那里一直输入的时候?怎么办?
在线接受短信验证码进行识别
|
2月前
|
缓存 机器人 网络安全
steam报错“您对 CAPTCHA 的响应似乎无效。请在下方重新验证您不是机器人”
你是否满怀期待地准备加入 Steam 的大家庭,却被烦人的 CAPTCHA 验证拦在了门外? 😫 “您对 CAPTCHA 的响应似乎无效。请在下方重新验证您不是机器人。” 这句冰冷的提示,仿佛在嘲笑你的努力,即使反复尝试,错误依然顽固地存在,让人抓狂!🤯 别担心,你不是一个人!很多小伙伴在初次接触 Steam 时,都会遇到这个令人头疼的问题。
|
11月前
|
传感器 运维 网络协议
Modbus故障码速查手册(故障码含义、分析原因、详细解读)
当涉及到Modbus通信协议的故障排查和调试时,速查手册是一项极为重要的资源。了解故障码及其含义能够帮助工程师在通信问题出现时迅速定位和解决相关故障。 本篇文章旨在为读者提供一个方便快速查阅的资源,以便快速获取有关Modbus通信中可能出现的故障码的信息。通过仔细研究这些故障码,读者可以更有效地诊断和解决通信问题,减少故障排查的时间。
1568 0
|
PyTorch TensorFlow 算法框架/工具
福利:推荐你在线码代码
福利:推荐你在线码代码
104 0
|
存储
系统码的编译码与汉明码
系统码的编译码与汉明码
136 0
系统码的编译码与汉明码
|
安全 Java 数据库
案例之授权码模式测试|学习笔记
快速学习案例之授权码模式测试
案例之授权码模式测试|学习笔记
|
小程序 开发工具 C#
微信公众号支付提示mch_id参数格式错误
微信公众号支付提示mch_id参数格式错误
582 0