操作系統最常用的目錄結構 最小的操作系統



文章插圖
操作系統最常用的目錄結構 最小的操作系統

文章插圖
今天來跟大家普及一下stm32f103單片機的最小系統組成和各部分功能 。
一、什么叫最小系統
最小系統就像我們人,我們活著每天都要吃飯,喝水 。
飯和水就是我們的”燃料”,離開它們我們就掛逼了 。
其實在芯片的世界也一樣,單片機想要正常運行,它也需要”燃料”,這些燃料的組成就是最小系統 。
一、“燃料”都由什么組成?
1.電源
拿STM32F103C8T6這個型號來說,總共有5個接電源正極和4個接地引腳,分別給內部不用的模塊供電 。
VDD:就是單片機的供電電壓 。
VDDA:VDD后面有個A,A=Analog,表示模擬的意思,就是芯片內部模擬器件的工作電壓 。
VSSA:表示模擬器件的公共端地 。
VBAT:給后備區域供電,維持RTC/BKP寄存器這些數據掉電保存,一般是接紐扣電池,如果不需要可以直接接電源 。
根據數據手冊的說明,這幾個引腳的供電電壓最大不能超過3.6V 。
說到數據手冊,作為一個英語渣,這里多說一句,不要怕全是英文,不用全看懂,抓關鍵的地方看,其實來來去去就那幾個英文 。
2.復位電路
復位電路的作用就是,板子上電的瞬間給單片機復位引腳(NRST)一個短暫的低電平,讓單片機程序復位,把除了備份區域寄存器以外所有寄存器狀態恢復原始狀態 。
簡單來說就是讓程序重頭開始跑 。
復位電路的原理是利用RC電路的充放電原理,在上電瞬間為NRST引腳產生一個短暫的低電平 。
剛上電的時候電流會通過R19和C20到地,為C20充電,此時NRST的引腳為低電平 。
當C20充滿電以后,C20就處于”斷路”的狀態,此時NRST由低變高電平 。
3.系統時鐘
系統時鐘一般是加外部晶振電路,相當于給單片機一個心跳 。
就跟人的心跳一樣,沒心跳肯定就GG了 。
同樣,單片機沒心跳也跑不起程序 。
這個心跳也是一個時機基準,為單片機系統時鐘、定時器之類的提供時間的基準 。
我們最終計算定時器的時間,都跟這個晶振息息相關 。
4.燒錄口
燒錄口的作用就是給單片機燒錄程序,注入靈魂 。
STM32的燒錄方式有幾種,實際產品開發一般用SWD接口燒錄,占用尺寸空間少,一般只需要5根線,也有些用4根線的,就是vdd不接,不接vdd燒錄要單獨給板子供電 。
5.Boot0和Boot1
Boot0和Boot1是用來選擇STM32單片機的啟動方式的 。
如果上圖你看不懂什么意思,不要慌,正常的 。
簡單來說,大家要想正常跑程序就要把Boot0和Boot1都接到地,就是正常工作模式 。
如果我們要使用串口燒錄,也就是ISP,就需要把BOOT0接到電源,BOOT1接到地,燒錄完以后再全部接到地,相對麻煩很多 。
這也就是為什么我只用SWD燒錄的原因,直接全部接地就行了 。
通過上面這些電路的組合,單片機就能正常跑程序了 。
如何驗證你程序有沒有正常在跑?
我一般在開發產品的時候,首先會把LED的驅動調出來獲取安全感,讓它每秒閃一次 。
防止程序死機了我還傻乎乎繼續寫程序,寫到后面程序大了,找起問題來更浪費時間 。
【操作系統最常用的目錄結構 最小的操作系統】Ok,我是無際單片機編程,今天就先給大家普及到這,字不多,但是加上配圖賊耗時間(意思可以安排三連了) 。