数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 4466|回复: 10

[STM] 求助:16进制变量转成字符串

[复制链接]
发表于 2019-10-13 16:16:23 | 显示全部楼层 |阅读模式
300家元
本帖最后由 zhuls 于 2019-10-13 16:20 编辑

输入的是一个16进制的变量,比如 u16  Color=0xFEE7
输出的是一个字符串 “0xFEE7"
   MDK5.21中,有什么好方法可以实现?
最好能给中完整的代码
u8 VolumeToString(u16 Volume)
{



}
调用时:
Lcd_Disply_string(0,23,VolumeToString(Color),Color);这样就OK了
就是让Color的值,用字符串的形式出现在LCD上,并且字体颜色就等于Color的值。

 楼主| 发表于 2019-10-13 21:04:45 | 显示全部楼层
xpicompany 发表于 2019-10-13 19:30
著名函数:sprintf
就是占用储存比较多

能给出代码不?我对这个函数不熟:sweat:
回复

使用道具 举报

 楼主| 发表于 2019-10-13 21:05:37 | 显示全部楼层
红色海螺 发表于 2019-10-13 19:56
告诉你思路自己写
先左右移位获取单个16进制数 比如0xFEE7 运算后结果0x7;
小于A的直接加0x30 即可获得‘0 ...

能给出代码不?
回复

使用道具 举报

 楼主| 发表于 2019-10-14 15:25:15 | 显示全部楼层
huaweiwx 发表于 2019-10-14 11:45
如果,你一定想用字符指针作为返回值,也可以这样写:
char* VolumeToString(u16 Volume) {    /*  声明返 ...

好的,我晚上回家试一下,正在扛水泥包呢~~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-22 00:32 , Processed in 0.156001 second(s), 12 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表