南来之风 发表于 2022-12-3 19:26

【ATSAMD51EVK测评报告】-2- MPLAB Harmony V3实现串口回显

上期开箱文章: 【ATSAMD51EVK测评报告】-1- 开箱和环境搭建
笔者继续介绍如何安装 MPLAB® Harmony v3 软件开发框架,并一步步的创建一个UART的小例子,主要的参考文章有:

[*]如何安装 MPLAB® Harmony v3 软件开发框架
[*]MPLAB® Code Configurator Overview with MPLAB Harmony Content


1. 打开最新的MPLAB X IDE,在Project区域空白处,右键,然后选择”New Project“来创建新项目。


2. 选择”Microchip Embedded“ -> "32-bit MCC Harmony Project",之后点击下一步:


3. 这里会检测Harmony框架的安装位置,如果您跟我一样是第一次使用Harmony框架,那么红色的提示” Harmony framework location is not valid“只需要我们指定一个文件夹路径,后续会工Git上下载到这个目录里。



4. 输入一个路径,比如下面的文件夹当前为空文件夹。


5. 指定项目存储位置和项目名称。


6. 选择器件型号,这里我选择”ATSAMD51P20A“


7. MCC 会自动打开,下面3个提到的组件是必须的,详细参考:https://microchipdeveloper.com/harmony3:new-proj-with-mcc





8. 配置用户LED相关的GPIO引脚, PC18


9. 设置UART相关引脚







10. 生成代码,点击Generate。


Question:我这里遇到的一个问题是,提示没有找到XC32编译器。我之前使用的都是PIC8系列单片机,自己也安装了XC32编译器,不过MPLAB X IDE并未识别。


Solve:



串口输出结果:可以看到串口已经调试通了。


接下来修改主程序来实现经典的串口回显,参考代码如下:
int main ( void )
{
    uint16_t rxCounter=0;
   
    /* Initialize all modules */
    SYS_Initialize ( NULL );
   
    printf("\r\nHello ATSAMD51 EVK\r\n");

      /* Send start message */
    SERCOM2_USART_Write(&messageStart, sizeof(messageStart));

    while ( true )
    {
      /* Check if there is a received character */
      if(SERCOM2_USART_ReceiverIsReady() == true)
      {
            if(SERCOM2_USART_ErrorGet() == USART_ERROR_NONE)
            {
                SERCOM2_USART_Read(&data, 1);
                SERCOM2_USART_Write(&data,1);
            }
            else
            {
                SERCOM2_USART_Write(&errorMessage,sizeof(errorMessage));
            }
      }
    }
}
实现效果:


总结:
MPLABX 内嵌的MCC可以支持Harmony框架的使用,非常的方便使用,Harmony框架非常强大,还看到支持的组件有TCPIP. AUDIO等,还没有来得及体验。








pl202 发表于 2023-1-5 11:24

这个开发的难度大吗?            

mollylawrence 发表于 2023-1-5 13:27

有没有想过的资料可以提供 学习一下。

updownq 发表于 2023-1-6 12:20

这个需要把tx和rx对接的吗?            

timfordlare 发表于 2023-1-6 15:24

Harmony是什么?            

sanfuzi 发表于 2023-1-6 16:43

Harmony框架第一次使用的。

abotomson 发表于 2023-1-7 11:13

串口回显是怎么实现的、            

linfelix 发表于 2023-1-12 14:34

串口回显是什么意思呢?            

uytyu 发表于 2023-1-12 16:14

MPLAB的优化效果怎么样            
页: [1]
查看完整版本: 【ATSAMD51EVK测评报告】-2- MPLAB Harmony V3实现串口回显