简介
快速通过官方的example工程跑通MPC5744P的SPI通信。
一、软件工程
- 点击File->New->S32DS Project from Example,打开示例程序窗口。
- 选择MPC5744P->SPI_MPC5744P,点击Finish,创建SPI的示例工程。
- 工程创建成功,main.c中SPI的测试代码。
- 点击锤子图标,编译代码。
二、硬件连接
1.UART连接
- 将硬件串口板与MPC5744P的UART引脚连接。
- 串口这里是使用了LIN的接口实现的,J175模块需要将4-6,3-5短接起来,然后串口板的TX接J3.2(J3的第2个口),RX接J3.4(J3的第4个口),GND接J3.11(J3的第11个口)。
- 具体的引脚对于关系图如下
2.SPI接口连接
- 代码中的SPI1与SPI2的各引脚对应关系。
- 引脚及接线端子的对应关系如下表格。
DSPI1 | DSPI2 | ||
---|---|---|---|
SIN | PA8 | J1-12 | SOUT |
SOUT | PA7 | J1-10 | SIN |
CLK | PA6 | J1-8 | CLK |
SS | PA5 | J1-6 | SS |
- 这里我使用的是RevE版本开发版本,对应的引脚参考图如下。
- 开发板的接线图如下。
三、代码烧写和运行
- 功能快捷区,选择瓢虫图标下拉菜单的Debug Configurations,点击打开。
- 在GDB PEMicro Interface Debugging下有2个配置。这里我们就先选择SPI_MPC5744P_Debug,将程序下载进Flash中去。
- 选中SPI_MPC5744P_Debug,点击Debugger,Interface选择OpenSDA Embedded Debug-USB Port,Port选择USB1-OpenSDA,Device Name选择MPC5744P,点击Debug。
- 跳出确认视图切换的弹窗,这里我们勾选Remember my decision(不勾选的话每次这个弹窗都会跳出来),点击Yes。
- 跳到调试界面,如下图所示。此时程序已经下载到芯片中去了,并且已经运行到main入口。
- 打开串口助手软件,选择与开发板连接的串口号,波特率19200,打开串口。
- 点击全速运行按钮,让程序直接运行。
- 可以从串口助手软件中看到,有串口字符输出。至此,SPI的测试程序已经跑起来了。
- 点击串口助手发送按钮,发送任意字符给到MPC5744P。
- 立马可以从串口助手中看到,SPI Master跟Slave分别接收到了对方传输的数据。至此,SPI接口通信例程跑通。
四、源代码分析
- 开启SPI1、SPI2、UART时钟。
- Hex转ASCII码字符转换实现。
- 串口初始化,配置引脚及波特率配置。
- SPI引脚初始化。
- SPI的主从配置。
- SPI的数据发送。
- SPI的数据接收实现