0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

快来围观:S32K344 VCU项目开发随笔~

朱老师物联网大讲堂 2024-07-26 08:11 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

此实例选择串口13进行配置:

9bc9e37e-4ae3-11ef-817b-92fbcf53809c.png

9be75026-4ae3-11ef-817b-92fbcf53809c.png

9b7467b4-4ae3-11ef-817b-92fbcf53809c.png

三、外设配置

9b87370e-4ae3-11ef-817b-92fbcf53809c.png

添加外设:

9c2fb35c-4ae3-11ef-817b-92fbcf53809c.png

配置串口信息1:

9c551462-4ae3-11ef-817b-92fbcf53809c.png

配置串口信息2(回调函数):

9c887cc6-4ae3-11ef-817b-92fbcf53809c.png

中断外设配置:

9d288874-4ae3-11ef-817b-92fbcf53809c.png

配置完毕后更新代码。

四、部分代码展示

/** * @brief UART_13回调函数 * * 该函数作为LPUART_13的中断服务程序使用,根据接收到的事件类型执行相应的处理逻辑。 * 主要功能包括处理接收缓冲区满和发送缓冲区空的事件,以及相应的数据传输逻辑。 * * @param HwInstance 硬件实例标识,此处忽略 * @param Event 事件类型,指示当前中断的原因 * @param UserData 用户数据,此处忽略 */void UART_13_Callback(const uint8 HwInstance, const Lpuart_Uart_Ip_EventType Event, void *UserData){ (void)HwInstance; // 避免未使用参数编译警告 (void)UserData; // 避免未使用参数编译警告
switch(Event) { case LPUART_UART_IP_EVENT_RX_FULL: // 接收缓冲区满事件 { // 检查是否收到换行符或接收缓冲区即将溢出 if ((rxBuffer[rxBufferIdx] != '\n') && (rxBufferIdx != (BUFFER_SIZE - 2U))) { // 继续接收下一个字符 rxBufferIdx++; Lpuart_Uart_Ip_SetRxBuffer(LPUART_UART_IP_INSTANCE_USING_13,&rxBuffer[rxBufferIdx],1U); } else { // 将接收缓冲区的数据复制到发送缓冲区,并初始化接收缓冲区 memcpy(txBuffer,rxBuffer,rxBufferIdx+1); Lpuart_Uart_Ip_AsyncSend(LPUART_UART_IP_INSTANCE_USING_13,txBuffer,1); txBufferIdx++; memset(rxBuffer,0,rxBufferIdx+1); test = rxBufferIdx + 1; rxBufferIdx = 0; Lpuart_Uart_Ip_SetRxBuffer(LPUART_UART_IP_INSTANCE_USING_13,&rxBuffer[rxBufferIdx],1U); }; }break; case LPUART_UART_IP_EVENT_TX_EMPTY: // 发送缓冲区空事件 { // 检查是否所有数据都已发送 if(txBufferIdx > test - 1) { // 重置发送缓冲区索引 txBufferIdx = 0; } else { // 继续发送下一个字符 Lpuart_Uart_Ip_SetTxBuffer(LPUART_UART_IP_INSTANCE_USING_13,&txBuffer[txBufferIdx++],1U); } }break; case LPUART_UART_IP_EVENT_END_TRANSFER: // 传输结束事件 { // 此处可添加传输结束后的处理逻辑 }break; case LPUART_UART_IP_EVENT_ERROR: // 错误事件 { // 此处可添加错误处理逻辑 }break; default: { // 处理未知事件 }break; }}

五、注意事项

9d91d612-4ae3-11ef-817b-92fbcf53809c.png

此处注意前文提到的一个回调的配置,应调用此处的回调函数。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 串口
    +关注

    关注

    15

    文章

    1607

    浏览量

    82019
  • 代码
    +关注

    关注

    30

    文章

    4947

    浏览量

    73248
  • VCU
    VCU
    +关注

    关注

    17

    文章

    86

    浏览量

    21478
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    首搭RT-Thread程翧车控平台| RT-Thread程翧 S32K344 快速原型开发平台正式上市!| 产品动态

    ——基于NXPS32K344的ECU快速原型开发平台,RT-Thread程翧S32K344快速原型开发平台,是首个深度内置RT-Thread程翧车控软件平台的快速原型
    的头像 发表于 10-31 11:53 584次阅读
    首搭RT-Thread程翧车控平台| RT-Thread程翧 <b class='flag-5'>S32K344</b> 快速原型<b class='flag-5'>开发</b>平台正式上市!| 产品动态

    求助,关于S32K342 IAR启动代码问题求解

    与链接类似的问题S32K344 IAR 启动代码问题 (SW32K3_S32M27x_RTD_R21-11_5.0.0_D2410) export the project from SDK
    发表于 04-10 07:12

    求助,关于S32K344 MQFP172 Tresos问题求解

    Hi, 我假设我们遇到了一些 Tresos/RTD 问题。我们有一个 S32K344EHT1VPBST 芯片,它具有 PB 封装和 172 个引脚,数据表确认了这一点。 当我们在 Tresos 资源
    发表于 04-10 07:03

    评估I/O引脚切换时,为什么NXP S32K344板变砖了?

    我需要帮助,在评估 I/O 引脚切换时,我不知何故将我的 NXP S32K344板变砖了。 我使用 JLink Debug Adapter,它收到消息 my device is locked。我猜我
    发表于 04-08 07:50

    为什么S32K344运行Bist_Run(BIST_SAFETYBOOT_CFG)进入Hardfault?

    1. 为什么S32K344运行 Bist_Run(BIST_SAFETYBOOT_CFG) 进入 Hardfault? 2. 我正在使用备用 RAM 来存储数据,这会影响 BIST 吗?
    发表于 04-07 07:02

    S32K3X4EVB-T172 LIN接收帧丢失的原因?

    我正在使用S32K3X4EVB-T172 评估板 (S32K344) 和LINSTACK for S32K3 版本 2.0.5。 我的设置如下。 MCU (S32K344) 充当 LI
    发表于 04-01 07:23

    请问在S32K344中,DMA的各个channel是否与LPSPI 0~6有固定的对应关系?

    请问在S32K344中,DMA的各个channel是否与LPSPI 0~6有固定的对应关系? 我将DMA_IP_HW_CH_5 配置为LPSPI0 TX,DMA_IP_HW_CH_5=4 配置为
    发表于 03-31 06:13

    FS23示例只有S32K344,没有S32K312的吗?

    导入示例的时候只看到K344的版本,如果我需要在K312上使用需要怎么去做呢
    发表于 03-27 07:01

    如何在S32K344上设置CS2100和配置PTA26以启用STGL5000?

    我正在使用S32K344 WB并尝试启用STGL5000 系列. 根据 STGL5000 系列 数据表,sys_mclkpin 在激活之前需要一个 clock 信号。   但是,在提供
    发表于 03-26 07:01

    如何使用Tresos for S32K344通过SPI配置DMA?

    我想知道如何使用 Tresos for S32K344 通过 SPI 配置 DMA。 软件版本:4.0.0 HF02_D2407。 我正在尝试配置,但在 logic analyzer 上看不到总线
    发表于 03-26 06:39

    如何在MBDT中使用S32k344进行加密?

    我想加密和解密通过 CAN 总线发送的数据,为此我想使用 S32k344 中的 HSE 模块在 MBDT 1.5 中进行对称加密-解密,但工具箱中没有可用的块。那我该怎么做呢。请分享与 HSE 相关的文件。
    发表于 03-25 07:21

    S32K344 Flexio模拟SPI程序不能正常执行怎么解决?

    S32DS版本3.5 RTD版本:S32K3_RTD_3_0_0_D2303 MCU:S32K344HVS BGA257封装 我需要使用Flexio模拟SPI驱动SD卡,参考了T-Box设计,与示例
    发表于 03-21 06:43

    S32K344_clockout_s32ct示例无时钟输出是什么原因?

    在学习将 S32K344 评估板与 Simulink MBDT 结合使用时,我偶然发现了一个关于“s32k344_clockout_s32ct”项目的问题。主要问题是 ample 工程中提
    发表于 03-20 08:29

    MRCANHUBK344测试Qspi_Ip_Example_S32K344,遇到Qspi_Ip_Init返回STATUS_QSPI_IP_BUSY的问题求解

    我目前正在 MRCANHUBK344 开发人员板上测试Qspi_Ip_Example_S32K344。示例项目使用 MX25L6433FM2R-08G 闪存器件,而 CANHUB 板卡
    发表于 03-20 07:32

    如何如何集成MCAL到S32DS_S32K344

    集成MCAL到S32DS_S32K344
    发表于 12-30 15:35 2次下载