openocd配置
在openocd里面配置ospi,只能直接写寄存器。因此需要首先了解一下寄存器的配置
ospi1的起始位置是
0x58005000
OCTOSPI_CR寄存器
CR即control register。是ospi最基础的配置。
Address offset: 0x0000 Reset value: 0x0000 0000
一共32Bit
其中比较重要的:
- FMODE:28-29,配置了ospi的模式,有
- 00: Indirect-write mode
- 01: Indirect-read mode
- 10: Automatic status-polling mode
- 11: Memory-mapped mode
在使用ospi flash的时候,使用11
配置:
|
|
(OCTOSPI_DCR1
Device configuration register 1,设备配置寄存器1
|
|
MTYP: 001: Macronix mode
DEVSIZE: Number of bytes in device = 2[DEVSIZE+1]. 因此,在我们这里使用8M的情况下,应该是2^23,即devsize=22=0x16
CTOSPI communication configuration register (OCTOSPI_CCR)
DMODE: 011 data 4line mode