當(dāng)時剛剛做研發(fā)的時候,遇到的也是和題主一樣的問題。那會在學(xué)校買的正點原子的STM32開發(fā)板,對于其中的例程,也是覺得簡單的很;但是一旦工作中用起來,就
1、看起來容易
STM32的編程剛好也是在MDK中使用C語言編程,所以作為過來人可以講講經(jīng)歷,大家參考一下。
正點原子的例子中有一章是觸摸屏的驅(qū)動編寫,ALIENTEK3.5寸TFTLCD。這個例子講解了LCD的顯示和觸摸。操縱的屏幕是哪種呢,類似現(xiàn)在的智能手機大屏。
哈哈,從零開始使用C語言驅(qū)動,是不是有點小厲害。當(dāng)時就借鑒他的程序,將買來的另一塊LCD屏連接上我自己的最小系統(tǒng)板。然后代碼一改,很高興,得到了一樣的顯示效果。忘了說,這個外設(shè)的引腳是20+個。
這個時候的心境和“c語言網(wǎng)課例題會做”會做是一樣的。為什么內(nèi)容本身不簡單,我們卻能完成得很漂亮?
模仿------這時候,我們不用分析所有的軟件執(zhí)行流程,只需要在現(xiàn)有的基礎(chǔ)上改動就好,自然不難。
2、做起來難
而我們應(yīng)對練習(xí)題的時候就沒有這么得心應(yīng)手了,可以理解。后來在工作中需用到LCD的顯示,根據(jù)項目需要選擇了OLED12864。這個操作簡單多了,數(shù)據(jù)引腳就2個,SDA、SCL。
剛開始不信邪,沒有采用廠商提供的代碼(淘寶),自己覺得自己能行,20+個的都弄得好,就這,那不松松的。
然后就根據(jù)IC的型號下載了數(shù)據(jù)手冊,然后我就上了。我料到了開頭,卻沒想到結(jié)尾。一頓操作猛如虎,
代碼行數(shù)五百五。
編譯報告零錯誤,
屏幕顯示一直無。
最終在苦戰(zhàn)2天后,我使用了源碼,請原諒我的懦弱。
3、應(yīng)對辦法
關(guān)于題海戰(zhàn)術(shù),我就不贅述了。這里,我只是從分析的角度來論述這個問題。
我們遇到一個編程需要解決的問題,不論是練習(xí)題,還是實際項目,都應(yīng)該考慮一下怎樣分解這個問題,將這個大問題分解為多個小問題解決。
這里就不得不說流程圖了,在實際編程開始之前,最好能夠整理一下思路,然后用圖形的方式記錄下來。這樣在后面寫代碼解決問題時也有了一個方向,同時也能讓別人能夠給你適當(dāng)?shù)慕ㄗh。
這是很有必要的,切記,切記,切記。
最后的話:
編程的學(xué)習(xí),最重要的不是語言,不是代碼,而是分析問題和解決問題的能力。因為代碼千千萬萬,學(xué)不完的;編程語言也是層出不窮。
希望這簡短的回答能夠起到一個拋磚引玉的作用的,謝謝您的閱讀。