[MCU] 【航芯 ACM32F070配套电容触摸开发板 评估UART串口基本功能】

JohnMatthrew   2022-10-28 22:54 楼主

又到了最近更新的时间了,肯定不能放过更新的机会呀。趁这个空档时间,我还可以更新一下新的进展。

小主我是做新能源电驱的(某厂就不说了),最近Project堆在一起但是不影响我玩国产MCU

那么既然说了要用UART串口,我们就先评估官方的Demo给的UART程序试试。

先放官方Readme写了一些什么,逐个评估功能:

示例文件的解释图片1.png 重点划一下,分为两个部分:

1、一个是打印测试串口,可用printf函数,这个的话我在MDK的Project程序内看到了这个功能(负责输出一些你想要的数值或者是你想发送的字符串/HEX数据也可以)

2、用户串口(就是给我们尝试自发自收的功能的,基本上日常用这个串口居多,一般没有问题)

那我就拿最典型的用户串口给大家演示一下一般以前STM32功能用的不好的话(代码写得不好,有限制长度的话会没那么好用),限制了长度的效果可就差一些,一旦有更长的数据,就得拆分了(有可能用得到中断进行数据拆分,但是很浪费CPU运行效率,一般这种办法不太好)

上MDK软件主界面:

串口demo图片1.png 文件先看main.c内的相关模块,例如:串口初始化,指定TX发送通道这类基本操作。这里第一时间看到初始化了UART1和3,选择发送也是UART1和3,之后是数据长度,还有这些模式选择,都是比较容易理解。

int main(void)
{
    System_Init();
    
    Uart_Init();
    UART1_Init();
    UART3_Init();
    
    /* UARTx Tx */
    HAL_UART_Transmit(&UART1_Handle, gu8_UART1Test, strlen((char *)gu8_UART1Test),0);
    HAL_UART_Transmit(&UART3_Handle, gu8_UART3Test, strlen((char *)gu8_UART3Test),0);
    
    /* Select Mode: TEST_LOOP、TEST_UART1_IT、TEST_DMA、TEST_UART_ABORT、TEST_UART2,TEST_UART3*/  
    APP_Uart_Test(TEST_UART2);     
    

    while(1)
    {

    }
}

之后我们先试试我们这个demo,烧录到我们的开发板试试。

一切果然很顺利,下载了以后,我们打开串口调试助手试试,我随便打了一些给串口发送,返回的值和我发送的一样,第一时间我先选了HEX数据,显示的值换算过来也是123

串口调试助手图片1.png 后面选了ASCII模式,一样的道理,发送123直接返回123,456也是456,所以问题不大。输入更长的数字,1-9也没有问题,那么功能验证OK。下回安排先发送一些预设的语段或者是数字出现,对暗号试试。后续会更快更新了,哈哈,又得去加班了,下回更新。 

对了,附上连接的图:

我这会用的是PA2和PA3,用的是UART 2,对应的软件的Test哈哈

MCU图.jpg

本帖最后由 JohnMatthrew 于 2022-10-28 22:57 编辑

回复评论 (2)

这是个什么线,连接这么远

image.png  

点赞  2022-11-6 10:00
引用: 火辣西米秀 发表于 2022-11-6 10:00 这是个什么线,连接这么远  

串口的Rx,问题不大,这个线只有10cm左右,串口下载器是这样的了,因为外挂的

点赞  2022-11-8 20:25
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复