蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 藍橋杯嵌入式學習準備
?
聯系方式
作者:馬一飛
QQ:791729359? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
? ? ? ? ? ? 本人參加了2018年第九屆藍橋杯嵌入式設計與開發的比賽,并拿到了國二,總的來說呢,我覺得藍橋杯這個其實算是一個比較簡單的比賽了。只要大家努力的去備賽,相信每一個人至少都能夠拿到省一并進入國賽。接下來我寫的文章就是記錄,我藍橋杯學習的方法、以及我自己寫的代碼,希望對接下來想參加藍橋杯的朋友能夠有所啟發,加油!!!
? ? ? ? ? ? ?在學習藍橋杯嵌入式方向之前,理所應當的需要前期的準備工作了。首先肯定要介紹一下藍橋杯這個比賽了,總的來說呢,藍橋杯這個比賽并不是一個特別難的比賽,所以大家只要好好去學習,用心去琢磨,都一定能進入國賽爭取去北京的資格。我也會給大家提供我所寫的代碼以及方法告訴大家,當然,我所寫的不一定是最好的方法,如果大家有更好的方法,歡迎跟我進一步討論。
? ? ? ? ? ? ?藍橋杯嵌入式里,用的開發板的主控芯片是stm32f103rbt6,那么這一款芯片也是屬于ST公司里面一款比較常用,而且性價比比較高的一款芯片,芯片采用的架構是Cortex-M3,屬于ARM這家公司下的一個基于微控制器的一個架構。
? ? ? ? ? ? ?我們平常在學校里學習的單片機是51單片機,或者是STC15系列的單片機,這類單片機采用的架構是8051架構,這個架構從出生到現在已經幾十年的時間,屬于一個比較老的架構了,因此你看到的51單片機,它所擁有的外設資源是非常少且運算速度慢(例如stc89c52晶振一般為12MHZ,且12分頻)。這里說的并不是說學習51單片機的用處不大,而是說,大家早點轉入ARM架構里學習,是非常好的,其實學到后面,你就會發現,ARM架構的功能,比起51架構要好很多,當你熟練了之后,甚至會感覺到ARM架構的配置比51單片機還要簡單。
? ? ? ? ? ? ?
? ? ? ? ? ? ? Stm32f103的主頻最高可以達到72MHZ,這一點是需要大家背下來的。
? ? ? ? ? ? ? 同時還有很重要的一點,我希望大家在學習藍橋杯嵌入式之前,可以先看一下正點原子的stm32視頻教程前面的部分,不需要看太多,但需要知道什么是stm32,什么是ARM,Cortex-M3到底是個什么東西。看的內容大概只需要看下面這個就差不多了。有些覺得不是重點的內容可以快進著看也沒問題。(具體的視頻下載地址大家可以百度搜索:開源電子網,并在里面查找視頻,或者上正點原子的淘寶店,在正點原子開發板的簡介那里找視頻教程網址,正點原子的教學視頻完全是開源免費的,下載不需要花一分錢,在開源電子網里面都可以免費下載)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? 當我們知道了什么是ARM,什么是Cortex-M3,什么是stm32f103的時候,就可以開始進入藍橋杯嵌入式的學習了。?
?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ?藍橋杯嵌入式的板子是如左圖這樣子的,上面用到的模塊1塊LCD顯示屏,4個獨立按鍵,1個蜂鳴器,1個at24c02(EEPROM)模塊,8個LED,1個電位器。
? ? ? ? ? ? ?大概用到的資源就是這些,還有其他的資源,例如讀卡器,RX232接口,都是用不到的。板子上的資源也就這么一點點,因此大家只需要掌握這些東西,藍橋杯基本就穩了。
? ? ? ? ? ? 接下來,我們就來搭建開發環境了,在藍橋杯嵌入式的比賽中,我們使用的是MDK4,那么我們再平時練習的時候使用MDK5,其實使用起來是差不多的,MDK5的功能比MDK4強一些,并且還有提示功能(不建議太依賴這個功能,因為keil4里沒有這個功能,比賽時候無法使用)。
? ? ? ? ? ? ?雖然編寫stm32程序與編寫51單片機的程序用的都是Keil軟件,但是這個Keil軟件是不同的,編寫51用的是Keil-C51,編寫stm32用的是Keil-ARM(也就是我們稱的MDK)。
? ? ? ? ? ??這里,我提供給大家一個Keil的安裝包,在安裝前,先把你們電腦上編寫51單片機程序的Keil徹底刪除,安裝完我提供的這個Keil安裝包之后,你既可以在里面編寫51的代碼,也可以編寫stm32的代碼,甚至可以編寫其他ARM系列單片機的代碼非常方便。打開Keil_5這個文件夾,我們會看到有以下的軟件。
?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? 上面4個應用程序前面都有標好1234,我們按照這個標好的順序安裝文件(記住,四個安裝包安裝的路徑必須一樣,重點!!!)例如我安裝的,全部安裝在D盤的keil_5文件夾下。安裝完之后,會看到桌面有一個Keil4和一個keil5,大家隨便打開其中一個,其實無論你打開哪個,出來的都是keil5(記得按右鍵使用管理員模式打開)。然后進行破解,破解的過程相信不用我說了,大家用過Keil軟件的應該都知道,但是需要注意的一點是,我們需要破解兩次,一次是破解C51的,一次是破解ARM的,也就是要在破解機上獲取兩個序列號。
?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ??
? ? ? ? ? ?那么在破解成功之后你會看到有兩個信息,一個是MDK-ARM,一個是PK51。 有效期至2020年,那么這個就提醒大家要在2020年之前把51單片機和stm32都得學好啊,不然你就要給錢買軟件了,hhhhh!!! 那么這些都是題外話了。
? ? ? ? ? ?到了這一步之后,就代表你破解已經成功了,你可以使用這個keil軟件,編寫51代碼或者編寫stm32代碼了。
? ? ? ? ? ?同時,我還會提供給大家其他的文件資料。
? ? ? ? ? ?擴展板數據包我們先不用管,我們以后再去看,我們現在關注的呢是另外的兩個文件夾。
? ? ? ? ? ??官網范例程序里面包含著官網提供的這個開發板對應的各個模塊的范例,大家可以參考官網的程序來學習也是可以的,但是官網的程序有些寫的并不是太好。
? ? ? ? ? ??嵌入式設計與開發項目加密資料這個文件夾里面,提供的文件,就是你在藍橋杯考場上所能見到的文件(重點!!!)。所以,這個文件夾里面有什么東西,大家是需要完全清楚的,這意味著,你在賽場上面,有什么資源是可以利用的。
這個文件夾里面提供了iic參考程序,stm32固件庫,串口調試助手,coolink驅動,芯片數據手冊,液晶驅動參考例程,以及藍橋杯嵌入式開發板的電路圖。
? ? ? ? ? ? ??在藍橋杯的比賽前,我們要先打開液晶驅動參考例程,把液晶驅動參考例程的程序直接燒錄到開發板里面,檢測是否能夠正常燒錄,開發板是否有損壞,如果出現燒錄不了的情況,趕緊叫工作人員幫你換電腦,一分鐘都不要耽擱。一定要確定電腦里的軟件,以及板子能夠正常燒錄,沒有任何問題,再進行比賽,否則你做的一切都是毫無意義的。(重點!!!)
?? ? ? ? ? ? ?那么我們再下一講再來講講液晶驅動參考例程里面有什么,并且是如何燒錄的。
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(以上僅屬于個人觀點)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
總結
以上是生活随笔為你收集整理的蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果频率测试软件gen,【技术干货】进行
- 下一篇: javaScript:实现倒计时定时器s