先看效果
F411CE 硬件SPI+DMA驱动LCD
基于HAL库
其实HAL库我用不太习惯,一直也是用的标准库
但HAL库确实是好上手一些,就迅速创建一个新的template
这次就当尝试一下吧,因为用的比较少,我会记录的详细
如图点击,创建新工程
搜索型号,双击选择
左边这些都能点开,具体点开就知道了
Systemcore Core 如图选择
选择的是外部高速时钟,陶瓷晶振
这里设置是为了等下配置系统时钟
SYS 打开SWD接口,不配置的话芯片的SWD口会锁住
如果你恰好没配置,点击查看解决办法
Connectivity SPI设置主机全双工(你也可以选别的)
Frame Format 这个默认摩托罗拉
Data Size 数据位
First Bit 选择先发高位或者低位,MSB为高位
Prescaler 系统分频,这个影响到SPI速度,后面还会提一次
CPOL 时钟空闲是高电平或低电平
CPHA 奇数偶数采样选择,这两个是SPI的基础知识
CRC校验这里不开启
使能使用的软件控制,我其实是直接拉的GND
DMA配置 点击ADD添加
Stram流,其实就是通道,具体的流通道请看通道映射
Direction 方向选择,无非就内存到外设,外设到内存
Priority 优先级 随便选了没什么影响
increment address 地址递增 因为我要往外设发数组里面的值,所以我本身(Memory)要设置为递增
Datawidth 数据宽度,8位 16位 32位 这里主从宽度要相同
mode模式,可设置为正常或循环,正常就是只发一次
时钟设置,直接拉到100M
拉完到100M,再回过头来看这个SPI速度就到了主频的一半
生成
Project Name 工程名字
Project location 路径
IDE选择MDK-ARM 也就是keil