我是來自清大動機的機器人團隊,我們使用的單晶片為STM32,我會以機器人的控制為主軸來介紹各種STM32的功能、設定,以及相關的程式技巧,並講解各種機器人最常遇到的幾個馬達控制方法。每個功能的步驟詳細說明,讓初學者更快的擺脫Arduino,使用STM32,並理解他的美好。另外,也會輔以比較深的內容,帶大家了解STM32的底層內部架構以及一些功能的硬體實作。如果你是清大DIT團隊未來的學弟妹們一定要好好地看這份教學,我在學STM32吃了太多的苦,整理這些內容,希望你們能少走一些彎路。有問題就直接來問我(雖然我也不一定會)但不要花一整天卡在一些設定的事情,你們真正要做的事是去寫程式!
C語言對暫存器的封裝 封裝匯流排和外設基地址為了方便使用者理解和記憶,我們把匯流排基地址和外設基地址都以define的方式來定義。在stm32f429xx.h...
STM32的中斷很強大,每個外設都可以產生中斷,在這裡我們先大略的講解中斷的概念,等之後在各個章節中,我們會再解釋如何讓各個外設進入中斷。 中斷是什麼? 以前在...
外部中斷 由於各種外設都可以有中斷,今天我們就來實際使用一種比較簡單的中斷-外部中斷,但卻是非常重要的功能。外部中斷顧名思義就是在外部來發起中斷請求,例如用一個...
計時器 TIMER 今天開始我們要來使用STM32強大的功能之一 TIMER!STM32F429ZI總共有14個計時器,這14個大致可以分為三種,通用定時器、基...
TIMER+NVIC中斷 今天我們來使用Timer的中斷功能吧!設定與昨天大致相同,只是我們現在需要開啟中斷。另外要注意的是什麼時候會進中斷在不同的模式下進中斷...
今天的內容主要是讓大家知道,究竟counter是如何透過硬體來實作出來的,牽涉到數位邏輯設計相關內容,如果只是要會使用可以些跳過這一部分喔~ 邏輯閘 邏輯閘就是...
PWM-脈衝寬度調變 我相信很多人在使用Arduion的時候還是不清楚PWM到底在幹嘛?PWM是一種可以將類比訊號以數位編碼來表示的技術,而表示的方法就是利用高...
Servo 對於簡單的角度控制,大家第一個想到的就是伺服馬達了吧,大小也適中,非常適合用在機器人上。還記得我們以前在Arduino的時代是怎麼控制Servo的嗎...
客製化PWM 這裡所說的客製化PWM指的就是我們可以輸出任何想要的方波波形,例如輸出10個完整的波後停止輸出,或著是輸出10個波的循環,而在一個循環內,每個波的...