SPI通过DMA进行数据传输存储器到外设的外部方式

u8 DMA_Data_Buffer[DMA_Send_Length]={}; //开辟一个内存
把SPI的数据存到内存中,实现数据从内存传输到外设的DMA传输
方式
在这里插入图片描述每次中断后都要清除中断标志位,XXX_ClearITPendingBit();此函数一般用在中断函数中清除标志位,
而XXX_ClearIFlag();一般用在非中断函数中,
DMA_Data_Buffer[i] = SPI1_ReadWriteByte(0xff);//把SPI读到的数据放到开辟的内存中,
主函数
在这里插入图片描述
MYDMA_Config(DMA1_Channel4,(u32)&USART1->DR,(u32)DMA_Data_Buffer,DMA_Send_Length);//DMA配置
SPI1_SetSpeed(SPI_BaudRatePrescaler_16);//SPI时钟频率配置,SPI1由APB2分频而来72MHZ/16
#define SPI_BaudRatePrescaler_16 ((uint16_t)0x0018)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值