STM32CubeMX学习笔记1——用串口进行打印

1.新建工程

   File->New Project

2.芯片型号选择

 3.选择时钟源

    RCC->Crystal/Ceramic Resonator

4.选择烧录方式

  SYS->Serial Wire

5.选择串口通信方式

   USART1->Asynchronous

 6.时钟树

 7.输入工程名、选择编译器

 8.生成文件

 9.在usart.c中加入代码(注意:代码要写在BEGIN和END之间)

#include "stdio.h"
 //这个变量是其他.c文件定义的
 extern UART_HandleTypeDef huart1;
 uint8_t ch;
 uint8_t ch_r;
 //重写这个函数,重定向printf函数到串口,意思就是说printf直接输出到串口,其默认输出到控制台的
 /*fputc*/
int fputc(int c, FILE * f)
{
    ch=c;
     HAL_UART_Transmit(&huart1,&ch,1,1000);//发送串口
     return c;
 }
 
 //重定向scanf函数到串口 意思就是说接受串口发过来的数据,其默认是接受控制台的数据
 /*fgetc*/
 int fgetc(FILE * F)    
 {
    HAL_UART_Receive (&huart1,&ch_r,1,0xffff);//接收
    return ch_r;
 }

 10.在main.c中加入代码(注意:在写printf之前要先在BEGIN Includes和END Includes之间加头文件#include "stdio.h")

 11.烧入代码,结果如下(关于魔术棒设置在学习笔记二中有提到)

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值