打印
[STM32U5]

【NUCLEO-U5A5ZJ-Q测评】+串口通讯及应用

[复制链接]
459|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
NUCLEO-U5A5ZJ 开发板提供了串口通信的调试性能,为此可利用它来控制相应的串口设备,如串口屏、数据记录模块、MP3播放模块等。
由于这些串口设备多是以指令的方式来控制,而非普通的字符串,故对串口发送字节指令的功能进行了测试。
测试的主程序为:
int main(void)
{
uint8_t zp[] = {0x74,0x38,0x2E,0x74,0x78,0x74,0x3D,0x22,0x32,0x30,0x32,0x32,0x2D,0x31,0x32,0x2D,0x31,0x30,0x22,0xff,0xff,0xff};
HAL_Init();
SystemClock_Config();
SystemPower_Config();
MX_GPIO_Init();
MX_MEMORYMAP_Init();
MX_SPI1_Init();
MX_ICACHE_Init();
MX_USART1_UART_Init();
HAL_UART_Transmit(&huart1, (uint8_t *)zp,22, 5000);
while (1);
}
经测试,其结果如图1所示,说明其可以完成字节指令的发送。
图1 指令发送测试

此外,在串口设备的使用中也离不开数据的接收处理,为此也对数据接收功能进行了测试。

进行接收处理的程序为:
HAL_UART_Transmit(&huart1, (uint8_t *)zp,22, 5000);
while(y)
{
        HAL_UART_Receive(&huart1, (uint8_t *)aRxBuffer, 7, 5000);
        if (aRxBuffer[0]==0x4E)
    {
                        tn=(aRxBuffer[1]-'0')*16+aRxBuffer[2]-'0';
                        ty=(aRxBuffer[3]-'0')*16+aRxBuffer[4]-'0';
                        tt=(aRxBuffer[5]-'0')*16+aRxBuffer[6]-'0';
                        zp[10]=aRxBuffer[1];
                        zp[11]=aRxBuffer[2];
                        zp[13]=aRxBuffer[3];
                        zp[14]=aRxBuffer[4];
                        zp[16]=aRxBuffer[5];
                        zp[17]=aRxBuffer[6];
                        HAL_UART_Transmit(&huart1, (uint8_t *)zp,22, 5000);
                        aRxBuffer[0]=0x0;
    }
}
经测试,其结果如图2所示,说明可以完成数据的接收处理。
图2 接收数据测试


有了前面的基础,就可加以应用了。这里是用串口来控制触摸显示屏,所用串口屏为7寸触摸屏,其分辨率为800*480像素点, 它与开发板的连接关系如图4所示,所使用的是串口UART 1。
图3 串口引脚

图4 连接形式


为接收和显示数据,其界面设计如图5所示。
图5 界面设计

在更新显示数据时,只需接收串口所发送的数据指令即可。
以更改气压值为例,就是更新变量t1的文本值,其指令形式为:t7.txt=“数据值”ff ff ff。
以串口将气压值更新为“1022”的指令如图6所示,其更新效果见图7所示。
图6 发送气压更新指令

图7 更新气压值


以串口将日期更新为“2023-12-28”的指令如图8所示,其更新效果见图9所示。
图8 发送日期更新指令

图9 更新效果


经前面的测试,将串口屏与开发板连接到一起后,即可以串口来完成两者间的数据传送。


使用特权

评论回复
沙发
Henryko| | 2024-1-12 17:00 | 只看该作者
这个ui怎么设计的啊

使用特权

评论回复
板凳
jinglixixi|  楼主 | 2024-1-12 21:43 | 只看该作者
Henryko 发表于 2024-1-12 17:00
这个ui怎么设计的啊

通讯软件制作后,以专用软件来下载即可。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

455

主题

2756

帖子

38

粉丝