通過寫心得體會可以讓我們更好地總結和提煉知識,形成自己的獨特見解和觀點。參考他人的心得體會可以幫助我們對特定主題有更全面的了解和認識。
兩周的單片機課程設計實訓,真是讓我們受益匪淺,學到了很多東西,不管怎么樣,先感謝學校給我的這么多機會.真正的學到了東西。
此次課程設計軟件與硬件相結合,考察了我們的焊接水平與編程能力.因為以前做過關于焊接的電工實習,所以對于我們機械設計專業的學生而言焊接是不成問題,也很順利;可到了編程時就出現了很大的障礙,先開始的顯示時鐘還算順利,本來還以為編程會很簡單的,等到實際操作起來才知道它的復雜性,沒有想像中的那么得心應手,理解流程是有思維的前提。
其實本身程序的思維是正確的,只是步驟中有點小錯誤,所以導致整個程序的結果很亂,在仔細修改程序之后,終于一步步地達到效果了。
系統以at89s51為核心部件,利用軟件編程,通過鍵盤控制和液晶顯示實現了秒表的功能,能實現本設計題目的基本要求和發揮部分。
盡量做到硬件電路簡單穩定,充分發揮軟件編程的優點,減小因元器件精度不夠引起的誤差。
我們將各個部分的程序編好后怎么都連不起來,出不了預期的效果.對于硬件在編程過程中pcb板的接觸又是一個頭疼的問題,在進行編譯的時候,數碼顯示管上什么都沒有,按一下旁邊與之相連的元器件時就有顯示了,所以也花費了好多時間在pcb板的重新焊接上,最后在全組人竭盡全力,老師的精心指導下,程序基本編寫成功,這是我們共同努力的結果,在享受我們成果之時,不得不感慨單片機的重要性與高難度性,所以為期兩周的單片機課程設計沒有浪費,我們從中學到了很多知識,也讓我們對單片機有了更深一步的了解.雖然最后結果是出來了,可這與老師的精心指導是分不開的,他引導我們的思路,本來一竅不通的我們經過老師的點撥基本上通了,所以說老師是功不可抹的。
由于時間有限和本身知識水平的限制,本系統還存在一些不夠完善的地方,要作為實際應用還有一些具體細節問題需要解決。
踉踉蹌蹌地忙碌了兩周,我的單片機課程設計也終將告一段落。
設計實物也基本達到預期的效果,但由于能力和時間的關系,總是覺得有很多不盡人意的地方,譬如功能不全、外觀粗糙……數不勝數。
但我可以自豪的說,這里面的每一段代碼,都有我的勞動。
當看著自己的程序,自己成天相伴的系統能夠健康的運行,真是莫大的幸福和欣慰。
我相信其中的酸甜苦辣最終都會化為甜美的甘泉。
總而言之,單片機課程設計對于我們有很大的幫助,我們從中受益匪淺。
一周的實訓,讓我們從另一個角度去發現單片機。
期間我學會了很多寶貴的.知識和經驗,在這次單片機實訓中我們鞏固了我們平時所學的內容;加深了對各種調試和仿真軟件的使用技能;掌握了單片機應用電路的設計和調試方法。
首先,我們要從所給定的元器件中設計出6個不同的電路,并編寫程序實現相關任務要求。
我們小組設計出的電路主有:
(1)數碼管輪流顯示百十個位的數。
要求:數據來源于撥碼開關;個位顯示完畢停留的時間稍微長些。
(2)定時計數器實現對外部脈沖計數5次后,流水燈的狀態由亮點左流動轉化成閃爍5次,然后回到初始狀態。
(3)單鍵改變流水燈狀態。
按鍵一旦按下,流水燈狀態由暗點右流動轉化成閃爍8次,然后回到初始狀態。
(4)雙鍵改變流水燈狀態。
按鍵k0(連接int0)按下,流水燈狀態由亮點左流動,轉化成閃爍5次,然后回到初始狀態;按鍵k1(連接int1)按下,流水燈狀態由亮點左流動,轉化成暗點右流動至最右端,然后回到初始狀態;并且按鍵k1級別高于k0。
(5)串口輸出數據,實現在2個數碼管上顯示60秒計數器。
(6)在集成的8位數碼管上動態顯示出:1——8的效果。
其次,我們要對我們所設計的電路進行電路布局、連線,檢查電路是否出現錯誤或者遺漏。
然后,學會用keil軟件調試程序,并用該軟件菜單的各項調試工具和窗口。
再結合硬件和軟件,進行整體調試。
最后,當我們根據相關要求從所給定的元器件中設計出6個不同的電路、編寫程序、線路布局,調試成功,我們的設計就完成了。
在這實訓期間我深刻的認識到了理論知識和實踐操作必須是相結合的,也許在實訓時會有很多各種軟、硬件等故障。
在編程時我們就出現了很大的障礙, 本來還以為編程會很簡單的,等到實際操作起來才知道它的復雜性,沒有想像中的那么得心應手, 最后不得不求出其他小組,原來本身程序的思維是正確的,只是步驟中有點小錯誤,所以導致整個程序的結果很亂。
我們在做雙鍵改變流水燈狀態的電路時又發現了一個頭痛的問題,發光二極管不亮、開關不管用,剛開始的時候,我們檢查了好幾遍就是沒有發現問題,快要失去耐心是發現少兩連接了兩根線,這是個好現象讓我們有了繼續往下的勇氣,終于在反復的檢查研究中,我們發現發光二極管不亮的正負方向反了,開關接錯了位臵,這才導致連接線路期間的錯誤不斷。
結果是可喜的,在我們小組竭盡全力,同學老師的幫忙下,我們的電路很成功。
我們會遇到很多挫折,不要氣餒,不要放棄。
我們只有這樣才能提高自己的實際操作能力;培養自己獨立思考能力;樹立良好的心理素質和吃苦耐勞精神。
因此,本實訓對培養學生正確的勞動觀念、組織紀律性、團隊合作精神
很多人說,學單片機最好先學匯編語言,以我的經驗告訴大家,絕對沒有這個必要,初學者一開始就直接用c語言為單片機編程,既省時間,學起來又容易,進步速度會很快。
在剛開始學單片機的時候,千萬不要為了解單片機內部結構而浪費時間,這樣只能打擊你的信心,當你學會編程后,自然一步步就掌握其內部結構了。單片機提高重在實踐,想要學好單片機,軟件編程必不可少。但是熟悉硬件對于學好單片機的也是非常重要的。
如何學習好硬件,動手實踐是必不可少的。我們可以通過自己動手做一個自己的電子制作,通過完成它,以提高我的對一些芯片的了解和熟練運用它。這樣我們就可以多一些了解芯片的結構。我相信,你完成了一個屬于自己的電子制作,你的單片機水平就會有一個質的提高。
這就是我學習單片機的心得體會,希望給單片機的愛好者學好單片機有所幫助。
使用單片機就是理解單片機硬件結構,以及內部資源的應用,在匯編或c語言中學會各種功能的初始化設置,以及實現各種功能的程序編制。
第一步:數字i/o的使用。顯示輸出電平,就可以學習引腳的數字i/o功能,在按下某個按鈕后,某發光二極管發亮,這就是數字電路中組合邏輯的功能,雖然很簡單,但是可以學習一般的單片機編程思想,例如,必須設置很多寄存器對引腳進行初始化處理,才能使引腳具備有數字輸入和輸出輸出功能。每使用單片機的一個功能,就要對控制該功能的寄存器進行設置,這就是單片機編程的特點,千萬不要怕麻煩,所有的單片機都是這樣。
第二步:定時器的使用。學會定時器的使用,就可以用單片機實現時序電路,時序電路的功能是強大的,在工業、家用電氣設備的控制中有很多應用,例如,可以用單片機實現一個具有一個按鈕的樓道燈開關,該開關在按鈕按下一次后,燈亮3分鐘后自動滅,當按鈕連續按下兩次后,燈常亮不滅,當按鈕按下時間超過2s,則燈滅。數字集成電路可以實現時序電路,可編程邏輯器件(pld)可以實現時序電路,可編程控制器(plc)也可以實現時序電路,但是只有單片機實現起來最簡單,成本最低。定時器的使用是非常重要的,邏輯加時間控制是單片機使用的基礎。
第三步:中斷。單片機的特點是一段程序反復執行,程序中的每個指令的執行都需要一定的執行時間,如果程序沒有執行到某指令,則該指令的動作就不會發生,這樣就會耽誤很多快速發生的事情,例如,按鈕按下時的下降沿。要使單片機在程序正常運行過程中,對快速動作做出反應,就必須使用單片機的中斷功能,該功能就是在快速動作發生后,單片機中斷正常運行的程序,處理快速發生的動作,處理完成后,在返回執行正常的程序。中斷功能使用中的困難是需要精確地知道什么時候不允許中斷發生(屏蔽中斷)、什么時候允許中斷發生(開中斷),需要設置哪些寄存器才能使某種中斷起作用,中斷開始時,程序應該干什么,中斷完成后,程序應該干什么等等。中斷學會后,就可以編制更復雜結構的程序,這樣的程序可以干著一件事,監視著一件事,一旦監視的事情發生,就中斷正在干的事情,處理監視的事情,當然也可以監視多個事情,形象的比喻,中斷功能使單片機具有吃著碗里的,看著鍋里的功能。
以上三步學會,就相當于降龍十八掌武功,會了三掌了,可以勉強護身。
第四步:與pc機進行rs232通信。單片機都有usart接口,特別是msp430系列中很多型號,都具有兩個usart接口。usart接口不能直接與pc機的rs232接口連接,它們之間的邏輯電平不同,需要使用一個max3232芯片進行電平轉換。usart接口的使用是非常重要的,通過該接口,可以使單片機與pc機之間交換信息,雖然rs232通信并不先進,但是對于接口的學習是非常重要的。正確使用usart接口,需要學習通信協議,pc機的rs232接口編程等等知識。試想,單片機實驗板上的數據顯示在pc機監視器上,而pc機的鍵盤信號可以在單片機實驗板上得到顯示,將是多么有意思的事情啊!
第五步:學會a/d轉換。map430單片機帶有多通道12位a/d轉換器,通過這些a/d轉換器可以使單片機操作模擬量,顯示和檢測電壓、電流等信號。學習時注意模擬地與數字地、參考電壓、采樣時間,轉換速率,轉換誤差等概念。使用a/d轉換功能的簡單的例子是設計一個電壓表。
第六步:學會pci、i2c接口和液晶顯示器接口。這些接口的使用可以使單片機更容易連接外部設備,在擴展單片機功能方面非常重要。
第七步:學會比較、捕捉、pwm這些功能可以使單片機能夠控制電機,檢測轉速信號,實現電機調速器等控制起功能。
如果以上七步都學會,就可以設計一般的應用系統,相當于學會十招降龍十八掌,可以出手攻擊了。
第八步:學習usb接口、tcp/ip接口、各種工業總線的硬件與軟件設計?學習usb接口、tcp/ip接口、各種工業總線的硬件與軟件設計是非常重要的,因為這是當前產品開發的發展方向。到此為止,相當于學會15招降龍十八掌,但還不到打遍天下無敵手的境界。
即使如此,也算是單片機大蝦了!
人的一生是一個不斷學習、不斷成長的過程。轉眼間,研究生的學習生涯結束了,走上新的工作崗位?;仡^看看,發現自己不知不覺已經走過了五年的單片機學習之旅。
在最初接觸單片機的時候,在我心中覺得51就是單片機,單片機就是51,根本不知道還有其他單片機的存在。那時候老師只教會了我們匯編語言,根本不知道用c語言也可以進行單片機開發。幸運的是,我加入了單片機興趣小組,在老師的指導下,做了一系列實驗,有“基于ds18b20的溫度采集系統”、“有基于164的移位寄存器的燈光控制系統”、“有步進電機和直流電機的控制系統”。這時候我才發現,這是學習單片機的一個最好途徑——在實踐中領悟理論,用理論指導實踐。在上課的整整一個學期中,雖然老師講得很詳細,但是大部分概念都是到了實際動手做東西的時候才弄明白的。而且在經歷了迷惑之后再搞清楚,印象就特別深刻。直到現在我對那些概念和接口都非常清晰。其實我也很慶幸學習和使用了兩年多的匯編語言。由于有這些鍛煉,我對單片機底層結構和接口時序就弄得很清楚。在使用c語言開發的時候,優化代碼和處理中斷也就不會太費勁。我覺得,雖然現在絕大部分單片機開發都使用c語言,甚至有些公司還推出了圖形化編程的工具,這樣對于項目的開展從時間上快了很多,在管理上也規范了不少,但是從學習和想深入掌握單片機精髓的角度來說,還是需要熟練掌握匯編語言的使用。
機會總是青睞于有準備的人。也許有了前面一段時間的理論和實踐的積累,我才慢慢得到了一些參加科技競賽和參與科研項目的機會。在參加第一屆浙江省機械設計競賽的時候,我們設計的由多單片機系統協調控制的“月球車”機器人奪得了唯一的一個特等獎。這個競賽給我最大的收獲是我對單片機的認識改變了,它不再僅僅是一門學科了,它是一個可以讓你的創意得到充分發揮的平臺。后來參與了“基于視頻分劃技術的鋼卷尺自動切零位機”、“電能表渦杠渦輪嚙合深度檢測系統”、“基于公共電話網的水表集抄數據路由器”、“高精度電感微位移測量系統”等一些實際的項目。在這些過程中,我發現只是精通單片機技術還不能很好的解決問題。體會最深的是,單片機只有融合到各種應用領域中,才能展現它的最大活力。然而單片機僅僅是一個工具而已,要做好單片機系統還需要各種應用領域的專業知識的支持。例如,在“基于視頻分劃技術的鋼卷尺自動切零位機”中,就需要搞清楚全電視信號的時序,弄明白鋼卷尺切零位機的工作原理,懂得怎么利用疊加在視頻信號中的橫豎線來進行刻度的瞄準等。沒有這些專業知識,就算單片機技術再厲害也不可能做好這個項目。脫離應用背景的單片機開發,就像一個沒有靈魂的軀體一樣。
隨著arm的出現,我曾經認為,8位單片機可能在32位單片機的沖擊下就此走進歷史,可是很快就認識到我是錯誤的。隨著技術的`革新和時間的推移,各大單片機公司紛紛將單片機朝著片上系統這個方向發展,集成了現在各種流行的技術和常用的模塊。我相信,在當前國內和國外的這個市場中,8位單片機應用的市場仍然是充滿生機,活力無限。在市場的不斷變化和技術的不斷更新過程中,8位單片機也會順應潮流不斷革新。
從我五年走過的路來看,單片機學習的過程應該是一個循序漸進、不斷學習、不斷積累的過程,可以分為三個階段。
第一階段:掌握開發單片機的必備基礎知識。首先是熟練掌握單片機的基本原理,其實各家各門的單片機其基本結構和原理都差不多,特別是共有的知識需要好好理解和掌握。例如,內核結構、內存分配、中斷處理、定時計數、串行通信、端口復用等一些最基本的概念和原理。除此之外,我們還需要具備模擬電子、數字電子、c語言程序開發知識以及原理圖和pcb設計等一些技能。在進行系統開發的時候,進行原理設計、pcb布板、程序編寫、系統聯調這些工作都是在所難免的。
第二階段:在掌握好一款單片機原理和應用的基礎上,開始學習其他各家單片機的獨有技術,學不了那么多也要多了解了解。同時盡可能多地掌握單片機的一些外圍器件和常用電路,以備不時之需。有時候客戶要求低成本,那我們只好選用合鈦、義隆、華邦等這類芯片;如果客戶要求工業級的性能,那么我們就得從pic、nec、飛思卡爾、nxp等這些歐美和日式單片機中選擇;若要進行功耗的開發,選用msp430系列應該有一定優勢;在進行測量儀器設計的時候,c8051和aduc842這類數?;旌闲酒惋@得比較方便。所以說最好每個類型的單片機都會一兩款,在實際項目選型中可以更加靈活。另外,要注意平時的技術積累。比如,在項目開發過程中將一些常用的接口程序和控制算法整理成模塊或者函數,在其他的項目開發中,有同樣或者接近的需求時馬上就可以使用,又快又好。
第三階段:在實際的項目開發過程中,不斷深化單片機應用技術,不斷積累應用行業的專業知識。例如,我完成了“高精度電感微位移測量系統”,就會對電感傳感器的測量機理和信號特性、測量電路的設計、電磁兼容處理、誤差修正和非線性處理等測控方面的專業技術有很深的認識。以后碰到類似的項目時,很多東西就可以直接利用了。有了扎實的單片機應用相關的基礎知識,并且熟悉掌握了幾款不同類型單片機的開發方法,再結合實際的應用背景,那么就可以隨心所欲,設計出性能最優、結構最合理的單片機應用系統。這是我最大的奮斗目標,我覺得這也應該是單片機應用的最高境界吧。
在這五年的學習中,有感慨、有遺憾、有憧憬、有希望,更重要的是我對單片機應用這個領域充滿熱情。由于才疏學淺、涉世未深,希望能與行業里的各位老師多多交流,不斷學習,不斷成長。
一、什么是單片機?
在一片集成電路芯片上集成微處理器、存儲器、i/o接口電路,從而構成了單芯片微型計算機,即單片機。intel公司推出了mcs-51系列單片機:集成8位cpu、4k字節rom、128字節ram、4個8位并口、1個全雙工串行口、2個16位定時/計數器。尋址范圍64k,并有控制功能較強的布爾處理器。
(1)用到單片機的項目經驗介紹;
(2)手持糧庫溫度尋檢設備;
(3)畢設答辯打分器;
(4)電話臺燈;
(5)自動感應水龍頭;
(7)工業自動化:數據采集、測控技術;
(8)智能儀器儀表:數字示波器、數字信號源、數字萬用表、感應電流表等;
子設備等;
(10)通訊方面:調制解調器、程控交換技術、手機、小靈通等;
(11)武器裝備:飛機、軍艦、導彈、航天飛機、魚雷制導、智能武器等;
三、學習單片機之前預備知識。
(1)數字電路中只有兩種電平:高和低;
高+5v低0v。
(2)rs232電平:計算機的串口:
高-12v低+12v。
所以計算機與單片機之間通訊時需要加電平轉換芯片;
(3)進制轉換與邏輯、算術運算;
(4)c語言基礎;
(5)80c51了解;
80c51是mcs-51系列中的一個典型品種;其它廠商以8051為基核開發出的cmos工藝單片機產品統稱為80c51系列。
(6)。
總線(bus)是計算機各部件之間傳送信息的公共通道。微機中有內部總線和外部總線兩類。內部總線是cpu內部之間的連線。外部總線是指cpu與其它部件之間的連線。外部總線有三種:數據總線db(databus),地址總線ab(addressbus)和控制總線cb(controlbus)。
(7)。
i/o口:四個8位并行i/o口,既可用作輸入,也可用作輸出;
t/c:兩個定時/記數器,既可以工作在定時模式,也可以工作在記數模式;
五個中斷源的中斷控制系統;
片內振蕩器和時鐘產生電路,石英晶體和微調電容需要外接。最高振蕩頻率取決于單片機型號及性能。
(8)c51數據存儲類型。
例:
數據類型變量名。
charvar1;。
bitflags;。
unsignedcharvextor[10];。
intwwww;。
注意:變量名不能用c語言中的關鍵字表示。
(9)包含的頭文件(可以在安裝目錄下inc目錄下查看)。
通常有:c.h。
常用有:52.h。
(定義特殊功能寄存器和位寄存器);
math.h(定義常用數學運算);
(10)中斷服務程序的格式。
函數名interruptnusingm。
{
函數內部實現….
}
(11)i/o口定義。
sbitbeep=p2^3;。
(12)單片機的基本時序。
機器周期和指令周期。
振蕩周期:也稱時鐘周期,是指為單片機提供時鐘脈沖信號的振蕩源的周期,tx實驗板上為11.0592mhz。
狀態周期:每個狀態周期為時鐘周期的2倍,是振蕩周期經二分頻后得到的。機器周期:一個機器周期包含6個狀態周期s1~s6,也就是12個時鐘周期。在一個機器周期內,cpu可以完成一個獨立的操作。
指令周期:它是指cpu完成一條操作所需的全部時間。每條指令執行時間都是有一個。
或幾個機器周期組成。mcs-51系統中,有單周期指令、雙周期指令和四周期指令。
四、學習單片機目標。
最小系統能夠運行起來的必要條件:
(1)電源2.晶振3.復位電路。
(1)輸出控制電平高低2.輸入檢測電平高低。
定時器:重點掌握最常用的方式2。
中斷:外部中斷、定時器中斷、串口中斷。
串口通信:單片機之間、單片機與計算機間。
/***********************************/。
分類收錄的、優秀的電子技術網站現在越來越受電子技術愛好者青睞,但也有些電子技術愛好者愁于找不到一些優秀的電子技術網站來輔助學習與工作設計。因此,現在我將一位高級電子工程師歸納總結的電子行業技術網站、電子工程師必備網站匯總、整理;其包括單片機、dsp、嵌入式、plc、開關電源技術、通信技術、eda/pld可編程邏輯技術、電子技術論壇等等,這樣或許會對我們這些電子技術愛好者有莫大的幫助吧!電子世家網址導航:---電子技術工程師的上網主頁!
當我們經過反思,對生活有了新的看法時,好好地寫一份心得體會,這樣我們就可以提高對思維的訓練。是不是無從下筆、沒有頭緒?下面是小編收集整理的單片機實訓心得體會,歡迎閱讀與收藏。
我看到書上講:單片機可以用兩種語言編寫,一種是c語言,另外一種是匯編語言。匯編語言是一種機器語言,且代碼繁瑣,不易記憶。需要掌握單片機的內部結構和邏輯結構,通過看了幾本書讓我了解認識到匯編確實太繁瑣,不過我學習過c語言,也參加了全國計算機二級考試,覺得自己在一方面具有優勢,能很快學好它。
不過在學習中,我才發現學習單片機不僅僅需要軟件的知識,還需要硬件的知識。我買了一個單片機在實踐中就是一個活生生的例子,沒有相應的硬件知識,我連單片機怎么和電腦相連都不知道,我為我當初的想法感到羞愧。單片機是一門很好的學問,需要我去鉆研它。
時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機綜合課程設計也在一周內完成了。
俗話說“好的開始是成功的一半”。說起課程設計,我認為最重要的就是做好設計的預習,認真的研究老師給的題目,選一個自己有興趣的題目。其次,老師對實驗的講解要一絲不茍的`去聽去想,因為只有都明白了,做起設計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設計,到頭來一點收獲也沒有。最后,要重視程序的模塊化,修改的方便,也要注重程序的調試,掌握其方法。
雖然這次的課程設計算起來在實驗室的時間只有三天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。
硬件的設計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調試,最終一個能完成課程設計的勞動成果出來了,很高興它能按著設計的思想與要求運動起來。
當然,這其中也有很多問題,第一、不夠細心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導致編程出現錯誤。第二,是在學習態度上,這次課設是對我的學習態度的一次檢驗。對于這次單片機綜合課程實習,我的第一大體會就是作為一名工程技術人員,要求具備的首要素質絕對應該是嚴謹。我們這次實習所遇到的多半問題多數都是由于我們不夠嚴謹。第三,在做人上,我認識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰困難的勇氣,就沒有什么辦不到的。
開題日期:
完成日期:
題目八路彩燈。
一、設計的目的。
(1)根據原理圖分析各單元電路的功能;
(2)熟悉電路中所用到的各集成塊的管腳及其功能;
(3)進行電路的裝接、調試,直到電路能達到規定的設計要求;(4)寫出完整、詳細的課程設計報告。
二、設計的內容及要求設計任務。
設計一個八路彩燈邏輯控制電路。設計要求及器件。
(1)共有八個彩燈,分別實現三個過程,構成一個循環共25秒。(2)第一個過程要求八個燈從左到右依次點亮,各一秒,共八秒。(3)第二個過程要求八個燈從右到左依次熄滅,各一秒,共八秒。(4)最后八個燈同時閃爍八次,共8秒。
三、指導教師評語。
四、成績。
第1章概述。
設計一個八路彩燈邏輯控制電路。
1.1.2設計要求及器件。
(1)共有八個彩燈,分別實現三個過程,構成一個循環共25秒。(2)第一個過程要求八個燈從左到右依次點亮,各一秒,共八秒。(3)第二個過程要求八個燈從右到左依次熄滅,各一秒,共八秒。(4)最后八個燈同時閃爍八次,共8秒。
1.1.3設計任務及目標:(1)根據原理圖分析各單元電路的功能;
(2)熟悉電路中所用到的各集成塊的管腳及其功能;
(3)進行電路的裝接、調試,直到電路能達到規定的設計要求;(4)寫出完整、詳細的課程設計報告。
第2章.總體設計思路模塊。
2.1系統邏輯框圖。
如圖(1)所示,它由三部分組成。
2
發光。
與非。
2.2設計的方法。
首先確定所有的芯片都是上升沿有效。
(1)cp產生電路:由1個555定時器,兩個電阻分別是4.7k,51k和兩個電容分別是0.01uf,10uf構成的多諧振蕩器,它所產生秒脈沖主要是提供給74ls163和74ls194這兩個芯片。
(3)彩燈演示電路:由2片寄存器74ls194實現。八個輸出信號端連接八個保護發光二極管和八個發光二極管,第一個芯片的q3端連接到第二個芯片sr端,第二個芯片的sl端接地且q1端接到第一個芯片sl端。第二個芯片的q3同時接到8個輸入端d0~d7.
3
第3章.各單元電路圖及功能說明模塊。
3.1器件選擇。
3.1.1:計數器s163芯片的介紹。
74ls163引腳圖(2)。
74ls163工作波形圖。
74ls163是4位二進制同步計數器,它具有同步清零、同步置數的功能。74ls163的'外引線排列圖(2)所示,其功能表如表所示。cp是輸入計數脈沖,由555提供。
cr是清零端;ld是置數控制端;co是進位輸出端,d0~d3是并行數據輸入端,q0~q3是數據輸出端,并且q2輸出端提供給74ls190的cp脈沖。
4
1.無論什么時候我們都要以實際應用的角度去考慮程序的編寫。
2.無論什么時候都不要讓cpu白白浪費等待,尤其是延時(超過1ms)這樣的地方。
3.設計相應驅動電路時候,應該仔細閱讀芯片的數據手冊,了解每個引腳的驅動能力,以及整個芯片的驅動能力。
4.最重要的是,如何去釋放cpu(如果是led每500ms閃爍一次,那么可以設置1ms為基準,定時器定時1ms后,進入相應操作使計數加1,判斷達到500時,進入led,這些函數執行的時間是相當短的,如果主程序中還有其他函數,則cpu會順次往下執行,對于其它函數(有的話)也要采取相同的措施,保證其不堵塞cpu,若全部基于這種方法執行,我們的小系統依舊可以保證多個任務(多個函數)同時進行,系統的實時性得到了一定的保證。
),這是寫出合格程序的基礎。
5.數碼管顯示,動態顯示的亮度比靜態顯示要差一點,所以在限流電阻時應略小于靜態顯示電路中,動態掃描顯示刷新頻率最好大于50hz,即每顯示一輪的時間不超過20ms,每個數碼管顯示的時間不能太長也不能太短,時間太長會影響刷新率,導致總體顯示呈現閃爍的現象,時間太短發光二級管的電流導通時間也就短,會影響總體的顯示亮度,一般控制在1ms左右最佳。
6.模塊化編程,初學單片機的'時候(開始是c語言),是接觸一些芯片實現獨立的功能,如ds1302,ds18b20等,程序也不會很大,所以所有的程序都放在一個文件里面。
隨著學習的逐步深入,程序也愈來愈大,這給調試帶來了一定的困難,后來了解了模塊化編程這個概念,運用之后大大地改善了程序的可讀性和可移植性。
下面簡單的介紹。
#ifndef__ds1302_h__。
#define__ds1302_h__。
/*模塊ds1302.c文件中函數等的申明文件*/。
#endif。
//上面幾個條件編譯和宏定義是為了防止重復包含。
這樣我們就把各個模塊的接口函數都引出到各自的頭文件中,然后在主程序中調用這些模塊的*.h頭文件即可。
這點和c++中的類很像。
在數據類型定義的時候,有時候用typedef會取得很好的效果。
說到模塊化編程,以前曾看過不少大蝦的例子,他們的源文件和輸出下載文件是放在項目文件夾下地不同文件夾中,如源文件放在src文件夾中,輸出*.hex放在output文件夾中,這樣整個項目就更顯得清晰明了。
7.多任務程序,這個概念在前面也有提到,就是充分地利用cpu來實現多任務的前后臺操作,相當于自己用程序構造一個基于前后臺的多任務操作系統,換句話說就是通過定時器中斷合理地分配cpu資源來響應不同的任務。
多個任務需要cpu關照的頻度不一樣,我們選擇最快的那個頻度來作為定時器的節拍(通常為最小公倍數,這樣方便定時器分配),然后通過定時器分頻,即滿足各個任務的響應節拍。
voidtime。
掌握了單片機應用電路的設計和調試方法。
首先,我們要從所給定的元器件中設計出6個不同的電路,并編寫程序實現相關任務要求。我們小組設計出的電路主有:
(1)數碼管輪流顯示百十個位的數。要求:數據來源于撥碼開關;
個位顯示完畢停留的時間稍微長些。
(2)定時計數器實現對外部脈沖計數5次后,流水燈的狀態由亮點左流動轉化成閃爍5次,然后回到初始狀態。
(3)單鍵改變流水燈狀態。按鍵一旦按下,流水燈狀態由暗點右流動轉化成閃爍8次,然后回到初始狀態。
并且按鍵k1級別高于k0。
(5)串口輸出數據,實現在2個數碼管上顯示60秒計數器。
(6)在集成的8位數碼管上動態顯示出:1——8的效果。
其次,我們要對我們所設計的電路進行電路布局、連線,檢查電路是否出現錯誤或者遺漏。
然后,學會用keil軟件調試程序,并用該軟件菜單的各項調試工具和窗口。再結合硬件和軟件,進行整體調試。
最后,當我們根據相關要求從所給定的元器件中設計出6個不同的電路、編寫程序、線路布局,調試成功,我們的設計就完成了。
在這實訓期間我深刻的認識到了理論知識和實踐操作必須是相結合的,也許在實訓時會有很多各種軟、硬件等故障。
在編程時我們就出現了很大的障礙,本來還以為編程會很簡單的,等到實際操作起來才知道它的復雜性,沒有想像中的那么得心應手,最后不得不求出其他小組,原來本身程序的思維是正確的,只是步驟中有點小錯誤,所以導致整個程序的結果很亂。
我們在做雙鍵改變流水燈狀態的電路時又發現了一個頭痛的問題,發光二極管不亮、開關不管用,剛開始的時候,我們檢查了好幾遍就是沒有發現問題,快要失去耐心是發現少兩連接了兩根線,這是個好現象讓我們有了繼續往下的勇氣,終于在反復的檢查研究中,我們發現發光二極管不亮的正負方向反了,開關接錯了位臵,這才導致連接線路期間的錯誤不斷。結果是可喜的,在我們小組竭盡全力,同學老師的幫忙下,我們的電路很成功。
我們會遇到很多挫折,不要氣餒,不要放棄。我們只有這樣才能提高自己的實際操作能力;
培養自己獨立思考能力;
樹立良好的心理素質和吃苦耐勞精神。因此,本實訓對培養學生正確的勞動觀念、組織紀律性、團隊合作精神。
作為一名自動化專業的大學生,我覺得做單片機課程設計是十分有意義的',而且是十分必要的。在已度過的大學時間里,我們大多數接觸的是專業課。我們在課堂上掌握的僅僅是專業課的理論知識,如何去鍛煉我們的實踐能力?如何把我們所學的專業基礎課理論知識運用到實踐中去呢?我想做類似的課程設計就為我們提供了良好的實踐平臺。
在做本次課程設計的過程中,我感觸最深的當屬查閱大量的設計資料了。為了讓自己的設計更加完善,查閱這方面的設計資料是十分必要的,同時也是必不可少的。我們是在做單片機課程設計,但我們不是藝術家,他們可以拋開實際盡情在幻想的世界里翱翔,而我們一切都要有據可依,有理可尋,不切實際的構想永遠只能是構想,永遠無法升級為設計。
接下來的4月,我意外的接到系學生工作處主管陳老師來電,說我系承辦了院校園文化藝術節的南方擂臺知識搶答競賽,而學校又沒有搶答器,要我組織幾個學生做一個搶答器。我當時想,那好啊,做搶答器不難。以前有用與非門做過,于是我便爽快的答應了陳老師,并保證沒有問題,保質保量完成。當是可能是我想得太簡單了,搶答器不就八個按鍵一個數碼管顯示不就完了么,把最先搶到的組別顯示出來??墒堑街魅谓o我們提要求的時候才發現搶答器要實現我功能遠不只這么多,倒計時、蜂鳴提示、范規報警、電子計分器,這些我都沒有考慮進來。主任也說了,這是一次院級的比賽,電子系做的東西要拿的出手,要做就做點樣子出來。我想也好,雖有點難度,但符合我喜歡挑戰難度的性格。我說行!這個活我做了!
接到任務開始布屬,我把計分電路分了出去由其它幾個同學做,我專攻搶答部分。由于沒有獨立設計電路的經驗,剛開始得一步步慢慢深入,正好我會proteus。軟硬件的調度都靠它完成,這樣可以省很多的時間。做搶答器,我們花了一個月的時間,沒日沒夜的調試程序(當時單片機課程還沒學到定時器中斷,還得一邊自學。)做pcb板,采購元器件,安裝,調試,運行。那時,他們的計分電路也做好了,用了16個數碼管做顯示。我們將計分和搶答電路板及數碼管安裝在了事先木制的外殼上,進行整體調試。記得那時正趕上五一放假,而五月8號就是比賽了。我們都沒有休息,將工作間從實驗室搬到了寢室。那段時間雖然辛苦,但很充實,每個人收獲都特別大。
為了讓自己的編程水平能進一步提高,我將自己編寫的程序發到了論壇里與大家共享,并下載網友們的程序進行分析。電子鐘程序、液晶密碼鎖程序、跑馬燈程序、大屏幕點陣屏程序、上下位機通信程序等等,這些我都能熟練的掌握。我認為,學編程讀別人的程序非常重要,每個人都有不同的思維,相同的任務卻有很多不同的方法,在每個程序里都能找到些經典的段子,讓人回味。從中可以學到很多的方法,并且有些可以直接的引用。一個出色的程序員在編程時,并不是從零開始,而應該是先找出類似的例子進行分析,參考,看看有沒有值得引用和借鑒的地方,加以修改,為自己所用。實踐證明,這樣做是對的。從當初不知如何著手到現在隨手就能寫個幾百行,短短幾個月,我進步還是蠻快的。
做單片機課設那會,我幫助了班上不少的同學,幫他們調試過硬件,修改過程序,并為他們解答了一系列的疑惑。當同學們投來羨慕的目光時,我很自豪,這些都是我努力的結果。當然,努力歸努力,方法也很重要。在這里,我總結一下,與大家共勉:
1、基本功要雜實,要有一定的數模電基礎。學單片機首先要搞清楚它的基本結構和存儲單元的分配。
2、在學單片機的過程中,最好自己動手做一個單片機系統。先找現成的程序,現成的電路圖,做成實物,并以這個例子為開端,帶著疑問學習,往往更有目的,更主動。
3、有條件的話先個好的開發板,便實驗時之用。沒開發板,proteus軟件仿真也行。
4、多讀有代表性的程序,讀得多了自然就會學到很多的好方法??少I本單片機子程序集看看,也可網上下載程序分析。
5、多泡泡單片機相關的論壇,與大家多交流交流,單片機完全可以自學的。
我覺得以上幾點相當重要,因為它對我幫助很大,算是將我領進了單片機的大門,以至于我學起來不那么吃力,沒有感覺到像大家說的那樣的難。我看過很多的程序,也調試過很多的程序,每一次收獲都不小。我的實驗室就是keil和proteus。這使我做實驗很方便。雖是虛擬的,但調試程序還是可以的,省去了很多的時間提高了效率。最近我在學cx51,因為學單片機掌握c語言是非常重要的,c語言的通用性對學習其它類型的單片機有很大的幫助。今后,我想做嵌入式系統工程師,想學arm,想搞操作系統。所以我現在必須打好基礎,這樣才能進步。
我學單片機的一些經歷。其實我并不是很厲害,我懂的也只是一點皮毛,只是曉得單片機是怎么回事,能編幾個小程序罷了。寫這些我只是想記錄一下我初學單片機的經歷。同時對于那些想開始學習單片機的朋友們,還是可以有一些值得借鑒的地方。希望大家都能學好單片機,那些覺得難的學得吃力的同學要對自己有信心,要多做多練,這樣才能培養學習興趣。只要堅持就能如愿,同志們,加油!
在整個單片的機的實驗過程中,我的思維發生了很多改變。
首先是,我沒有想到這個機器真的可以將電腦上的代碼看起來很簡單的轉換成電路的通斷。雖然這個和我們的手機芯片,電腦cpu比起來還差了很多,但是原理可行,便是越做越復雜越做越小。
其次,這門課真的非常依靠我們的上課是不是認真聽,微電子電路精密的實驗就是這樣,任何一個位置的錯誤操作或者元器件的損壞都是不可能實現最后的結果的。
同樣在后面的文章中我還會談到語句的選擇問題,在這些實驗中我漸漸的學會了不套用書本上的語言而使用更多的我的思想。從那個定時裝置老師需要我們自己計算兩個量的乘積開始探索我們發現了我們可以做的有很多,可以去革新,可以去簡化。
最后我們的知識實在還是太渺小了,我們可以學的內容還是有很多的,如果想讓單片機這個領域有更好的發展,我們需要去尋找的還有很多。
一、實驗一定要內容清晰,思路清晰,弄懂每一行代碼。
在單片機的系統中,是像一些我們比較熟知的程序語言一樣,有自己的地址,有自己的工作方式和工作順序,因此我們在設計時是不能出一點差錯的,而因為每一行都在進行地址的轉換和堆棧的轉換,因此我們在實驗前一定要充分了解這次實驗全部要做的內容。
二、實驗過程可改變處多、很多路線可以歸結到統一的答案。
我們知道最基礎的單片機匯編語言結構形式由順序結構,分支結構,循環結構組成。在我們完成前面幾個實驗的時候,我們更多的是用的這些結構的本身。但是后面我們發現,其實在單片機系統中有著更多的方式可以完成同樣的目標。
例如,我們同樣是完成一個定時,前期可以使用循環進行定時,通過機器時間的計算來設置寄存器中的數字大小。但是當我們開始應用定時器的時候同樣可以做到我們想要的工作。而且我們發現定時器在和一些輸入輸出斷口的擴展連接上更好。
上述兩個語句就同樣是在做定時,但我們可以看到右側更加嚴謹,左側更加基礎。我們在實驗過程中也可以感受到兩者在方便性上的區別:左側的如果要進行更改,需要對立即數進行更改,而右側的一方面可以通過立即數的更改,一方面也可以通過修改特殊寄存器上的一些開關量來完成。
因為當匯編的代碼長起來之后,保持整個篇幅的整潔是十分重要的,在這個方面,之所以做出特殊寄存器就是這里的優越性,使用一個定時器要比中斷子程序容易一些。
和這個類似的例子還有不少,比如中斷子程序的使用和計數器的關系,比如鍵盤的一些連接方法。我們都可以比較其中的優缺點而選擇最適應用實驗現場的方案,即使他們都能達到最后的結果。
三、實驗跳出傳統的理論,需要考慮對機器的負荷,舍棄約等于。
我們在使用一些語句的時候,如果僅僅是書面上的,那么不論多么復雜的運算,只要最后能達到要求就可以,但是真正操作的時候收到很多限制,比如隨著語句的增多,機器總運行時間的增長,會讓整個程序非常的'卡。這個時候如何采取措施也是我們需要考慮的。
傳統的理論往往用了一些約等于,但是在現實的控制中并不接受一個延時為5ms的系統擁有微小的偏差,因為當這個程序在上萬次被調用的過程中,這個偏差會被無限放大。
而如何更改,還可以回到定時器和循環結構做延遲的選擇上,定時器要比循環要準確的多。
對于鍵盤,如果只使用傳統的理論,認為人們的操作都是無限準確的,是無法得到想要的結果的,所以人們就用智慧,加了延時判斷的語句,使得鍵盤這個裝置可以真正的派上用場。這就是理論和實際的差距,因為本身防抖效果的產生。
四、電路板內部究竟是什么。
做了很多實驗,我們感嘆電路板很厲害的同時,也需要去思考一下內部的電路結構。我們在書本上學習到這些是由大量的門電路組成的,這些門電路的連接具體是怎樣的我們不得而知。作為一個非?;A性的語言,匯編語言是很多高級語言的基礎,而這些硬件和門之間的連接同樣也是匯編的基礎。如果我們可以學習通過門的與或非的連接使得整個體系構成一個特殊寄存器,如果它具有普適的通用性,可能就是一個了不起的發明創造。
并且內部電路的構造對于我們的記憶是十分有必要的。我們在進行編碼的時候不可能一直查書,這樣會嚴重影響我們的工作效率,即使我們有工具書來進行查找,我們也需要很好的了解各個編碼的功能。而單片機的編碼構成是十分大量和冗雜的內容構成的。例如在中斷相關的知識,每一個特殊功能寄存器都有八位,而且大量的位都是有其特點,如果通過門電路的示意圖,就可以很快的進行記憶。
而這些開關量本身就是內部情況的一個反映。應用這些內部和外部的結合或許以后的某天我們可以設計出更多更優秀的微機系統。
通過這一個學期的單片機學習,我收獲了很多關于單片機的知識,并且這些知識和日常的生活息息相關。了解了一些簡單程序的錄入,led顯示器、鍵盤、和顯示器的應用和原理。
led顯示器:led顯示器是由發光二管組成顯示字段的器件。通常的8段led顯示器是由8個發光二極管組成,led顯示器分共陽極和共陰極兩種。有段選碼和和位選碼。當led顯示器每段的平均電流位5ma時,就有較滿意的亮度,一般選擇斷碼5-10ma電流;位線的電流應選擇40-80ma。led顯示器的顯示方式有動態和靜態兩種。7289a芯片是具有spi串行接口功能的顯示鍵盤控制芯片,它可同時取得8位共陰極數碼管和64個鍵的鍵盤矩陣。7289a的控制指令分為兩類:8位寬度的單字節指令和16位寬度雙字節指令;還有閃爍指令和消隱指令。7289a采用串行方式spi總線與微處理器通信;7289a與at89c52接口電路,在實際電路中無論接不接鍵盤,電路中連接到其各段上的8個100千歐的下拉電阻均不可以省去,如果不接鍵盤而只接顯示器可以省去8個10千歐電阻,若僅接鍵盤而不接顯示器,可省去串入dp及sa-sg連線的8個220歐電阻,7289a還需要外接晶體振蕩電路。液晶顯示器簡稱lcd,其顯示原理是用經過處后的液晶具有能改變光線傳輸方向的特性,達到顯示字符和圖形的目的。最簡單的筆段式液晶顯示器類似于lcd顯示器,可以顯示簡單的字符和數字,而目前大量使用的是點陣式lcd顯示器,既可以顯示字符和數字也可以顯示漢字和圖形。如果把lcd顯示屏、背光可變電源、接口控制邏輯、驅動集成芯片等部件構成一個整體,是的與cpu接口十分方便。
鍵盤:鍵盤是最常見的計算機輸入設備,它廣泛應用于微型計算機和各種終端設備上。計算機操作者通過鍵盤向計算機輸入各種指令、數據,指揮計算機的工作。按照鍵盤的工作原理和按鍵方式的不同,可以劃分為四種:機械式鍵盤采用類似金屬接觸式開關,工作原理是使觸點導通或斷開,具有工藝簡單、噪音大、易維護的特點。塑料薄膜式鍵盤鍵盤內部共分四層,實現了無機械磨損。其特點是低價格、低噪音和低成本,已占領市場絕大部分份額。導電橡膠式鍵盤觸點的結構是通過導電橡膠相連。鍵盤內部有一層凸起帶電的導電橡膠,每個按鍵都對應一個凸起,按下時把下面的觸點接通。這種類型鍵盤是市場由機械鍵盤向薄膜鍵盤的過渡產品。無接點靜電電容式鍵盤使用類似電容式開關的原理,通過按鍵時改變電極間的距離引起電容容量改變從而驅動編碼器。特點是無磨損且密封性較好。
按照按鍵方式的不同鍵盤可分為接觸式和無觸點式兩類。接觸式鍵盤就是我們通常所說的機械式鍵盤,它又分為普通觸點式和干簧式。普通觸點式的兩個觸點直接接觸,從而使電路閉合,產生信號;而干簧式鍵盤則是在觸點間加裝磁鐵,當鍵按下時,依靠磁力使觸點接觸,電路閉合。與普通觸點式鍵盤相比,干簧式鍵盤具有響應速度快、使用壽命長、觸點不易氧化等優點。無觸點式鍵盤又分為電容式、霍爾式和觸摸式三種。其中電容式是我們最常用到的鍵盤類型,它的觸點之間并非直接接觸,而是當按鍵按下時,在觸點之間形成兩個串聯的平板電容,從而使脈沖信號通過,其效果與接觸式是等同的。電容式鍵盤擊鍵時無噪聲,響應速度快,但是價格很高一些。
顯示器:按照顯示器的顯示管分類crt、lcd。按顯示色彩分類單色顯示器、彩色顯示器。按大小分類通常有14寸、15寸、17寸和19寸,或者更大。顯示管的屏幕上涂有一層熒光粉,電子槍發射出的電子擊打在屏幕上,使被擊打位置的熒光粉發光,從而產生了圖像,每一個發光點又由“紅”“綠”“藍”三個小的發光點組成,這個發光點也就是一個象素。由于電子束是分為三條的,它們分別射向屏幕上的這三種不同的發光小點,從而在屏幕上出現絢麗多彩的畫面。顯示器顯示畫面是由顯示卡來控制的。若仔細觀察顯示器上的文本或圖像是由點組成的,屏幕上點越多越密,則分辨率越高。
屏幕上相鄰兩個同色點的距離稱為點距,常見點距規格有0。31mm、0。28mm、0。25mm等。顯示器點距越小,在高分辨率下越容易取得清晰的顯示效果。電子束采用光柵掃描方式,從屏幕左上角一點開始,向右逐點進行掃描,形成一條水平線;到達最右端后,又回到下一條水平線的左端,重復上面的過程;當電子束完成右下角一點的掃描后,形成一幀。此后,電子束又回到左上方起點,開始下一幀的掃描。這種方法也就是常說的逐行掃描顯示。而隔行掃描指電子束在掃描時每隔一行掃一線,完成一屏后再返回來掃描剩下的線,這與電視機的原理一樣。隔行掃描的顯示器比逐行掃描閃爍得更厲害,也會讓使用者的眼睛更疲勞。完成一幀所花時間的倒數叫垂直掃描頻率,也叫刷新頻率,比如60hz、75hz等。
通過這幾天的單片機的實訓,我在理論的基礎上更深刻的掌握了單片機的深層內容及實際生活中的應用,實訓鍛煉了自己動手能力和思維能力,還有在軟件方面的編程能力,讓我受益匪淺,同時也暴露出一些平時學習上的問題,讓我深刻反思。這些問題的發現將為我以后的學習和工作找明道路,查漏補缺為進一步學習作好準備。通過實訓,讓我懂得了如何編寫一些簡單的程序,學會了如何制作單片機應用程序,并且可以在今后的日常生活中靈活運用。
很多想學單片機的人問我的第一句話就是怎樣才能學好單片機?對于這個問題我今天就我自己是如何開始學單片機,如何開始上手,如何開始熟練這個過程給大家講講。
先說說單片機,一般我們現在用的比較多的的mcs-51的單片機,它的資料比較多,用的人也很多,市場也很大。
就我個人的體會怎么樣才能更快的學會單片機這門課。
單片機這門課是一項非常重視動手實踐的科目,不能總是看書,但是學習它首先必須得看書,因為從書中你需要大概了解一下,單片機的各個功能寄存器,而說明白點,我們使用單片機就是用軟件去控制單片機的各個功能寄存器,再說明白點,就是控制單片機那些管腳的電平什么時候輸出高,什么時候輸出低。
由這些高低電平的變化來控制你的系統板,實現我們需要的各個功能。
至于看書,只需大概了解單片機各管腳都是干什么的?能實現什么樣的功能?第一次,第二次你可能看不明白,但這不要緊,因為還缺少實際的感觀認識。
所以我總是說,學單片機看書看兩三天的就夠了,看小說你一天能看五六本,看單片機你兩三天看兩三遍就夠了,可以不用仔細的看。
推薦一本書,就這一本就足夠,書名是《新編mcs-51單片機應用設計》,是哈爾濱工業大學出版社出的的,作者是張毅剛。
大概了解一下書上的內容,然后實踐,這是非常關鍵的,如果說學單片機你不實踐那是不可能學會的,關于實踐有兩種方法你可以選擇,一種方法:你自己花錢買一塊單片機的學習板,不要求功能太全的,對于初學者來說你買功能非常多的那種板子,上面有很多東西你這輩子都用不著,我建議有流水燈、數碼管、獨立鍵盤、矩陣鍵盤、ad或da(原理一樣)、液晶、蜂鳴器,這就差不多了。
如果上面我提到的這些,你能熟練應用,那可以說對于單片機方面的硬件你已經入門了,剩下的就是自己練習設計電路,不斷的積累經驗。
只要過了第一關,后面的路就好走多了,萬事開頭難,大家可能都聽過。
方法二:你身邊如果有單片機方面的高手,向他求助,讓他幫你搭個簡單的最小系統板。
對于高手來說,做個單片機的最小系統板只需要一分鐘的時間,而對于初學者可就難多了,因為只有對硬件了解了,才能熟練運用。
而如果你身邊沒有這樣的高手,又找不到可以幫助你的人,那我勸你最好是自己買上一塊,畢竟自己有一塊要方便的多,以后做單片機類的小實驗時都能用得上,還省事。
有了單片機學習板之后你就要多練習,最好是自己有臺電腦,一天少看電影,少打游戲,把學習板和電腦連好,打開調試軟件坐在電腦前,先學會怎么用調試軟件,然后從最簡單的流水燈實驗做起,等你能讓那八個流水燈按照你的意愿隨意流動時你已經入門了,你會發現單片機是多么迷人的東西啊,太好玩了,這不是在學習知識,而是在玩,當你編寫的程序按你的意愿實現時你比做什么事都開心,你會上癮的,真的。
做電子類的人真的會上癮。
然后讓數碼管亮起來,這兩項會了后,你已經不能自拔了,你已經開始考慮你這輩子要走哪一行了。
就是要這樣練習,在寫程序的'時候你肯定會遇到很多問題,而這時你再去翻書找,或是問別人,當得到解答后你會記住一輩子的,知識必須用于現實生活中,解決實際問題,這樣才能發揮它的作用,你自己好好想想,上了這么多年大學,天天上課,你在課堂上學到了什么?是不是為了期末考試而忙碌呢?考完得了90分,哈哈哈好高興啊,下學期開學回來忘的一干二凈,是不是?你學到什么了?但是我告訴你單片機一旦學會,永遠不會忘了。
另外我再說說用匯編和c語言編程的問題。
很多同學大一二就開設了c語言的課,我也上過,我知道那時天天就是幾乘幾,幾加幾啊,求個階乘啊。
學完了有什么用?讓你用c語言編單片機的程序你是不是就傻了?書上的東西我們必須要會運用。
單片機編程用c語言或匯編語言都可以,但是我建議用c語言比較好,如果原來有c語言的基礎那學起來會更好,如果沒有,也可以邊學單片機邊學c語言,c語言也挺簡單,只是一門工具而已,我勸你最好學會,將來肯定用得著,要不你以后也得學,你一點匯編都不會根本無所謂,但你一點c語言都不會那你將來會吃苦頭。
匯編寫程序代碼效率高,但相對難度較大,而且很羅嗦,尤其是遇到算法方面的問題時,根本是麻煩的不得了,現在單片機的主頻在不斷的提高,我們完全不需要那么高效率的代碼,因為有高頻率的時鐘,單片機的rom也在不斷的提高,足夠裝得下你用c語言寫的任何代碼,c語言的資料又多又好找,將來可移植性非常好,只需要變一個io口寫個溫度傳感器的程序在哪里都能用,所以我勸大家用c語言。
總結上面,只要你有信心,做事能堅持到底,有不成功不放棄的強烈意志,那學個單片機來說就是件非常容易的事。
步驟:
1.找本書大概了解一下單片機結構,大概了解就行。
不用都看懂,又不讓你出書的。(三天)。
2.找學習板練習編寫程序,學單片機就是練編程序,遇到不會的再問人或查書。(二十天)。
3.自己網上找些小電路類的資料練習設計外圍電路。
焊好后自己調試,熟悉過程。(十天)。
4.自己完全設計具有個人風格的電路,產品,。
你已經是高手了。
看到了嗎?下功夫一個多月你就能成為高手,我就講這么多了,學不學得會,下不下得了功夫就看你的了。
我從大二起,就去實驗室去學習。
在這里與老師和一些電子設計愛好者的交流中,我學到了更多的專業知識。
我從此走上了學習嵌入式的道路。
這豐富了我的大學生活,是我在大學的最大收獲。
我是從學習單片機開始我的嵌入式學習的。
我接觸單片機的方式是在圖書館看書,我看了很多本書,但是大多數書寫的大同小異。
書里面講解的單片機的寄存器我看了很多遍也沒有看懂。
我都不知道改怎么學習它了。
慢慢的我悟出了一個道理:電子的學習實踐是最重要的,這樣,我在大二的時候就買了一塊學習板,我一邊看視頻一邊仿照視頻的程序,自己編寫程序,在很短的時間里,我的單片機有了很大的提高。
那些難懂的寄存器通過編寫程序,我慢慢的弄懂了它們,現在回頭看去,原來它還是很簡單的。
用哪種編程語言最適合我們。
我看過的單片機的書籍,大部分的程序都是匯編寫的。
它是一種基于機器硬件的低級語言,對于我們這些只學習過c語言的人來說,非常難懂。
我認為剛開始學習單片機沒有必要一定要從學習匯編編程開始。
我學習單片機就是用c語言編程的,我并不會匯編語言,也沒有妨礙我把單片機學好。
我的單片機學習心得。
很多人說,學單片機最好先學匯編語言,以我的經驗告訴大家,絕對沒有這個必要,初學者一開始就直接用c語言為單片機編程,既省時間,學起來又容易,進步速度會很快。
在剛開始學單片機的時候,千萬不要為了解單片機內部結構而浪費時間,這樣只能打擊你的信心,當你學會編程后,自然一步步就掌握其內部結構了。
單片機的學習實踐。
單片機提高重在實踐,想要學好單片機,軟件編程必不可少。
但是熟悉硬件對于學好單片機的也是非常重要的。
如何學習好硬件,動手實踐是必不可少的。
我們可以通過自己動手做一個自己的電子制作,通過完成它,以提高我的對一些芯片的了解和熟練運用它。
這樣我們就可以多一些了解芯片的結構。
我相信,你完成了一個屬于自己的電子制作,你的單片機水平就會有一個質的提高。
這就是我學習單片機的心得體會,希望給單片機的愛好者學好單片機有所幫助。
單片機作為一種最簡單的軟件,與我們的日常生活息息相關,了解一些單片機程序的簡單錄入是費城必要的。
如:led顯示器、鍵盤和顯示器的應用和原理。
在被刺實訓中我們每個人通過一個八位流水燈的制作,使我們深深地體會到了單片機在現實生活中的小小應用,既增強了我們的好奇心,又鞏固了我們的理論知識。
更讓我們體會到了單片機手動的開始平臺的完善與成熟。
只要你有想法,單片機就有可能讓他成為現實。
這里我學習完protues軟件后的第一感覺是,雖然這軟件工作不穩定,但是會有相當不錯的效果出來。
這對我以后的工作一定會有幫助的。
在這次試訓中不僅只對單片機編程有了新的認識,還對整個單片機的開發平臺都有了一廳的了解,這是一筆不錯的收獲。
通過這幾天的試訓,使我的感觸很深,真實“條條大路通羅馬”,要達到目的,不同的人就有不同的方法。
只要你的方法不錯!五花八門都可以,而且是各有特色。
走出來的結果都有各自的獨到之處。
在編程中“簡”字貫穿于整個程序設計中,越簡單越好,畢竟單片機留給用戶的資源是有限的,所以我們要充分利用這些資源,達到更好的效果,這些是我們在以后的學習生活中應值得注意的地方。
在試訓中有苦有甜,當我們為一個很難攻破的程序找出路時,心情煩躁,感覺自己很不可理喻,當程序一點一點編好后,自己從心底感覺到一點小小的安慰,看著自己的成果。
感覺很欣慰,有一絲絲的甜意,幾天的實訓使自己的思維邏輯也有了小小的進步。
在學校學習期間我有幸的參加了學校的單片機學習小組,在小組里我了解了什么是單片機,單片機有哪些用途,利用單片機可以實現哪些功能來方便人們的生活如交通燈,時鐘,還有手機中,電子玩具等等,它們里面都有單片機的存在來實現某種功能。
通過在單片機小組里的學習我簡單總結了幾點心得和體會:
第一:萬事開頭難,要勇敢的邁出第一步,不要總找借口說沒有學習過就總推脫。
凡事都有第一步可以先可簡單的來,然后可以逐步的向深層次學習。
可以從建項目開始,然后可以找一個簡單的小程序先把它敲進單片機內然他運行起來,感覺一下單片機的運行,讓自己了解單片機整個運行。
第二:對于知識點,學過的要掌握牢固,對于沒有學的和暫時用不到的先不用學習。
比如:小燈得點亮就沒有用到中斷可以先不用看。
這樣可以避免知識過多記不住的麻煩。
對于程序這里的知識點不能只停留在理論層次上,一定要結合著程序進行學習這樣才能掌握的很牢靠,當用到哪里的知識點不記得了可以去看書,對于用不到的'可以不去看。
第三:程序不要只是看別人得,一定要自己寫過才是自己的。
開始不懂可以參考別人的,看看每一句代表著什么意思,能夠實現什么現象。
明白之后自己再重新寫一遍,你會發現看別人的能懂到自己寫的時候很困難。
當你自己能寫出來的時候說明你真懂了。
第四:一定要學會程序調試的方法。
有時候把程序寫完了然后運行時不能實現理想的現象。
這時有人就暈了不知該怎么辦,然后就去問別人。
當別人找出問題出在哪里時就會恍然大悟。
其實當遇到問題一定要自己嘗試著解決,不能遇到問題就去問別人。
自己一定要掌握解決問的方法和思路。
第五:在學習初期看別人的代碼,學習別人的思路這個很有用。
通過看別人的代碼特別是有多年編程經驗的人的程序,可以迅速提高自己的編程水平。
也可以結合著別人的手法,與自己的想法結合在一起寫出更好的程序。
但是切記將學習變成抄襲,不能認為抄襲別人的你就學會了,這樣只能使你退步。
第六:面對一個新項目時,自己一定要多想想,不要急著去看別人是怎么寫的。
有的人看到新項目時就去找別人的然后抄一小段,自己在寫幾句,放在一起完成任務,雖然省時間但不利你的學習。
當你遇到一新項目時你應該先想一下程序的構架,想想如何來完成。
然后自己動手去寫,當你遇到實在是沒辦法解決的問題時再去請教別人,看他是怎么處理的,學習他的方法。
這樣起碼你自己想過了,有自己的思路不會受到別人的影響,這樣更容易提高自己。
在單片機的學習開始時感覺很吃力,在不斷的學習過程中慢慢的對單片機產生了些好感,而且在編寫程序過程中吃力的感覺慢慢的淡了。
在這其中基礎知識掌握牢固是非常重要的,然后在學習過程中要學會提問題和自己解決問題,慢慢的對于學習單片機你也會產興趣。
雖然在開始學習單片機時感覺很青澀,但只要堅定自己的學習信心,在付出持之以恒的努力,我相信自己能進一步加深對單片機的了解,在單片機的學習道路上走得更遠!
兩周的單片機課程設計終于順利完成了,其中包含著快樂,也有辛酸。
我們選的設計題目是“數字溫度計”,大家都覺得這個題目是比較簡單的。
其實不然,做了之后,發現設計電路雖然簡單,但我們認為它真正困難的地方是程序設計,不過在我們同心努力下最終完成了。
我們剛選該題目時,真的是一頭霧水,硬件電路不知如何下手,更何談解決程序那塊,因為我們所學的都是單片機方面的理論知識,應用到實踐中去還比較少。
不過,我們三人也沒偷下懶,迅速分工去查閱和收集資料。
我們去了圖書館借一些參考書,上網找一些相關資料,并且請教指導老師。
通過不斷努力,終于把數字溫度計的思路和模型定了下來并開始分一個人去焊接硬件電路,剩下的去整理和修改程序。
通過一番整理和修改后,在電腦上進行仿真,仿真成功后準備焊接電路板。
在焊接電路板中,我們首先對硬件電路進行布局,然后確認無誤后,在電路板上進行焊接,這個過程我們覺得是做得比較快的,以至于后面出現了虛焊的錯誤。
焊接電路板完工,細心檢查后,進行通電測試。
結果液晶lcd沒有顯示,通過檢查,原來是lcd壞了,在換了塊新的后,能顯示顯示值。
但還有個問題是,當報警電路不會報警,在請教老師后,發現走動蜂鳴器的電壓太低了,是因為串接了一個太大的電阻。
然后,我們換了一個小電阻,但這時蜂鳴器卻一直在叫,停不下來,不過,在我們三人的的細心檢查下,原來是在放大電路的一端虛焊了,這說明我們焊接電路的技術還不夠好。
在重新焊接那端后,數字溫度電路終于成功實現功能,當時我們的心情都是無比興奮和快樂的,因為我們兩周的辛苦沒有白費。
在完成單片機課程設計后,我們發現我們還有許多不足,所學到的知識還遠遠不夠,以至于還有一些功能不能被動完成。
但通過學習這一次實踐,增強了我們的動手能力,提高和鞏固了單片機方面的知識,特別是軟件方面。
從中增強了我們的團隊合作精神,并讓我們認識到把理論應用到實踐中去是多么重要。
通過為期一周的單片機實訓,是我們對這門課有了許多新的了解,彌補了在課堂上學習的不足。
相信這對我們以后的學習和工作都會有很大的幫助。
我們一定要在最短的時間里對這些不足加以改正!
首先,在這次試訓中我被單片機強大的功能所震撼,以前在課堂上完全沒有能理解可編程單片機的優越性。
這次通過實體仿真軟件等輔助軟件的共同效果,是這次試訓有了鮮明的活力。
換是我們認識到這次試訓不僅僅是一個軟件的應用,更多的是使我們認識到學習到很多在課堂上無法得到的東西。
特別是protues軟件的.功能是我們了解了當今開發系統的新方向,簡直太不可思議啦!
單片機作為一種最簡單的軟件,與我們的日常生活息息相關,了解一些單片機程序的簡單錄入是費城必要的。
如:led顯示器、鍵盤和顯示器的應用和原理。
在被刺實訓中我們每個人通過一個八位流水燈的制作,使我們深深地體會到了單片機在現實生活中的小小應用,既增強了我們的好奇心,又鞏固了我們的理論知識。
更讓我們體會到了單片機手動的開始平臺的完善與成熟。
只要你有想法,單片機就有可能讓他成為現實。
這里我學習完protues軟件后的第一感覺是,雖然這軟件工作不穩定,但是會有相當不錯的效果出來。
這對我以后的工作一定會有幫助的。
在這次試訓中不僅只對單片機編程有了新的認識,還對整個單片機的開發平臺都有了一廳的了解,這是一筆不錯的收獲。
通過這幾天的試訓,使我的感觸很深,真實“條條大路通羅馬”,要達到目的,不同的人就有不同的方法。
只要你的方法不錯!五花八門都可以,而且是各有特色。
走出來的結果都有各自的獨到之處。
在編程中“簡”字貫穿于整個程序設計中,越簡單越好,畢竟單片機留給用戶的資源是有限的,所以我們要充分利用這些資源,達到更好的效果,這些是我們在以后的學習生活中應值得注意的地方。
在試訓中有苦有甜,當我們為一個很難攻破的程序找出路時,心情煩躁,感覺自己很不可理喻,當程序一點一點編好后,自己從心底感覺到一點小小的安慰,看著自己的成果。
感覺很欣慰,有一絲絲的甜意,幾天的實訓使自己的思維邏輯也有了小小的進步。
時間過得真快,不經意間,一個學期就到了尾聲,進入到如火如荼的期末考試階段。
在學習單片機這門課程之前,就早早的聽各種任課老師和學長學姐們說過這門課程的重要性和學好這門課程的關鍵~~多做單片機實驗。
這個學期,我們除了在課堂上學習理論知識,還在實驗室做了7次實驗。將所學知識運用到實踐中,在實踐中發現問題,強化理論知識。
現在,單片機課程已經結束,即將開始考試了,需要來好好的反思和回顧。
總結。
下了。
第一次是借點亮led燈來熟悉keil軟件的使用和試驗箱上器材。第一次實驗體現了一個人對新事物的接受能力和敏感度。雖然之前做過許多種實驗。但依舊發現自己存在一個很大的問題,對已懂的東西沒耐心聽下去,容易開小差;在聽老師講解軟件使用時,思路容易停滯,然后就跟不上老師的步驟了,結果需要別人再次指導;對軟件的功能沒有太大的熱情去研究探索,把一個個圖標點開,進去看看。所以第一次試驗相對失敗。鑒于此,我自己在宿舍下載了軟件,然后去熟悉它的各個功能,使自己熟練掌握。
在做實驗中,第二個問題應該是準備不充分吧。一開始,由于沒有課前準備的意識,每每都是到了實驗室才開始編程,完成作業,導致每次時間都有些倉促。后來在老師的批評下,認識到這是個很大的問題:老師提前把任務告訴我們,就是希望我們私下把程序編好。于是我便在上機之前把程序編好,拷到u盤,這樣上機時只需調試,解決出現的問題。這樣就會節約出時間和同學討論,換種思路,換種方法,把問題給吃透。發現、提出、分析、解決問題和實踐能力是作為我們這個專業的基本素質。
三是我的依賴性很大,剛開始編程序時喜歡套用書上的語句,卻對語句的理解不夠。于是當程序出現問題時,不知道如何修改,眼前的程序都是一塊一塊的被拼湊整合起來的,沒法知道哪里錯了。但是編程是一件很嚴肅的事情,容不得半點錯誤。于是便只能狠下決心,堅持自己編寫,即使套用時,也把每條語句弄懂。這也能激發了學習的興趣。
還有一次實驗是調出電腦里的程序,讓它在試驗箱上實現其功,讓我們去體會別人編程的技巧和程序邏輯美感??戳酥?,不得不說我目前的水平簡直太小兒科了。還有連線也是個問題,對試驗箱內部結構功能的不懂,以至于不知道如何連線讓程序實現其功能。這讓我意識到單片機是軟件和硬件的結合,兩者是一個整體。所以必須把硬件方面加強。
五是基礎知識的薄弱,也是最基礎的問題吧!在用c語言編程時,才發現自己c語言真的太差勁了,雖然這門課程早就學過,但是就目前所掌握的c語言知識,對于單片機編程遠遠不夠。c語言也是我們以后學各種語言的基礎,必須要花大量的時間溫習強化。通過這個學期的單片機實驗,我發現了自己很多問題,也從中學到了很多。它不是物理實驗時,只需要記住老師說的步驟,順次做完就可以了;并不是matlab實驗,只需要你知道一些語句表達,然后在不違背語法的情況下,組合好就可以了;它不是eda實驗,把一節課混下去就行了,反正大家都不知道,都是混,都跟不上老師的節奏思路。他需要我們在掌握硬件的基礎上,用單片機語言在keil軟件上寫出一定的程序,然后利用stcisp燒到試驗箱上,實現其特定的功能。而在編程時需要邏輯力,創新力,知識組合力,知識搜索。單片機在電子技術應用領域中,單片機的應用愈來愈多地應用到各行各業。要開發單片機的應用,不但要掌握單片機硬件和軟件方面的知識,而且還要深入了解各應用系統的專業知識,融會貫通和有機結合,才能設計出優良的應用系統。并且需要與時俱進,不斷了解各公司最新芯片的結構和應用,在實際應用中找到最好的性能價格比。培養自己接受新知識的自學能力,掌握芯片發展動態。培養自己的創新精神,在原有的基礎上進行改進,使之功能不斷完善。當然,最重要到還是態度,無論做什么事情,足夠認真,足夠堅強,足夠毅力,足夠決心,足夠勇氣,就一定能辦到。
這是我第一次做單片機實驗,說起來有一些緊張和新奇。在此之前我并沒有接觸過單片機,我本以為與之前的光學實驗及其它實驗差不多,可我進到實驗室之后,我就改變了這個看法。
單片機實驗要求的是一種思維的創新,而不是簡單的重復老師所說的實驗步驟。因此第一次實驗,實驗老師向我們講解了cvavr編譯器的大體情況及使用方法和技巧,并簡單的向我們示例——如何在cvavr中編寫一段程序。編完程序之后,知道我們如何使用avrstudio達到將編好的程序輸入到單片機中來使其運行。
之后老師讓我們以組為單位合作編寫一段程序,并使其運行。我們組想要編寫一個跑馬燈的程序。在第一次運行cvavr時,我們組就遇到了一個麻煩,我們在建立一個新project文件那里出現了錯誤。在保存這個新project文件的時候,我們單擊了save,而不是generate,saveandexit.因此它彈不出我們我們所需要的源程序。之后我們通過詢問其他人解決了這個問題。在編程中,我們開始做的是兩盞燈的交替閃爍,間隔時間是1000ms。在運用avrstudio的時候,我們又犯了一個錯誤。在我們打開編譯好的工程文件時,開始調試,在最后一步點擊finish時,彈出一對話框,問我們是否更新,然后我們單擊了yes。這導致了仿真器無法下次使用。這是由于實驗室中的仿真器是盜版的,無法進行更新。
經過我們的不斷努力,我們終于實現了簡單的跑馬燈的運行,便是兩個燈地交替閃爍。我們感到興奮極了。但是我們并沒有滿足于當前,我們又編寫了三個燈地交替閃爍,四個及多個。當我們一步步實現我們的目的時,我得到莫大成就感和自信。
在這次實驗中,我體會到了合作的重要性。一個人也可能實現這一系列的過程,但是要花費很多精力和時間。群策群力,分工明確,可以使我們更好、更快地完成我們的工作。在此期間,你可以更好知道自己的不足和缺陷,來得到改正。還可以知道自己的優勢所在,把握好自己的優勢。
我看到書上講:單片機可以用兩種語言編寫,一種是c語言,另外一種是匯編語言。匯編語言是一種機器語言,且代碼繁瑣,不易記憶。需要掌握單片機的內部結構和邏輯結構,通過看了幾本書讓我了解認識到匯編確實太繁瑣,不過我學習過c語言,也參加了全國計算機二級考試,覺得自己在一方面具有優勢,能很快學好它。
不過在學習中,我才發現學習單片機不僅僅需要軟件的知識,還需要硬件的知識。我買了一個單片機在實踐中就是一個活生生的例子,沒有相應的硬件知識,我連單片機怎么和電腦相連都不知道,我為我當初的想法感到羞愧。單片機是一門很好的學問,需要我去鉆研它。
時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機綜合課程設計也在一周內完成了。
俗話說“好的開始是成功的一半”。說起課程設計,我認為最重要的就是做好設計的預習,認真的研究老師給的題目,選一個自己有興趣的題目,其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設計,到頭來一點收獲也沒有。最后,要重視程序的模塊化,修改的方便,也要注重程序的調試,掌握其方法。
雖然這次的課程設計算起來在實驗室的時間只有三天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。
硬件的設計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調試,最終一個能完成課程設計的勞動成果出來了,很高興它能按著設計的思想與要求運動起來。
當然,這其中也有很多問題,第一、不夠細心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導致編程出現錯誤。第二,是在學習態度上,這次課設是對我的學習態度的一次檢驗。對于這次單片機綜合課程實習,我的第一大心得體會就是作為一名工程技術人員,要求具備的首要素質絕對應該是嚴謹。我們這次實習所遇到的多半問題多數都是由于我們不夠嚴謹。第三,在做人上,我認識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰困難的勇氣,就沒有什么辦不到的。
作為一名自動化專業的大三學生,我覺得做單片機課程設計是十分有意義的,而且是十分必要的。
在已度過的大學時間里,我們大多數接觸的是專業課。
我們在課堂上掌握的僅僅是專業課的理論知識,如何去鍛煉我們的實踐能力?如何把我們所學的專業基礎課理論知識運用到實踐中去呢?我想做類似的課程設計就為我們提供了良好的實踐平臺。
這次單片機課程設計我們歷時兩個星期,在我們班里算是倒數幾組完成的吧,但經過這兩個星期的實踐和體驗下來,我們又怎么會去在乎那個先后問題呢,因為對我來說學到的不僅是那些知識,更多的是團隊和合作。
現在想來,也許學校安排的課程設計有著它更深層的意義吧,它不僅僅讓我們綜合那些理論知識來運用到設計和創新,還讓我們知道了一個團隊凝聚在一起時所能發揮出的巨大潛能!
單片機作為我們的主要專業課之一,雖然在大三開學初我對這門課并沒有什么興趣,覺得那些程序枯燥乏味,但在這次課程設計后我發現自己在一點一滴的努力中對單片機的興趣也在逐漸增加。
過沒想到這項看起來不需要多少技術的工作卻是非常需要耐心和精力在兩個星期后的今天我已明白課程設計對我來說的意義,它不僅僅是讓我們把所學的理論知識與實踐相結合起來,提高自己的實際動手能力和獨立思考的能力,更重要的是同學間的團結,雖然我們這次花去的時間比別人多,但我相信我們得到的也會更多!
在做本次課程設計的過程中,我感觸最深的當屬查閱大量的設計資料了。
為了讓自己的設計更加完善,查閱這方面的設計資料是十分必要的,同時也是必不可少的。
我們是在做單片機課程設計,但我們不是藝術家,他們可以拋開實際盡情在幻想的世界里翱翔,而我們一切都要有據可依,有理可尋,不切實際的構想永遠只能是構想,永遠無法升級為設計。
其次,在這次課程設計中,我們運用到了以前所學的專業課知識,如:cad制圖、匯編語言、模擬和數字電路知識等。
雖然過去從未獨立應用過它們,但在學習的.過程中帶著問題去學我發現效率很高,這是我做這次課程設計的又一收獲。
要養成注釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在設計課程過程中遇到問題是很正常德,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題的課程設計結束了,但是從中學到的知識會讓我受益終身。
發現、提出、分析、解決問題和實踐能力的提高都會受益于我在以后的學習、工作和生活中。
設計過程,好比是我們人類成長的歷程,常有一些不如意,但畢竟這是第一次做,難免會遇到各種各樣的問題。
在設計的過程中發現了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固。
我們通過查閱大量有關資料,并在小組中互相討論,交流經驗和自學,若遇到實在搞不明白的問題就會及時請教老師,使自己學到了不少知識,也經歷了不少艱辛,但收獲同樣巨大。
通過這次課程設計我也發現了自身存在的不足之處,雖然感覺理論上已經掌握,但在運用到實踐的過程中仍有意想不到的困惑,經過一番努力才得以解決。
這也激發了我今后努力學習的興趣,我想這將對我以后的學習產生積極的影響。
通過這次設計,我懂得了學習的重要性,了解到理論知識與實踐相結合的重要意義,學會了堅持、耐心和努力,這將為自己今后的學習和工作做出了最好的榜樣。
我覺得作為一名自動化專業的學生,單片機的課程設計是很有意義的。
更重要的是如何把自己平時所學的東西應用到實際中。
雖然自己對于這門課懂的并不多,很多基礎的東西都還沒有很好的掌握,覺得很難,也沒有很有效的辦法通過自身去理解,但是靠著這一個多禮拜的“學習”,在小組同學的幫助和講解下,漸漸對這門課逐漸產生了些許的興趣,自己開始主動學習并逐步從基礎慢慢開始弄懂它。
我認為這個收獲應該說是相當大的。
覺得課程設計反映的是一個從理論到實際應用的過程,但是更遠一點可以聯系到以后畢業之后從學校轉到踏上社會的一個過程。
小組人員的配合?相處,以及自身的動腦和努力,都是以后工作中需要的。
做了兩周的課程設計,有很多的心得體會,有關于單片機方面的,更多的是關于人與人之間關系方面的。
本人從事單片機程序設計將近有一年了,下面我想來談談我個人的幾點體會,以便與大家交流共同提高.
1.在設計程序之前,務必要對所用單片機的內部結構有一個系統的了解,知道該單片機片內有哪些資源.
2.設計程序采用什么編程語言并不是非常重要,關鍵要有一個清晰的思路和一個完整的軟件流程圖.
3.在設計程序時,不能妄想一次就將整個程序設計好,"反復修改,不斷改進"是程序設計的必經之路.
4.要養成注釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便.
5.在設計程序過程中遇到問題是很正常的,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題.
我們組一共有三個人,但其他兩個人是真的神龍見首不見尾,除了在最后答辯的時候他們一起坐在了我旁邊,冠冕堂皇的指著我畫了幾遍的圖說了幾嘴,我想可能他們自己都不知道自己在說怎么,雖然有的東西他們也答出來了。
我佩服他們的勇氣,羨慕他們的運氣(我見到的很多做了10 天的人最后的成績都有不如他們的),但是鄙視他們的做法。
所幸的是,我得到了很多同學的幫助。
我想沒有他們我可能都要放棄了,因為我本人對單片機也并不是很熟悉,學的東西好像它是它,我是我似的,理論聯系不了實際。
以前的匯編語言沒學好,一開始的程序這塊兒就要令我抓狂了。
后來請教我們班的一個男生,每次跟他一起到試驗室調試程序(他們組也只有他一個人動手),看他邊做邊給我講解。
最后在開發機上做出來的時候,雖然不是我自己寫的,但看他那么高興,我也有一種分享到的成就感。
后來我們組就用了他寫的程序,他自己又抽空做了些拓展。
接下來就是做硬件方面的焊接工作了。
沒想到這項看起來不需要多少技術的工作卻是非常的勞心勞力。
很多次是早上起來帶瓶水帶些吃的到實訓中心,一泡就是一天。
我看到有很多人跟我一樣,不同的是他們是三三兩兩,而我大部分時間都是一個人做。
在這個時候也有很多人幫助我,或是熱心的幫我帶飯,或是在我打盹兒的時候幫我做點焊接。
大家都鼓勵我,即使最后出不來東西,但是一定要堅持把它做完。
當我想放棄的時候,我也這么對自己說,即使你做出來的是次品甚至不合格品,但是你一定要拿出來一件成品。
在要驗收前,終于做了一件成品出來,不幸的是它真的是一件不合格品。
幫我的那個男生做的已經出來了,所以最后應該還是我的焊接方面的問題。
有一點灰心,想再重做來不及了,單是檢查線路卻也查不出來什么問題。
那么就準備答辯吧。
我對著電路圖再看課本,發現以前很多覺得很難記的東西現在記起來容易多了,因為整天都在同它們打交道。
51的引腳及其功能,a/d轉換器的,驅動器的,所有我用到的我都一再的看書了解,同時請教同學我看書過程當中的疑惑。
在這個過程中又發現了以前焊接當中出的一些問題,能改的就改,不能改的,咳,要是時間再多一些,或者我能早點做好,要是不只是我一個人動手……算了吧,不要想那些如果,還是準備我自己的,做好我現在能做的吧。
還好,驗收還算成功,得了3分,不是很高,但是我覺得對我來說已經很好,代表了我真實的水平,我覺得我對單片機的一些知識在這個動手的過程中真的是從無到有增長的。
同時我也盡量不去想別人得了多少分,沒有什么不平衡的,有些人付出的是努力,有些人付出的是風險代價,其實這也沒有什么不一樣,這一點我早就了解。
最后,我發現自己對單片機竟然也有了一點興趣,想暑假回家以后自己去買一些東西來做,再補一補匯編語言。
有什么問題請教下以前的那些老同學好了,他們好厲害,在高中勞動課就成功的做出過調頻收音機,大一暑假的時候參加了學校的電子競賽培訓接著比賽,不過后來怎么樣我就不知道了。
汗。
看來要多保持聯絡,這次回家就好好找他們敘敘舊。
為期一周的單片機實訓結束了,真是讓我受益匪淺啊!學到了很多東西,不管怎么樣,先感謝學校給我的這么多機會,真正的學到了東西。隨著電子技術的發展,特別是隨著大規模集成電路的產生,給人們的生活帶來了根本性的變化,我們就學習了單片機這門課程,感覺是有點難。也不知道整個學習過程是怎么過來得,可是時間不等人。
不過在學習中,我才發現學習單片機不僅僅需要軟件的知識,還需要硬件的知識。我買了一個單片機在實踐中就是一個活生生的例子,沒有相應的硬件知識,我連單片機怎么和電腦相連都不知道,我為我當初的想法感到羞愧。單片機是一門很好的學問,需要我去鉆研它。
不過在學習中,我才發現學習單片機不僅僅需要軟件的知識,還需要硬件的知識。我買了一個單片機在實踐中就是一個活生生的例子,沒有相應的硬件知識,我連單片機怎么和電腦相連都不知道,我為我當初的想法感到羞愧。單片機是一門很好的學問,需要我去鉆研它。時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機綜合課程設計也在一周內完成了。俗話說“好的開始是成功的一半”。
說起課程設計,我認為最重要的就是做好設計的預習,認真的研究老師給的題目,選一個自己有興趣的題目。
其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設計,到頭來一點收獲也沒有。最后,要重視程序的模塊化,修改的方便,也要注重程序的調試,掌握其方法。
在全組人竭盡全力,老師的精心指導下,程序基本編寫成功,這是我們共同努力的結果,在享受我們成果之時,不得不感慨單片機的重要性與高難度性,所以為期一周的單片機課程設計沒有浪費我我們學到了很多知識,也讓我們對單片機有了更深一步的了解,雖然最后結果是出來了,可這與老師的精心指導是分不開的她引導我們的思路,本來一竅不通的我們經過老師的點撥基本上通了,所以老師是功不可沒的??偠灾?,單片機課程設計對于我們有很大的幫助,我們從中受益匪淺。
隨著電子技術的發展,特別是隨著大規模集成電路的產生,給人們的生活帶來了根本性的變化,如果說微型計算機的出現使現代的科學研究得到了質的飛躍,那么可編程控制器的出現則是給現代工業控制測控領域帶來了一次新的革命。
在現代社會中,溫度控制不僅應用在工廠生產方面,其作用也體現到了各個方面。
本學期我們就學習了單片機這門課程,感覺是有點難呢。
也不知道整個學習過程是怎么過來得,可是時間不等人。
時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機實習課題也在一周內完成了。
俗話說“好的開始是成功的一半”。
說這次實習,我認為最重要的就是做好程序調試,認真的研究老師給的題目。
其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起產品就會事半功倍,如果沒弄明白,就迷迷糊糊的去做,到頭來一點收獲也沒有。
最后,要重視程序的模塊化,修改的方便,也要注重程序的調試,掌握其方法。
雖然這次的實習算起來在實驗室的時間只有幾天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。
硬件的設計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調試,最終一個能完成課程設計的勞動成果出來了,很高興它能按著設計的思想與要求運動起來。
當然,這其中也有很多問題,第一、不夠細心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導致編程出現錯誤。
第二,是在學習態度上,這次課設是對我的學習態度的一次檢驗。
對于這次單片機綜合課程實習,我的第一大心得體會就是作為一名工程技術人員,要求具備的首要素質絕對應該是嚴謹。
我們這次實習所遇到的多半問題多數都是由于我們不夠嚴謹。
第三,在做人上,我認識到,無論做什么事情,只要
你足夠堅強,有足夠的毅力與決心,有足夠的挑戰困難的勇氣,就沒有什么辦不到的。
通過這次單片機實習,我不僅加深了對單片機理論的理解,將理論很好地應用到實際當中去,而且我還學會了如何去培養我們的創新精神,從而不斷地戰勝自己,超越自己。
創新可以是在原有的基礎上進行改進,使之功能不斷完善,成為真己的東西。
這個設計過程中,我們通過在原有的計數器系統進行了改進,使之增添了暫停、計數、清零等的三個控制功能,使之成為一個更加適用,功能更加完備的屬于自己的一個系統。
設計結果能夠符合題意,成功完成了此次實習要求,我們不只在乎這一結果,更加在乎的,是這個過程。
這個過程中,我們花費了大量的時間和精力,更重要的是,我們在學會創新的基礎上,同時還懂得合作精神的重要性,學會了與他人合作。
作為一名自動化專業的快大三學生,我覺得做單片機實習是十分必要的。
在已度過的.大學時間里,我們大多數接觸的是專業課。
我們在課堂上掌握的僅僅是專業課的理論知識,如何去鍛煉我們的實踐能力?如何把我們所學的專業基礎課理論知識運用到實踐中去呢?我想做類似實習就為我們提供了良好的實踐平臺。
首先在做本次實習的過程中,我感觸最深的當屬查閱大量的設計資料了。
為了讓自己的設計更加完善,查閱這方面的設計資料是十分必要的,同時也是必不可少的。
我們是在做單片機實習,但我們不是藝術家,他們可以拋開實際盡情在幻想的世界里翱翔,而我們一切都要有據可依,有理可尋,不切實際的構想永遠只能是構想,永遠無法升級為設計。
其次,在這次課程設計中,我們運用到了以前所學的專業課知識,如:c語言、模擬和數字電路知識等。
雖然過去從未獨立應用過它們,但在學習的過程中帶著問題去學我發現效率很高,這是我做這次課程設計的又一收獲。
最后,在實習之前,我們要對所用單片機的內部結構有一個系統的了解,知道該單片機內有哪些資源;要有一個清晰的思路和一個完整的的軟件流程圖;在設計程序時,不能妄想一次就將整個程序設計好,反復修改、不斷改進是程序設計的必經之路;要養成注釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在實習過程中遇到問題是很正常的,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題。
但是從中學到的知識會讓我受益終身。
通過這幾天的單片機的實訓,我在理論的基礎上更深刻的掌握了單片機的深層內容及實際生活中的應用,實訓鍛煉了自己動手能力和思維能力,還有在軟件方面的編程能力,讓我受益匪淺,同時也暴露出一些平時學習上的問題,讓我深刻反思。
這些問題的發現將為我以后的學習和工作找明道路,查漏補缺為進一步學習作好準備。
這世界似乎總是很喜歡和人開著玩笑,原本對電子方面并不是很感興趣的我在大學里卻選擇了電子信息科學與技術這一個對自己來說相對陌生的專業,開始慢慢接觸各種各樣電子方面的知識,開始慢慢的了解它。
單片機課程是我們專業十分重要的課程,單片機方面的很多知識都應用在電子信息中,因此努力學好單片機成為了自己的一個主要的任務。
單片機比專用處理器更適合應用于嵌入式系統,因此它得到了最多的應用。
事實上單片機是世界上數量最多的計算機。
現代人類生活中所用的幾乎每件電子和機械產品中都會集成有單片機。
手機、電話、計算器、家用電器、電子玩具、掌上電腦以及鼠標等電腦配件中都配有1-2部單片機。
而個人電腦中也會有為數不少的單片機在工作。
汽車上一般配備40多部單片機,復雜的工業控制系統上甚至可能有數百臺單片機在同時工作!單片機的數量不僅遠超過pc機和其他計算的綜合,甚至比人類的數量還要多。
因此如果自己能夠很好的掌握單片機方面的有關知識,對于自己將來的發展有十分大的幫助,因此我開始了自己的單片機學習之路。
剛開始接觸單片機是陌生的,里面的很多指令往往讓自己感到厭煩,面對一些冗長的匯編程序,往往不用看到最后就已經失去興趣了,甚至瞌睡連綿了,自己也很難想像一些小小的單片機竟然在自己的生活中發揮著那么多的作用。
似乎起初學習的記憶往往是那么的苦澀,把書翻閱了幾遍幾乎沒有什么感覺,雖然開始了解單片機編程的一些指令,但對于如何編寫單片機相關的程序仍然沒有任何眉目。
自己請教很多師兄和老師都告訴自己對于單片機的學習一定要手腦并用,只是看書并不能很好的掌握它,因此我選擇了在實驗中去練習一些書本上簡單的程序,慢慢的開始對單片機產生了些好感。
漸漸的我發現通過在實驗中演練所學的單片機程序,并且自己嘗試著編寫單片機程序,能夠很好的掌握單片機方面的知識,只有很好掌握了基礎的知識才能幫助自己進行進一步的單片機研發,幫助自己在未來的人生道路上有更好的發展。
雖然起初的單片機學習是清澀的,但只要堅定自己學習的信心,再付之以持之以恒的努力,我相信自己能夠進一步加深對單片機的了解,在單片機的學習道路上走的更遠!
首先總體上談一談看法:
1、我從不說51是基礎,如果我這么說,也請把這句話理解為微機原理是基礎。
2、對51單片機的操作本質上就是對寄存器的操作,對其他單片機也是如此。
庫只是一個接口,方便使用者使用而已。
3、匯編語言在工作中很少用到,了解就好。
4、51的p0口很特別。
5、c語言就是c語言,51單片機就是51單片機,算法就是算法,外圍電路就是外圍電路,傳感器就是傳感器,通信器件就是通信器件,電路圖就是電路圖,pcb圖就是pcb圖,仿真就是仿真。
當你以后再也不使用51了,c語言的知識還在,算法的知識還在,搭建單片機的最小系統的技能還在,傳感器和通信器件的使用方法還在,還會畫電路圖和pcb圖,當然也會仿真。
而不是這個:
7、當程序調試不如人意的時候,靜下心來好好查資料,51單片機最大的好處就是網上資料非常多,你遇到的問題別人肯定也遇到過。
作為學習者,問人可能更方便點,但一直這樣是培養不出解決問題的能力的。
接下來上點干貨:
首先要放清51的定位,跟我一起再念一遍:51只是個工具51只是個工具51只是個工具。
當然51還有一個地位就是大學生單片機啟蒙教程。
換句話說:單片機只是個工具單片機只是個工具單片機只是個工具。
然后什么是基礎:模電數電微機原理,然后熟練翻閱數據手冊,可以試著做一些模塊或者最小系統練練手,c語言其實也可以算工具吧,就單片機來說,作為必要條件也算作基礎吧。
總之51/單片機可以實現很多事情,但這不是一定說51重要,而是你如何利用51。
哦對了,當你使用更高級的芯片的時候,很多底層的東西慢慢可以忽略了,甚至很多芯片廠商都會提供庫給你,你可以安心的專注于自己的算法而不是如何去控制單片機。
當然你最好還是要有一個芯片怎么通過寄存器及各種邏輯電路工作的概念。
還有說一下你大學課余生活的選擇、首先那種機器人實驗室或者學生領導的實驗室,適合打比賽刷獎狀、長期下來你的模數電技能能有很大的鍛煉,甚至你可以收貨一些專利,而且學生之間氣氛也還不錯。
另外一種就是找個導師跟著學習、幫忙、做項目,盡管最開始可能感覺導師分配給你的任務怎么都和單片機無關啊好無聊,但是你能在某個領域收獲不一樣的技術。
當然前提是你要喜歡導師的研究方向了,一般院網站都有或者去知網看這個老師發表的論文。
談談我的經歷吧。
1、一個沒有c基礎的的我,從師兄老師那打聽到學51從郭天祥的視頻開始,所以我就下載了全套來看。
剛開始看真是頭都暈了,點亮一個led燈還可以,到了第二課的延時函數就吃不消了,可以說我耐力差吧,沒有堅持,可以說我沒恒心吧,不是真正想學東西的人,當時的我沒有把它放心上,只是看了4課而已,其實對里面的程序不太理解的,于是就停下來不學了。
到了大二下學期,我發現要學點技術,所以重抄舊業,學期單片機,然后再重第1課開始看起,結果發現以前不明白的東西現在豁然開朗。
我寫這經歷是想說,如果當時我堅持下去,不懂的地方看多幾遍,不懂再看再看,就不會浪費大半年的時間了。
有些知識理論靠時間的積累,第一遍看不懂,第二遍看不懂,第三遍可能就懂一點了,剛開始上手一件事是會遇到類似的情況的。
2、當我學了1個月后,學校里有個比賽,團隊需要一個人搞硬件,于是我自己提出搞硬件,為什么?因為在學單片機的過程中發現,自己只會跑程序,連原理圖都不怎么會看,單片機的接線我都是看開發板提供的資料來接的,很狗血吧。
于是我就開始接觸altiumdesigner了,這是我這學期學的第二個軟件。
是看視頻入門的,剛開始看的是郭天祥的視頻,結果發現看不下去啊,太長太累了,看完一集好痛苦啊,于是我搜搜,結果發現一個很好的教學視頻,用的也是比較新的版本,叫《邊學邊玩altiumdesigner》四人行工作室開的。
我真的提感謝作者這種開源的精神的,對我們初學者幫助很大。
跟著他的視頻學習1個月,會畫出51最小系統,基本布線,不過我覺得還是不夠(當然不夠啦,你才學了一個月……)。
3、在學altiumdesigner的過程中涉及到電路分析,也就是我們現在學的《電子電路基礎》,于是愛折騰的我開始搗鼓起multisim12.0,這是一款電路模擬仿真的軟件。
跟著老師學挺慢的,但是教材又高深了一點,比如說分析放大電路,穩壓電源,教材上的東西大多列出公式,對于零基礎學習的.朋友是挺苦逼的,而且老師也是趕鴨子式,講考試內容。
這里建議大家買一本書《電子設計零基礎》第二版,這本書是我在圖書館偶然發現的,但從此就迷戀上了他。
剛開始他不會介紹一大堆公式,以一個例子開始教學,一步一步教你認識元器件(這里對學pcb是有幫助的),然后從電路圖的一步分開始分析,接著分析怎么系統,書本結合multisim仿真,教你一步一步使用里面的控件。
寫到這里自己總結下:
對于1:學單片機最重要的是。
1.先認識單片機,了解單片機的主要組成和各個管腳的定義及功;推薦書《單片機原理及其接口技術》胡漢才(很熟悉吧。
呵呵這就是我們大學的單片機教材啊!!經典中的經典啊!基礎中的基礎啊!!人家幾十年的教材沒有變是有道理的,原理這種東西不會變到哪里去的。
不用專門去看,當作了解,對你理解編程是很有幫助的。)。
2.了解一些單片機匯編知識,方便后續調試;這本書《單片機原理及其接口技術》里面就是講匯編的,一舉兩得。
3.掌握單片機中斷機制;。
4.掌握單片機定時和計數器;(3和4是對單片機內部寄存器的控制,要熟練掌握。
那些外部拓展功能大多都基于這些內部控制)。
5.掌握單片機的串口通信。
以上是對想從事單片機學習的人必須掌握的基本內容。
對于2、3:2、3可以在一起講,這是硬件部分的。
altiumdesigner主要學原理圖庫設計,pcb庫設計,布線。
沒入門的朋友看下視頻,不要求什么都會畫,起碼要會用人家的庫,把人家的庫移植過來自己用,這樣可以快速上手這個軟件。
到后來再慢慢完善自己不熟悉的地方,這在里一直頭疼我的就是封裝的問題,當時我連封裝是什么都不懂,自己看視頻查了資料,才慢慢有點認識。
。
學了一年多的單片機,對單片機也有了一個基礎的了解。在這一年里,我學了ds18b20、128,64大液晶、數碼管顯示等。從最初的跑馬燈,到整體融合,經歷了一段時間。單片機只有p0,p1,p2,p3,如果想把很多功能合在一起的話,就得復用,或著用到擴展,但是那個擴展模塊不好用,寫起程序來會比較麻煩,其實復用好的話,基本io口都夠用!
學習的時候總是難免碰到一些問題!但是我的總結是:沒關系,邊做邊想!或著講瞎搞!不搞肯定不知道,搞了才會懂!過去的一些問題在現在看來都是小case,什么定時器賦值啊,定時器的使用類型(模式0,模式1,模式2),當時就自己在那里看書理解,一大堆的文字在那里,看了很久也不懂!不過后來我懂得了上網找視頻教程!剛開始的時候也總是想為什么這么做,為什么這么做,為什么這么做,一堆的為什么?,F在懂了,做多了,就覺得要這樣做,要這樣做,就是這么做的,沒錯!不會的時候想著,反正會弄懂的,多試試!
要相信熟能生巧,想想學習的時候,和現在的程度,不是在一個檔次的!熟悉了操作,一些疑惑也會雖之解開!
我最初開始學單片機是因為我喜歡編程,我覺得編程是一件樂趣的事!或著說享受技術帶來的快樂!我現在懂得了有各門各樣的`語言,c語言是其中一種,還有更底程的匯編語言,java之類的高級語言,這些我都很喜歡!它們各有各自的好處和用處!而且我不想只會一門語言,所以我要慢慢地學習各種自己喜歡的語言!
在學習的過程中遇到麻煩或著問題,已經習以為長了!遇到問題也不會焦慮,想的是該怎么解決!水平也是在不斷解決問題中提高的,有這一點體會!其實初學單片機,碰到問題總是新的知識而已,因為單片機很簡單,也不用很懂電路原理,知道什么時候給0,什么時候給1,其它的就交給硬件去處理。
我也不單單只想有關單片機的程序單片機功能簡單,一直寫單片機也會變得呆板的(這期間就一直寫單片機的程序,不寫其它思考性的編程),至少我是這么覺得。因為寫單片機的程序一段時間后,我發現我的思路有點僵在單片機的思路上,自己想寫一寫其它的程序,不是單片機的,是c語言的一些有關數學計算(類似應用題的那種),寫的時候卻想的寫單片機的感覺,有點難以集中到現在要解決的問題!
單片機實踐心得體會,學習就像一場戰爭,一場賽跑,它不會因你而停止,而你要因它而奮斗,下面帶來單片機實踐心得體會相關范文,歡迎閱讀參考。
最近自己對單片機特別的感興趣,因為看到它能控制電機的轉動,自己覺得很神奇。
就想弄清楚它到底是怎么做到的?
我看到書上講:單片機可以用兩種語言編寫,一種是c語言,另外一種是匯編語言。
匯編語言是一種機器語言,且代碼繁瑣,不易記憶。
需要掌握單片機的內部結構和邏輯結構,通過看了幾本書讓我了解認識到匯編確實太繁瑣,不過我學習過c語言,也參加了全國計算機二級考試,覺得自己在一方面具有優勢,能很快學好它。
不過在學習中,我才發現學習單片機不僅僅需要軟件的知識,還需要硬件的知識。
我買了一個單片機在實踐中就是一個活生生的例子,沒有相應的硬件知識,我連單片機怎么和電腦相連都不知道,我為我當初的想法感到羞愧。
單片機是一門很好的學問,需要我去鉆研它。
時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機綜合課程設計也在一周內完成了。
俗話說“好的開始是成功的一半”。
說起課程設計,我認為最重要的就是做好設計的預習,認真的研究老師給的題目,選一個自己有興趣的題目。
其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設計,到頭來一點收獲也沒有。
最后,要重視程序的模塊化,修改的方便,也要注重程序的調試,掌握其方法。
雖然這次的課程設計算起來在實驗室的時間只有三天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。
硬件的設計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調試,最終一個能完成課程設計的勞動成果出來了,很高興它能按著設計的思想與要求運動起來。
當然,這其中也有很多問題,第一、不夠細心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導致編程出現錯誤。
第二,是在學習態度上,這次課設是對我的學習態度的一次檢驗。
對于這次單片機綜合課程實習,我的第一大心得體會就是作為一名工程技術人員,要求具備的首要素質絕對應該是嚴謹。
我們這次實習所遇到的多半問題多數都是由于我們不夠嚴謹。
第三,在做人上,我認識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰困難的勇氣,就沒有什么辦不到的。
這是我第一次做單片機實驗,說起來有一些緊張和新奇。
在此之前我并沒有接觸過單片機,我本以為與之前的光學實驗及其它實驗差不多,可我進到實驗室之后,我就改變了這個看法。
單片機實驗要求的是一種思維的創新,而不是簡單的重復老師所說的實驗步驟。
因此第一次實驗,實驗老師向我們講解了cvavr編譯器的大體情況及使用方法和技巧,并簡單的向我們示例——如何在cvavr中編寫一段程序。
編完程序之后,知道我們如何使用avrstudio達到將編好的程序輸入到單片機中來使其運行。
之后老師讓我們以組為單位合作編寫一段程序,并使其運行。
我們組想要編寫一個跑馬燈的程序。
在第一次運行cvavr時,我們組就遇到了一個麻煩,我們在建立一個新project文件那里出現了錯誤。
在保存這個新project文件的時候,我們單擊了save,而不是generate, save and exit.因此它彈不出我們我們所需要的源程序。
之后我們通過詢問其他人解決了這個問題。
在編程中,我們開始做的`是兩盞燈的交替閃爍,間隔時間是1000ms。
在運用avrstudio 的時候,我們又犯了一個錯誤。
在我們打開編譯好的工程文件時,開始調試,在最后一步點擊 finish時,彈出一對話框,問我們是否更新,然后我們單擊了yes。
這導致了仿真器無法下次使用。
這是由于實驗室中的仿真器是盜版的,無法進行更新。
經過我們的不斷努力,我們終于實現了簡單的跑馬燈的運行,便是兩個燈地交替閃爍。
我們感到興奮極了。
但是我們并沒有滿足于當前,我們又編寫了三個燈地交替閃爍,四個及多個。
當我們一步步實現我們的目的時,我得到莫大成就感和自信。
在這次實驗中,我體會到了合作的重要性。
一個人也可能實現這一系列的過程,但是要花費很多精力和時間。
群策群力,分工明確,可以使我們更好、更快地完成我們的工作。
在此期間,你可以更好知道自己的不足和缺陷,來得到改正。
還可以知道自己的優勢所在,把握好自己的優勢。
以上便是我做這次實驗的心得體會。
作為一名自動化專業的大三學生,我覺得做單片機課程設計是十分有意義的,而且是十分必要的。
在已度過的大學時間里,我們大多數接觸的是專業課。
我們在課堂上掌握的僅僅是專業課的理論知識,如何去鍛煉我們的實踐能力?如何把我們所學的專業基礎課理論知識運用到實踐中去呢?我想做類似的課程設計就為我們提供了良好的實踐平臺。
這次單片機課程設計我們歷時兩個星期,在我們班里算是倒數幾組完成的吧,但經過這兩個星期的實踐和體驗下來,我們又怎么會去在乎那個先后問題呢,因為對我來說學到的不僅是那些知識,更多的是團隊和合作。
現在想來,也許學校安排的課程設計有著它更深層的意義吧,它不僅僅讓我們綜合那些理論知識來運用到設計和創新,還讓我們知道了一個團隊凝聚在一起時所能發揮出的巨大潛能!
單片機作為我們的主要專業課之一,雖然在大三開學初我對這門課并沒有什么興趣,覺得那些程序枯燥乏味,但在這次課程設計后我發現自己在一點一滴的努力中對單片機的興趣也在逐漸增加。
過沒想到這項看起來不需要多少技術的工作卻是非常需要耐心和精力在兩個星期后的今天我已明白課程設計對我來說的意義,它不僅僅是讓我們把所學的理論知識與實踐相結合起來,提高自己的實際動手能力和獨立思考的能力,更重要的是同學間的團結,雖然我們這次花去的時間比別人多,但我相信我們得到的也會更多!
在做本次課程設計的過程中,我感觸最深的當屬查閱大量的設計資料了。
為了讓自己的設計更加完善,查閱這方面的設計資料是十分必要的,同時也是必不可少的。
我們是在做單片機課程設計,但我們不是藝術家,他們可以拋開實際盡情在幻想的世界里翱翔,而我們一切都要有據可依,有理可尋,不切實際的構想永遠只能是構想,永遠無法升級為設計。
其次,在這次課程設計中,我們運用到了以前所學的專業課知識,如:cad制圖、匯編語言、模擬和數字電路知識等。
雖然過去從未獨立應用過它們,但在學習的過程中帶著問題去學我發現效率很高,這是我做這次課程設計的又一收獲。
要養成注釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在設計課程過程中遇到問題是很正常德,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題的課程設計結束了,但是從中學到的知識會讓我受益終身。
發現、提出、分析、解決問題和實踐能力的提高都會受益于我在以后的學習、工作和生活中。
設計過程,好比是我們人類成長的歷程,常有一些不如意,但畢竟這是第一次做,難免會遇到各種各樣的問題。
在設計的過程中發現了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固。
我們通過查閱大量有關資料,并在小組中互相討論,交流經驗和自學,若遇到實在搞不明白的問題就會及時請教老師,使自己學到了不少知識,也經歷了不少艱辛,但收獲同樣巨大。
通過這次課程設計我也發現了自身存在的不足之處,雖然感覺理論上已經掌握,但在運用到實踐的過程中仍有意想不到的困惑,經過一番努力才得以解決。
這也激發了我今后努力學習的興趣,我想這將對我以后的學習產生積極的影響。
通過這次設計,我懂得了學習的重要性,了解到理論知識與實踐相結合的重要意義,學會了堅持、耐心和努力,這將為自己今后的學習和工作做出了最好的榜樣。
我覺得作為一名自動化專業的學生,單片機的課程設計是很有意義的。
更重要的是如何把自己平時所學的東西應用到實際中。
雖然自己對于這門課懂的并不多,很多基礎的東西都還沒有很好的掌握,覺得很難,也沒有很有效的辦法通過自身去理解,但是靠著這一個多禮拜的“學習”,在小組同學的幫助和講解下,漸漸對這門課逐漸產生了些許的興趣,自己開始主動學習并逐步從基礎慢慢開始弄懂它。
我認為這個收獲應該說是相當大的。
覺得課程設計反映的是一個從理論到實際應用的過程,但是更遠一點可以聯系到以后畢業之后從學校轉到踏上社會的一個過程。
小組人員的配合﹑相處,以及自身的動腦和努力,都是以后工作中需要的。
版權聲明:此文自動收集于網絡,若有來源錯誤或者侵犯您的合法權益,您可通過郵箱與我們取得聯系,我們將及時進行處理。
本文地址:http://www.springy.cn/fanwendaquan/xindetihui/104024.html