freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

北郵單片機學(xué)習(xí)心得大全(存儲版)

2025-11-16 12:49上一頁面

下一頁面
  

【正文】 器及其它器件中有存儲單元,這些存儲單元要被分配 地址,才能 用,分配地址當(dāng)?也是以電信號的形?給出的,由于存儲單元比較多,所以,用于地址分的線也較多,這些線被稱為地址總線。4實際輸出值(如P1口接彩燈,要燈全亮,則執(zhí)行指令:MOV P1,0FFH,要燈全暗,則執(zhí) 兄 令:MOV P1,00H)這里0FFH和00H都是實際輸出值。你完全可以在指令中按排一條S ETB ,并且當(dāng)單片機執(zhí)。2方式字或控制字(如MOV TMOD,3),3即是控制字。一、總線:我們知道,一個電路總是由元器件通過電線連接而成的,在模擬電路中,連連線并不成為一個問題,因為各器件間一般是串行關(guān)系,各器件之間的連線并不很多,但計算機電路卻不一樣,它是以微處理器為核心,各器件都要與微處理器相連,各 器件之間的工作必須相互協(xié)調(diào)?所以就需要的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨連線線,則線的數(shù)量將多得驚人,所以在微處理機中引 入了總線的概念,各個器件共同享用連線,所有器件的8根數(shù)據(jù)線全部接到8根公用的線 上,即相當(dāng)于各個器件并聯(lián)起來,但僅這樣還不行,如果有兩?器件同時送出數(shù)據(jù),一 個為0,一個為1,那么,接收方接收到的究竟是什么呢?這種情況是是不允許的,所以 要通過控制線進行控制,使器件分時工作,任何時候只能有一個器件發(fā)送數(shù)據(jù)(可以有 多個器件同時接收)。由于單片機涉及的知識面很廣,不可能在朝夕間就學(xué)會,只能一點點的積累。通過學(xué)習(xí)才大體知道了單片機的一些知識。還鍛煉我們個人的查閱技術(shù)資料的能力,動手能力,發(fā)現(xiàn)問題,解決問題的能力。當(dāng)然,這其中也有很多問題,第一、不夠細心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導(dǎo)致編程出現(xiàn)錯誤。以上就是我學(xué)習(xí)單片機的經(jīng)歷和心得體會,希望對大家會有幫助,說得有不好或不對的地方歡迎大家批評指正。當(dāng)你有了一定的編程經(jīng)驗,控制過相當(dāng)數(shù)量的器件之后,你就會發(fā)現(xiàn),控制器件這些工作都是相似的、重復(fù)的工作,體現(xiàn)不出編程的水平,最多也是寫得好與不好的差別,只能算是一些小技巧的應(yīng)用?!边@個才是能力。嘗試編寫一下綜合應(yīng)用的程序。有了解決問題的思路,我們就能問題拆分開來,然后逐一的解決,如果動態(tài)掃描的原理都沒懂,不知道如何做,那么這個程序是怎么也寫不出來的。我們用單片機來控制周邊器件,達到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結(jié)果去運作,這個就是解題的思路。程序不要光看不寫,一定要自己寫一次。遇到困難要一件件攻克,不會建項目,就先學(xué)它,這方面網(wǎng)上教程很多,隨便找找看一下,做幾次就懂了。然后,是進一步的其它程序?qū)W習(xí),一個月時間,基本上已經(jīng)熟悉了51的各種硬件資源。希望對大家學(xué)習(xí)單片機有所幫助。對于規(guī)模越大的程序,越能體現(xiàn)出這一點。當(dāng)然,業(yè)績也能從另一側(cè)面反映你的經(jīng)驗和水平。但把它和其它功能混合在一起,如何在整個程序運行中使每一部分都正常工作,這就不是寫一個按鍵讀取這么容易的事情,功能模塊之間有可能會互相影響,比如你需要讓數(shù)碼管既能顯示,又要去處理按鍵讀取,怎么使這兩部分都正常工作,這就是一個協(xié)調(diào)過程。想想用各種不同方法來實現(xiàn)同一功能。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復(fù)制到自己的程序中,可以說,這不是一種學(xué)習(xí)的態(tài)度,無助于你編程水平的提高。必須學(xué)會掌握調(diào)試程序的方法。個人認為,一塊學(xué)習(xí)板還是必要的,寫好程序在上面運行一下看結(jié)果,學(xué)習(xí)效果會好很多,仿真器就看個人需要了。之后,就是逐步學(xué)習(xí)編寫更多的程序,各種外圍器件的控制等等,通過編寫程序使自己不斷的提高。一個好的學(xué)習(xí)方法,能讓你事半功倍,這里說說我學(xué)習(xí)單片機的經(jīng)歷和方法。期間由于JTAG下載器和AVR Studio總是出現(xiàn)連接失敗的情況,浪費了我們許多寶貴的時間,個人總結(jié)原因是驅(qū)動可能用了一段時間會失效,解決辦法是重新啟動計算機,并將WINAVR這個環(huán)境卸載后再次裝上,并且是裝到與上一次不同的盤中,同時編譯AVR程序的時候先接上JTAG下載器,試驗了許多次,這個方法很管用,之后就沒有出現(xiàn)該問題了。后來我和同學(xué)決定將兩份流水燈的程序,一份放在主程序main中,和秒表計時器的程序放在一起,即實現(xiàn)兩者同時工作,且流水燈的閃爍間隔是一秒,另一份放在中斷服務(wù)程序中SIGNAL()中,即實現(xiàn)按下按鈕進入中斷服務(wù)程序后,秒表計時器暫停第30頁 北京郵電大學(xué)信息與通信工程學(xué)院工作,而流水依舊在依次循環(huán)閃爍。第一天剛接到流水燈和數(shù)碼管秒表計時器的任務(wù)的時候,內(nèi)心真的十分激動,心想:實現(xiàn)了這個不就實現(xiàn)了街邊廣告牌上滾動的文字了么!但是一看到ATmega16芯片時還是傻了眼,心想:這么多的管腳都該怎么用???“視頻里有”,同學(xué)告訴我,于是我就開始認真地第29頁 北京郵電大學(xué)信息與通信工程學(xué)院研究起老師給的單片機教學(xué)視頻和它的技術(shù)文檔。經(jīng)過一番努力,我們順利完成了暫停播放和繼續(xù)播放的功能。,我們發(fā)現(xiàn)本實驗中使用的ATmega16頻率不是16MHz,也不是1MHz,為了盡可能的實現(xiàn)秒表計時,試驗了很多的數(shù)字組合,最后達到了30秒誤差1秒的精確度,當(dāng)然還可以達到更高的精確度。在彈奏模式下,按下A鍵會進入錄制模式,此時LCD顯示“Recording Mode”字樣,可以使用1~0十個按鍵進行錄音,想要聽聽錄制好的音樂,可以切換到播放模式下進行欣賞。i{write_dat(Ptable[i])。break。}write_(0X80+0X11)。//music_1int main(void){INI_POTR()。Ssong[i][0]=tone[Skey]。//count=0。const uchar R_table[]=“Recording Mode”。i++。amp。case 9:T=0。case 13:aim=0。amp。write_(0X01)。if(temp1!= temp2)return 17。break。PORTA= 0x0f。break。if(isKeyPress()){temp1 = PINA。return 0。//中斷,為下一個節(jié)拍做準(zhǔn)備;PORTD|=(1//PD5作為輸出管腳,接揚聲器; } //___________________________________________ void INI_POTR(void){ DDRD|=0xff。OCR1A=0。PORTDamp。//******************************************** void delay_us(int n)//微妙級延時函數(shù); {第14頁 北京郵電大學(xué)信息與通信工程學(xué)院while(n){asm(“nop”)。l 播放模塊——揚聲器:原先以為單片機本身的電源電壓不足以驅(qū)動揚聲器工作,所以設(shè)計了有LM386的功放模塊,后來在實際操作的過程中測試發(fā)現(xiàn),單片機本身的電源足以驅(qū)動揚聲器播放音樂音調(diào),因此舍棄了LM386功放模塊的設(shè)置。第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。播放模塊接收對應(yīng)頻率的方波,由此播放琴鍵彈奏的音階以第10頁 北京郵電大學(xué)信息與通信工程學(xué)院及播放預(yù)先存放在單片機里的音樂。i{while(!(TIFR amp。(1{count3++。temp = PORTA。PORTC |=(1 MCUCR |=(1 GICR |=(1 while(1){for(i = 0。int main(void){ DDRA = 0xff。所以,主程序雖然是個死循環(huán),但是每當(dāng)外界有中斷請求的時候,它就跳轉(zhuǎn)到中斷程序中去執(zhí)行,所以我們看到,大部分,也是最主要的程序一般都位于中斷服務(wù)程序中,這樣,單片機的各個模塊既能單獨地并行地互不干擾地運行,又能夠保證主程序順序執(zhí)行,這樣就發(fā)揮了模塊化程序設(shè)計思想的高效特點,并且既充分利用了各個硬件的資源,又能減少能量損耗。單片機的發(fā)展到現(xiàn)在,稱其為一個小型的計算機已經(jīng)一點也不為過了,單片機集成了一個計算機應(yīng)有的各個模塊,但是它的使用方法和計算機有著很大的區(qū)別,在學(xué)習(xí)之處,由于沒有注意到這一點,而仍然簡單的按照自己之前運用C語言在計算機上編程的思想與方法去操作它,發(fā)現(xiàn)它就像不受控制一樣,完全不能按照自己程序設(shè)定的套路運行,讓我很是頭疼,這個問題困擾了我很久,知道我了解了單片機的工作原理之后。隨后,潘多拉的盒子邊打開,人能認識到單片機的潛在能力和市場價值,在1974—1978年,單片機進入8位時代,此后,單片機進入了高速發(fā)展的時代,在此后短短10年內(nèi),單片機的工作頻率、硬件資源和RAM/ROM容量等都有極大的突破,創(chuàng)新地加入了串口通信接口及多級中斷處理系統(tǒng),其中以Intel公司的MCS51為代表,51系列單片機以其強大的可重復(fù)編程能力和高的性價比等優(yōu)點而得到廣泛的應(yīng)用,在家電產(chǎn)品,例如電視、電話、冰箱、空調(diào)、洗衣機、家用防盜報警器等,還有隨身影音設(shè)備,例如MPMP錄音筆等,以及電子玩具、幾點一體化設(shè)備、數(shù)據(jù)通信、測控設(shè)備等領(lǐng)域都能見到它的身,所以掌握單片機已經(jīng)成為學(xué)習(xí)、從事電子專業(yè)的必備能力。有了中斷系統(tǒng),便可以使單片機具備對外部的異步事件進行處理的能力。volatile char temp。PORTD = a[0]。if(count2 == 10)count2 = 0。第5頁 北京郵電大學(xué)信息與通信工程學(xué)院while(!(PINB amp。}}for(int i=0。琴鍵控制模塊為4*4矩陣鍵盤,可以通過按下不同的琴鍵彈奏出不同的音階,每個音階對應(yīng)著不同的頻率,一段音樂是由許多不同的音階組成,這樣我們就可以根據(jù)不同的頻率組合得到我們想要的音樂,同時在錄制模式下,還可以通過按不同的按鍵記錄下不同的音階,由此記錄一段音樂。第2腳:VDD接5V正電源。第16腳:背光源負極。uint Ssong[10][2]={{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}}。PORTD|=(1//高電平使能delay_ms(1)。//頻率為0,休止符,不發(fā)聲TCCR1B=0X00。TCCR1B=0X00。//將低四位設(shè)為輸入if(PINA == 0xf0)//當(dāng)沒有按下時,PINA仍然為11110000 {DDRA=0xff。unsigned char temp1,temp2。case 0b00000100:j = 2。DDRA = 0xff。case 0b00100000:i = 1。= 0xf0。}//**********************************播放函數(shù); void music_play(uint a[][2]){const char Mtable[]=“Music Mode”。(tem==aim)amp。//播放Dbreak。break。}while(a[i][0]amp。elsedelay_ms(a[i][1])。} }/***************** 錄制音樂函數(shù); *****************/ void record(void){write_(0X01)。(Skey{int i=0。(Skey{play(Skey)。// abcdefguint music_1[][2]= {{262,400},{294,400},{330,400},{262,400},{262,400}, //樂譜 {294,400},{330,400},{262,400},{330,400},{349,400}, {392,800},{330,400},{349,400},{392,800},{392,300}, {440,100},{392,300},{349,100},{262,400},{392,400}, {440,300},{392,100},{349,300},{330,100},{262,400}, {294,400},{196,400},{262,400},{294,800},{196,400}, {262,400},{294,800},{0,0}}。i第22頁 北京郵電大學(xué)信息與通信工程學(xué)院{write_dat(table[i])。case 1:music_play(Ssong)。for(int i=0。在彈奏模式下,按下F鍵會進入播放模式,LCD顯示出“Music Mode”字樣,此時按下D鍵是播放/繼續(xù),按下B鍵是暫停,C鍵和E鍵分別代表上一首和下一首,9鍵則是將音樂速度調(diào)整為慢速,再次按下F鍵會回到彈奏模式。經(jīng)過多次調(diào)試,終于實現(xiàn)了計時器的計時、暫停、繼續(xù)功能,并且流水燈能夠一直工作不受計時器的暫停影響。我們重新調(diào)整播放音樂函數(shù)的判斷語句和循環(huán)結(jié)構(gòu),并加入一個pause變量來標(biāo)志暫停狀態(tài),在按下暫停按鈕時將pause標(biāo)志為0,使程序退出播放循環(huán)。由于有C++的基礎(chǔ),加上有硬件的端口以及相應(yīng)設(shè)備的使用說明文檔的幫助,因此在我看來,在AVR Studio上進行C語言的編程從邏輯上比C++更容易理解,所需要的只是在編程時將端口的配置和邏輯函數(shù)結(jié)合到一起,實現(xiàn)編寫的函數(shù)對單片機端口以及內(nèi)部中斷的控制。不過這個過程也不是一帆風(fēng)順的,因為中斷的概念我剛開始覺得很難理解,也不知道該將中斷的有關(guān)函數(shù)放在代碼的哪個位置,因此反復(fù)糾結(jié)反復(fù)研究視頻和技術(shù)文檔,持續(xù)了一段時間。由于有硬件,因此我們編寫的程序可以馬上下載到板子里驗證效果,并及時修改,大大方便了我們排錯和系統(tǒng)優(yōu)化。當(dāng)然,受限于每個人受到的教育水平不同和個人理解能力的差異,學(xué)習(xí)起來會有快慢之分,但我感覺最重的就是學(xué)習(xí)方法。通過這個程序的編寫,使自己的編程水平有了很大的飛躍。必須熟悉這一套工序。當(dāng)你自己能寫出來的時候,說明你就真的懂了。要寫程序,就得先找到解決問題的思路,你學(xué)會找出這個解題思路,比你找到代碼更為重要。開動腦筋,運用多種方法,不斷優(yōu)化自己的程序。從流水燈學(xué)起,到動態(tài)掃描,再到中斷
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1