




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 本科學(xué)生單片機(jī)課程設(shè)計報告題 目 基于單片機(jī)的信號發(fā)生器設(shè)計 姓 名 XXX 學(xué) 號 201X18XXXX 院 (系) 職業(yè)技術(shù)學(xué)院 專業(yè)、年級 XXXXXXXX 指導(dǎo)教師 XXXX 課程設(shè)計成績評定表項目評分依據(jù)滿分得分設(shè)計作品電路板焊接工藝10功能完整20性能指標(biāo)10程序運行可靠20人機(jī)交互友好,操作方便10設(shè)計報告內(nèi)容完整10寫作規(guī)范10設(shè)計報告篇幅符合要求10實評總分 指導(dǎo)教師簽名 目 錄1 設(shè)計要求4 1.2 方案設(shè)計與論證4 1.2.1 信號發(fā)生電路方案論證 4 1.2.2 單片機(jī)的選擇論證 4 1.2.3 顯示方案論證 5 1.2.4 鍵盤方案論證 52 硬件電路設(shè)計6 2.1
2、 單片機(jī)最小系統(tǒng)的設(shè)計 6 2.2 波形產(chǎn)生模塊設(shè)計 7 2.3 顯示模塊的設(shè)計 8 2.4 鍵盤顯示模塊的設(shè)計 93 程序設(shè)計94 總結(jié) 10參考文獻(xiàn) 10附件一:電路原理圖 10附件二:程序清單 111、 系統(tǒng)設(shè)計 經(jīng)過考慮,我們確定方案如下:利用AT89S52單片機(jī)采用程序設(shè)計方法產(chǎn)生鋸齒波、正弦波、矩形波三種波形,再通過D/A轉(zhuǎn)換器DAC0832將數(shù)字信號轉(zhuǎn)換成模擬信號,濾波放大,最終由示波器顯示出來,通過鍵盤來控制三種波形的類型選擇、頻率變化,最終輸出顯示其各自的類型以及數(shù)值。1.1、設(shè)計要求 1)、利用單片機(jī)采用軟件設(shè)計方法產(chǎn)生三種波形 2)、三種波形可通過鍵盤選擇 3
3、)、波形頻率可調(diào) 4)、需顯示波形的種類及其頻率1.2方案設(shè)計與論證 1.2.1 信號發(fā)生電路方案論證 方案一:通過單片機(jī)控制D/A,輸出三種波形。此方案輸出的波形不夠穩(wěn)定,抗干擾能力弱,不易調(diào)節(jié)。但此方案電路簡單、成本低。 方案二:使用傳統(tǒng)的鎖相頻率合成方法。通過芯片IC145152,壓控振蕩器搭接的鎖相環(huán)電路輸出穩(wěn)定性極好的正弦波,再利用過零比較器轉(zhuǎn)換成方波,積分電路轉(zhuǎn)換成三角波。此方案,電路復(fù)雜,干擾因素多,不易實現(xiàn)。 方案三:利用MAX038芯片組成的電路輸出波形。MAX038是精密高頻波形產(chǎn)生電路,能夠產(chǎn)生準(zhǔn)確的三角波、方波和正弦波三種周
4、期性波形。但此方案成本高,程序復(fù)雜度高??紤]到配合本學(xué)期所學(xué)的知識,選擇方案一。1.2.2 單片機(jī)的選擇論證 AT89S52單片機(jī)是一種高性能8位單片微型計算機(jī)。它把構(gòu)成計算機(jī)的中央處理器CPU、存儲器、寄存器、I/O接口制作在一塊集成電路芯片中,從而構(gòu)成較為完整的計算機(jī)、而且其價格便宜。故而采取此種方案。 1.2.3 顯示方案論證 方案一:采用LED數(shù)碼管。LED數(shù)碼管由8個發(fā)光二極管組成,每只數(shù)碼管輪流顯示各自的字符。由于人眼具有視覺暫留特性,當(dāng)每只數(shù)碼管顯示的時間間隔小于1/16s時人眼感覺不到閃動,看到的是每只數(shù)碼管常亮。使用數(shù)碼管顯示編程較易,但要顯示內(nèi)容多,而且數(shù)碼管不
5、能顯示字母。 方案二:采用LCD液晶顯示器1602。其功率小,效果明顯,顯示編程容易控制,可以顯示字母。 以上兩種方案綜合考慮,選擇方案二。1.2.4 鍵盤方案論證 方案一:矩陣式鍵盤。矩陣式鍵盤的按鍵觸點接于由行、列母線構(gòu)成的矩陣電路的交叉處。當(dāng)鍵盤上沒有鍵閉合時,所有的行和列線都斷開,行線都呈高電平。當(dāng)某一個鍵閉合時,該鍵所對應(yīng)的行線和列線被短路。方案二:編碼式鍵盤。編碼式鍵盤的按鍵觸點接于74LS148芯片。當(dāng)鍵盤上沒有閉合時,所有鍵都斷開,當(dāng)某一鍵閉合時,該鍵對應(yīng)的編碼由74LS148輸出。 以上
6、兩種方案綜合考慮,選擇方案一。1.3總體系統(tǒng)設(shè)計該系統(tǒng)采用單片機(jī)作為數(shù)據(jù)處理及控制核心,由單片機(jī)完成人機(jī)界面、系統(tǒng)控制、信號的采集分析以及信號的處理和變換,采用按鍵輸入,利用液晶顯示電路輸出數(shù)字顯示的方案。將設(shè)計任務(wù)分解為按鍵電路、液晶顯示電路等模塊。圖(1)為系統(tǒng)的總體框圖 圖(1) 總體方框圖2、硬件實現(xiàn)及單元電路設(shè)計 2.1單片機(jī)最小系統(tǒng)的設(shè)計89C51是片內(nèi)有ROM/EPROM的單片機(jī),因此,這種芯片構(gòu)成的最小系統(tǒng)簡單可靠。用80C51單片機(jī)構(gòu)成最小應(yīng)用系統(tǒng)時,只要將單片機(jī)接上時鐘電路和復(fù)位電路即可,如圖(2) 89C51單片機(jī)最小系統(tǒng)所示。由于集成度的限制,最小應(yīng)用系統(tǒng)只能用作一些小
7、型的控制單元。其應(yīng)用特點:(1) 有可供用戶使用的大量I/O口線。(2) 內(nèi)部存儲器容量有限。(3) 應(yīng)用系統(tǒng)開發(fā)具有特殊性。圖(2) 89C51單片機(jī)最小系統(tǒng) 2.2 波形產(chǎn)生模塊設(shè)計 由單片機(jī)采用編程方法產(chǎn)生三種波形、通過DA轉(zhuǎn)換模塊DAC0832在進(jìn)過濾波放大之后輸出。其電路圖如下: 圖(3)波形產(chǎn)生電路如上圖所示,單片機(jī)的P0口連接DAC0832的八位數(shù)據(jù)輸入端,DAC0832的輸出端接放大器,經(jīng)過放大后輸出所要的波形。DAC0832的為八位數(shù)據(jù)并行輸入的,其結(jié)構(gòu)圖如下: 圖(4)DAC0832的內(nèi)部結(jié)構(gòu)2.3 顯示模塊的設(shè)計通過液晶1602顯示其電路圖如右圖: 圖(5)液晶
8、顯示如上圖所示,1602的八位數(shù)據(jù)端接單片機(jī)的P0口,其三個使能端RS、RW、EN分別接單片機(jī)的P1.2P1.4。通過軟件控制液晶屏可以顯示波形的種類以及波形的頻率。2.4 鍵盤模塊的設(shè)計本系統(tǒng)采用獨立鍵盤,其連接電路圖如下: 圖(6)鍵盤如圖開關(guān)S2用來調(diào)節(jié)輸出信號的頻率、默認(rèn)輸出頻率為10KHz,其次按照1KHz、100Hz、10Hz、1Hz遞減輸出。開關(guān)S3用來切換輸出信號的波形。3、軟件設(shè)計流程本系統(tǒng)采用AT89S52單片機(jī),用編程的方法來產(chǎn)生三種波形,并通過編程來切換三種波形以及波形頻率的改變。具體功能有:(1)各個波形的切換;(2)各種參數(shù)的設(shè)定;(3)頻率增減等。軟件調(diào)通后,通過
9、編程器下載到AT89S52芯片中,然后插到系統(tǒng)中即可獨立完成所有的控制。4、總結(jié)通過這次畢業(yè)設(shè)計,使我深刻地認(rèn)識到學(xué)好專業(yè)知識的重要性,也理解了理論聯(lián)系實際的含義,并且檢驗了大學(xué)三年的學(xué)習(xí)成果,進(jìn)一步加深了我對專業(yè)知識的了解和認(rèn)識以及動手的能力。雖然在這次設(shè)計中對于所學(xué)知識的運用和銜接還不夠熟練,作品完成的還不是很出色。但是我將在以后的工作和學(xué)習(xí)中繼續(xù)努力、不斷完善。這個設(shè)計是對我們過去所學(xué)知識的系統(tǒng)提高和擴(kuò)充的過程,為今后的發(fā)展打下了良好的基礎(chǔ)。參考文獻(xiàn) 1 戴仙金主編 51單片機(jī)及其C語言匯編程序開發(fā)實例 清華大學(xué)出版社,20082 高吉祥主編 全國大學(xué)生電子設(shè)計競賽培訓(xùn)系列教程 電子工業(yè)
10、出版社,20073 楊素行主編 模擬電子技術(shù)基礎(chǔ)簡明教程 高等教育出版社,20074 蔣輝平主編 單片機(jī)原理與應(yīng)用設(shè)計 北京航空航天大學(xué)出版社 2007附件一:電路原理圖附件二:程序清單#include "lcd.h"#include <intrins.h>/sbit csda=P13; /DAC0832的片選信號,低電平有效sbit wr=P11; /輸入寄存器的寫選通輸入端,負(fù)脈沖有效sbit s1=P32; /波形選擇中斷入口sbit s2=P33; /頻率選擇中斷入口uchar k=0,p=0,delay=0;uchar bxxz=0;pinglv=1,
11、count=0;uchar a=1;/正弦波低頻數(shù)據(jù)uchar code sin256=128,131,134,137,140,144,147,150,153,156,159,162, 165,168,171,174,177,179,182,185,188,191,193,196,199, 201,204,206,209,211,213,216,218,220,222,224,226,228, 230,232,234,235,237,239,240,241,243,244,245,246,248, 249,250,250,251,252,253,253,254,254,254,255,255,
12、255, 255,255,255,255,254,254,254,253,253,252,251,250,250, 249,248,246,245,244,243,241,240,239,237,235,234,232, 230,228,226,224,222,220,218,216,213,211,209,206,204, 201,199,196,193,191,188,185,182,179,177,174,171,168, 165,162,159,156,153,150,147,144,140,137,134,131,128, 125,122,119,116,112,109,106,10
13、3,100,97,94,91,88,85,82, 79,77,74,71,68,65,63,60,57,55,52,50,47,45,43,40,38,36, 34,32,30,28,26,24,22,21,19,17,16,15,13,12,11,10,8,7,6, 6,5,4,3,3,2,2,2,1,1,1,1,1,1,1,2,2,2,3,3,4,5,6,6,7,8,10, 11,12,13,15,16,17,19,21,22,24,26,28,30,32,34,36,38,40,43, 45,47,50,52,55,57,60,63,65,68,71,74,77,79,82,85,88,
14、91,94, 97,100,103,106,109,112,116,119,122,125,128;/正弦波高頻數(shù)據(jù)uchar code sin128= 128,134,140,147,153,159,165,171,177,182,188, 193,199,204,209,213,218,222,226,230,234,237, 240,243,245,248,250,251,253,254,254,255,255, 255,254,254,253,251,250,248,245,243,240,237, 234,230,226,222,218,213,209,204,199,193,188
15、, 182,177,171,165,159,153,147,140,134,128,122, 116,109,103,97,91,85,79,74,68,63,57,52,47,43, 38,34,30,26,22,19,16,13,11,8,6,5,3,2,2,1,1,1, 2,2,3,5,6,8,11,13,16,19,22,26,30,34,38,43,47, 52,57,63,68,74,79,85,91,97,103,109,116,122,128;uchar code sin100= 128,136,144,152,160,167,175,182,189,196,203, 209,
16、215,221,226,231,235,239,243,246,249,251, 253,254,255,255,255,254,253,251,249,246,243, 239,235,231,226,221,215,209,203,196,189,182, 175,167,160,152,144,136,128,120,112,104,96,89, 81,74,67,60,53,47,41,35,30,25,21,17,13,10,7,5, 3,2,1,1,1,2,3,5,7,10,13,17,21,25,30,35,41,47,53, 60,67,74,81,89,96,104,112,
17、120,128;uchar code sin33=128,153,177,199,218,234,245,253,255,253,245, 234,218,199,177,153,128,103,79,57,38,22,11,3,1,3,11,22,38,57,79,103,128;uchar code sin17=128,177,218,245,255,245,218,177,128,79,38,11,1,11,38,79,128; /方波低頻數(shù)據(jù)uchar code juxing256=255,255,255,255,255,255,255,255,255,255,255,255,255,
18、 255,255,255,255,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255,25
19、5,255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,
20、0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;/方波高頻數(shù)據(jù)uchar code juxing128= 255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255, 255,255,2
21、55,255,255,255,255,255, 255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255, 255,255,255,255,255,255,255,255, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;uchar code juxing100= 255,255,255,255,255,255,
22、255,255,255,255, 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;uchar code juxing32=255
23、,255,255,255,255,255,255,255,255,255, 255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;uchar code juxing16=255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0;/三角波數(shù)據(jù)/uchar code sanjiao256256=;/uchar code sanjiao128128=;uchar code sanjiao100=128,133,138,143,148,153,158,164,169,174,179, 184,189,1
24、94,199,204,209,214,219,225,230,235,240,245,250,255,250,245,240,235,230,225,219,214,209,204,199,194,189,184,179,174,169,164,158,153,148,143,138,133,128,127,122,117,112,107,102,97,91,86,81,76,71,66,61,56,51,46,41,36,30,25,20,15,10,5,0,5,10,15,20,25,30,36,41,46,51,56,61,66,71,76,81,86,91,97,102,107,112
25、,117,122,127,128;uchar code sanjiao32=128,144,160,176,192,207,223,239,255,239, 223,207,191,176,160,144,128,112,96,80,64,49,33,17, 1,17,33,49,65,80,96,112,128;uchar code sanjiao29=128,146,164,182,200,218,236,255,236,218, 200,182,164,146,128,110,92,74,56,37,18,0, 19,37,55,73,91,110,128;uchar code sanj
26、iao17=128,153,178,204,229,255,229, 204,178,153,128,102,78,52,26,0,26,52,78,102,128;void delay1() /延時程序int a,b;for(a=1;a>0;a-)for(b=122;b>0;b-);void int0() interrupt 0 /采用T0中斷 改變頻率TR0=0;EX0=0;delay1();/延時,判斷S2是否真的鍵被按下if(s1=0)/若真的被按下,為消除按鍵抖動影響p+;if(p=6) p=0;/輸出波形的每一點設(shè)定延時時間長短,以便選擇頻率switch(p)case
27、1 :pinglv=10;display1KHz();break;case 2 :pinglv=100;display100Hz();break;case 3 :pinglv=1000;display10Hz();break;case 4:pinglv=10000;display1Hz();break; case 5 : pinglv=1; display10KHz();break;default :pinglv=1;break;delay1();while(!s1);while(!s1);EX0=1;TR0=1;void int1() interrupt 2/采用T1中斷改變波形TR0=0;
28、EX1=0;delay1();if(s2=0)bxxz+;if(bxxz=3)bxxz=0;switch(bxxz)case 0 : /默認(rèn)為正弦波a=1; displayzhengxian(); /在液晶的第一行顯示正弦波break; case 1 : /選擇方波a=2; displayfangbo(); /在液晶的第一行顯示方波break;case 2 :/三角波a=3; displaysanjiao(); /在液晶的第一行顯示三角波break;delay1();/延時,判斷鍵按S1是否真的被按下while(!s2);/若真的被按下,為消除按鍵抖動影響while(!s2);/等待按鍵松開E
29、X1=1;TR0=1;void timer0()interrupt 1 /定時器0中斷服務(wù)程序 if(pinglv!=1 && pinglv!=10)if(a=1)/默認(rèn)為正弦波;頻率最高 P2=sin100k; k+;if(k=100)k=0; if(a=2)/方波 P2=juxing100k; k+;if(k=100)k=0;if(a=3) P2=sanjiao100k; k+;if(k=100)k=0;if(pinglv=100) TH0=(65536-92)/256; /再次裝定時器初值 TL0=(65536-92)%256;if(pinglv=1000) TH0=(6
30、5536-990)/256; /再次裝定時器初值 TL0=(65536-990)%256;if(pinglv=10000) TH0=(65536-10000)/256; /再次裝定時器初值 TL0=(65536-10000)%256;void main()/主程序 init();/液晶初始化wr=0; /AUXR =0x80;/定時器0時鐘為Fosc,即1TEA=1;IT0=1; / 低電平觸發(fā)方式EX0=1; / 打開外部中斷0IT1=1; /低電平觸發(fā)方式EX1=1; / 打開外部中斷1 TMOD=0x01; /設(shè)置定時器0工作模式1 TH0=(65536-1)/256; /定時器裝初值1
31、0/12 微秒 TL0=(65536-1)%256; ET0=1; /開定時器0中斷 TR0=1; / 啟動定時器0*/ while(1) if(pinglv=1) TR0=0; if(a=1)/默認(rèn)為正弦波;頻率最高 P2=sin17k; k+;if(k=16)k=0; if(a=2)/方波 P2=juxing16k; k+;if(k=16)k=0;if(a=3) P2=sanjiao17k; k+;if(k=16)k=0;/_nop_(); if(pinglv=10) delay=3; TR0=0; if(a=1)/默認(rèn)為正弦波;頻率最高 P2=sin100k; k+;if(k=100)k
32、=0; while(delay) delay-;if(a=2)/方波 P2=juxing100k; k+;if(k=100)k=0; while(delay) delay-;if(a=3) P2=sanjiao100k; k+;if(k=100)k=0;while(delay) delay-;TR0=1; 液晶顯示程序:#include "lcd.h"uchar num;uchar code table2="sin(x): "uchar code table3="sanjiao(x):"uchar code table4="
33、fangbo(x): "uchar code table1="sin(x) "/定義初始上電時液晶默認(rèn)顯示狀態(tài)uchar code table6="10KHz "uchar code table7="1000Hz "uchar code table8="100Hz "uchar code table9="1Hz "uchar code table10="10Hz "void dela(uint z) /延時函數(shù) uint x,y; for(x=z;x>0;x-
34、) for(y=110;y>0;y-);void write_com(uchar com) /液晶寫命令函數(shù)rw=0; rs=0; lcden=0; P0=com; dela(5); lcden=1; dela(5); lcden=0;void write_date(uchar date) /液晶寫數(shù)據(jù)函數(shù) rw=0; rs=1; lcden=0; P0=date; dela(5); lcden=1; dela(5); lcden=0;void init() /初始化函數(shù) uchar num; write_com(0x38);dela(5);write_com(0x08);dela(5);write_com(0x01);dela(5);write_com(0x06);write_com(0x0c);dela(5); write_com(0x80); /設(shè)置顯示初始值 for(num=0;table1num!=&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 服裝店裝修發(fā)包合同
- 2025年度養(yǎng)豬場生物安全防控體系建設(shè)合同
- 2025年度勞動合同到期解除協(xié)議書及離職員工離職證明及離職手續(xù)辦理指南
- 2025年度建筑勞務(wù)施工節(jié)能減排合作協(xié)議
- 2025年度分紅股收益分配與權(quán)益變更協(xié)議
- 2025年度數(shù)據(jù)保密審計與保密合同
- 2025年度公司免責(zé)的旅游服務(wù)合作協(xié)議
- 2025年度創(chuàng)業(yè)公司股權(quán)激勵及轉(zhuǎn)讓協(xié)議
- 2025年網(wǎng)絡(luò)游戲行業(yè)發(fā)展現(xiàn)狀分析:網(wǎng)絡(luò)游戲國內(nèi)用戶規(guī)模不斷擴(kuò)大
- 崗位晉升申請書
- 2025年蘇州工業(yè)園區(qū)服務(wù)外包職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 小學(xué)生拗九節(jié)課件
- 2023湖南文藝出版社五年級音樂下冊全冊教案
- Q∕GDW 11612.41-2018 低壓電力線高速載波通信互聯(lián)互通技術(shù)規(guī)范 第4-1部分:物理層通信協(xié)議
- 2006 年全國高校俄語專業(yè)四級水平測試試卷
- 新人教版數(shù)學(xué)四年級下冊全冊表格式教案
- 疫情期間離市外出審批表
- (完整版)全身體格檢查評分標(biāo)準(zhǔn)(表)
- 裝飾裝修工程施工合理化建議和降低成本措施提要:完整
- (改)提高地下室側(cè)墻剛性防水施工合格率_圖文
- 電芯品質(zhì)協(xié)議版本(標(biāo)準(zhǔn)版)
評論
0/150
提交評論