iT邦幫忙

2021 iThome 鐵人賽

DAY 3
2

先聊個題外話因為是第一次參加這種比賽,我從來沒有這樣發文過,我第一天擔心很多,這30天會不會很難發文,我主題是不是要好好篩選,好好安排30天進度,我來回逛了半天大家的發文跟之前的發文,跟歷屆得獎的人文章,我發現我好像有點想太多,只要把最真實的自己呈現就好,接下來30天的安排可能不會像我第一天為了安排大概進度所打的,我會盡量在我有限的時間內把這些文打好,把我所了解的開發嵌入式單晶片用文章呈現出來。

首先,第2天我在最後有PO我畫的原理圖跟PCB後做個結語就結束了,我要這補充一點畫電路原理圖有個很重要的前置作業,那就是腳位安排,沒安排要怎麼畫!,當然我那原理圖不是隨便拉拉畫畫的,選MCU前你要先了解你那顆MCU的規格,在Datasheet前面幾頁有列出F030系列的規格表,如下圖:
https://ithelp.ithome.com.tw/upload/images/20210916/20141979SoA85DmtJJ.png
至於規格我就不詳細介紹了,自己查看就好,在來是腳位規劃我當初剛學,用個比較笨的方法就是開啟Excel,在開啟我Day2所說的引腳定義,把每個功能的腳位個別寫出來...如下圖
https://ithelp.ithome.com.tw/upload/images/20210916/20141979cCPPEKP6J2.png
我紅框起來的地方兩邊都會有腳位編號是因為這兩腳都能當SPI1做使用,都列出來就方便規劃了,可以看一下我第2天PO的PCB圖,仔細看可以發現我把UART4跟2引出來放在一起,ADC腳位引出4Pin放在一起,再來是一組SPI2,接著兩組I2C,再來是燒入腳,接著是一般的GPIO口~,電源部分就引出3.3V、5V和GND,結束~。這樣就可以送洗電路板了。
PCBlayout畫圖就不仔細說明了,不是我這主題的重點。
送洗回來就是焊接啦,剛開始遇到不能燒入,最後排查發現只是自己焊接沒焊好~。
絕對可以動作,用這些方法一樣可以套用在其他顆MCU/images/emoticon/emoticon37.gif

--------本來想說按個儲存,不小心按到發文,今晚12點前會再補上Keil5安裝方法,如何用STlink做燒入-----
PM.8:00
卡到一些事的關係,現在才有空編輯文章
首先Keil5安裝檔下載網址:https://www.keil.com/download/product/
https://ithelp.ithome.com.tw/upload/images/20210916/20141979hcPllvWTin.png
安裝MDK-ARM,安裝步驟我就步詳細做了。太冗長了。就一直下一步就好。這軟體免費的跟付費的差別在於寫入程式的容量可以比較大而已,基本上平常小專案練習我還沒超過那界線,超過就自己斟酌瞜~

安裝後點開Keil5,點下面這紅框這部分
https://ithelp.ithome.com.tw/upload/images/20210916/20141979jVz11nf6Ue.png
點開後會出現下圖
https://ithelp.ithome.com.tw/upload/images/20210916/20141979Kc5LPwhKfK.png
左邊有多家公司的名稱,有STM,還有台灣公司的盛群等等,點開STM就有一堆型號出來,就先載你需要的就好,像030在這個位置,載紅框的那兩個就好:
https://ithelp.ithome.com.tw/upload/images/20210916/20141979qmh3PTwCkl.png
載完後就可以開發啦,至於如何撰寫韌體,我明天會在教學操作暫存器的方法來控制GPIO口high、low!!,順便教學暫存器如何在Datasheet裡查找,我目前手邊有STM32F429VGT6、ST32F103C8T6、STM32F030CC,明天我會說明暫存器如何找。
這底層的暫存器操作,很多剛入門嵌入式的同學會不想學這部分,但我覺得這部分要了解會比較好,這樣會對嵌入式的感覺更深入,但了解怎麼操作就好,之後就直接用庫函式或HAL庫來開發就好,比較快也不會出錯,查位置一看錯就沒功能了...,但有些專業的工程師會用直接操作暫存器來開發,這樣效率是最好的,但我們還是初學者不要搞那個,懂就好。
今天先這樣好了,燒入部分我留後面一次講,今天先不講燒錄部分。


上一篇
[DAY 2] _ 做一塊自己的開發板(stm32f030)
下一篇
[DAY 4] _ 用Keil5直接編寫暫存器操控MCU的GPIO口_(建Keil5環境)
系列文
基於ARM-M0架構MCU之落摔檢測韌體開發35
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言