尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

ARM单片机外设

ARM单片机外设 SPI接口SPI接口主要应用在EEPROMFLASH实时时钟AD转换器还有数字信号处理器和数字信号解码器之间。SPI外设初始化/* Select PCLK0 as the clock source of SPI0 配置SPI时钟*/ CLK_SetModuleClock(SPI0_MODULE, CLK_CLKSEL2_SPI0SEL_PCLK1, MODULE_NoMsk); /* Enable SPI0 peripheral clock 使能SPI时钟*/ CLK_EnableModuleClock(SPI0_MODULE); /* Setup SPI0 multi-function pins 使能SPI功能管脚*/ SYS-GPD_MFPL ~(SYS_GPD_MFPL_PD0MFP_Msk | SYS_GPD_MFPL_PD1MFP_Msk | SYS_GPD_MFPL_PD2MFP_Msk | SYS_GPD_MFPL_PD3MFP_Msk); SYS-GPD_MFPL SYS_GPD_MFPL_PD0MFP_SPI0_MOSI | SYS_GPD_MFPL_PD1MFP_SPI0_MISO | SYS_GPD_MFPL_PD2MFP_SPI0_CLK | SYS_GPD_MFPL_PD3MFP_SPI0_SS ; /* Enable SPI0 clock pin (PD2) schmitt trigger 使能SPI时钟管脚施密特触发*/ PD-SMTEN | GPIO_SMTEN_SMTEN2_Msk; /* Configure SPI_FLASH_PORT as a master, MSB first, 8-bit transaction, SPI Mode-0 timing, clock is 20MHz 配置SPI工作模式*/ SPI_Open(SPI_FLASH_PORT, SPI_MASTER, SPI_MODE_0, 8, 200000);1. NOR FLASH--W25Q128 (128M-bit/ 16M-byte)1Block64KB(16*Sector) 1Sector4kB(16*Page) 1Page256Byte(xx00h~xxFFh)w25q1616Mbit/ 2M-byte32*1Blockw25q3232Mbit/ 4M-byte64*1Blockw25q6464Mbit/ 8M-byte128*1Blockw25w128128Mbit/ 16M-byte256*1Block(标准SPI)Standard SPI: CLK, /CS, DI, DO支持 SPI 总线操作模式 0 (0,0) 和 3 (1,1)(双SPI)Dual SPI: CLK, /CS, IO0, IO1(四SPI)Quad SPI: CLK, /CS, IO0, IO1, IO2, IO3标准SPIDI在CLK上升沿写入DIO在CLK下降沿读取双SPI和四SPI使用双向IO引脚在CLK上升沿写入在CLK下降沿读取四SPI需要在状态寄存器2中设置QE位当QE1时/WP脚变为IO2/HOLD脚变为IO3.此外该设备支持 JEDEC 标准的制造商和设备 ID 以及 SFDP同时拥有 64 位唯一序列号和三个 256 字节的安全寄存器。/CS为高电平时DO(IOx)引脚为高阻状态。如有需要可在/CS引脚上使用上拉电阻。/WP写保护可用户防止写入状态寄存器结合其他位使用可为实现为硬件保护。/HOLD引脚允许设备被选中时暂停操作/HOLD功能在多个设备共享同一SPI信号时非常有用。/RESET引脚被拉低至少约1us。SPI时序如数据手册设备DI上升沿设备DO下降沿支持SPI模式0和模式3.如数据手册时钟频率最高为50Mhz对应周期0.02us高电平低电平间隔约0.01us.
返回列表