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

正文內容

單片機畢業(yè)設計論文基于單片機的lcd液晶顯示器控制系統(tǒng)研究-資料下載頁

2024-11-30 13:16本頁面

【導讀】LCD液晶顯示已經是人機界面的關鍵技術。本文對基于單片機的LCD液晶。顯示器控制系統(tǒng)進行了研究。首先在緒論中介紹了本課題的課題背景、研究意義及完成的功能。是以單片機的基本語言C語言來進行軟件設計,51的編程語言常用的有二種,一種是匯編語言,一種是C語言。匯編語言的機器代碼生成效率很高但可讀性。C語言還可以嵌入?yún)R編來解決高時效性的代碼編寫問題。中大型的軟件編寫用C語言的開發(fā)周期通常要小于匯編語言很多。語言的優(yōu)點,我在學習時選擇了C語言指令的執(zhí)行速度快,節(jié)省存儲空間。使硬件在軟件的控制下協(xié)調運作。正文中首先簡單描述系統(tǒng)硬件工。了本次畢業(yè)設計所應用的各硬件接口技術和各個接口模塊的功能及工作過程,并具體描述了AT89C51AMPIRE128×64接電路接口的軟、硬件調試。了程序的流程和實現(xiàn)過程。本文撰寫的主導思想是軟、硬件相結合,以硬件為。.4中斷的響應過程...

  

