【开篇】STM32F103C8T6 含义、命名规则、GPIO原理以及初始化(参考男神江科协,学习交流用)
目錄
目錄
一,STM系列命名規則
二.引腳功能
三.電路以及寄存器
一,STM系列命名規則
1.產品系列:
? ? ? ? STM32代表意法半導體的Cortex-Mx系列內核(ARM)32位的MCU
2.產品類型:
F-通用型,S-簡單型,L-低功耗,H-高性能,AL-汽車應用低功耗型,AF-汽車應用通用型。
3.產品子系列:
103:ARM Cortex-M3內核,增強型。
4.引腳數目:
C=LQFP/QFN? 48腳 or WLCSP 32腳
5,閃存類型:
4=16KB,6=32KB以此類推,即乘二加二
6.封裝
T-LQFP封裝
7.工作溫度
6- -40℃~85℃
8- -40℃~105℃
二.引腳功能
1.引腳功能定義圖
?由上圖可知,每個引腳有不止一個功能,需參考手冊,開啟對應功能,如有需要,也可以對引腳進行功能重定義,即多加一個功能,方便進行PCB畫圖。
GPIO可配置為8種輸出輸入模式,引腳電平:0~3.3V,部分引腳可容忍5V。如果是控制功率比較大的設備,只需要再加入驅動電路即可——比如驅動直流電機
三.電路以及寄存器
?閃存存儲(Flash Memory)是一種長壽命的非易失性(在斷電情況下仍能保持所存儲的數據信息)的存儲器
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統架構
?由系統架構可以看出GPIO掛載在APB2總線上,以及一些ADC,timmer功能,很多其他功能則掛載在APB1總線上。
?寄存器為一段特殊的寄存器,內核可以通過APB2總線對寄存器進行讀寫。輸出寄存器寫1,對應的引腳就會輸出高電平,輸入寄存器讀取為1,就證明對應端口目前是高電平。STM32內部寄存器為32位的。但是每一個端口只有16位,所以32位寄存器只有低16位對應有端口,高16位沒有用到,驅動器是用來增加驅動能力。
io引腳接了兩個保護二極管,如果輸入電壓比3.3V還要高,那么電壓差產生的電流就會直接流入ADD,而不會流入內部電路。下方同理。上下拉電阻決定了上下拉輸入電阻模式,如果兩個都斷開則為浮空輸入,為了給輸入提供一個默認的輸入電平。(浮空狀態極易受干擾)
施密特出發器——如果輸入電壓大于某一閾值,輸出為高電平,低于某一閾值,輸出為低電平。
可以排除輸入的波動。
當I/O端口配置為輸入時:
● 輸出緩沖器被禁止
● 施密特觸發輸入被激活
● 根據輸入配置(上拉,下拉或浮動)的不同,弱上拉和下拉電阻被連接
● 出現在I/O腳上的數據在每個APB2時鐘被采樣到輸入數據寄存器
● 對輸入數據寄存器的讀訪問可得到I/O狀態
?
寫輸出數據寄存器的某一為就可以操作對應的某個端口,位設置清除寄存器可以單獨操作輸出數據寄存器的某一位,而不影響其他位。輸出控制后連接npmos管。
推挽模式(強推):NPmos均有效,輸出數據寄存器為1時,上管導通下管斷開,輸出高電平,反之則相反。
開漏輸出模式:Pmos無效,數據寄存器為1時,下管斷開,為高祖模式,為0時,輸出低電平。IIC,接上拉5V兼容一些5V設備。
輸出模式下,輸入也是有效的。
每一個端口由四位進行配置。16個端口就要64位即兩個32位寄存器。
GPIO輸出速度可以限制最大翻轉速度。
?
因為ABCD都只有16個引腳,故每個引腳只需1位即可(高或低0 or1)所以多出來16位
高16位進行清除,低16位進行設置
?方便操作。
總結
以上是生活随笔為你收集整理的【开篇】STM32F103C8T6 含义、命名规则、GPIO原理以及初始化(参考男神江科协,学习交流用)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: I. Rise of Shadows(类
- 下一篇: 公布独立游戏作品!任天堂官宣11月直面会