【前言】
前面我通过配置GPIO实现了LED灯的工程,串口作为最常用的输入输出设备,掌握这一外设是最基础的技能之一。这一篇我将分享如何从零开始配置串口并实现串口的输出。
【MCC配置串口】
1、首先打开开发板的原理图,找到串口外接到调试的接口。

从用户手册的原理图,得知DEBUG是接到了PB16、PB17上。
2、打开MCC的pin Settings找到PB16,通过function,得知他属于SERCON5

3、在MCC中添加SERCOM5,配置为UART,保持默认配置,配置好后,点击生成代码。

4、在工程中,我们看到了生成了sercom/usart的两个文件:

在plib_sercom5_usart.h中有如下两个文件,框中的SERCOM5_USART_Initialise为初始化串口,SERCOM5_USART_Write应该就是发送字符串的程序。

【测试】
在main.c中添加初始化与发送字符串函数如下:
int main ( void )
{
/* Initialize all modules */
SYS_Initialize ( NULL );
SERCOM5_USART_Initialize();
SYSTICK_TimerInitialize();
SYSTICK_TimerStart();
while ( true )
{
LED_Toggle();
SERCOM5_USART_Write("hello world",sizeof("hello world"));
SYSTICK_DelayMs(500);
/* Maintain state machines of all polled MPLAB Harmony modules. */
SYS_Tasks ( );
}
/* Execution should not come here during normal operation */
return ( EXIT_FAILURE );
}编译下载,打开串口监视器,就可以看到预期输出了hello world:

【小结】
这是我第一次使用MCC来生成串口驱动,步骤简单,这要得益于MPLAB生态的图形化工具。他生成的代码也是通俗易懂,因此入门microChip的MCU编程非常简单。
我要赚赏金
