uart中的十进制值

⚠️
你好。。谢谢你来参加论坛。令人兴奋的消息!我们现在正在移动到我们的新论坛平台,将提供更好的功能,并包含在主对话网站的过程。所有帖子和账号都已迁移。我们现在只接受新论坛上的流量-请在//www.wsdof.com/support. 我们将在未来几天内修复bug/优化搜索和标记。
4个职位/0个新职位
最后一篇文章
雅苏
离线
最后一次见到:1年10个月前
已加入:2019-01-23 10:26
uart中的十进制值

我想打印相等二进制值的十进制值。如何在uart中打印二进制值?

printf\u byte\u dec函数不工作!!!???

关键词:
设备:
PM\U对话框
离线
最后一次见到:57分9秒前
工作人员
已加入:2018-02-08 11:03
你好Jasu,

你好Jasu,

printf_byte_dec()函数的作用是以十进制格式打印字节值。在使用BLE示例时,可以使用arch\u printf()函数进行调试,您可以在十进制、十六进制、字符或字符串之间选择格式。你能给我一个简短的代码片段吗?你的结果是什么?

谢谢,下午好

雅苏
离线
最后一次见到:1年10个月前
已加入:2019-01-23 10:26
电压=(adc_值*5)/1023;

电压=(adc_值*5)/1023;
printf\ u byte\ u dec(电压);
printf_字符串(“\n\r\n\r”);
电阻=((5*(100.0/电压))-100);
Rln=对数(电阻);
温度=(1/(0.001129148+(0.000234125*Rln)+(0.0000000876741*Rln*Rln*Rln));
打印字节(温度);

但uart上什么也没印?

如果我使用printf\u字节,我将得到十六进制值!!

如何解决这个问题?是否可以打印十进制值?

PM\U对话框
离线
最后一次见到:57分9秒前
工作人员
已加入:2018-02-08 11:03
你好Jasu,

你好Jasu,

在我之前的文章中,我建议您使用arc\u console.h库中的arch\u printf()API。我开发了sdk5.0.4的ble\u app\u barebone示例,并使用了Pro-DK。让我描述一下我做了什么,并确保你做了同样的配置。

  1. #在da1458x\u config\u basic.h中定义CFG\u PRINTF
  2. 更改fw的uart端口,并将uart\ U TX端口/引脚分配给P04,将uart\ U RX端口/引脚分配给P05(确保您更改的配置位于HW\ U CONFIG\ U PRO\ U DK下,并且该板在HW\ U CONFIG定义中声明)。

#elif硬件配置\u专业\u DK

#定义UART2\U TX\U GPIO\U端口GPIO\U端口0

#定义UART2\U TX\U GPIO\U引脚GPIO\U引脚4

#定义UART2\U RX\U GPIO\U端口GPIO\U端口0

#定义UART2\U RX\U GPIO\U引脚GPIO\U引脚5

如果您有我们的另一个DK,或者您正在使用自定义板,请使用适当的GPIO修改上述定义

  1. 将arch\u console.h文件包含到user\u barebone.c中
  2. 调用arch\u printf()
  3. 将终端的波特率改为115200。

为了打印十进制值,您应该使用arch\u printf()中的“%d”。请检查一些示例代码。

中国8月份的国际贸易数据数据(3)数据[3]={10、11、11、12};//十进制拱圈印刷法(“中国8月份的国际贸易数据[3]={10、11、12};//十进制;//十进制”);拱圈印刷法(“\r\n“);拱圈印刷法(“\r\n“[10、11、11、11、11、12};//十进制拱圈印刷法(“8月份的国际贸易数据[3]={10、11、11、12};;//十进制;//十进制”);拱圈印刷法(“);拱圈印刷法((“DEC年:%d%d%d%d%d%d%d%d%d%d,10、11、11、11、11、11、11、11、12};//十进制”);拱圈印刷法(“));拱圈印刷法(“;);拱圈印刷法(“);拱圈印刷法(“拱圈印刷法(“拱圈印刷法(““(““_十六进制[3]={0x10,0x11,0x12};//hex arch_printf(“uint8\u t my_data_hex[3]={0x10,0x11,0x12};//hex”);arch_printf(“\r\n”);arch_printf(“DEC:%d%d%d”,my_data_hex[0],my_data_hex[1],my_data_hex[2]);arch_printf(“\r\n”);arch_printf(“HEXL%x%x”,my_data_hex[0],my_data_hex[1],my_data_hex[2]);

如果你想打印浮点数。您应该遵循以下论坛帖子中描述的过程:

https://support.dialog semiconductor.com/forums/post/dialog smartbond蓝牙低能耗-%E2%80%93软件/浮点

谢谢,下午好