|
從宣布使用二代手機后,我把玩手機的時間全部給擠出來了,用來閱讀自己以前寫的代碼和自己寫的文檔。順帶著回想一下特么現(xiàn)在已經(jīng)工作三年的經(jīng)歷,從表面上很豐富:
2010年開始接觸單片機,從郭天祥的STC89C51起步,從點亮第一個LED開始,正式步入;
2011年因為自己創(chuàng)作,開始使用STC12C5A60S2,這個單片機,換到了一個相對比較高大上的單片機了,從這里學(xué)到原理一個project里面可以有多個.h文件,那時我還不知道可以有多個點C文件;
2012年,畢業(yè)直接接觸STM32,瞬間覺得前途一片漆黑,那都的第一個case進入是USB,連STM32是什么都沒有聽說局開始搞USB,滿世界的找,做伸手黨;
2012年下半年,接觸NRF24LE1、C8051F320,STM32,開始正式的了解和運用C里面的東西,結(jié)構(gòu)體、數(shù)值、指針、枚舉等等,也在那時開始轉(zhuǎn)型,慢慢的從伸手黨開始自學(xué)之路;
同年,學(xué)習(xí)閱讀code,也開始很多雜亂的學(xué)習(xí),從NI到VB ,好像什么都想搞一下,結(jié)果什么都沒有搞到;
2013年,在大神的指導(dǎo)下接觸STM8,也是從那時起開始適應(yīng)了英文閱讀資料的習(xí)慣。也驗證了一句話,人是被逼出來的,那時這單片機還是新品,沒有多少人會也沒有中文資料,硬啃,這里也挺感謝大神的權(quán)力支持。帶我走上一條光明的大道。
2014年接觸STM8L,bootloader、雖然和8S是一家,但是也有很多的區(qū)別,這里遇到的最大坑時項目多人經(jīng)手,有人用庫,有人用寄存器,當(dāng)時的能力不行,不能乾坤大挪移,在這個坑里面只是帶了3個月,很是吃力,壓力上大。只懂得了一個道理,當(dāng)你覺得這個code不行的時候趕快重建。在地球上面建百米高樓沒有問題,但是如果讓你在農(nóng)村平房上面加3層你試一下。也許可以,但是如果boss說給我加7層你試一下,不塌,我信了你的邪!對于項目要有預(yù)見性,雖然boss不會告訴他想怎么搞,但是你也得猜,給自己留條后路,萬一這家伙發(fā)瘋說做10層,結(jié)果你的基礎(chǔ)構(gòu)架是8層的,后面2層有的補得。
同年從新認(rèn)識STM32F1,開始把里面的driver搞了一下,發(fā)現(xiàn)了很神奇的地方,這些driver都可以在官方網(wǎng)站上面下載,前提是看得懂英文。確認(rèn)大神的話,一個生產(chǎn)公司都不在國內(nèi)努力的推銷,降低開發(fā)難度,還想讓代理幫你搞定一切!找代理解決,不如找原廠,看論壇不如翻官網(wǎng)。
同年學(xué)習(xí)STM32F0,學(xué)習(xí)這個單片機從學(xué)習(xí)到應(yīng)用不到15天,搞定,方法很簡單:淘寶買discover,到官網(wǎng)driver 例程,對數(shù)據(jù)手冊看源碼一個一個的過,就這樣完成了全部的底層學(xué)習(xí),很快就搞定。
同年開始接觸RTOS,從usos開始,閱讀源碼,理解思想,知道大概的工作原理,實際操作,搞這個全身心的學(xué)習(xí)了2周左右。
2015年接觸FREE RTOS ,選擇它是因為免費和ST的推廣,有了UCOS的基礎(chǔ),搞這個也一樣,讀源碼,看實現(xiàn)方法你就基本可以調(diào)用了,當(dāng)然沒有事情的時候到官網(wǎng)上面晃晃,會有意外收獲,RTOS的版本經(jīng)常更新的,但是API基本不變。
寫這么就發(fā)現(xiàn)一個問題,特么一塊 這么3年,純手打的文檔超過10萬字,寫的代碼也不下10萬行,閱讀的代碼真記得了,下的文檔用T來計算,發(fā)現(xiàn)好多是重復(fù)勞動。本能是想讓自己告訴單片機一次怎么操作,然后恒久復(fù)制的,結(jié)果做著比單片機還苦逼的工作。
停下來的這些天一直在想,我他媽花費了這么多時間都在搞些什么灰機了。原來是在搬代碼,不斷的在一遍又一遍的寫這些各種IO扣翻轉(zhuǎn)、定時器中斷等等和一下相關(guān)的操作說明如果用UE來比較相似那叫一個高,結(jié)果花的時間還他媽是一樣的。沒有成長啊,就在今天我發(fā)現(xiàn)了這個問題,現(xiàn)在的我看清楚現(xiàn)在我還是一頭拉磨的驢,不斷的重復(fù)著昨天的故事。
但是現(xiàn)在我醒了,應(yīng)該多給自己分配帶寬思考怎么去構(gòu)建,而不是怎么做搬磚。管道的故事值得借鑒的,用水桶打水固然有效,但是當(dāng)要把大海搬走時也不是一件容易的事情。想想方法,做個偷懶的人也不錯。
僅以此來告誡昨天的自己,思考怎么去思考,怎么高效的處理任務(wù),怎么提升自己的帶寬,不把精力放在應(yīng)急處理上面。應(yīng)該有些處理重要不緊急的事情,其次處理緊急重要的事情,然后處理緊急不重要的事情,最后處理那個不緊急也不重要的事情。帶寬的變化就在你是優(yōu)先處理緊急事件還是重要事件。
從現(xiàn)在起做個C++程序猿,用新的的思維來解決問題!
|
|