- 相關(guān)推薦
單片機(jī)學(xué)習(xí)總結(jié)與心得范文
復(fù)位、中斷和睡眠
(1)復(fù)位
pic16f616包括這樣的幾個(gè)復(fù)位功能,上電復(fù)位(power-on)、硬件復(fù)位、欠壓復(fù)位(brown-out)、看門狗復(fù)位。
關(guān)于上電復(fù)位por,大家都不陌生,單片機(jī)在上電的時(shí)候保持復(fù)位直到電壓能夠滿足其正常的工作電壓,同時(shí)你可以通過(guò)對(duì)connfig(編譯器上即可設(shè)置)的設(shè)置,來(lái)開啟power-uptime,這個(gè)時(shí)間一般為64ms。
硬件復(fù)位可以通過(guò)mclr引腳外界復(fù)位電路,即可實(shí)現(xiàn)硬件復(fù)位(將此引腳接低電平)。
欠壓復(fù)位這個(gè)功能是可選的,也可以直接在編譯環(huán)境中配置config寄存器來(lái)開啟此功能。當(dāng)此功能開啟時(shí),如果單片機(jī)在運(yùn)行的時(shí)候,供電電壓不足就會(huì)引起欠壓復(fù)位,復(fù)位后單片機(jī)如果發(fā)現(xiàn)供電電壓已經(jīng)達(dá)到正常值的時(shí)候,會(huì)有一個(gè)64ms的延時(shí),然后再運(yùn)行程序。
關(guān)于看門狗的復(fù)位在看門狗部分已經(jīng)說(shuō)了。這里的一些復(fù)位還涉及到一些標(biāo)志位。這些標(biāo)志位分布在status和pcon上面。status上有兩個(gè)位to、pd,當(dāng)標(biāo)志位to=1時(shí),表示表示已經(jīng)操作了上電復(fù)位或者是執(zhí)行了clrwdt或者sleep指令,當(dāng)to=0時(shí),表示發(fā)生了看門狗復(fù)位。當(dāng)標(biāo)志位pd=1時(shí)表示操作了上電復(fù)位或者是執(zhí)行了clrwdt指令,當(dāng)pd=0時(shí),表示執(zhí)行了sleep指令。pcon上有兩個(gè)標(biāo)志位是por和bor,分別表示的是上電復(fù)位和欠壓復(fù)位標(biāo)志。具體的可以參看手冊(cè)。
(2)中斷
pic16f616包括這樣的幾個(gè)中斷源:ra2/int引腳外部中斷、ra端口電平變化中斷、定時(shí)器timer0、timer1、timer2溢出中斷、比較器中斷、ad轉(zhuǎn)換中斷、捕獲/比較/pwm中斷。
這些中斷的允許位和中斷標(biāo)志位分別位于intcon、pie1、pir1、ioca這些寄存器里面,如果要開啟相應(yīng)的中斷,就要置相應(yīng)的中斷允許位,開啟總中斷位(intcon寄存器的gie位),還要開啟intcon上的peie位(定時(shí)器0溢出中斷、int引腳沿中斷和ra端口的電平變化中斷除外)。
當(dāng)中斷發(fā)生的時(shí)候,相應(yīng)的中斷標(biāo)志位就會(huì)置起來(lái),同時(shí)總中斷標(biāo)志位gie會(huì)被清零,保證在此時(shí)間內(nèi)不會(huì)相應(yīng)其他的中斷,然后將當(dāng)前的pc指針值壓棧保存,以用來(lái)保證中斷能正確的返回到原來(lái)執(zhí)行的地方。然后pc指針指向中斷向量地址0004h的地方,所以在編程序的時(shí)候,你可以在0004h的地址存一條跳轉(zhuǎn)指令跳到你定義的中斷服務(wù)程序里面去就可以了。如果在中斷的時(shí)候想保存一些重要的寄存器的話,可以在中斷程序的起始將其保存,然后在中斷服務(wù)程序的末尾將其恢復(fù)即可。
要注意的是中斷標(biāo)志位不會(huì)自己清零,這就需要在編程的時(shí)候在軟件上對(duì)其清零,否則的話,單片機(jī)不停的執(zhí)行中斷服務(wù)程序。如果你想要在以后的程序中還能產(chǎn)生中斷的話,就要把總中斷允許位gie重新置位。
(3)睡眠
要想讓單片機(jī)睡眠的方法很簡(jiǎn)單,執(zhí)行一條sleep指令就可以了,如果看門狗允許的話,wdt就會(huì)被清零,但是還保持運(yùn)行,寄存器status的pd位將會(huì)置0,to位將會(huì)置1,io口還保持原來(lái)的狀態(tài),在睡眠狀態(tài)下,不能驅(qū)動(dòng)振蕩器了。
有些事件可以將單片機(jī)從睡眠狀態(tài)中喚醒:看門狗、ra口電平變化中斷、外部復(fù)位引腳mclk被拉低、ra2/int引腳沿中斷、timer1中斷(必須工作在異步計(jì)數(shù)模式)、eccp捕獲模式中斷、ad轉(zhuǎn)換中斷(時(shí)鐘源必須為內(nèi)部rc的時(shí)候)、比較器輸出有變化,這些事件能夠?qū)纹瑱C(jī)喚醒,其他的事件不能。
如果某項(xiàng)能喚醒單片機(jī)的中斷已經(jīng)開了,當(dāng)總中斷允許位gie為1的時(shí)候,單片機(jī)被喚醒后可以進(jìn)入中斷程序中去,而當(dāng)gie位為0的時(shí)候,單片機(jī)也可以被喚醒,但是是執(zhí)行下面的語(yǔ)句,而不能進(jìn)入中斷程序中去。
為了保證在執(zhí)行sleep語(yǔ)句后看門狗能夠清零,最好在sleep語(yǔ)句之前加一句清看門狗的語(yǔ)句clrwdt。
相關(guān)型號(hào)資料:at25020n-10sc2。7mux08fpirfi9520gts83c51rb2-mc
單片機(jī)學(xué)習(xí)總結(jié)與心得[篇2]
ofweek工控網(wǎng)訊:作為一名電子技術(shù)從業(yè)人員,你學(xué)過(guò)單片機(jī)嗎?你會(huì)運(yùn)用單片機(jī)嗎?我想你一定學(xué)過(guò),但不一定會(huì)運(yùn)用。因?yàn)閷W(xué)習(xí)單片機(jī)比學(xué)習(xí)其他學(xué)科需要付出更多的努力和代價(jià),不僅要學(xué)習(xí)理論知識(shí)還要練習(xí)實(shí)際操作,而且主要是在實(shí)際操作中才能真正學(xué)到單片機(jī)技術(shù)。此外,學(xué)習(xí)單片機(jī)還需要投入一定的學(xué)習(xí)成本,隨著你學(xué)習(xí)知識(shí)的擴(kuò)展成本還會(huì)增加。
單片機(jī)作為一種簡(jiǎn)單的控制器在生活中有這廣泛的應(yīng)用,當(dāng)然在工業(yè)型單片機(jī)在生產(chǎn)中也扮演著很重要的角色,所以對(duì)于一個(gè)學(xué)習(xí)自動(dòng)化的工控人來(lái)說(shuō),學(xué)習(xí)單片機(jī)是非常有必要的。
單片機(jī)的學(xué)習(xí)經(jīng)驗(yàn)
1、學(xué)習(xí)電子技術(shù)基礎(chǔ)知識(shí),如電路、模擬電路和數(shù)字電路。這是學(xué)習(xí)電類相關(guān)專業(yè)的基礎(chǔ)。
2、學(xué)習(xí)計(jì)算機(jī)硬件知識(shí),如計(jì)算機(jī)的簡(jiǎn)單組成原理(只需要了解),當(dāng)然要知道cpu是什么?總線是什么?一些相關(guān)概念。
3、程序編寫的相關(guān)知識(shí),主要是匯編語(yǔ)言和c語(yǔ)言。了解結(jié)構(gòu)化語(yǔ)言的程序設(shè)計(jì)方法,也就是三種結(jié)構(gòu)(順序結(jié)構(gòu)、分支結(jié)構(gòu)(或稱選擇結(jié)構(gòu))、循環(huán)結(jié)構(gòu)),會(huì)一些常用的算法。
4、以上是基礎(chǔ),有了這些基礎(chǔ),學(xué)習(xí)51單片機(jī)就只要花幾周的時(shí)間就能上手。但學(xué)習(xí)單片機(jī)時(shí),主要從單片機(jī)的存儲(chǔ)器開始,其中特殊功能寄存器是重點(diǎn),學(xué)會(huì)之后,就可以學(xué)習(xí)單片機(jī)的基礎(chǔ)部分了,主要是四個(gè)部分:51單片機(jī)i/o口的使用、中斷的使用、定時(shí)器的使用、外部器件的擴(kuò)展。這些部分都可以用軟件仿真(可以用proteus軟件)。
5、可以買一兩塊廉價(jià)的單片機(jī)開發(fā)板,用廉價(jià)的方法(可以用熱轉(zhuǎn)印法做PCB板)仿制一些更簡(jiǎn)單的實(shí)驗(yàn)功能板,開始做板時(shí)千萬(wàn)不做得太復(fù)雜,我?guī)н^(guò)的很多學(xué)生中,有少部分人總是覺得太簡(jiǎn)單了,做個(gè)復(fù)雜的,結(jié)果做了個(gè)把星期,沒有成功,最后只有放棄。還有一點(diǎn)很重要,就是用proteus仿真時(shí),最好只做單一功能的仿真,否則可能與實(shí)際在硬件上做的結(jié)果不一樣。
6、從網(wǎng)上下載一些實(shí)例進(jìn)行研究學(xué)習(xí),不斷提高。
單片機(jī)學(xué)習(xí)總結(jié)與心得[篇3]
學(xué)習(xí)《微機(jī)原理》過(guò)后,其實(shí)還是挺期待學(xué)習(xí)《單片機(jī)》的,因?yàn)閭(gè)人感覺還是挺有意思的,但是課程安排在大四了,大四對(duì)于大多數(shù)即將畢業(yè)的學(xué)生來(lái)說(shuō)是忙碌的,每個(gè)人都有自己該做的事情,找工作的、考研的,考公務(wù)員的一直忙著起來(lái),很少有人真正的想去上學(xué)校所安排的課,雖然對(duì)于一部分人來(lái)說(shuō),它很重要,但是面臨這樣的選擇時(shí),好多人會(huì)選擇前者,這在課堂上還是可以看的出來(lái)的。
我可能與其他人寫的稍有些不同,想說(shuō)出自己的一些想法,實(shí)事求是,力求把基本的情況反映出來(lái),其實(shí)《單片機(jī)》的課程還是挺多的,我呢,也曠了幾節(jié)課,可能在老師的點(diǎn)名表上可以顯現(xiàn)出來(lái),在課上偶爾也會(huì)聽老師您講的內(nèi)容,不過(guò),可能是這塊不開竅,對(duì)于我來(lái)說(shuō),有點(diǎn)深,也或者可以這么說(shuō),自己沒花一定的功夫在這上,導(dǎo)致跟不上老師上課的節(jié)奏。其實(shí),多數(shù)人都是這樣,學(xué)習(xí)單片機(jī)課程的意識(shí)不強(qiáng),本身學(xué)習(xí)單片機(jī)也比較困難,看書上說(shuō),學(xué)習(xí)單片機(jī),要掌握單片機(jī)指令系統(tǒng)中匯編語(yǔ)言各種基本語(yǔ)句的意義及匯編語(yǔ)言程序設(shè)計(jì)的基本知識(shí)和方法,以及單片機(jī)與其他設(shè)備相連接的輸入輸出中斷等接口-技術(shù)。使我們從硬件軟件的結(jié)合上理論聯(lián)系實(shí)際,提高動(dòng)手能力,從而全面掌握單片機(jī)的應(yīng)用。其實(shí)總結(jié)一句話,就是學(xué)習(xí)好理論知識(shí)并較好的用于實(shí)踐。
學(xué)習(xí)哪一門課程都會(huì)給我們一定的影響,單片機(jī)也一樣,雖然自己很清楚自己的情況,但是有時(shí)感覺,會(huì)編程的人挺牛的,這么多的軟件,影響著我們生活的各個(gè)方面,生活已經(jīng)離不開編程,離不開單片機(jī),離不開我們所學(xué)的知識(shí)。舉幾個(gè)例子,因?yàn)樗膽?yīng)用范圍很廣,在工業(yè)自動(dòng)化中應(yīng)用的數(shù)據(jù)采集、測(cè)控技術(shù)。在智能儀器儀表中應(yīng)用的數(shù)字示波器、數(shù)字信號(hào)源、數(shù)字萬(wàn)用表、感應(yīng)電流表,自動(dòng)取款機(jī)等。在消費(fèi)類電子產(chǎn)品中應(yīng)用的洗衣機(jī)、電冰箱、空調(diào)機(jī)、電視機(jī)、微波爐、手機(jī)、ic卡、汽車電子設(shè)備等。在通訊方面應(yīng)用的調(diào)制解調(diào)器、程控交換技術(shù)、手機(jī)、小靈通等。在武器裝備方面應(yīng)用的飛機(jī)、軍艦、坦克、導(dǎo)彈、航天飛機(jī)、魚雷制導(dǎo)、智能武器等。
寫這報(bào)告自己也想了想,自己還有好多方面的不足,不僅僅體現(xiàn)在所學(xué)的課程上,更體現(xiàn)在學(xué)習(xí)專業(yè)知識(shí)的態(tài)度上,體現(xiàn)在個(gè)人專業(yè)能力方面,雖然可能自己在這方便沒什么大的造詣,但堅(jiān)信自己,朝著已定方向前進(jìn),實(shí)現(xiàn)個(gè)人價(jià)值不在久遠(yuǎn)。
單片機(jī)學(xué)習(xí)總結(jié)與心得[篇4]
人的一生是一個(gè)不斷學(xué)習(xí)、不斷成長(zhǎng)的過(guò)程。轉(zhuǎn)眼間,研究生的學(xué)習(xí)生涯結(jié)束了,走上新的工作崗位;仡^看看,發(fā)現(xiàn)自己不知不覺已經(jīng)走過(guò)了五年的單片機(jī)學(xué)習(xí)之旅。
在2017年最初接觸單片機(jī)的時(shí)候,在我心中覺得51就是單片機(jī),單片機(jī)就是51,根本不知道還有其他單片機(jī)的存在。那時(shí)候老師只教會(huì)了我們匯編語(yǔ)言,根本不知道用c語(yǔ)言也可以進(jìn)行單片機(jī)開發(fā)。幸運(yùn)的是,我加入了單片機(jī)興趣小組,在老師的指導(dǎo)下,做了一系列實(shí)驗(yàn),有“基于ds18b20的溫度采集系統(tǒng)”、“有基于164的移位寄存器的燈光控制系統(tǒng)”、“有步進(jìn)電機(jī)和直流電機(jī)的控制系統(tǒng)”。這時(shí)候我才發(fā)現(xiàn),這是學(xué)習(xí)單片機(jī)的一個(gè)最好途徑——在實(shí)踐中領(lǐng)悟理論,用理論指導(dǎo)實(shí)踐。在上課的整整一個(gè)學(xué)期中,雖然老師講得很詳細(xì),但是大部分概念都是到了實(shí)際動(dòng)手做東西的時(shí)候才弄明白的。而且在經(jīng)歷了迷惑之后再搞清楚,印象就特別深刻。直到現(xiàn)在我對(duì)那些概念和接口都非常清晰。其實(shí)我也很慶幸學(xué)習(xí)和使用了兩年多的匯編語(yǔ)言。由于有這些鍛煉,我對(duì)單片機(jī)底層結(jié)構(gòu)和接口時(shí)序就弄得很清楚。在使用c語(yǔ)言開發(fā)的時(shí)候,優(yōu)化代碼和處理中斷也就不會(huì)太費(fèi)勁。我覺得,雖然現(xiàn)在絕大部分單片機(jī)開發(fā)都使用c語(yǔ)言,甚至有些公司還推出了圖形化編程的工具,這樣對(duì)于項(xiàng)目的開展從時(shí)間上快了很多,在管理上也規(guī)范了不少,但是從學(xué)習(xí)和想深入掌握單片機(jī)精髓的角度來(lái)說(shuō),還是需要熟練掌握匯編語(yǔ)言的使用。
機(jī)會(huì)總是青睞于有準(zhǔn)備的人。也許有了前面一段時(shí)間的理論和實(shí)踐的積累,我才慢慢得到了一些參加科技競(jìng)賽和參與科研項(xiàng)目的機(jī)會(huì)。在參加第一屆浙江省機(jī)械設(shè)計(jì)競(jìng)賽的時(shí)候,我們?cè)O(shè)計(jì)的由多單片機(jī)系統(tǒng)協(xié)調(diào)控制的“月球車”機(jī)器人奪得了唯一的一個(gè)特等獎(jiǎng)。這個(gè)競(jìng)賽給我最大的收獲是我對(duì)單片機(jī)的認(rèn)識(shí)改變了,它不再僅僅是一門學(xué)科了,它是一個(gè)可以讓你的創(chuàng)意得到充分發(fā)揮的平臺(tái)。后來(lái)參與了“基于視頻分劃技術(shù)的鋼卷尺自動(dòng)切零位機(jī)”、“電能表渦杠渦輪嚙合深度檢測(cè)系統(tǒng)”、“基于公共電話網(wǎng)的水表集抄數(shù)據(jù)路由器”、“高精度電感微位移測(cè)量系統(tǒng)”等一些實(shí)際的項(xiàng)目。在這些過(guò)程中,我發(fā)現(xiàn)只是精通單片機(jī)技術(shù)還不能很好的解決問(wèn)題。體會(huì)最深的是,單片機(jī)只有融合到各種應(yīng)用領(lǐng)域中,才能展現(xiàn)它的最大活力。然而單片機(jī)僅僅是一個(gè)工具而已,要做好單片機(jī)系統(tǒng)還需要各種應(yīng)用領(lǐng)域的專業(yè)知識(shí)的支持。例如,在“基于視頻分劃技術(shù)的鋼卷尺自動(dòng)切零位機(jī)”中,就需要搞清楚全電視信號(hào)的時(shí)序,弄明白鋼卷尺切零位機(jī)的工作原理,懂得怎么利用疊加在視頻信號(hào)中的橫豎線來(lái)進(jìn)行刻度的瞄準(zhǔn)等。沒有這些專業(yè)知識(shí),就算單片機(jī)技術(shù)再厲害也不可能做好這個(gè)項(xiàng)目。脫離應(yīng)用背景的單片機(jī)開發(fā),就像一個(gè)沒有靈魂的軀體一樣。
隨著arm的出現(xiàn),我曾經(jīng)認(rèn)為,8位單片機(jī)可能在32位單片機(jī)的沖擊下就此走進(jìn)歷史,可是很快就認(rèn)識(shí)到我是錯(cuò)誤的。隨著技術(shù)的革新和時(shí)間的推移,各大單片機(jī)公司紛紛將單片機(jī)朝著片上系統(tǒng)這個(gè)方向發(fā)展,集成了現(xiàn)在各種流行的技術(shù)和常用的模塊。我相信,在當(dāng)前國(guó)內(nèi)和國(guó)外的這個(gè)市場(chǎng)中,8位單片機(jī)應(yīng)用的市場(chǎng)仍然是充滿生機(jī),活力無(wú)限。在市場(chǎng)的不斷變化和技術(shù)的不斷更新過(guò)程中,8位單片機(jī)也會(huì)順應(yīng)潮流不斷革新。
從我五年走過(guò)的路來(lái)看,單片機(jī)學(xué)習(xí)的過(guò)程應(yīng)該是一個(gè)循序漸進(jìn)、不斷學(xué)習(xí)、不斷積累的過(guò)程,可以分為三個(gè)階段。
第一階段:掌握開發(fā)單片機(jī)的必備基礎(chǔ)知識(shí)。首先是熟練掌握單片機(jī)的基本原理,其實(shí)各家各門的單片機(jī)其基本結(jié)構(gòu)和原理都差不多,特別是共有的知識(shí)需要好好理解和掌握。例如,內(nèi)核結(jié)構(gòu)、內(nèi)存分配、中斷處理、定時(shí)計(jì)數(shù)、串行通信、端口復(fù)用等一些最基本的概念和原理。除此之外,我們還需要具備模擬電子、數(shù)字電子、c語(yǔ)言程序開發(fā)知識(shí)以及原理圖和pcb設(shè)計(jì)等一些技能。在進(jìn)行系統(tǒng)開發(fā)的時(shí)候,進(jìn)行原理設(shè)計(jì)、pcb布板、程序編寫、系統(tǒng)聯(lián)調(diào)這些工作都是在所難免的。
第二階段:在掌握好一款單片機(jī)原理和應(yīng)用的基礎(chǔ)上,開始學(xué)習(xí)其他各家單片機(jī)的獨(dú)有技術(shù),學(xué)不了那么多也要多了解了解。同時(shí)盡可能多地掌握單片機(jī)的一些外圍器件和常用電路,以備不時(shí)之需。有時(shí)候客戶要求低成本,那我們只好選用合鈦、義隆、華邦等這類臺(tái)灣芯片;如果客戶要求工業(yè)級(jí)的性能,那么我們就得從pic、nec、飛思卡爾、nxp等這些歐美和日式單片機(jī)中選擇;若要進(jìn)行功耗的開發(fā),選用msp430系列應(yīng)該有一定優(yōu)勢(shì);在進(jìn)行測(cè)量?jī)x器設(shè)計(jì)的時(shí)候,c8051和aduc842這類數(shù)模混合芯片就顯得比較方便。所以說(shuō)最好每個(gè)類型的單片機(jī)都會(huì)一兩款,在實(shí)際項(xiàng)目選型中可以更加靈活。另外,要注意平時(shí)的技術(shù)積累。比如,在項(xiàng)目開發(fā)過(guò)程中將一些常用的接口程序和控制算法整理成模塊或者函數(shù),在其他的項(xiàng)目開發(fā)中,有同樣或者接近的需求時(shí)馬上就可以使用,又快又好。
第三階段:在實(shí)際的項(xiàng)目開發(fā)過(guò)程中,不斷深化單片機(jī)應(yīng)用技術(shù),不斷積累應(yīng)用行業(yè)的專業(yè)知識(shí)。例如,我完成了“高精度電感微位移測(cè)量系統(tǒng)”,就會(huì)對(duì)電感傳感器的測(cè)量機(jī)理和信號(hào)特性、測(cè)量電路的設(shè)計(jì)、電磁兼容處理、誤差修正和非線性處理等測(cè)控方面的專業(yè)技術(shù)有很深的認(rèn)識(shí)。以后碰到類似的項(xiàng)目時(shí),很多東西就可以直接利用了。有了扎實(shí)的單片機(jī)應(yīng)用相關(guān)的基礎(chǔ)知識(shí),并且熟悉掌握了幾款不同類型單片機(jī)的開發(fā)方法,再結(jié)合實(shí)際的應(yīng)用背景,那么就可以隨心所欲,設(shè)計(jì)出性能最優(yōu)、結(jié)構(gòu)最合理的單片機(jī)應(yīng)用系統(tǒng)。這是我最大的奮斗目標(biāo),我覺得這也應(yīng)該是單片機(jī)應(yīng)用的最高境界吧。
在這五年的學(xué)習(xí)中,有感慨、有遺憾、有憧憬、有希望,更重要的是我對(duì)單片機(jī)應(yīng)用這個(gè)領(lǐng)域充滿熱情。由于才疏學(xué)淺、涉世未深,希望能與行業(yè)里的各位老師多多交流,不斷學(xué)習(xí),不斷成長(zhǎng)。
【單片機(jī)學(xué)習(xí)總結(jié)與心得】相關(guān)文章:
單片機(jī)學(xué)習(xí)心得01-05
單片機(jī)課程學(xué)習(xí)總結(jié)12-08
單片機(jī)實(shí)習(xí)心得體會(huì)03-22
單片機(jī)實(shí)訓(xùn)的心得體會(huì)12-15
單片機(jī)實(shí)習(xí)的心得體會(huì)三篇12-03