南来之风 发表于 2021-12-11 12:36

【CuriosityNano测评报告】+UART数据回显

本帖最后由 南来之风 于 2021-12-11 12:44 编辑

感谢Microchip和21ic提供的此次测评机会。之前测评都是使用的MPLAB X IDE + MCC,非常的方便生成各种驱动代码。
拿到板子后,首先在电脑上搭建相应的开发环境。好在Microchip提供了比较便捷的IDE,比如MPLAB X。把板子插上电脑后,软件会自动识别板卡。


板卡上有个供用户使用的LED,即:


下面开始新建一个空白项目:









进入项目后,激活MCC,配置驱动。
这次下载了最新的工具,进入MCC Content Manager Wizard后,点击Finish按钮总是不停的旋转。折腾了一晚上也没有下载完成。






眼看着完不成任务了,又开始寻找替代的开发环境。这时发现了ATMEL START,一个在线的开发环境!非常的轻量级,没有了下载安装的烦恼。



对于此次的UART数据回显,需要添加最基本的UART模块:

在左侧的管脚复用区域,配置引脚的方向:


然后可以导出配置信息,之后我们可以导入到本地的MPLAB X中,进行开发,不用打开本地的MCC了!

准备下载程序到单片机上,发现了如下错误:


可以试试:




FUSES = {
        .WDTCFG = 0x00, // WDTCFG {PERIOD=OFF, WINDOW=OFF}
        .BODCFG = 0x00, // BODCFG {SLEEP=DIS, ACTIVE=DIS, SAMPFREQ=1KHZ, LVL=BODLEVEL0}
        .OSCCFG = 0x7E, // OSCCFG {FREQSEL=20MHZ, OSCLOCK=CLEAR}
        .SYSCFG0 = 0xE6, // SYSCFG0 {EESAVE=CLEAR, RSTPINCFG=UPDI, TOUTDIS=CLEAR, CRCSRC=NOCRC}
        .SYSCFG1 = 0xFF, // SYSCFG1 {SUT=64MS}
        .APPEND = 0x00, // APPEND {APPEND=User range:0x0 - 0xFF}
        .BOOTEND = 0x00, // BOOTEND {BOOTEND=User range:0x0 - 0xFF}
};

LOCKBITS = 0xC5; // {LB=NOLOCK}

然后把生成的代码粘贴到main.c中即可!
下面是主函数代码:

int main(void)
{
        /* Initializes MCU, drivers and middleware */
        atmel_start_init();

        /* Replace with your application code */

    int i = 0;
    char TempChar;
        while (i++ != 10) {
      printf("Hello World! %d\r\n", i);
        }


    while (1){
            // Check that "hello" was received on loopback RX.
      // Initialize rx buffer so strncmp() check will work

      /*
      for (i = 0; i < strlen("hello"); i++) {
            rx = USART_0_read(); // Blocks until character is available
      }
         * */
      memset(MyRx, 0, sizeof(MyRx));
      while((TempChar = USART_0_read()) != '\0'){
            if(TempChar != '\n')
                MyRx = TempChar;
            else
                break;
            //printf("%c\r\n", TempChar);
      }
      MyRx = '\0';

      if(MyRx != '\0'){
            printf("SendBack: %s\r\n", MyRx);
      }
      i = 0;

    }
}

最终的效果是:
在串口助手发送字符串到单片机:


然后单片机通过RX口接受数据后,保存在本地数组中,然后在输出到串口,通过tx


在这里要给ATMEL的在线开发环境点赞,也希望Mplab x工具能够更加方便些!

wangchangwenqq 发表于 2021-12-11 14:04

MCHP YYDS

七毛钱 发表于 2021-12-15 10:00

MCHP YYDS,哈哈哈哈

pixhw 发表于 2022-1-2 12:41

这个是pic芯片吗   

sdlls 发表于 2022-1-2 12:41

MPLAB X IDE用都是哪个版本呢   

febgxu 发表于 2022-1-2 12:41

是自动回传吗   

xiaoyaodz 发表于 2022-1-2 12:41

是否可以移植串口fifo呢   

fentianyou 发表于 2022-1-2 12:41

MCC用的哪个?         

selongli 发表于 2022-1-2 12:42

比较便捷的IDE,开发更容易。   

minzisc 发表于 2022-1-2 12:42

这个编译环境是怎么设置的   

lzmm 发表于 2022-1-2 12:42

CuriosityNano性能不错。   

hudi008 发表于 2022-1-2 12:42

pic单片机用的多。      

kkzz 发表于 2022-1-2 12:42

这个有uart loop功能吗

tpgf 发表于 2022-1-7 19:15

板子虽然小巧但是功能强大

aoyi 发表于 2022-1-7 19:17

串口还有自动回传的功能?

gygp 发表于 2022-3-3 22:34

是内部的UART数据回显

soodesyt 发表于 2022-3-3 22:52

回显是什么意思?

sanfuzi 发表于 2022-3-3 23:10

这个可以直接tx和rx短接的   

vivilyly 发表于 2022-3-3 23:39

这个可以回环测试吗

kmzuaz 发表于 2022-3-4 20:43

不是有can才能回环测试吗
页: [1]
查看完整版本: 【CuriosityNano测评报告】+UART数据回显