找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 1703|回復(fù): 0
收起左側(cè)

學(xué)stm32感想

[復(fù)制鏈接]
ID:105323 發(fā)表于 2016-2-24 17:10 | 顯示全部樓層 |閱讀模式
自己學(xué)stm32也有1年的時(shí)間了,記得從51單片機(jī)過度到stm32用了不少的時(shí)間,當(dāng)然也走了不少的彎路,不過我很幸運(yùn)在學(xué)校有科協(xié)這個(gè)科創(chuàng)氛圍很濃的地方,還有那么多的學(xué)長們耐心的幫助,在這里謝謝你們。
stm32這個(gè)單片機(jī)在我心目中已經(jīng)到了'無所不能'的​地步了,他真的很牛,引用我看到過一句精彩的話描述他的內(nèi)核
“誰是最節(jié)能,最擅長把好鋼用在刀刃上的人?要讓我說,我一定得表一表單片機(jī)的開發(fā)者。他們使出渾身解術(shù),寫出精妙玲瓏的代碼,把單片機(jī)點(diǎn)點(diǎn)滴滴的力量匯集起來,讓它如同涌泉一般盡情地迸發(fā),灌溉滋養(yǎng)著各行各業(yè)。是什么靈丹妙藥賜予了他們這么神奇力量?除了好的處理器之外,還要配合好的開發(fā)環(huán)境和工具鏈。也正出于此,在設(shè)計(jì)ARM7TDMI處理器時(shí),ARM的工具鏈工程師們和CPU設(shè)計(jì)師們強(qiáng)強(qiáng)聯(lián)手,為了讓它的內(nèi)部結(jié)構(gòu)更優(yōu)化、更精練、更到位而并肩奮戰(zhàn)了很多日日夜夜,終于有了ARM7TDMI的無限輝煌,并且久經(jīng)歲月的洗禮依舊光芒綻放。
​珠聯(lián)璧合的最新果實(shí),是破繭而出的ARMCortex-M3處理器。這個(gè)小尤物,處處閃耀著ARM體系結(jié)構(gòu)激動(dòng)人心的新突破。它基于最新最好的32位ARMv7架構(gòu)——這個(gè)架構(gòu)支持高度成功的Thumb-2指令集,還有很多時(shí)尚、前衛(wèi)甚至嶄新的特性,充滿了新生代的氣息。它在很好、很強(qiáng)大的同時(shí),編程模型卻變得更加清新爽潔了。不管你是祖國的花朵、是人民教師、還是精明的商人,也無所謂是新手還是骨灰級(jí)玩家,Cortex-M3都將盡情展現(xiàn)它的秀外慧中,帶給你喜出望外的收獲和“激活”!”
我不能說出向他一樣華麗的語言,不過在我心目中stm32已經(jīng)發(fā)揮出Cortex-M3應(yīng)有的水平,就我來說,一些相對(duì)復(fù)雜的控制,比如四旋翼要求相對(duì)高的處理運(yùn)算來說,stm32是首選。對(duì)于ARM高端的單片機(jī)當(dāng)然不是我用來簡簡單單做控制而生的,當(dāng)然我也沒接觸過呢,就不在討論范圍了~
想一想自己學(xué)stm32的過程也讓我知道了如何去學(xué)東西,從無到有的過程。
在我51單片機(jī)還沒有弄明白,打算挑戰(zhàn)自己編一個(gè)計(jì)算器的時(shí)候,學(xué)長說,不早了,快去選一下自己對(duì)stm32還是msp430感興趣,去學(xué)吧。我就這樣迷迷糊糊踏上了學(xué)習(xí)之旅。最開始呢去圖書館查各種關(guān)于stm32的資料,在百度云上下載了視頻去學(xué)習(xí),就這樣迷迷茫茫的過了一個(gè)月,仿佛什么也不懂,學(xué)長告訴我去買一塊板子動(dòng)手去做才可以學(xué)到東西,用的是正點(diǎn)原子的,真心很不錯(cuò)。也是從那時(shí)我才開始​了解這個(gè)單片機(jī)。
因?yàn)樽约簩W(xué)過51單片機(jī),而stm32的操作庫函數(shù)讓我開始很糊涂,看視頻別人一步步的講解才明白庫函數(shù)的好處,(不過視頻這個(gè)東西不如讀書快,而且慢慢的我還是很鄙視視頻,因?yàn)檫@樣的學(xué)習(xí)效率太低下了),了解之后呢,我更多的就是去讀那個(gè)不完全手冊(cè)里對(duì)這個(gè)程序的講解,然后把程序下載進(jìn)去,簡單的更改下​數(shù)據(jù)看一下是不是自己想要的結(jié)果。這個(gè)過程真的持續(xù)了很久,而且自己玩的也是不亦樂乎,可現(xiàn)在回想起來自己用了不少時(shí)間去做了無用功。我想復(fù)制粘貼這些程序最壞的影響就是讓自己沒有學(xué)到編程的思維,不知道怎樣才能更好的撘出架構(gòu),真正被安排一個(gè)項(xiàng)目時(shí)你會(huì)感到力不從心,老師說過一定要學(xué)精,而學(xué)精的最基本要求就是把基礎(chǔ)打得扎扎實(shí)實(shí)!
有一個(gè)電子大賽,學(xué)校給我們了預(yù)備題,是做一個(gè)萬用表,我開始跳出正點(diǎn)原子的例程去自己編出代碼,我在那時(shí)候真的學(xué)了不少東西,​用了學(xué)長給我的液晶和PS2的驅(qū)動(dòng),真的可以用,雖然我的硬件戰(zhàn)友不在了測評(píng)很失敗不過我還是學(xué)到了很多,而且我很感興趣,認(rèn)準(zhǔn)了自己的路就要走下去。不過那時(shí)我真的誤入歧途,認(rèn)為拼湊不就行了,就可以編出任何我想要的東西,現(xiàn)在想想天真的很哦。
​自己自信心爆棚,開始研究操作系統(tǒng),用ucos+ucgui,自己做了一個(gè)2048,的的確確通過拼湊實(shí)現(xiàn)了,自豪的不得了,回頭想想自己的bug真是太多太多了。而且現(xiàn)在還是一知半解。
高二上學(xué)期,有一個(gè)我心目中非常厲害的學(xué)長,他把一個(gè)非常非常簡單的作品讓我完成,是一個(gè)輝光管的時(shí)鐘,真的是異常簡單的東西,可我做了好久好久,原因竟然是,stm32沒有正常工作!我開始反思自己了,我開始注意一些硬件上的問題,學(xué)會(huì)了用示波器,自己修改了簡簡單單的驅(qū)動(dòng)。接著自己寫iic的驅(qū)動(dòng),依然硬件有問題,不過對(duì)最簡單的通訊協(xié)議有了個(gè)了解​。
后來就是給老師做項(xiàng)目了,項(xiàng)目并不難,不過把我的問題徹徹底底的暴露了,基礎(chǔ)太差讓我許許多多的知識(shí)都是從頭學(xué)起,對(duì)自己的代碼沒有信心。我為了一個(gè)簡單的液晶調(diào)了一周的時(shí)間,硬件調(diào)試時(shí)共地問題折磨了我多次。但這樣的挫折也讓我體會(huì)到了高效率的生活,很有意義。
而現(xiàn)在,通過自己編最簡單的四旋翼的代碼,我對(duì)之前那些捕獲,PWM,iic一些東西有了很深的了解,總結(jié)下stm32中我認(rèn)為最重要的部分:
1.gpio的輸入輸出(寄存器和庫函數(shù))
2.​​uart串口(總會(huì)用到)
3.中斷(外部,定時(shí)器,ADC等等)​
4.定時(shí)器 捕獲PWM(輸入輸出)
5.iic,spi協(xié)議

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表