學(xué)習(xí)單片機(jī)的現(xiàn)狀是:明明是一門動(dòng)手實(shí)踐的課程,卻硬生生學(xué)成了理論課。還記得大學(xué)學(xué)習(xí)單片機(jī)的時(shí)候,老師在講臺(tái)上熱情激昂的講著51單片機(jī)的匯編指令,卻只字不提單片機(jī)的編程環(huán)境,整個(gè)學(xué)期結(jié)束唯一記住的就是110條匯編指令。你肯定理解錯(cuò)了,這里記住的其實(shí)是數(shù)字110,那些指令一條也沒(méi)有記住。
單片機(jī)我們都用過(guò),我們知道單片機(jī)的FLASH有4K的,有8K的,單片機(jī)程序我們也寫過(guò),但是我們寫好的程序有多大,你知道嗎?
程序員多數(shù)都用過(guò)版本管理工具SVN,該軟件具有代碼的比較功能,既能很好的管理不同版本的代碼,又能比較版本的更改,是一個(gè)很好用的軟件工具。除此之外,還有哪些代碼比較工具呢?和大家分享一下。
我們來(lái)思考一個(gè)問(wèn)題,當(dāng)我們?cè)诰幊唐髦邪岩粭l指令寫進(jìn)單片機(jī)內(nèi)部,然后取下單片機(jī),單片機(jī)就可以執(zhí)行這條指令,那么這條指令一定保存在單片機(jī)的某個(gè)地方,并且這個(gè)地方在單片機(jī)掉電后依然可以保持這條指令不會(huì)丟失,這是個(gè)什么地方呢?這個(gè)地方就是單片機(jī)內(nèi)部的只讀存儲(chǔ)器即ROM。為什么稱它為只讀存儲(chǔ)器呢?剛才我們不是明明把兩個(gè)數(shù)字寫進(jìn)去了嗎?
我本人從畢業(yè)開(kāi)始就做電子產(chǎn)品的研發(fā)工作,主攻傳感器、控制器、BLDC驅(qū)動(dòng)控制、汽車電子等產(chǎn)品,既要自己設(shè)計(jì)硬件電路、PCBLayout、也要編程單片機(jī)代碼,如果有需求還需要用MFC編寫上位機(jī)軟件。
搞技術(shù)的人一般都有一個(gè)共同點(diǎn):寡言少語(yǔ)。不會(huì)在人多場(chǎng)合信口開(kāi)河、大吹牛逼。因?yàn)榧夹g(shù)是很寂寞的,做技術(shù)的能耐住寂寞,能耐住寂寞的人不會(huì)大肆宣揚(yáng);同時(shí)技術(shù)又是很難的,天天與難題打交道的人,不會(huì)隨隨便便看低任何一件事情。
最近讀到這樣一篇文章,從底層硬件角度出發(fā)剖析了一下CPU對(duì)代碼的識(shí)別和讀取,內(nèi)容之精彩,讀完感覺(jué)學(xué)到的很多東西瞬間聯(lián)系起來(lái)了,分享給猿們。
硬件工程師是一個(gè)看起來(lái)很繁忙(心碎)的職位,如果還大一點(diǎn)(管理正規(guī))的公司,會(huì)把硬件和編程分開(kāi),這樣硬件工程師可以有更多的時(shí)間去調(diào)試電路;如果小一點(diǎn)(管理欠正規(guī))的公司,不好意思軟硬都是你的,有你忙的。如果軟硬兼顧,你怎么管理你的N多個(gè)版本的程序?很不幸,我是屬于軟硬都搞的。
這是一個(gè)老生常談的問(wèn)題,每天都會(huì)有新的初學(xué)者,所以,零基礎(chǔ)如何入門,這個(gè)問(wèn)題永遠(yuǎn)都不會(huì)老。學(xué)習(xí)單片機(jī)需要具備一定的電路基礎(chǔ)、數(shù)字電路、模擬電路、信號(hào)系統(tǒng)、C語(yǔ)言編程等相關(guān)的基礎(chǔ)知識(shí)。單片機(jī)的學(xué)習(xí)包括硬件設(shè)計(jì)和編程設(shè)計(jì),早期單片機(jī)用匯編編程的人比較多,現(xiàn)在越來(lái)越多的人用C語(yǔ)言進(jìn)行編程。下面和大家分享一下如何快速有效的學(xué)習(xí)單片機(jī)。
之前從應(yīng)用的角度給大家分享過(guò)Bootloader相關(guān)的文章,今天從底層原理來(lái)給大家描述ARM處理器如何編寫B(tài)ootloader。
電子類專業(yè)的學(xué)生在大學(xué)時(shí)都學(xué)過(guò)51單片機(jī)和微機(jī)原理,上面都提到過(guò)單片機(jī)的灌電流和拉電流,在當(dāng)時(shí)是不是一頭霧水,聽(tīng)不懂?單片機(jī)的拉電流和灌電流都是對(duì)單片機(jī)的輸出而言的,是單片機(jī)驅(qū)動(dòng)能力的具體體現(xiàn)。
分頁(yè)查詢是最常用的場(chǎng)景之一,但也通常也是最容易出問(wèn)題的地方。
“每天都會(huì)有更多的技術(shù)發(fā)生,每家公司都在互聯(lián)網(wǎng)上,每家公司都將成為一家科技公司?!監(jiān)KTA首席運(yùn)營(yíng)官兼聯(lián)合創(chuàng)始人Frederic Kerrest說(shuō)道,因?yàn)樗麄儽仨氄页鍪褂迷撥浖母梅椒?。軟件不僅成為了一個(gè)必需品,更成為了一個(gè)競(jìng)爭(zhēng)優(yōu)勢(shì)。因?yàn)楸姸喙緡@軟件而競(jìng)爭(zhēng),軟件開(kāi)發(fā)相關(guān)的事宜顯得越發(fā)重要。開(kāi)發(fā)軟件的人——軟件工程師正顯得越發(fā)重要。
通過(guò)實(shí)驗(yàn)來(lái)確定單片機(jī)輸出IO口的實(shí)際電阻阻值,這為將來(lái)使用單片機(jī)進(jìn)行測(cè)量工作提供數(shù)據(jù)基礎(chǔ)。
相對(duì)于STM32、ARV等,51單片機(jī)入門是相對(duì)容易的,寄存器配置比較簡(jiǎn)單,IO口為準(zhǔn)雙向口不需要配置方向。而且51單片機(jī)出現(xiàn)比較早,資料比較多,很多學(xué)習(xí)都開(kāi)設(shè)51單片機(jī)的課程。學(xué)習(xí)單片機(jī)可以按照如下幾個(gè)步驟去學(xué)習(xí)。
STM32單片機(jī)中有兩只看門狗,分別是獨(dú)立看門狗和窗口看門狗。這兩只看門狗有什么區(qū)別,下面我們就來(lái)看一下。
單片機(jī)作為可編程器件,簡(jiǎn)化了電路的設(shè)計(jì)、方便了邏輯設(shè)計(jì),從此再也不用使用一大堆電路做硬件邏輯了。拆開(kāi)任何一件功能稍微復(fù)雜一點(diǎn)電子產(chǎn)品,里邊都可以看到單片機(jī)的身影。學(xué)會(huì)單片機(jī)對(duì)找工作也很有利,而且待遇還不錯(cuò),今天就從實(shí)例分享的角度和大家共享一個(gè)案例,用單片機(jī)來(lái)實(shí)現(xiàn)一個(gè)搶答器。
MOS管是電壓驅(qū)動(dòng)的元器件,通常被用作較大功率的電子開(kāi)關(guān),來(lái)控制直流負(fù)載回路的通斷。
單片機(jī)是一門學(xué)不完的技術(shù),因?yàn)椴煌袠I(yè)、不同產(chǎn)品所用的技術(shù)方案都不一樣,即使是很簡(jiǎn)單的一個(gè)設(shè)計(jì),在調(diào)試的過(guò)程中也會(huì)多多少少的遇到問(wèn)題;即使是非常復(fù)雜的一個(gè)項(xiàng)目,在團(tuán)隊(duì)的配合協(xié)作下也能很漂亮的完成。單片機(jī)怎樣算是入門,沒(méi)有一個(gè)明確的答案。技術(shù)的經(jīng)驗(yàn)是在設(shè)計(jì)、調(diào)試過(guò)程中不斷積累得到的,如果能熟悉產(chǎn)品的開(kāi)發(fā)流程、能獨(dú)立完成一個(gè)單片機(jī)產(chǎn)品,就算入門了。
單片機(jī)是可編程器件,開(kāi)發(fā)者把程序?qū)懞?、編譯完之后,需要燒錄到單片機(jī)中,單片機(jī)才能按照開(kāi)發(fā)者的邏輯去執(zhí)行。在這個(gè)燒錄的過(guò)程中需要用到專用的燒錄工具。比如51單片機(jī)的USB/TTL、STM單片機(jī)的STlink等。使用過(guò)單片機(jī)開(kāi)發(fā)板的同學(xué)都清楚,程序編寫完了后,在調(diào)試的過(guò)程中可能會(huì)燒錄很多次程序,盡管照這樣,單片機(jī)還是能一直燒錄,那么單片機(jī)的燒寫次數(shù)是不是無(wú)限的呢?