要求显示效果:
分析过程:
1.printf重定向怎么做?
翻书找到


2.逻辑怎么写?纸上分析

3.自己生成源代码,添加代码,测试逻辑
添加的代码
#ifdef _GNUC_
#define PUTCHAR_PROTOTYPE int_io_putchar(int ch);
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch,FILE *f)
#endif/*_GNUC_*/
static void _func(uint8_t num)//输出字母金字塔的函数
{
uint8_t i,k,h;
if(num<1)return;
if(num>26)num=26;
for(i=0;i<num;i++)
{
for(k=0;k<num-1-i;k++)
{
printf(" ");
}
for(h=0;h<2*i+1;h++){
printf("%c", 'A'+i);}//%c表示输出一个字符
printf("\n");
}
/* USER CODE BEGIN 4 */
//重定向printf
PUTCHAR_PROTOTYPE
{
HAL_UART_Transmit

本文详细介绍了如何利用STM32CubeMX配置USART2串口,并用C语言编写程序,实现输出26个字母组成的金字塔。通过分析printf重定向、逻辑设计及代码测试,最终验证了串口通信的正确性。
最低0.47元/天 解锁文章
1964

被折叠的 条评论
为什么被折叠?



