采用DSP-TI TMS320F2812,应用其SPI接口,以查询方式实现低电平点亮LED循环显示数字“0~9”功能,SPI配置为上升沿无延时发送,数据长度为8位,波特率最小值,给出C语言代码
时间: 2024-05-14 07:15:49 浏览: 13
请问您需要完整的代码还是部分片段?
如果是部分片段,以下是基于你提供的要求的C语言代码段:
```c
#include "DSP28x_Project.h"
#define LED_COUNT 10 // 显示的数字个数
#define SPI_BAUDRATE 0 // 波特率最小值
#define SPI_DATA_LENGTH 8 // 数据长度为8位
#define SPI_MODE 0 // 时钟上升沿采样,下降沿输出
Uint16 LED[LED_COUNT] = {0x7E,0x44,0x3D,0x46,0x6B,0x5B,0x7B,0x45,0x7F,0x6F}; // LED显示的数字
void main(void)
{
InitSysCtrl(); //初始化系统控制寄存器
InitSpiaGpio(); //初始化GPIO
InitSpi(); //初始化SPI模块
while(1)
{
for(int i=0; i<LED_COUNT; i++)
{
SpiaRegs.SPITXBUF = LED[i]; //向SPI发送缓冲区写入一个字节
while(SpiaRegs.SPIFFRX.bit.RXFFST != 1); //等待接收完成
if(SpiaRegs.SPIRXBUF == 0xAA) //接收到一个字节并验证数据
{
GpioDataRegs.GPADAT.bit.GPIO0 = 0; //点亮LED
}
else
{
GpioDataRegs.GPADAT.bit.GPIO0 = 1; //熄灭LED
}
DELAY_US(500); //延时等待亮灯效果
}
}
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)