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


相关文章
|
5月前
|
存储 运维 JavaScript
《HarmonyOSNext应用崩溃自救指南:零数据丢失的故障恢复黑科技》
本文详解HarmonyOS Next应用崩溃时如何实现零数据丢失的故障恢复机制,涵盖API差异、核心接口与实战代码,助开发者提升App稳定性和用户体验。
290 65
|
3月前
|
算法 安全 搜索推荐
算法备案办官方流程
企业办理算法备案需登录备案系统,填写主体及算法信息并提交相关材料。流程包括注册备案、算法信息填报、产品信息提交、审核与公示等环节。企业需提前准备营业执照、身份证明等文件,确保资质真实有效。审核分为主体审核、一审和二审,通过后进入国家网信办公示,公示无异议即获备案号。整个流程约需1个月左右,具体以官方要求为准。
|
9月前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
290 20
|
12月前
|
机器学习/深度学习 人工智能 Anolis
手把手教学攻略:在Anolis OS上部署OpenVINO深度学习模型
Anolis OS 作为国内首个正式提供 OpenVINO 开发包和镜像的服务器端操作系统,推动国内 AI 推理生态和能力的升级。
|
机器学习/深度学习 PyTorch 算法框架/工具
探索PyTorch:张量的类型转换,拼接操作,索引操作,形状操作
探索PyTorch:张量的类型转换,拼接操作,索引操作,形状操作
|
存储 监控 安全
在自动化测试环境中,如何确保测试数据的安全性和隐私性
在自动化测试环境中,如何确保测试数据的安全性和隐私性
488 0
|
Scala
spinal HDL - 05 - Spinal HDL - 函数和时钟域
spinal HDL - 05 - Spinal HDL - 函数和时钟域
488 0
spinal HDL - 05 - Spinal HDL - 函数和时钟域
|
JavaScript 前端开发 算法
crypto-js:加密标准的JavaScript库
crypto-js:加密标准的JavaScript库
620 0
crypto-js:加密标准的JavaScript库
|
存储 机器学习/深度学习 缓存
沃纳博士解读 Amazon S3 强一致性技术实现
沃纳博士解读 Amazon S3 强一致性技术实现
381 0