基于NXP的S32DS for PA IDE下开发汽车级芯片MPC5744的SPI通信

描述

摘要

本篇笔记主要介绍,在NXP的S32DS for PA IDE下开发汽车级芯片MPC5744的SPI通信。

准备工作

开发环境IDE安装,安装S32DS for PA 版本,因为我们使用的是基于PA架构的NXP MPC5744P。

安装SDK最新版本V3.0.3

NXP DEVKIT-MPC5744P开发板

SPI 通信

SPI通信是一种全双工同步通信,在嵌入式开发中是一种广泛使用的通信接口,模块框图如下,支持查询,中断和DMA方式操作。FIFO支持5级,多路PCS片选,可支持多路从机

SPI

SPI

信号描述:

SPI

DSPI通信是SPI的一种升级和修改,在时序上稍微有一点不同,采样靠后一些

SPI

更多详细细节可以参考数据手册描述,这里不在赘述。熟悉了DSPI的基本结构后,可以在DS环境下,结合PE和SDK开发应用。

MPC5744总共使用了四路SPI, 我们使用1和2来测试,分别对查询和中断方式进行了200kbps,500kbps,1Mbps,2Mbps进行了测试。均可正常收发数据。

SPI 配置 时钟100M, 时钟极性为高,bits/frame 8

使用DEVKIT-MPC5744P开发板 的SPI1 和SPI2互传测试。硬件管脚连接,需手动连接以下管脚,有杜邦线的可以使用杜邦线连接,没有的手动焊接。

A0-----J5 1 A6 CLK J1------8

A1-----J5 3 A8 MISO J1-----12

A2-----J5 5 A7 MOSI J1-----10

A3-----J1 2 A5 CS J1----6

可以参照SDK的例程,配置和新建工程,选取芯片为MPC5744 144脚封装,默认是BGA 257脚封装的

修改成144脚封装

添加DSPI组件或者SPI都可以,这里以DSPI为例,添加两个,因为我们要用两路测试。

添加好后如下所示

SPI

配置属性和管脚,SPI1配置为主,SPI2配置为从

配置管脚

配置完后,点击更新和通过PE生成初始化代码

调用生成的代码和API完成测试程序

SPI

时钟和管脚初始化

SPI

SPI

调用收发API完成测试程序和逻辑并进行测试,通过收发1-10个字节的数据。

测试

主机采用查询,从机采用中断方式,也可以添加DMA通道,使用DMA,主机发送,从机接收

SPI

从机发送,主机接收

SPI

通过测试发现收发数据完全正常,修改不同的速率测试也正常,供测试了200kbps,500kbps,1Mbps,2Mbps。有兴趣的可以在进行更多测试。

编辑:jq

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分