剛拿到單片機(野火f103的開發板)時內心無比激動,時至今日,已經著手學習了兩天,想記錄一下自己學習的程序,以供后來回味。
先說說自己這兩天遇到的問題,第一個是軟體安裝的問題,我先是下載了Keil5,再到官網上下載了F1的芯片包,這一切進行的都還順利。接著我便開始試著燒錄一個系統例程進單片機,這時問題來了,除錯失敗,一直有個錯誤,顯示未找到core_cm3.o 檔案,對于這個問題我在百度上找到了很多答案,有的人說是路徑設定成了中文路徑無法生成這個檔案,有人說要在魔法棒內勾選C99語法,還有人說卸載Keil5重裝Keil5MDK版,各說紛紜,我統統都試了一遍,依舊未解決,最后我改了系統的環境變數再重啟重啟計算機,接著再次重裝了Keil5MDK版,且關閉了系統實時保護,資料也重新下載,就這樣成了,問題就這么解決了。接下了就是進入正式編程環節,單片機入門從點燈開始,在學32前我已經學過了51,但還是得說差別真的很大,51直接進行位尋址而且別人已經幫你寫好了頭檔案,只需知道哪個引腳控制哪個led燈,再給這個引腳一個低電平就能點亮小燈了,雖說32也是如此,給led燈一個低電平就能使他亮了。同樣是給低電平,但對與我這個新手來講32的點燈真是折騰了我好一會,有點不適應自己根據地址操控暫存器且是多個暫存器來點亮一個燈。先是打開對應IO口的時鐘暫存器(好比人的心臟),再對其IO口的暫存器進行清零,再配置它的輸出速度,最后再通過ODR暫存器給它一個低電平,就這樣燈亮了。點個燈花了近一天時間,不過學會了怎么看手冊配置暫存器,在這個程序中一直很煎熬,點燈多次失敗,但點燈成功的喜悅瞬間融化了之前的所有。當用暫存器結構體指標操作暫存器進行點燈時,第二個問題出現了,自己寫的結構體指標指不出暫存器。對比了配套資料的例程自己寫的沒有問題,幾經輾轉,這個問題還是解決了,這個問題估計有和我一樣的新手也遇到過,解決方案是將自己的寫的例程的檔案夾全部改為英文(最好不要用中文做檔案名)。
歡迎各位前輩和大佬給點學習建議,讓我能在嵌入式開發這條路上走的更遠,也歡迎和我一樣的新手小白來共同探討在學習程序中遇到的問題。就寫到這了,這是我第一次發帖,僅供自己學習,文中難免會有錯誤,若有錯誤,希望大家指出來,在此多謝了
uj5u.com熱心網友回復:
恭喜小伙子入坑了!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/27363.html
標籤:非技術區