【正文】 音長最多由三位數(shù)字組成: 個位表示音符的時值,其對應關系是: |數(shù)值 (n): |0 |1 |2 |3 | 4 | 5 | 6 |幾分音符 : |1 |2 |4 |8 |16 |32 |64 音符 =2^n 十位表示音符的演奏效果 (02): 0普通, 1連音, 2頓音 百位是符點位 : 0無符點, 1有符點 調用演奏子程序的格式 Play(樂曲名 ,調號 ,升降八度 ,演奏速度 )。 畢業(yè)設計 (論文)說明書 34 |樂曲名 : 要播放的樂曲指針 ,結尾以 (0,0)結束 。 |調號 (011) : 是指樂曲升多少個半音演奏 。 |升降八度 (13) : 1:降八度 , 2:不升不降 , 3:升八度 。 |演奏速度 (112021): 值越大速度越快 。 void Play(unsigned char *Sound,unsigned char Signature,unsigned Octachord,unsigned int Speed) { unsigned int NewFreTab[12]。 //新的頻率表 unsigned char i,j。 unsigned int Point,LDiv,LDiv0,LDiv1,LDiv2,LDiv4,CurrentFre,Temp_T,SoundLength。 unsigned char Tone,Length,SL,SH,SM,SLen,XG,FD。 for(i=0。i12。i++) // 根據(jù)調號及升降八度來生成新的頻率表 { j = i + Signature。 if(j 11) {j = j12。 NewFreTab[i] = FreTab[j]*2。 } else NewFreTab[i] = FreTab[j]。 if(Octachord == 1) NewFreTab[i]=2。 else if(Octachord == 3) NewFreTab[i]=2。 } SoundLength = 0。 while(Sound[SoundLength] != 0x00) //計算歌曲長度 { SoundLength+=2。 } Point = 0。 Tone = Sound[Point]。 Length = Sound[Point+1]。 // 讀出第一個音符和它時時值 LDiv0 = 12021/Speed。 // 算出 1分音符的長度 (幾個 10ms) LDiv4 = LDiv0/4。 // 算出 4分音符的長度 LDiv4 = LDiv4LDiv4*SOUND_SPACE。 // 普通音最長間隔標準 畢業(yè)設計 (論文)說明書 35 TR0 = 0。 TR1 = 1。 while(Point SoundLength) { SL=Tone%10。 //計算出音符 SM=Tone/10%10。 //計算出高低音 SH=Tone/100。 //計算出是否升半 CurrentFre = NewFreTab[SignTab[SL1]+SH]。 //查出對應音符的頻率 if(SL!=0) { if (SM==1) CurrentFre = 2。 //低音 if (SM==3) CurrentFre = 2。 //高音 Temp_T = 65536(50000/CurrentFre)*10/(12021000/SYSTEM_OSC)。//計算計數(shù)器初值 Sound_Temp_TH0 = Temp_T/256。 Sound_Temp_TL0 = Temp_T%256。 TH0 = Sound_Temp_TH0。 TL0 = Sound_Temp_TL0 + 12。 //加 12是對中斷延時的補償 } SLen=LengthTab[Length%10]。 //算出是幾分音符 XG=Length/10%10。 //算出音符類型 (0普通 1連音 2頓音 ) FD=Length/100。 LDiv=LDiv0/SLen。 //算出連音音符演奏的長度 (多少個 10ms) if (FD==1) LDiv=LDiv+LDiv/2。 if(XG!=1) if(XG==0) //算出普通音符的演奏長度 if (SLen=4) LDiv1=LDivLDiv4。 else LDiv1=LDiv*SOUND_SPACE。 else LDiv1=LDiv/2。 //算出頓音的演奏長度 else LDiv1=LDiv。 if(SL==0) LDiv1=0。 LDiv2=LDivLDiv1。 //算出不發(fā)音的長度 if (SL!=0) 畢業(yè)設計 (論文)說明書 36 { TR0=1。 for(i=LDiv1。i0。i) //發(fā)規(guī)定長度的音 { while(TF1==0)。 TH1 = Sound_Temp_TH1。 TL1 = Sound_Temp_TL1。 TF1=0。 } } if(LDiv2!=0) { TR0=0。 BeepIO=0。 for(i=LDiv2。i0。i) //音符間的間隔 {while(TF1==0)。 TH1 = Sound_Temp_TH1。 TL1 = Sound_Temp_TL1。 TF1=0。 } } Point+=2。 Tone=Sound[Point]。 Length=Sound[Point+1]。 } BeepIO = 0。 } 畢業(yè)設計 (論文)說明書 37 6 系統(tǒng)仿真 Proteus 和編譯 KeilC 軟件 本 單片機 系統(tǒng)主要用到 Proteus 繪圖仿真軟件和 Keilc 編譯軟件,下面就介紹一下這兩種軟件的使用 入門。 Proteus ISIS 仿真系統(tǒng)基本知識 系統(tǒng)概述 Proteus 是英國 Labcenter 公司開發(fā)的電路分析與實物仿真軟件。它運行于 Windows 操作系統(tǒng)上,可以仿真、分析 (SPICE)各種模擬器件和集成電路,該軟件的特點是:①實現(xiàn)了單片機仿真和 SPICE 電路仿真相結合。具有模擬電路仿真、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真、 RS232 動態(tài)仿真、 I2C 調試器、 SPI 調試器、鍵盤和 LCD 系統(tǒng)仿真的功能;有各種虛擬儀器, 如示波器、邏輯分析儀、信號發(fā)生器等。②支持主流單 片機系統(tǒng)的仿真。③提供軟件調試功能。在硬件仿真系統(tǒng)中具有全速、單步、設置斷點等調試功能,同時可以觀察各個變量、寄存器等的當前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時支持第三方的軟件編譯和調試環(huán)境,如 Keil C51 uVision2 等軟件。④具有強大的原理圖繪制功能。 Proteus 軟件所提供了30 多個元件庫,數(shù)千種元件。元件涉及到數(shù)字和模擬、交流和直流等。 對于一個仿真軟件或實驗室,測試的儀器儀表的數(shù)量、類型和質量,是衡量實驗室是否合格的一個關鍵因素。在 Proteus 軟件包中,不存在同類儀 表使用數(shù)量的問題。 Proteus 還提供了一個圖形顯示功能,可以將線路上變化的信號,以圖形的方式實時地顯示出來,其作用與示波器相似但功能更多。 總之,該軟件是一款集單片機和 SPICE 分析于一身的仿真軟件,功能極其強大。 Proteus 與其它單片機仿真軟件不同的是,它不僅能仿真單片機CPU 的工作情況,也能仿真單片機外圍電路或沒有單片機參與的其它電路的工作情況。因此在仿真和程序調試時,關心的不再是某些語句執(zhí)行時單片機寄存器和存儲器內容的改變,而是從工程的角度直接看程序運行和電路工作的過程和結果。對于這樣的仿真 實驗,從某種意義上講,是彌補了實驗和工程應用間脫節(jié)的矛盾和現(xiàn)象。 畢業(yè)設計 (論文)說明書 38 進入 Proteus ISIS 雙擊桌面上的 ISIS 6 Professional 圖標或者單擊屏幕左下方的“開始”→“程序”→“ Proteus 6 Professional” →“ ISIS 6 Professional” ,出現(xiàn)如圖 61 所示屏幕,表明進入 Proteus ISIS 集成環(huán)境。 圖 61 啟動時的屏幕 Proteus 工作界面及窗口說明 Proteus 的工作界面是一種標準的 Windows 界面,如圖 62 所示。包括:標題欄、主菜單、標準工具欄、繪圖工具欄、狀態(tài)欄、對象選擇按鈕、預覽對象方位控制按鈕、仿真進程控制按鈕、預覽窗口、對象選擇器窗口、圖形編輯窗口。 畢業(yè)設計 (論文)說明書 39 圖 62 Proteus工作界面 各個窗口的說明如下 :即繪制原理圖區(qū)域,藍色方框內為可編輯區(qū),元器件要放到里面,且窗口有滾動條,可以用來改變原理圖的可視范圍。 :它可顯示你選中元器件的預覽圖,當沒有選擇元器件時則顯示整張原理圖的縮略圖。 :從上到下功能依次為,選擇原 件、放置連接點、放置標簽、放置文本、用于繪制總線、用于放置子電路、用于即時編輯元件參數(shù)、終端接口、器件引腳、仿真圖表、錄音機、信號發(fā)生器、電壓探針、電流探針、虛擬儀表、畫各種直線、畫各種方框、畫圓、畫圓弧、畫多邊形、畫文本、畫符號、畫原點。 :單擊按鈕 P 會出現(xiàn)如圖 63對話框 畢業(yè)設計 (論文)說明書 40 圖 63對象選擇 界面 在 keywords 中輸入需要的元器件型號如 89c52 會出現(xiàn)如圖 64 對話框 在Results 下選中需要的元器件然后按右下腳的 OK 關閉對話框,這時元器件列表中就會列出 89c52。這時在原件列表中左鍵選取 89c52,在原理圖編輯窗口中單擊左鍵,這樣 89c52 就被放到原理圖編輯窗口中了。同樣放置其他元器件。 畢業(yè)設計 (論文)說明書 41 圖 64 添加器件界面 Proteus 繪圖流程舉例 , 首先按剛才所述選取放置 一元件電阻,然后在圖形編輯窗口中右鍵選取電阻,然后單擊左鍵會出現(xiàn)如圖 65 對話框 圖 65 修改元器件屬性 界面 畢業(yè)設計 (論文)說明書 42 然后按需要進行設置即可。 ( .hex 文件) 連好電路圖后右 鍵單擊圖中的單片機選中,然后單擊左鍵出現(xiàn)如圖 66 對話框 圖 66 添加十六進制文件界面 在 program file 中單擊瀏覽圖標,找到所需要的 .hex 文件最后單擊 ok 退出。 KEIL Cx51 軟件的使用 Keil C51 軟件是眾多單片機應用開發(fā)的優(yōu)秀軟件之一,它集編輯,編譯,仿真于一體,支持匯編 ,PLM 語言和 C 語言的程序設計,界面友好,易學易用。下面介紹 Keil C51 軟件的使用方法 。 畢業(yè)設計 (論文)說明書 43 創(chuàng)建項目 181。Vision2 是一個標準的 Windows 應用程序,直接點擊程序 圖標就可以啟動它。啟動界面如圖 67 圖 67 啟動界面 啟動后進入 keil c 的編輯界面如圖 68 圖 68 keil c 的編輯界面 此時點擊 project— New Project 菜單選項可創(chuàng)建一個新的項目文件。此時會彈出一個標準的 Windows 對話框,詢問新建項目文件的名字,建議每個項目都使用一個獨立的文件夾。文件名寫好后單擊確定會出現(xiàn)如圖 69 對話框要求選擇單片機型號, keil c51 幾乎支持所有的 51 核的單片機 ,選好單片機后只要點擊確定即可。 畢業(yè)設計 (論文)說明書 44 圖 69 CPU選擇界面 為項目新建文件 點擊 菜單 File— New File 此時屏幕如圖 610 此時在彈出的 Text 窗 圖 610 新建文件界面 口中寫入自己的程序,寫完后點擊 File— Save As 將文件保存。 注意,如果用C語言編寫程序,則擴展名為 .c, 如果用匯編語言編寫程序,則擴展名必須為 .asm。畢業(yè)設計 (論文)說明書 45 此時回到編輯界面 單擊“ Target 1”前面的“+”號,然后在“ Source Group 1”上單擊右鍵, 在彈出的下拉菜單中單擊“ Add File to Group ‘Source Group 1’”再在出現(xiàn)的對話框中選擇自己
點擊復制文檔內容
公司管理相關推薦