版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、山東建筑大學(xué)信息與電氣工程學(xué)院學(xué)院課程設(shè)計(jì)說明書目 錄目 錄I摘 要I1設(shè)計(jì)目的及要求12總體設(shè)計(jì)內(nèi)容12.1 原理簡(jiǎn)介12.2 方案設(shè)計(jì)思想12.3 相關(guān)芯片說明22.3.1芯片AT89C5122.3.2 芯片LCD1286432.4 電路各模塊說明32.4.1 時(shí)鐘振蕩電路、復(fù)位電路32.4.2 蜂鳴電路42.4.3 鍵盤電路42.4.4 顯示電路52.5 系統(tǒng)的設(shè)計(jì)62.6 軟件設(shè)計(jì)62.7 仿真、安裝和調(diào)試8總結(jié)與致謝9參考文獻(xiàn)10附錄11附錄一:音樂程序11附錄二:基于單片機(jī)的數(shù)字音樂盒總電路圖19摘 要本設(shè)計(jì)是基于單片機(jī)的數(shù)字音樂盒設(shè)計(jì),由單片機(jī)AT89C51芯片和LCD顯示器為核
2、心,輔以必要的電路,構(gòu)成的一個(gè)單片機(jī)電子數(shù)字音樂盒。要求利用I/O口產(chǎn)生一定頻率的方波,驅(qū)動(dòng)蜂鳴器,發(fā)出不同的音調(diào)并采用LCD顯示信息,從而演奏樂曲(最少三首樂曲,每首不少于30秒),開機(jī)時(shí)有英文歡迎提示字符,播放時(shí)顯示歌曲序號(hào)(或名稱),可通過功能鍵選擇樂曲,暫停,播放。本設(shè)計(jì)采用4*4鍵盤,用Protel來畫系統(tǒng)硬件圖,采用匯編語(yǔ)言進(jìn)行編程,編程后利用KEIL C51來進(jìn)行編譯,再生成的HEX文件裝入芯片中,采用proteus軟件來仿真,檢驗(yàn)功能得以正常實(shí)現(xiàn)。該音樂盒的設(shè)計(jì)可以通過按鍵選擇不同的曲目,播放和暫停,并通過LCD顯示歌曲號(hào)及播放時(shí)間。關(guān)鍵詞:音樂盒;AT89C51;LCD顯示器
3、 Protel軟件;4*4鍵盤 I 1設(shè)計(jì)目的及要求設(shè)計(jì)目的:運(yùn)用單片機(jī)設(shè)計(jì)數(shù)字音樂盒設(shè)計(jì)要求:1、利用I/O口產(chǎn)生一定頻率的方波,驅(qū)動(dòng)蜂鳴器,發(fā)出不同的音調(diào),從而演奏樂曲(最少儲(chǔ)存三首樂曲,每首不少于30秒)2、采用LCD顯示信息3、開機(jī)時(shí)有英文歡迎提示字符,播放時(shí)顯示歌曲序號(hào)(或名稱)4、可通過功能鍵選擇樂曲,暫停,播放 5、顯示樂曲播放時(shí)間或剩余時(shí)間2總體設(shè)計(jì)內(nèi)容 2.1 原理簡(jiǎn)介當(dāng)鍵盤有鍵按下時(shí),判斷鍵值,啟動(dòng)計(jì)數(shù)器T0,產(chǎn)生一定頻率的脈沖,驅(qū)動(dòng)蜂鳴器,放出樂曲。同時(shí)啟動(dòng)定時(shí)器T1,顯示樂曲播放的時(shí)間,并驅(qū)動(dòng)LCD,顯示歌曲號(hào)。2.2 方案設(shè)計(jì)思想用AT89S52單片機(jī)的I/O口產(chǎn)生一
4、定頻率的方波,驅(qū)動(dòng)蜂鳴器,發(fā)出不同的音調(diào),從而演奏樂曲。共有4樂曲,每首樂曲都由相應(yīng)的按鍵控制,并且有開關(guān)鍵、暫停鍵、上一曲以及下一曲控制鍵。其組成框圖如2.2所示圖2.22.3 相關(guān)芯片說明2.3.1芯片AT89C51AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器(FPEROM)的低電壓,高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在
5、單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。外形及引腳排列如圖2.3所示 圖2.32.3.2 芯片LCD12864帶中文字庫(kù)的128X64是一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國(guó)標(biāo)一級(jí)、二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模塊;其顯示分辨率為128×64, 內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ASCII字符集.利用該模塊靈活的接口方式和簡(jiǎn)單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示8×4行16
6、5;16點(diǎn)陣的漢字.也可完成圖形顯示2.4 電路各模塊說明2.4.1 時(shí)鐘振蕩電路、復(fù)位電路時(shí)鐘電路在單片機(jī)系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的基礎(chǔ)。在一個(gè)單片機(jī)應(yīng)用系統(tǒng)中,時(shí)鐘是保障系統(tǒng)正常工作的基準(zhǔn)振蕩定時(shí)信號(hào),主要由晶振和外圍電路組成,晶振頻率的大小決定了單片機(jī)系統(tǒng)工作的快慢。為達(dá)到振蕩周期是12MHZ的要求,這里要采用12MHZ的晶振,另外有兩個(gè)22P的獨(dú)石電容,兩晶振引腳分別連到XTAL1和XTAL2振蕩脈沖輸入引腳。其電路圖如2.4.1所示圖2.4.12.4.2 蜂鳴電路利用PNP管(9012)放大驅(qū)動(dòng)。基極接10K歐姆的電阻,發(fā)射極接蜂鳴器,集電極接電源。其電路圖如圖2
7、.4.2所示圖2.4.22.4.3 鍵盤電路 鍵盤在單片機(jī)應(yīng)用系統(tǒng)中能實(shí)現(xiàn)向單片機(jī)輸入數(shù)據(jù),傳送命 圖3令等功能,是人工干預(yù)單片機(jī)的主要手段。鍵盤模塊采用4*4按鍵模式(S1-S16),接在單片機(jī)的P0口上。當(dāng)用手按下一個(gè)鍵時(shí),往往按鍵在閉合位置和斷開位置之間跳幾下才穩(wěn)定到閉合狀態(tài)的情況;在釋放一個(gè)鍵時(shí),也回會(huì)出現(xiàn)類似的情況。這就是抖動(dòng)。抖動(dòng)的持續(xù)時(shí)間隨鍵盤材料和操作員而異,不過通常總是不大于10ms。很容易想到,抖動(dòng)問題不解決就會(huì)引起對(duì)閉合鍵的識(shí)別。用軟件方法可以很容易地解決抖動(dòng)問題,這就是通過延遲10ms來等待抖動(dòng)消失,這之后,在讀入鍵盤碼。其電路如圖2.4.3所示圖2.4.32.4.4
8、顯示電路顯示電路采用LCD模塊,LCD顯示模塊采用LCD12864。LCD顯示模塊電路圖和驅(qū)動(dòng)模塊電路如圖2.4.4所示。圖2.4.42.5 系統(tǒng)的設(shè)計(jì)其系統(tǒng)總電路圖見附錄一2.6 軟件設(shè)計(jì)主模塊是系統(tǒng)軟件的主框架。結(jié)構(gòu)化程序設(shè)計(jì)一般有“自上而下”和“自下而上”兩種方式,“自上而下”法的核心就是主框架的構(gòu)建。它的合理與否關(guān)系到程序最終的功能的多少和性能的好壞。本程序可以實(shí)現(xiàn)課程設(shè)計(jì)的基本要求,并可以通過按鍵播放多首歌曲,主程序流程圖和顯示子程序的流程圖如圖2.6所示。數(shù)字音樂盒主程序流程圖顯示子程序流程圖2.7 仿真、安裝和調(diào)試仿真部分采用Keil軟件,進(jìn)行編程和仿真,修改編程錯(cuò)誤以及連接錯(cuò)誤
9、。總結(jié)與致謝學(xué)了一學(xué)期的單片機(jī),對(duì)單片機(jī)的硬件設(shè)計(jì),軟件設(shè)計(jì)掌握的深度不夠,但通過此次課程設(shè)計(jì),卻改變了很多,首先對(duì)于硬件電路的工作原理有了進(jìn)一步的學(xué)習(xí),同樣就有了進(jìn)一步的認(rèn)識(shí);其次軟件方面,在程序的設(shè)計(jì),程序的調(diào)試方面都學(xué)到了很多東西,這是第一次編寫單片機(jī)的大程序,很有成就感。在此次單片機(jī)的課程設(shè)計(jì)中,我不但對(duì)單片機(jī)的基礎(chǔ)知識(shí)掌握的更牢固,而且對(duì)其硬件和軟件方面有了更深一層的認(rèn)識(shí)。在做數(shù)字音樂盒的課程設(shè)計(jì)時(shí),我掌握了AT89C51單片機(jī)的內(nèi)部振蕩方式及振蕩頻率和單片機(jī)的復(fù)位電路形式。此次設(shè)計(jì)的軟件編程采用的是我們所學(xué)的匯編語(yǔ)言,通過對(duì)數(shù)字音樂盒的編程,我更熟悉了鍵盤掃描和動(dòng)態(tài)顯示的編程以及定
10、時(shí)計(jì)數(shù)器和中斷的編程。鞏固了對(duì)AT89C51的內(nèi)部結(jié)構(gòu)和接口擴(kuò)展的知識(shí)。本次設(shè)計(jì)中,我用到了protel99畫圖軟件,keil C51編程軟件。以前雖然對(duì)protel99有一定的認(rèn)識(shí),能運(yùn)用其畫圖,不缺不熟練,這次設(shè)計(jì)是我對(duì)其的熟練程度提高了不少。參考文獻(xiàn)1 許珉.單片機(jī)原理及應(yīng)用M.北京:中國(guó)電力出版社,2007.08 2 John Markus.電子電路大全M.北京:計(jì)量出版社,19953 閻石.數(shù)字電子技術(shù)基礎(chǔ)M.北京:高等教育出版社,1998.12,第4版4 鄧元慶.數(shù)字電路與邏輯設(shè)計(jì)M.北京:電子工業(yè)出版社,2001 5 高鋒,單片微型計(jì)算機(jī)原理與接口技術(shù).科學(xué)出版社,2003年.
11、6 三恒星科技.MCS-51單片機(jī)原理與應(yīng)用實(shí)例M. 北京:電子工業(yè)出版社,2008.017 王為青,程國(guó)鋼.單片機(jī)Keil Cx51應(yīng)用開發(fā)技術(shù)M. 北京:人民郵電出版社,2007.02 8 李傳軍,單片機(jī)原理及應(yīng)用(第一版).河南科學(xué)技術(shù)出版社,2006年.9 楊志忠.數(shù)字電子技術(shù).高等教育出版社(第二版)M.2003年.10 張友德.單片微型機(jī)原理應(yīng)用與實(shí)驗(yàn).上海復(fù)旦大學(xué)出版社,2000附錄附錄一:音樂程序#include <reg52.h>#define uchar unsigned char#define uint unsigned intsbit BEEP = P14;
12、 /蜂鳴器sbit k0=P20;sbit k1=P21;sbit k2=P22;sbit k3=P23;sbit k4=P24;sbit k5=P25;sbit k6=P26;uint code Tone_Delay_Table = 64021,64103,64260,64400,64524,64580,64684,64777, 64820,64898,64968,65030,65058,65110,65157,65178 ;uchar code Song1_Tone=1, 1, 5, 5, 6, 6, 5,4, 4, 3 ,3, 2, 2, 1,5, 5, 4, 4, 3, 3, 2, 5
13、, 5, 4, 4, 3, 3, 2,1,1, 5, 5, 6, 6 ,5,4 ,4, 3, 3, 2, 2, 1,0xff;uchar code Song1_Time=2,2,2,2,2,3,4,2,2,2,2,2,2,4,2,2,2,2,2,2,4,2,2,2,2,2,2,5,2,2,2,2,2,2,5,2,2,2,2,2,2,5,0xff;uchar code Song2_Tone=1,2,3,1,1,2,3,1,3,4,5,3,4,5, 5,6,5,4,3,1, 5,6,5,4,3,1 ,1,5,1,0xff;uchar code Song2_Time=2,2,3,2,2,2,3,2,
14、2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,0xff; uchar code Song3_Tone = 1,3,3,3,3,5,4,2,5,3,7,6,5,5,7,4,4,3,6,7,2,1,0xFF; uchar code Song3_Time = 2,1,1,2,1,1,1,2,1,1,3,2,1,1,2,4,1,1,2,1,1,1,0xFF; uchar code Song4_Tone = 8,9,2,3,7,6,2,3,10,11,1,2,3,1,2,3,3,4,5,6,5,3,5,6,5,3,5,3,2,1,1,2,3,0xFF; uc
15、har code Song4_Time = 3,6,7,2,4,5,8,1,2,2,5,5,1,9,1,1,1,1,6,1,1,2,4,1,1,2,1,1,1,1,1,2,2,1,0xFF;uchar Song_Index = 0, Tone_Index = 0; /音樂片段索引,音符索引uchar *Song_Tone_Pointer, *Song_Time_Pointer; /音符指針,延時(shí)指針uchar i = 0; uchar j=0,k=0,m=0; /從當(dāng)前數(shù)組中取音符的位置 void DelayMS(uint ms) /延時(shí) uchar t; while(ms-) for (t
16、= 0; t < 120; t+); void play0() /按鍵產(chǎn)生的INT0 ET0=1; TR0 = 0;k0=1; Song_Index = ( Song_Index + 1) % 4; /切換到下一音樂 switch (Song_Index) case 0: Song_Tone_Pointer = Song1_Tone; Song_Time_Pointer = Song1_Time; break; case 1: Song_Tone_Pointer = Song2_Tone; Song_Time_Pointer = Song2_Time; break; case 2: So
17、ng_Tone_Pointer = Song3_Tone; Song_Time_Pointer = Song3_Time; break;case 3: Song_Tone_Pointer = Song4_Tone; Song_Time_Pointer = Song4_Time; break; /從下一段音樂的第0個(gè)音符開始 i = 0; while (k0=1&&k1=1&&k2=1&&k3=1&&k4=1&&k5=1&&k6=1) Tone_Index = Song_Tone_Pointeri;
18、if ( Tone_Index = 0xFF ) i = 0; DelayMS(2000); /每段音樂播放結(jié)束后停頓一段時(shí)間 continue; /繼續(xù)播放 TR0 = 1; DelayMS( Song_Time_Pointer Tone_Index * 240); TR0 = 0; i+; return; void play1() ET0=1; TR0 = 0;k1=1; Song_Index = ( Song_Index + 3) % 4; /切換到上一段音樂 switch (Song_Index) case 0: Song_Tone_Pointer = Song1_Tone; Song
19、_Time_Pointer = Song1_Time; break; case 1: Song_Tone_Pointer = Song2_Tone; Song_Time_Pointer = Song2_Time; break; case 2: Song_Tone_Pointer = Song3_Tone; Song_Time_Pointer = Song3_Time; break;case 3: Song_Tone_Pointer = Song4_Tone; Song_Time_Pointer = Song4_Time; break; i = 0; /從上一段音樂的第0個(gè)音符開始 while
20、(k0=1&&k1=1&&k2=1&&k3=1&&k4=1&&k5=1&&k6=1) Tone_Index = Song_Tone_Pointeri; if ( Tone_Index = 0xFF ) i = 0; DelayMS(2000); /每段音樂播放結(jié)束后停頓一段時(shí)間 continue; /繼續(xù)播放 TR0 = 1; DelayMS( Song_Time_Pointer Tone_Index * 240); TR0 = 0; i+; return; void play2() m=!m; T
21、R0 = 0;k2=1;if(m=0) j=1; TR0=0;ET0=0; if(m=1) ET0=1; k=1;if(j=1) /播放被暫停的音樂 switch (Song_Index) case 0: Song_Tone_Pointer = Song1_Tone; Song_Time_Pointer = Song1_Time; break; case 1: Song_Tone_Pointer = Song2_Tone; Song_Time_Pointer = Song2_Time; break; case 2: Song_Tone_Pointer = Song3_Tone; Song_Ti
22、me_Pointer = Song3_Time; break;case 3: Song_Tone_Pointer = Song4_Tone; Song_Time_Pointer = Song4_Time; break; /從本一段音樂的第i個(gè)音符開始 while (k0=1&&k1=1&&k2=1&&k3=1&&k4=1&&k5=1&&k6=1) Tone_Index = Song_Tone_Pointeri; if ( Tone_Index = 0xFF ) i = 0; DelayMS(2000
23、); /每段音樂播放結(jié)束后停頓一段時(shí)間 Song_Index = ( Song_Index + 1) % 4; /播放下一首音樂 switch (Song_Index) case 0: Song_Tone_Pointer = Song1_Tone; Song_Time_Pointer = Song1_Time; break; case 1: Song_Tone_Pointer = Song2_Tone; Song_Time_Pointer = Song2_Time; break; case 2: Song_Tone_Pointer = Song3_Tone; Song_Time_Pointer
24、 = Song3_Time; break;case 3: Song_Tone_Pointer = Song4_Tone; Song_Time_Pointer = Song4_Time; break;continue; TR0 = 1; DelayMS( Song_Time_Pointer Tone_Index * 240); TR0 = 0; i+; if (j=0)j=1; Song_Tone_Pointer = Song1_Tone; /開始播放音樂 Song_Time_Pointer = Song1_Time; i = 0; while (k0=1&&k1=1&&
25、amp;k2=1&&k3=1&&k4=1&&k5=1&&k6=1) Tone_Index = Song_Tone_Pointeri; if ( Tone_Index = 0xFF ) i = 0; DelayMS(2000); /每段音樂播放結(jié)束后停頓一段時(shí)間 Song_Index = ( Song_Index + 1) % 4; /播放下一段音樂 switch (Song_Index) case 0: Song_Tone_Pointer = Song1_Tone; Song_Time_Pointer = Song1_Time;
26、break; case 1: Song_Tone_Pointer = Song2_Tone; Song_Time_Pointer = Song2_Time; break; case 2: Song_Tone_Pointer = Song3_Tone; Song_Time_Pointer = Song3_Time; break;case 3: Song_Tone_Pointer = Song4_Tone; Song_Time_Pointer = Song4_Time; break; continue; TR0 = 1; DelayMS( Song_Time_Pointer Tone_Index
27、* 240); TR0 = 0; i+; return; void play3() ET0=1; TR0 = 0; k3=1;/切換到第一段音樂 Song_Tone_Pointer = Song1_Tone; Song_Time_Pointer = Song1_Time; Song_Index=0; /從第一段音樂的第0個(gè)音符開始 i = 0; while (k0=1&&k1=1&&k2=1&&k3=1&&k4=1&&k5=1&&k6=1) Tone_Index = Song_Tone_Pointe
28、ri; if ( Tone_Index = 0xFF ) i = 0; DelayMS(2000); /每段音樂播放結(jié)束后停頓一段時(shí)間 continue; /繼續(xù)播放 TR0 = 1; DelayMS( Song_Time_Pointer Tone_Index * 240); TR0 = 0; i+; return; void play4() ET0=1; TR0 = 0;k4=1;Song_Tone_Pointer = Song2_Tone;/切換到第二段音樂 Song_Time_Pointer = Song2_Time; Song_Index=1 ; i=0; /從第二段音樂的第0個(gè)音符開
29、始 while (k0=1&&k1=1&&k2=1&&k3=1&&k4=1&&k5=1&&k6=1) Tone_Index = Song_Tone_Pointeri; if ( Tone_Index = 0xFF ) i = 0; DelayMS(2000); /每段音樂播放結(jié)束后停頓一段時(shí)間 continue; /繼續(xù)播放 TR0 = 1; DelayMS( Song_Time_Pointer Tone_Index * 240); TR0 = 0; i+; return; void play5()
30、 ET0=1; TR0 = 0;k5=1;Song_Tone_Pointer = Song3_Tone; /切換到第三段音樂 Song_Time_Pointer = Song3_Time; Song_Index=2; /從第三段音樂的第0個(gè)音符開始 i = 0; while (k0=1&&k1=1&&k2=1&&k3=1&&k4=1&&k5=1&&k6=1) Tone_Index = Song_Tone_Pointeri; if ( Tone_Index = 0xFF ) i = 0; DelayMS(2000); /每段音樂播放結(jié)束后停頓一段時(shí)間 continue; /繼續(xù)播放 TR0 = 1; DelayMS( Song_Time_Pointer Tone_Index * 240); TR0 = 0
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 利用大數(shù)據(jù)分析預(yù)測(cè)消費(fèi)趨勢(shì)
- 高一化學(xué)教案:專題第一單元第二課時(shí)化學(xué)反應(yīng)速率與可逆反應(yīng)
- 2024高中化學(xué)第二章化學(xué)反應(yīng)速率和化學(xué)平衡第三章第3課時(shí)化學(xué)平衡常數(shù)達(dá)標(biāo)訓(xùn)練含解析新人教版選修4
- 2024高中地理課時(shí)作業(yè)2地理信息技術(shù)在區(qū)域地理環(huán)境研究中的應(yīng)用含解析新人教版必修3
- 2024高中生物第五章生態(tài)系統(tǒng)及其穩(wěn)定性第2節(jié)生態(tài)系統(tǒng)的能量流動(dòng)訓(xùn)練含解析新人教版必修3
- 2024高中語(yǔ)文第二課千言萬(wàn)語(yǔ)總關(guān)“音”第4節(jié)聲情并茂-押韻和平仄練習(xí)含解析新人教版選修語(yǔ)言文字應(yīng)用
- DB42-T 2352-2024 道路瀝青紅外光譜法快速識(shí)別技術(shù)規(guī)程
- 《豆角趣事》幼兒園班本課程課件
- (2篇)2024 年幼兒園保健工作總結(jié)
- 監(jiān)督檢查施工安全防護(hù)措施
- 信號(hào)分析與處理-教學(xué)大綱
- 氣藏提高采收率技術(shù)與方法綜述
- 河道整治工程運(yùn)營(yíng)維護(hù)方案
- 國(guó)家醫(yī)療保障疾病診斷相關(guān)分組(CHS-DRG)分組與付費(fèi)技術(shù)規(guī)范(可編輯)
- 新高考普通高中生物人教版教材目錄
- 喜家德水餃合伙人協(xié)議書
- 中考數(shù)學(xué)計(jì)算題100道
- 高壓變頻器整流變壓器
- 質(zhì)量總監(jiān)煉成記
- 學(xué)校突發(fā)安全事件應(yīng)急預(yù)案目錄
- 《新唯識(shí)論》儒佛會(huì)通思想研究
評(píng)論
0/150
提交評(píng)論