stm32 華邦W25X32晶元spi匯流排配置

2021-07-24 08:45:03 字數 1531 閱讀 3333

pi3匯流排使用時,注意改變指定管腳的對映 gpio_remap_swj_jtagdisable ,jtag-dp 禁用 + sw-dp 使能
#include

"stm32f10x_gpio.h"

#include

"stm32f10x_spi.h"

#define

flash_cs(1

<<6)

#define

spi_flash_cs(x

)gpiob

->

odr=(

gpiob

->

odr&~

flash_cs

)|(x

?flash_cs:0

)//命令片選

// spi匯流排速度設定

#define

spi_speed_2

0#define

spi_speed_8

1#define

spi_speed_16

2#define

spi_speed_256

3//spi 速度設定函式

//speedset:

//spi_speed_2 2分頻 (spi 36m@sys 72m)

//spi_speed_8 8分頻 (spi 9m@sys 72m)

//spi_speed_16 16分頻 (spi 4.5m@sys 72m)

//spi_speed_256 256分頻 (spi 281.25k@sys 72m)

void

spix_setspeed(u8

speedset)

elseif(

speedset==

spi_speed_8

)//八分頻

elseif(

speedset==

spi_speed_16

)//十六分頻

else

//256分頻

spi3

->

cr1|=

1<<6;

//spi裝置使能

}//spi口初始化

//這裡針是對spi3的初始化

void

spix_init

(void)u8

spix_readwritebyte(u8

byte)

void

spi_flashport_init

(void

)#define

w25x_deviceid

0xab

//讀取晶元id w25x32的id:0x15

u8spi_flash_readid1

(void

)

//初始化spi flash

//在指定位置寫初始化標誌

void

spiflashinit

(void

)}

STM32晶元解讀

核心 32位 高效能arm cortex m3處理器 時鐘 高達72m,實際還可以超屏一點點 單週期乘法和硬體除法 儲存器容量 stm32f103zet6 512k flash,64k sram stm32f103rct6 256k flash,48k sram 時鐘,復位和電源管理 2.0 3.6...

stm32晶元休眠模式 stm32實現待機喚醒

stm32的低功耗模式有3種 1 睡眠模式 cm3核心停止,外設仍然執行 2 停機模式 所有時鐘都停止 3 待機模式 1.8v核心電源關閉 進入待機模式的方法,以及設定wk up引腳用於把stm32從待機模式喚醒的方法 一般步驟如下 1 設定sleepdeep位 scb scr的第二位 2 使能電源...

stm32晶元休眠模式 STM32最小系統簡單介紹

stm32是一款高效能,低功耗,低成本的嵌入式arm晶元,其家族產品大致劃分如圖 stm32型號說明,以stm32f103zet6晶元為例 stm32 f103ze t6arm cortex m核心32位微控制器 晶元系列 增強型席系列 引腳數,fash容量 封裝型別 工作溫度範圍 引腳數取值說明 ...