当前位置: 首页 > wzjs >正文

医生做兼职有什么网站吗seo是什么职位的缩写

医生做兼职有什么网站吗,seo是什么职位的缩写,flash 网站制作,网站首页是什么意思在STM32开发中,使用HAL库实现printf函数的重定向需要将标准输出映射到串口(如USART)。以下是详细步骤和代码示例: 步骤 1:配置USART外设 使用STM32CubeMX配置USART: 启用USART模块(如USART1&am…

在STM32开发中,使用HAL库实现printf函数的重定向需要将标准输出映射到串口(如USART)。以下是详细步骤和代码示例:


步骤 1:配置USART外设

  1. 使用STM32CubeMX配置USART:
    • 启用USART模块(如USART1)
    • 配置波特率、数据位、停止位、校验位
    • 启用USART中断(可选)
    • 生成代码

步骤 2:重定向标准输出

需要重写底层IO函数,将printf的输出重定向到HAL库的串口发送函数。

方法1:使用 __io_putchar(推荐)
#include <stdio.h>// 重定向到USART1
int __io_putchar(int ch) {HAL_UART_Transmit(&huart1, (uint8_t*)&ch, 1, HAL_MAX_DELAY);return ch;
}
方法2:重写 _write 函数(适用于GCC/LLVM)
#include <sys/unistd.h>int _write(int fd, char* ptr, int len) {HAL_UART_Transmit(&huart1, (uint8_t*)ptr, len, HAL_MAX_DELAY);return len;
}

步骤 3:关闭半主机模式(针对ARMCC)

如果使用Keil MDK,在代码开头添加:

#pragma import(__use_no_semihosting) // 禁用半主机模式void _sys_exit(int x) { // 避免半主机相关错误x = x;
}

步骤 4:验证代码

main函数中测试:

printf("Hello, STM32!\n");
uint32_t counter = 0;
while(1) {printf("Counter: %lu\n", counter++);HAL_Delay(1000);
}

常见问题解决

  1. 无输出或乱码

    • 检查波特率是否与终端软件设置一致
    • 确认USART时钟和GPIO配置正确
  2. 程序卡死

    • 确保调用HAL_UART_Transmit前已初始化USART(MX_USART1_UART_Init()
    • 检查huart1实例是否正确定义
  3. 浮点数无法打印

    • 在CubeMX中启用Use float with printf(或在链接器选项添加-u _printf_float

完整代码示例

/* main.c */
#include "main.h"
#include <stdio.h>UART_HandleTypeDef huart1;// USART1初始化函数(由CubeMX生成)
void MX_USART1_UART_Init(void) {huart1.Instance = USART1;huart1.Init.BaudRate = 115200;huart1.Init.WordLength = UART_WORDLENGTH_8B;huart1.Init.StopBits = UART_STOPBITS_1;huart1.Init.Parity = UART_PARITY_NONE;huart1.Init.Mode = UART_MODE_TX_RX;huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;HAL_UART_Init(&huart1);
}// 重定向printf
int __io_putchar(int ch) {HAL_UART_Transmit(&huart1, (uint8_t*)&ch, 1, HAL_MAX_DELAY);return ch;
}int main(void) {HAL_Init();SystemClock_Config();MX_USART1_UART_Init();printf("System Initialized!\n");while(1) {static int count = 0;printf("Count: %d\n", count++);HAL_Delay(1000);}
}

通过以上步骤,即可在STM32上通过HAL库使用printf函数通过串口输出调试信息。这种方法极大简化了调试过程,是嵌入式开发中的常用技巧。


文章转载自:

http://bIvPOqhQ.kqbwr.cn
http://8Al0rYHo.kqbwr.cn
http://oc7P8Oi7.kqbwr.cn
http://HRm5prdD.kqbwr.cn
http://T5wxXs5t.kqbwr.cn
http://MX6Kthe7.kqbwr.cn
http://wZkMO9CZ.kqbwr.cn
http://j3Dffn3v.kqbwr.cn
http://j5U6mU5M.kqbwr.cn
http://NcRRQjsJ.kqbwr.cn
http://TVcmCuKO.kqbwr.cn
http://ZMPAxR29.kqbwr.cn
http://lghtAxkc.kqbwr.cn
http://Iy98U5eB.kqbwr.cn
http://xYWSf86l.kqbwr.cn
http://08ougEap.kqbwr.cn
http://W3mBXC7K.kqbwr.cn
http://25AVs54t.kqbwr.cn
http://nzYD0iFy.kqbwr.cn
http://bQpdsxKa.kqbwr.cn
http://Ld4WVAJT.kqbwr.cn
http://N8hastKz.kqbwr.cn
http://BZ7P8H6a.kqbwr.cn
http://2AdxaCub.kqbwr.cn
http://JSMoxuGG.kqbwr.cn
http://jzFd5Pl9.kqbwr.cn
http://fLXLutaH.kqbwr.cn
http://s9yHGWf4.kqbwr.cn
http://oW15QK80.kqbwr.cn
http://LSKZsVzI.kqbwr.cn
http://www.dtcms.com/wzjs/755471.html

相关文章:

  • 网站建设方法总汇wordpress防伪查询主题
  • 网站怎样自己不花钱在电脑上做网页中德合作项目
  • 汕尾网站建设 生意好吗wordpress inerhtml
  • 珠海酒店网站建设公司网架公司十大排名榜
  • 网站开发设计图片wordpress创建大型菜单
  • 南宁定制建站icp网站建设
  • 济宁市松岳建设机械有限公司网站深圳保障性住房多少钱一平米
  • 做网站费用列入什么科目泉州seo代理商
  • 更换网站空间网址导航怎么卸载不掉
  • 上海城乡建设中级职称报名网站河南建设银行处理违章网站
  • 苏州做网站要多少钱房产网站搭建
  • 西部数码里面如何建设自己的网站网站备案到公司
  • 临沂网站制作方案网络域名侵权十大案例
  • 做网站实训心得体会上海网站络公司
  • 怎样在微信中做网站wordpress简约主题
  • 学习做网站网站建设技术发展趋势预测
  • 网站后台上传木马教程阿里云营销网站建设
  • 游艇 高端网站建设做网站用框架么
  • 京东网站建设过程seo下载站
  • 怎么建设影视网站网站打模块
  • 建设网站用什么好学习做网站需要多久
  • 灰色行业做网站阿里云com域名注册万网
  • 网络科技网站有哪些方面wordpress查看购物车不管用
  • 黄石手机网站建设中国建设协会官网
  • 企业网站一般包括哪些内容wordpress微信公众号插件
  • 辛集做网站公司安徽省建设工程安全协会网站
  • 美观网站建设哪家好软件外包开发
  • 哈尔滨网站优化方式邢台做移动网站的公司
  • 吉林市哪有做网站的centos7搭建wordpress
  • 做钓鱼网站原理网站搭建介绍