單片機(jī)原理與接口設(shè)計(jì)數(shù)字鐘偉福實(shí)現(xiàn)_第1頁
單片機(jī)原理與接口設(shè)計(jì)數(shù)字鐘偉福實(shí)現(xiàn)_第2頁
單片機(jī)原理與接口設(shè)計(jì)數(shù)字鐘偉福實(shí)現(xiàn)_第3頁
單片機(jī)原理與接口設(shè)計(jì)數(shù)字鐘偉福實(shí)現(xiàn)_第4頁
單片機(jī)原理與接口設(shè)計(jì)數(shù)字鐘偉福實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩66頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、題目:數(shù)字時(shí)鐘的設(shè)計(jì)與實(shí)現(xiàn) 一功能要求:用按鍵實(shí)現(xiàn)時(shí)、分、秒的調(diào)整。整點(diǎn)提醒:0、1、22和短蜂鳴。 省電功能:關(guān)閉顯示。 定時(shí)設(shè)定提醒:時(shí)間到時(shí)發(fā)出五次蜂鳴聲 秒表功能:顯示XX分XX秒XX1 .用單片機(jī)和6位LED數(shù)碼管顯示時(shí)、分、秒,實(shí)現(xiàn)從 00時(shí)00分00秒-23時(shí)59分 59 秒循環(huán)運(yùn)行。2.3.456復(fù)位” 鍵:顯示 00分00秒 00;按“啟動(dòng)” 鍵:從 00分 00秒 00開始計(jì)時(shí)按 停止”鍵:顯示實(shí)際計(jì)時(shí) XX分XX秒XX。二. 硬件設(shè)計(jì)要求:1用偉福6000實(shí)驗(yàn)裝置上8255的A 口作顯示段碼鎖存器,B 口作位碼鎖存器,利用發(fā)的實(shí)驗(yàn)器材6位LED數(shù)碼管顯示時(shí)、分、秒。2.

2、利用偉福6000實(shí)驗(yàn)裝置上8255的B 口的6根位碼輸出線和 8255C 口中的PC0作按鍵 的輸入口線,實(shí)現(xiàn)最多 6 個(gè)按鍵的識(shí)別,作為實(shí)現(xiàn)上述功能要求的硬件保證。(包括 P1 口、P3 口)、蜂碼器及直流電源。3 偉福6000實(shí)驗(yàn)裝置上提供給該課題的硬件是:AT89C51單片機(jī)8位可編程並行I/O 口 8255 (包括A 口、B 口、C 口)、地址譯碼電路、本次設(shè)計(jì)提供給各組的器材有: 印刷電路板一塊 7406 集成電路 3片LED數(shù)碼管6個(gè)1K排阻2個(gè),4.7K電阻一個(gè)。40芯IC插座2個(gè)、14芯IC插座3個(gè)6)按鍵 6 個(gè)4.(1)(2)(3)(4)(5)7)焊錫、導(dǎo)線若干。三. 軟件

3、設(shè)計(jì)(僅供參考)1 .主程序流桯圖釆用十進(jìn)制 BCD 顯示緩沖區(qū)的分配 要顯示的數(shù)據(jù)送顯示緩沖區(qū) 把顯示的數(shù)據(jù)置換出段碼 送段碼和位碼,進(jìn)行顯示 延時(shí)2.顯示子程序的設(shè)計(jì):(1)(2)(3)(4)(5)(6)3. 定時(shí)中斷服務(wù)子程序的設(shè)計(jì)60 秒時(shí)分計(jì)數(shù)加 1,(1) 利用定時(shí)器T0定時(shí)10毫秒,累計(jì)到1秒時(shí)秒計(jì)數(shù)加1,累計(jì)到 累計(jì)到 60分時(shí)時(shí)計(jì)數(shù)加 1,累計(jì)到 24小時(shí)從頭開始。(2) 注意保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場(3)注意設(shè)置毫秒、秒、分、時(shí)的存放單元四、軟件仿真仿真部分由 Protues 實(shí)現(xiàn)。 Protues 可以嵌入單片機(jī)的二進(jìn)制代碼, 便于程序調(diào)試。 本次仿真 的電路圖如下所示:其中,

4、按鍵為輸入電路,為行列式設(shè)計(jì),行線接入8255芯片的PCO 口,列線分別對(duì)應(yīng)接入8255芯片的PB0PB3口,與數(shù)碼管的位選線共享端口。a、b、c、d、數(shù)碼管為輸出電路。本次實(shí)驗(yàn)一共要使用 6個(gè)數(shù)碼管,以動(dòng)態(tài)顯示方式輪番輸出字符, 6 個(gè) 數(shù)碼管的段碼線相互并聯(lián)后接入8255芯片的PA端口,a、b、c、d、e、f、g端口分別連接PA0PA6端口,在8255芯片引腳和段碼線之間分別一一串聯(lián)7406芯片、并聯(lián)一個(gè)排阻以提供激勵(lì),使數(shù)碼管發(fā)亮。位選線則以數(shù)碼管的接地線組成,從時(shí)十位、時(shí)個(gè)位、分十位、分 個(gè)位、秒十位、秒個(gè)位分別接入8255芯片的PB0PB5端口,其中PB0PB3這四個(gè)端口分別并聯(lián)上四

5、個(gè)按鍵。同理,每個(gè)引腳和 8255 芯片之間都一一串聯(lián)上 7406 芯片和并聯(lián)上排阻。 位選線負(fù)責(zé)選取某一時(shí)間片要顯示哪一個(gè)數(shù)碼管,顯示間隔由源程序決定。五、焊接本次實(shí)驗(yàn)由于沒有提供 8051 芯片、 8255 芯片。上述芯片均由偉福實(shí)驗(yàn)箱提供,焊接的時(shí)候需要在萬用板上面預(yù)留 PA PB接線口。另外,萬用板上面同時(shí)需要預(yù)留電源的正負(fù)極、PC0口接線,共計(jì) 17 個(gè)接線口。由于萬用板的大小的限制及芯片引腳定義的影響, 實(shí)際上的電路圖不會(huì)和仿真軟件的電路圖 完全一致,不過大體上還是一樣的。還有, 本次焊接實(shí)際上需要比較多的電線,尤其是數(shù)碼管部分,由于相鄰引腳非常貼近,在 焊接的時(shí)候要非常留心,謹(jǐn)防

6、相鄰兩點(diǎn)短路。在焊接完成后,由于背板上面線路眾多,需要用膠紙固定整理,防止導(dǎo)線脫落。焊接完成后, 萬用板上面已經(jīng)有相應(yīng)的接線,于是進(jìn)行硬件實(shí)現(xiàn)部分。六、硬件實(shí)現(xiàn)本次硬件實(shí)現(xiàn)部分由偉福 Lab6000 實(shí)驗(yàn)箱提供 8051 芯片和 8255 芯片,分別連接萬用板相應(yīng) 的接線。由偉福的 Wave6000 軟件向?qū)嶒?yàn)箱上面的 8051芯片燒入時(shí)鐘的程序。另外,電源 的正負(fù)極也是由 Lab6000 提供。電路板中有6個(gè)按鍵,不過實(shí)際上使用的有4個(gè),就是離PA PB連接端口較遠(yuǎn)的4個(gè)起作用,離PA PB連接端口較近的兩個(gè)沒有定義。從遠(yuǎn)離端口的按鍵開始依次編號(hào)K4,每個(gè)按鍵都有如下功能:1)當(dāng)先按 K1

7、的時(shí)候,系統(tǒng)就進(jìn)入調(diào)節(jié)時(shí)間狀態(tài),數(shù)碼管上就顯示時(shí)鐘。 能依次為選擇調(diào)整的單元(時(shí)、分、秒) ,2)當(dāng)先按K2的時(shí)候,系統(tǒng)不作出任何反應(yīng),3)當(dāng)先按K3的時(shí)候,系統(tǒng)就進(jìn)入省電模式, 鍵即可點(diǎn)亮數(shù)碼管并還原到上次的顯示狀態(tài);4)當(dāng)先按K4的時(shí)候,系統(tǒng)就進(jìn)入秒表狀態(tài), 功能依次為切換至?xí)r鐘、顯示暫停變化(內(nèi)部繼續(xù)計(jì)時(shí))或者數(shù)碼管繼續(xù)變化、 暫停計(jì)時(shí)。K1、K2、K3、K2、K3、單元數(shù)值加 1,退出調(diào)整狀態(tài),單元數(shù)值減 等待用戶按 數(shù)碼管熄滅,然后按K1、 K3、K4;K1、數(shù)碼管上面就顯示秒表。K4 的功1;K2、K3、K4 任意一K1、 K2、 K3、 K4 的復(fù)位清零、七、程序 所有程序如下所

8、示 ORG0000HAJMPMAINORG000BH;T0 的中斷入口AJMPIT0PMAIN : MOVSP,#70H;設(shè)置堆棧MOV36H,#00H; 秒MOV 37H,#00H ; 分MOV38H,#00H ; 時(shí)MOV43H,#99H;給鬧鐘一個(gè)初值MOVA,#89H ;工作方式MOVDPTR,#0FF7FH ;MOVXDPTR,A;工作方式MOVTMOD,#01H;設(shè) T0 為方式 1 初始狀態(tài) MOV39H,#100;裝入中斷次數(shù) SETB ET0;允許 T0 申請(qǐng)中斷SETBEA ;總中斷允許MOVTH0,#0D8H;給 T0 裝入計(jì)數(shù)初值MOVTL0,#0F0HSTART: S

9、ETBTR0;啟動(dòng) T0MOV3AH,#36H ;給數(shù)據(jù)處理一個(gè)初值 LCALL DATAT;數(shù)據(jù)處理LCALL DISPLAY;顯示MOVA,38H;判斷鬧鐘的時(shí)CJNEA,43H,KEYI ;不相等就跳 MOVA,37H;判斷鬧鐘的分CJNEA,42H,KEYIMOVA,36H;判斷鬧鐘的秒CJNEA,41H,KEYICLRP1.0;啟動(dòng)蜂鳴KEYI: LCALL KS1;判斷有沒鍵按下判斷鍵按下?JZLK1;有按下,是抖動(dòng)?LJMPSTART;回主程序LK1:LCALL DIR;停一下防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK2;有按下則掃描并處理LJMPSTA

10、RT;回主程序LK2:ACALL LK;掃描鍵掃描MOV40H,#00H;按鍵次數(shù)LK3:LCALL KS1;是否松手松手檢測JZLK3MOVA,3DH;掃描得來的鍵位JBAcc.0,CHTIMEI ;從左到右數(shù)鍵 1調(diào)時(shí)主 菜單 JBAcc.1,CLOCKI ;鬧鐘JBAcc.2,SAVEI省電JBAcc.3,WATCHI ;秒表LJMPSTARTCHTIMEI:LJMPCHTIME ;調(diào)時(shí) 入口地址CLOCKI :LJMPCLOCK;鬧鐘 入口地址SAVEI :LJMPSAVE; 省電 入口地址 WATCHI :LJMP WATCH;秒表 入口地址CHTIME: CLRTR0;暫停時(shí)鐘時(shí)鐘

11、調(diào)時(shí) 功能MOV3AH,#36H;給數(shù)據(jù)處理一個(gè)初值LCALL DATAT;數(shù)據(jù)處理LCALL DISPLAY ;顯示LCALL KS1;判斷有沒鍵按下判斷鍵按下?JZLK4;有按下,是抖動(dòng)?LJMPCHTIME ;返回調(diào)時(shí)LK4:LCALL DIR;停一下調(diào)時(shí)防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK6;有按下則掃描并處理LJMPCHTIME ;返回調(diào)時(shí)LK6:LCALL LK;掃描鍵LK5:LCALL KS1;是否松手JZLK5MOVA,3DH;掃描得來的鍵位JBAcc.0,XUANW ;從左到右數(shù)鍵 1選位調(diào)時(shí)菜單 JBAcc.1,ADDBCD ;加1JBAcc

12、.2,OUT退出JBAcc.3,SUBCD減1LJMPCHTIME ;返回調(diào)時(shí)XUANW: MOVA,#36H;選位的初值 調(diào)時(shí)選位INC40H;累加偏移量ADDA,40HCJNEA,#39H,CHTIME ;判斷是否選位過度OUT:LJMPSTART;回主程序調(diào)時(shí)退出ADDBCD: MOVA,#36H ;操行位初值調(diào)時(shí)加 1ADDA,40H;求出操作位MOVR0,AINCR0;+1LJMPCHTIME ;返回調(diào)時(shí)SUBCD: MOVA,#36H ;操行位初值調(diào)時(shí)減 1ADDA,40H;求出操作位MOVR0,ADECR0;-1LJMPCHTIME ;返回調(diào)時(shí)CLOCK: MOV41H,#00H

13、;鬧鐘初值鬧鐘功能MOV42H,#00HMOV43H,#00HCLOCK1: MOV3AH,#41H ;給數(shù)據(jù)處理一個(gè)初值 LCALL DATAT;數(shù)據(jù)處理LCALL DISPLAY ;顯示LCALL KS1;判斷有沒鍵按下判斷鍵按下?JZLK14; 有按下,是抖動(dòng)? LJMP CLOCK1 ;返回鬧鐘LK14: LCALL DIR;停一下鬧鐘防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK16;有按下則掃描并處理LJMPCLOCK1;返回鬧鐘LK16: LCALLLK;掃描鍵LK15: LCALLKS1;是否松手JZLK15MOVA,3DH;掃描得來的鍵位JBAcc.0,

14、XUANW1 ;從左到右數(shù)鍵 1選位鬧鐘菜單 JBAcc.1,ADDBCD1 ;加1JBAcc.2,OUT1退出JBAcc.3,SUBCD1 ;減1LJMPCLOCK1 ;返回鬧鐘XUANW1: MOVA,#41H;選位的初值 鬧鐘選位INC40H;累加偏移量ADDA,40H;判斷是否選位過度CJNEA,#44H,CLOCK1 返; 回鬧鐘OUT1: LJMPSTART;回主程序鬧鐘退出ADDBCD1:MOVA,#41H ;操行位初值鬧鐘加 1ADDA,40H;求出操作位MOVR0,AINCR0;+1 LJMP CLOCK1 ;返回鬧鐘SUBCD1: MOVA,#41H ;操行位初值調(diào)時(shí)減 1

15、ADDA,40H;求出操作位MOVR0,ADECR0;-1LJMP CLOCK1 ;返回鬧鐘SAVE: MOVA,#0FFH;段碼置 1省電 功能MOVDPTR,#0FF7CH ;MOVXDPTR,A黑屏省電LCALL KS1;判斷有沒鍵按下判斷鍵按下?JZLK24;有按下,是抖動(dòng)?LJMPSAVE;返回省電LK24: LCALL DIR;停一下省電防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK25;有按下則掃描并處理LJMPSAVE;返回省電LK25: LCALL KS1;是否松手松手檢測JZLK25LJMPSTART;回主程序省電退出WATCH: MOV44H,#00

16、H;秒表初值秒表 功能MOV45H,#00HMOV46H,#00HGOO:MOVA,45H;繼點(diǎn)和暫停的保存MOV49H,AMOVA,46HMOV4AH,AMOVA,44HMOV48H,ACJNEA,#100,STOP ;是否到 1 秒,未到則返回MOV44H,#00H; 脈動(dòng)清 0INC45H;增加秒MOVA,45HCJNEA,#60,STOP;是否到 60 秒,未到則返回MOV45H,#00H; 秒單元清 0 INC46H;增加分STOP: MOV3AH,#44H ;給數(shù)據(jù)處理一個(gè)初值 LCALL DATAT;數(shù)據(jù)處理LCALL DISPLAY ;顯示LCALL KS1;判斷有沒鍵按下判斷

17、鍵按下?JZLK34; 有按下,是抖動(dòng)?LJMPGOO;返回秒表LK34: LCALL DIR;停一下防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK36;有按下則掃描并處理LJMPGOO;返回秒表LK36: LCALL LK ;掃描鍵LK35: LCALL KS1;是否松手JZLK35A,3DH;掃描得來的鍵位JBAcc.1,HOLDON ;從左到右數(shù)鍵 2 繼點(diǎn)秒表菜單 JBAcc.2,WATCH秒表復(fù)位JBAcc.3,STOPI連續(xù)暫停OUT3: LJMPSTART;回主程序秒表退出GOON1: MOV3AH,#44H ;給數(shù)據(jù)處理一個(gè)初值 秒表連續(xù)LCALL DAT

18、AT;數(shù)據(jù)處理MOVA,45H;繼點(diǎn)和連續(xù)暫停的保存MOV49H,AMOVA,46HMOV4AH,AMOVA,44HMOV48H,ASTOPI: MOVA,44H秒表暫停CJNEA,#100,GOON ;是否到 1 秒,未到則返回MOV44H,#00H; 脈動(dòng)清 0INC45H;增秒MOVA,45HCJNEA,#60,GOON;是否到 60 秒,未到則返回MOV45H,#00H; 秒單元清 0INC46H;增分GOON: LCALL DISPLAY;顯示LCALL KS1;判斷有沒鍵按下判斷鍵按下?JZLK44;有按下,是抖動(dòng)?LJMPSTOPI;返回秒表暫停LK44: LCALL DIR;停

19、一下防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK46;有按下則掃描并處理LJMPSTOPI;返回秒表暫停LK46: LCALL LK ;掃描鍵LK45: LCALL KS1;是否松手JZLK45MOVA,3DH;掃描得來的鍵位JBAcc.1,HOLDON ;從左到右數(shù)鍵 2 繼點(diǎn) (秒表之連續(xù)暫停菜單)JBAcc.2,WATCH1 ;復(fù)位JBAcc.3,GOON1連續(xù)暫停之連續(xù)暫停LJMPSTART退出WATCH1: LJMPWATCH連續(xù)暫停的秒表復(fù)位HOLDON: MOVA,48H;把保存值放回秒表秒表繼點(diǎn)MOV44H,AMOVA,49HMOV45H,AMOVA,4

20、AHMOV46H,ALJMPGOO;返回秒表KS1:MOVDPTR,#0FF7DH ;給 PB 送 0;子程序之測鍵按下否MOVA,#03FHMOVX DPTR,AINCDPTR;到 PC 口 MOVX A,DPTR;取PC值A(chǔ)NLA,#01H ;只取第一位RET;返回LK: MOV A,#20H;給初始位選碼 ;子程序之掃描鍵 LK9:MOV3DH,A;保存位選碼MOVDPTR,#0FF7DH ;MOVX DPTR,A;位選碼給PB 口INCDPTR;到 PC 口 MOVX A,DPTR;把PC給AJNBAcc.0,LK8;掃到鍵就跳MOVA,3DH;恢復(fù)位碼RRA;右移CJNEA,#7FH

21、,LK9 ;掃了 6 次? LK8: MOVA,3DH;恢復(fù)位選碼RET;返回DATAT: MOVR0,3AH;子程序之?dāng)?shù)據(jù)處理MOVA,R0MOVB,#10DIVABMOV30H,BMOV31H,AINC3AHMOVR0,3AHMOVA,R0MOVB,#10DIVABMOV32H,BMOV33H,AINC3AHMOVR0,3AHMOVA,R0MOVB,#10DIVABMOV34H,BMOV35H,ADISPLAY:MOVA,#20H ;初始化;子程序之顯示MOVR0,#30H;顯示初地址ld0:MOV3BH,A;保存位選MOVDPTR,#0FF7DH ;MOVXDPTR,A;位選碼給 PB

22、口MOVA,R0MOVDPTR,#TAB;取表地址MOVCA,A+DPTR;查表MOVDPTR,#0FF7CH ;MOVXDPTR,A;段選給 PAMOV3CH,#0FFH;顯示的延時(shí)del1: DJNZ3CH,del1INCR0MOVA,3BH;恢復(fù)位選RRJNBAcc.7,ld0;判斷是否顯示了 6 次RET;返回DIR:MOV3EH,#0AH; 子程序之延時(shí)DIR1: MOV3FH,#0F0HDIR2:DJNZ 3FH,DIR2DJNZ 3EH,DIR1RET;返回TAB:DB0C0H,0F9H,0A4H,0B0H,99H ;LED的字模DB92H,82H,0F8H,80H,90H;01

23、23456789IT0P : PUSHA;保存 A; 時(shí)鐘中斷MOVTH0,#0D8H ;重裝初值MOVTL0,#0F0HINC44H; 脈動(dòng)DJNZ39H,RETURN ;1 秒未到,返回 MOV39H,#100 ;重置中斷次數(shù) INC36H;增加秒 MOV A,36HCJNEA,#60,RETURN ;是否到 60 秒,未到則返回 MOV36H,#00H; 秒單元清 0 SETB P1.0;停蜂鳴INC37H;增加分MOVA,37HCJNEA,#60,RETURN ;是否到 60 分,未到則返回MOV37H,#00H; 分單元清 0CLRP1.0;整點(diǎn)蜂鳴INC38H;增加時(shí)MOVA,38

24、H;恢復(fù) A 中的時(shí)CJNEA,#24,RETURN ;是否到 24 時(shí),未到則返回MOV38H,#00H; 時(shí)單元清 0RETURN: POPA;恢復(fù) ARETI;中斷返回END八、心得感想XX1 (電路圖):電路圖的時(shí)候其實(shí)也并非簡單,為了焊接方便,在了解了電路原理以后,我 需要多次重新排版, 一次次地連線, 然后將每次重新排版的電路圖保存下來比較, 最后才得 出最簡單的連接圖。XX2(焊接):我覺得焊接最首先要做的就是了解芯片的用途,引腳,把電路圖看明白,大體 回路怎樣連線有個(gè)譜,怎樣編排電路元件才使焊接最容易,這都要對(duì)引腳的接法熟悉才行, 在焊接時(shí)每一步都很重要, 我都先會(huì)把芯片和數(shù)碼

25、管的反面圖畫出來, 先找引腳, 然后用線 連起來, 焊接時(shí)我最怕兩條回路的焊錫連在一起, 焊接時(shí)我經(jīng)常把錫焊的太大塊以至產(chǎn)生不 少錯(cuò)誤,不過一熟悉了就會(huì)比較快了,不過一焊久了,就會(huì)感到煩,特別是焊錯(cuò)時(shí),所以我 覺得焊接時(shí)心態(tài)很重要, 這也讓我明白做事要認(rèn)真,特別是我們這個(gè)專業(yè), 耐心要很好,哪 怕錯(cuò)了都要慢慢找, 直到糾正過來, 雖然過程很辛苦,但焊好那一刻真的感到很滿意, 因?yàn)?畢竟是自己做的。是一種實(shí)XX3(焊接):做了焊接以后,我發(fā)現(xiàn)動(dòng)手能力完全不同于平時(shí)的課本學(xué)習(xí)體驗(yàn)的, 踐。有助于對(duì)理論知識(shí)的理解。而在操作過程中,熟悉了就能生巧。XX杰(軟件):一程序的基礎(chǔ)程序的基礎(chǔ)很重要。 程序的

26、基礎(chǔ)是指程序中所包含的子程序和中斷程序。 寫一個(gè)程序通常要 從基本的做起然后不斷地累加上去。 每加一層, 都要以之前的為基礎(chǔ)。 所以如果之前的是正 確的,但現(xiàn)在不正確,那就容易顯現(xiàn)出問題,方便修改。如先寫顯示,再寫顯示時(shí)鐘,接著 寫按鍵測量和掃描, 最后才是功能的實(shí)現(xiàn)。每更加一種, 我都會(huì)確保之前的為正確。所以程 序的基礎(chǔ)很重要。延時(shí)程序還有時(shí)鐘的這個(gè)程序的基礎(chǔ)包括有數(shù)據(jù)處理, 顯示程序,按鍵檢測,按鍵掃描, 中斷。雖然程序中防抖動(dòng)和松手檢測沒有寫成子程序,但也是程序的基礎(chǔ)。數(shù)據(jù)的處理。 這個(gè)我先后重寫了 3次。每次都以不同方式來處理數(shù)據(jù)。 當(dāng)然,每一次的重寫, 我都產(chǎn)生了新的處理方法, 而且

27、簡化了處理, 重點(diǎn)是處理要的是靈活性和通用性。 處理數(shù)據(jù) 的程序不是固定只處理幾個(gè)內(nèi)存單元。 處理數(shù)據(jù)的程序具有相當(dāng)?shù)撵`活性。 它可以隨著給出初值的不同, 而改變所要處理的區(qū)域, 從而得出不同而又所需的數(shù)據(jù)。 這對(duì)后來秒表的數(shù)據(jù) 處理和秒表內(nèi)部功能影響很大。所以數(shù)據(jù)處理的方式是整個(gè)程序的核心。防抖動(dòng)是在現(xiàn)顯示程序。 顯示程序與數(shù)據(jù)處理的原理很不同。 顯示程序要的是固定的內(nèi)存單元才具有通用 性。而在固定的內(nèi)存單元中體驗(yàn)出靈活性就需要數(shù)據(jù)處理的帶動(dòng)。 數(shù)據(jù)處理完了, 就會(huì)給固 定的單元傳送數(shù)值。 顯示程序通過對(duì)數(shù)值的識(shí)別, 進(jìn)而顯示出不同的數(shù)字。 通常檢查一般的 錯(cuò)誤,就從LED的顯示中得出,從而

28、再進(jìn)行相應(yīng)的措施。所以顯示程序是整個(gè)程序的基礎(chǔ)。 按鍵檢測是一個(gè)調(diào)用得最頻繁的子程序。 是判斷是否有鍵按下的子程序。 所以也是一個(gè)相當(dāng) 基礎(chǔ)和重要的程序。這是按鍵掃描前提,是防抖動(dòng)和松手檢測的重要組成部分。 按鍵掃描是判斷按了哪個(gè)鍵,從而選擇進(jìn)入不同功能的操作。它是控制程序流向的關(guān)鍵。 所以它所找出的值都要用一個(gè)內(nèi)存單元來存放,防止丟失。 延時(shí)程序是用來放在防抖動(dòng)當(dāng)中的,為了區(qū)別抖動(dòng)與按下的重要手段。 防抖動(dòng)是由兩個(gè)按鍵檢測和一個(gè)延時(shí)程序來實(shí)現(xiàn)的(當(dāng)然少不了包括跳轉(zhuǎn)) 實(shí)環(huán)境中必需的,所以也必需寫上去。 松手檢測只是一個(gè)按鍵檢測(當(dāng)然少不了包括跳轉(zhuǎn)) 。它是判斷按了幾次的重要部件。沒有 它,程

29、序根本沒法判斷是按了幾次,更不能判斷應(yīng)該跳到哪個(gè)程序入口。 時(shí)鐘的中斷是時(shí)鐘和秒表的 “動(dòng)力 ”。是數(shù)據(jù)的來源。是開始的開始。二程序具用的功能程序的主體功能有整點(diǎn)蜂鳴,調(diào)時(shí),鬧鐘,省電,秒表。整點(diǎn)蜂鳴這個(gè)是在整個(gè)程序中占用語句最少的一個(gè)功能。它主要實(shí)現(xiàn)的是到整點(diǎn)時(shí)蜂鳴。 那么我順著它的意思,把它寄放在時(shí)鐘中斷中。當(dāng)時(shí)加一時(shí), 蜂鳴自動(dòng)啟動(dòng),當(dāng)過一分鐘蜂 鳴自動(dòng)消除。調(diào)時(shí)。 是第一個(gè)要通過按鍵來實(shí)現(xiàn)的功能。 所以要想實(shí)現(xiàn)調(diào)時(shí), 前提是程序的基礎(chǔ)必需正 確。而調(diào)時(shí)所包括的分功能有選位,加 1,退出,減 1。它是通過調(diào)整存儲(chǔ)時(shí)間的內(nèi)存單元 的值來實(shí)現(xiàn)的。它是 K1 鍵。K1 鍵。當(dāng)進(jìn)入調(diào)時(shí)時(shí),默 按

30、下兩次,就會(huì)變?yōu)楦淖?0H 單元來存放按了幾1 選位。進(jìn)入調(diào)時(shí)功能后,選位鍵才被激活。它和調(diào)時(shí)一樣都是 認(rèn)是改變秒的位。如果選位鍵被按下一次,就會(huì)變?yōu)楦淖兎值奈唬?時(shí)的位;按下三次就默認(rèn)完成調(diào)時(shí)并退出調(diào)時(shí)返回主程序。這是由 次,并相應(yīng)求出要選位的內(nèi)存單元。2加1。進(jìn)入調(diào)時(shí)功能后,加 1鍵才被激活。它是 K2鍵。它是使選中的位相應(yīng)加1。3 退出。進(jìn)入調(diào)時(shí)功能后,退出鍵才被激活。它是 K3 鍵。它是從調(diào)時(shí)中快速返回到主程序 的出口。換句話說就是可以調(diào)整到一半就可以返回主程序,不必等選位完成。1。4減1。進(jìn)入調(diào)時(shí)功能后,減 1鍵才被激活。它是 K4鍵。它是使選中的位相應(yīng)減鬧鐘。 鬧鐘原理與調(diào)時(shí)原理相

31、似。都是改變某些內(nèi)存單元的值。不同的是,這些被改變的值是固定用來和時(shí)鐘的值作比較的。 當(dāng)數(shù)值相同時(shí)就激發(fā)蜂鳴。 可以通過調(diào)整鬧鐘設(shè)定的秒數(shù) 來控制蜂鳴時(shí)間的長短。而鬧鐘所包括的分功能有選位,加1,退出,減 1。它是 K2 鍵。40H 單元來存放按了幾次,并相應(yīng)1 選位。進(jìn)入鬧鐘功能后,選位鍵才被激活。它是 K1 鍵。當(dāng)進(jìn)入鬧鐘時(shí),默認(rèn)是改變秒的 位。如果選位鍵被按下一次,就會(huì)變?yōu)楦淖兎值奈?;按下兩次,就?huì)變?yōu)楦淖儠r(shí)的位;按下 三次就默認(rèn)完成鬧鐘并退出鬧鐘返回主程序。這也是由 求出要選位的內(nèi)存單元。K2鍵。它是使選中的位相應(yīng)加1。K3 鍵。它是從鬧鐘中快速返回到主程序2加 1。進(jìn)入鬧鐘功能后,加

32、 1鍵才被激活。它是3 退出。進(jìn)入鬧鐘功能后,退出鍵才被激活。它是1。的出口。換句話說就是可以設(shè)定到一半就可以返回主程序,不必等選位完成。4減1。進(jìn)入調(diào)時(shí)功能后,減1鍵才被激活。它是 K4鍵。它是使選中的位相應(yīng)減省電。它的原理是讓程序一直停留在按鍵檢測(包含防抖動(dòng))中,跳過顯示程序,當(dāng)任何鍵 再次被按下就退出。激發(fā)省電的是K3鍵。秒表。它的原理是借助時(shí)鐘計(jì)算器的跳動(dòng)而 “帶動(dòng)”秒表。所以整個(gè)程序只需要一個(gè)計(jì)數(shù)器。 這個(gè)計(jì)數(shù)器同時(shí)服務(wù)于秒表和時(shí)鐘。 而秒表所包括的分功能有退出, 繼點(diǎn),復(fù)位, 連續(xù)暫停。 它是K4鍵。1 退出。進(jìn)入秒表功能后,退出鍵才被激活。它是 序的方法。2 繼點(diǎn)。進(jìn)入秒表功能

33、后,繼點(diǎn)鍵才被激活。它是 續(xù)計(jì)時(shí)。 如到了 1 秒就按了暫停, 那么再按繼點(diǎn)時(shí), 要發(fā)生功能就要在按下連續(xù)暫停后再按繼點(diǎn)才發(fā)生。3 復(fù)位。進(jìn)入秒表功能后,復(fù)位鍵才被激活。它是 新再計(jì)時(shí)。4 連續(xù)暫停。進(jìn)入秒表功能后,連續(xù)暫停才被激活。 顯示的是從啟動(dòng)或復(fù)位秒表到第一次按下的時(shí)間。直在計(jì)數(shù)。 所以當(dāng)?shù)诙伟聪聲r(shí), 次按下沒有關(guān)系。三程序中的缺點(diǎn)和相應(yīng)措施 程序所存在的缺點(diǎn) 調(diào)時(shí)和鬧鐘在加 1 時(shí)如秒超過 60,不回到 0 或減 1 時(shí)會(huì)去到 99 整 點(diǎn)蜂鳴時(shí),總要蜂鳴 1 分鐘。 在秒表的連續(xù)暫停時(shí),沒有把按鍵的時(shí)間算上去 相應(yīng)措施 有加 1 和減 1 兩個(gè)鍵可以調(diào)節(jié)在可控范圍中。 外加對(duì)蜂鳴

34、的限制 在按下時(shí) 就進(jìn)行程序,而不是松手再進(jìn)行程序。四寫程序中的感想 寫一個(gè)程序所需要的邏輯思維比較強(qiáng),所以建議先寫流程圖再編程,讓編寫時(shí)有個(gè)方向。 還有多編寫子程序讓主程序顯得更簡潔和多寫注釋更強(qiáng)程序的可讀性。這兩點(diǎn)都方便讓我們更快地找出程序的錯(cuò)誤和漏洞。 出現(xiàn)錯(cuò)誤時(shí), 應(yīng)該用排除法來查找錯(cuò)誤。找到錯(cuò)誤時(shí), 要不 斷分析錯(cuò)誤的產(chǎn)生和對(duì)錯(cuò)誤的修改。 注意子程序的返回; 注意程序各部份的獨(dú)立性, 如寄存 器最好各選不同的。子程序通用性一定要強(qiáng)。通過這個(gè)課程設(shè)計(jì), 我深深體會(huì)到理論與實(shí)踐的關(guān)系。 有些理論上是正常的但實(shí)踐證明是 錯(cuò)誤的問題,那么我們應(yīng)該選擇理論和實(shí)踐都正確的方法,來確保程序的通用性

35、。K1 鍵。它是唯一能從秒表中返回到主程K2 鍵。就會(huì)從K3 鍵。單片機(jī)原理與應(yīng)用課程設(shè)計(jì)繼點(diǎn)是在暫停的時(shí)間的基礎(chǔ)上繼1 秒的基礎(chǔ)上再累計(jì)時(shí)間。所以復(fù)位是對(duì)秒表的時(shí)間從 0 開始重K4 鍵。連續(xù)暫停第一次按下時(shí), 但內(nèi)部還是一 和第一它是雖然顯示的數(shù)值是固定的,顯示的是從啟動(dòng)或復(fù)位秒表到第二次按下的時(shí)間,- 18 -課題名稱:數(shù)字時(shí)鐘的設(shè)計(jì)與實(shí)現(xiàn) 班級(jí): 08 電子信息工程學(xué)號(hào):姓名:指導(dǎo)教師:信息工程系題目:數(shù)字時(shí)鐘的設(shè)計(jì)與實(shí)現(xiàn) 一功能要求:用按鍵實(shí)現(xiàn)時(shí)、分、秒的調(diào)整。整點(diǎn)提醒:0、1、22和短蜂鳴。 省電功能:關(guān)閉顯示。 定時(shí)設(shè)定提醒:時(shí)間到時(shí)發(fā)出五次蜂鳴聲 秒表功能:顯示XX分XX秒XX

36、1 .用單片機(jī)和6位LED數(shù)碼管顯示時(shí)、分、秒,實(shí)現(xiàn)從 00時(shí)00分00秒-23時(shí)59分 59 秒循環(huán)運(yùn)行。2.3.564.復(fù)位” 鍵:顯示 00分00秒 00;按“啟動(dòng)” 鍵:從 00分 00秒 00開始計(jì)時(shí)按 停止”鍵:顯示實(shí)際計(jì)時(shí) XX分XX秒XX。二.硬件設(shè)計(jì)要求:1用偉福6000實(shí)驗(yàn)裝置上8255的A 口作顯示段碼鎖存器,B 口作位碼鎖存器,利用發(fā)的實(shí)驗(yàn)器材6位LED數(shù)碼管顯示時(shí)、分、秒。2.利用偉福6000實(shí)驗(yàn)裝置上8255的B 口的6根位碼輸出線和 8255C 口中的PC0作按鍵 的輸入口線,實(shí)現(xiàn)最多 6個(gè)按鍵的識(shí)別,作為實(shí)現(xiàn)上述功能要求的硬件保證。(包括 P1 口、P3 口)、

37、蜂碼器及直流電源。3 .偉福6000實(shí)驗(yàn)裝置上提供給該課題的硬件是:AT89C51單片機(jī)8位可編程並行I/O 口 8255 (包括A 口、B 口、C 口)、地址譯碼電路、本次設(shè)計(jì)提供給各組的器材有: 印刷電路板一塊 7406 集成電路 3 片LED數(shù)碼管6個(gè)1K 排阻 2 個(gè), 4.7K 電阻一個(gè)。40芯IC插座2個(gè)、14芯IC插座3個(gè)6)按鍵 6 個(gè)4(1)( 2)( 3)( 4)( 5)7)焊錫、導(dǎo)線若干。三軟件設(shè)計(jì)(僅供參考)釆用十進(jìn)制 BCD 顯示緩沖區(qū)的分配 要顯示的數(shù)據(jù)送顯示緩沖區(qū) 把顯示的數(shù)據(jù)置換出段碼 送段碼和位碼,進(jìn)行顯示 延時(shí)1 主程序流桯圖 2顯示子程序的設(shè)計(jì):(1)(

38、2)( 3)( 4)( 5)( 6)3定時(shí)中斷服務(wù)子程序的設(shè)計(jì)60 秒時(shí)分計(jì)數(shù)加 1,(1)利用定時(shí)器T0定時(shí)10毫秒,累計(jì)到1秒時(shí)秒計(jì)數(shù)加1,累計(jì)到 累計(jì)到 60分時(shí)時(shí)計(jì)數(shù)加 1,累計(jì)到 24小時(shí)從頭開始。( 2)注意保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場(3)注意設(shè)置毫秒、秒、分、時(shí)的存放單元四、軟件仿真 仿真部分由 Protues 實(shí)現(xiàn)。 Protues 可以嵌入單片機(jī)的二進(jìn)制代碼, 便于程序調(diào)試。 本次仿真 的電路圖如下所示:其中,按鍵為輸入電路,為行列式設(shè)計(jì),行線接入8255芯片的PC0 口,列線分別對(duì)應(yīng)接入8255芯片的PB0PB3口,與數(shù)碼管的位選線共享端口。數(shù)碼管為輸出電路。本次實(shí)驗(yàn)一共要使用 6

39、個(gè)數(shù)碼管,以動(dòng)態(tài)顯示方式輪番輸出字符, 6個(gè) 數(shù)碼管的段碼線相互并聯(lián)后接入8255芯片的PA端口,a、b、c、d、e、f、g端口分別連接PA0PA6端口,在8255芯片引腳和段碼線之間分別一一串聯(lián)7406芯片、并聯(lián)一個(gè)排阻以提供激勵(lì),使數(shù)碼管發(fā)亮。位選線則以數(shù)碼管的接地線組成,從時(shí)十位、時(shí)個(gè)位、分十位、分 個(gè)位、秒十位、秒個(gè)位分別接入8255芯片的PB0PB5端口,其中PB0PB3這四個(gè)端口分別并聯(lián)上四個(gè)按鍵。同理,每個(gè)引腳和 8255芯片之間都一一串聯(lián)上 7406芯片和并聯(lián)上排阻。 位選線負(fù)責(zé)選取某一時(shí)間片要顯示哪一個(gè)數(shù)碼管,顯示間隔由源程序決定。五、焊接 本次實(shí)驗(yàn)由于沒有提供 8051 芯

40、片、 8255 芯片。上述芯片均由偉福實(shí)驗(yàn)箱提供,焊接的時(shí)候 需要在萬用板上面預(yù)留 PA PB接線口。另外,萬用板上面同時(shí)需要預(yù)留電源的正負(fù)極、PC0口接線,共計(jì) 17個(gè)接線口。由于萬用板的大小的限制及芯片引腳定義的影響, 完全一致,不過大體上還是一樣的。 還有, 本次焊接實(shí)際上需要比較多的電線,尤其是數(shù)碼管部分,由于相鄰引腳非常貼近,在 焊接的時(shí)候要非常留心,謹(jǐn)防相鄰兩點(diǎn)短路。 在焊接完成后,由于背板上面線路眾多,需要用膠紙固定整理,防止導(dǎo)線脫落。 焊接完成后, 萬用板上面已經(jīng)有相應(yīng)的接線,于是進(jìn)行硬件實(shí)現(xiàn)部分。實(shí)際上的電路圖不會(huì)和仿真軟件的電路圖六、硬件實(shí)現(xiàn)本次硬件實(shí)現(xiàn)部分由偉福 Lab6

41、000實(shí)驗(yàn)箱提供8051芯片和8255芯片,分別連接萬用板相應(yīng) 的接線。由偉福的 Wave6000軟件向?qū)嶒?yàn)箱上面的 8051芯片燒入時(shí)鐘的程序。另外,電源 的正負(fù)極也是由 Lab6000 提供。電路板中有6個(gè)按鍵,不過實(shí)際上使用的有4個(gè),就是離PA PB連接端口較遠(yuǎn)的4個(gè)起作用,離PA PB連接端口較近的兩個(gè)沒有定義。從遠(yuǎn)離端口的按鍵開始依次編號(hào)K4,每個(gè)按鍵都有如下功能:1 )當(dāng)先按 K1 的時(shí)候,系統(tǒng)就進(jìn)入調(diào)節(jié)時(shí)間狀態(tài),數(shù)碼管上就顯示時(shí)鐘。 能依次為選擇調(diào)整的單元(時(shí)、分、秒) ,2)當(dāng)先按K2的時(shí)候,系統(tǒng)不作出任何反應(yīng),3)當(dāng)先按K3的時(shí)候,系統(tǒng)就進(jìn)入省電模式, 鍵即可點(diǎn)亮數(shù)碼管并還原

42、到上次的顯示狀態(tài);4)當(dāng)先按K4的時(shí)候,系統(tǒng)就進(jìn)入秒表狀態(tài),單元數(shù)值加 等待用戶按 數(shù)碼管熄滅,K1、K2、K3、K2、K3、1 ,退出調(diào)整狀態(tài),單元數(shù)值減K4;K1、K1、 K3、然后按數(shù)碼管上面就顯示秒表。功能依次為切換至?xí)r鐘、顯示暫停變化(內(nèi)部繼續(xù)計(jì)時(shí))或者數(shù)碼管繼續(xù)變化、 暫停計(jì)時(shí)。七、程序 所有程序如下所示 ORG0000HAJMPMAINORG000BH;T0 的中斷入口AJMPIT0PMAIN : MOVSP,#70H;設(shè)置堆棧MOV36H,#00H; 秒MOV 37H,#00H ; 分K4 的功1;K2、K3、K4 任意一K1、K2、K3、K4 的復(fù)位清零、MOV38H,#00

43、H ; 時(shí)MOV43H,#99H;給鬧鐘一個(gè)初值MOVA,#89H ;工作方式MOVDPTR,#0FF7FH ;MOVXDPTR,A;工作方式MOVTMOD,#01H;設(shè) T0 為方式 1 初始狀態(tài)MOV39H,#100;裝入中斷次數(shù)SETBET0;允許 T0 申請(qǐng)中斷 SETBEA;總中斷允許MOVTH0,#0D8H;給 T0 裝入計(jì)數(shù)初值MOVTL0,#0F0HSTART: SETBTR0;啟動(dòng) T0MOV3AH,#36H;給數(shù)據(jù)處理一個(gè)初值LCALL DATAT;數(shù)據(jù)處理LCALL DISPLAY;顯示MOVA,38H;判斷鬧鐘的時(shí)CJNEA,43H,KEYI ;不相等就跳 MOVA,3

44、7H;判斷鬧鐘的分CJNEA,42H,KEYIMOVA,36H;判斷鬧鐘的秒CJNEA,41H,KEYICLRP1.0;啟動(dòng)蜂鳴KEYI: LCALL KS1;判斷有沒鍵按下判斷鍵按下?JZLK1;有按下,是抖動(dòng)?LJMPSTART;回主程序LK1:LCALL DIR;停一下防抖動(dòng) LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK2;有按下則掃描并處理LJMPSTART;回主程序LK2:ACALL LK;掃描鍵掃描MOV40H,#00H;按鍵次數(shù)LK3:LCALL KS1;是否松手松手檢測JZLK3MOVA,3DH;掃描得來的鍵位JBAcc.0,CHTIMEI ;從左到右數(shù)鍵 1

45、調(diào)時(shí)主 菜單 JBAcc.1,CLOCKI ;鬧鐘JBAcc.2,SAVEI省電JBAcc.3,WATCHI ;秒表LJMPSTARTCHTIMEI:LJMPCHTIME ;調(diào)時(shí) 入口地址CLOCKI :LJMPCLOCK;鬧鐘 入口地址 SAVEI :LJMPSAVE; 省電 入口地址 WATCHI :LJMP WATCH;秒表 入口地址CHTIME: CLRTR0;暫停時(shí)鐘時(shí)鐘調(diào)時(shí) 功能MOV3AH,#36H ;給數(shù)據(jù)處理一個(gè)初值 LCALL DATAT;數(shù)據(jù)處理LCALL DISPLAY ;顯示LCALL KS1;判斷有沒鍵按下判斷鍵按下?JZLK4;有按下,是抖動(dòng)?LJMPCHTIME

46、 ;返回調(diào)時(shí)LK4:LCALL DIR;停一下調(diào)時(shí)防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK6;有按下則掃描并處理LJMPCHTIME ;返回調(diào)時(shí)LK6:LCALL LK;掃描鍵LK5:LCALL KS1;是否松手JZLK5MOVA,3DH;掃描得來的鍵位JBAcc.0,XUANW ;從左到右數(shù)鍵 1選位調(diào)時(shí)菜單 JBAcc.1,ADDBCD ;加1JBAcc.2,OUT退出JBAcc.3,SUBCD減1LJMPCHTIME ;返回調(diào)時(shí)XUANW: MOVA,#36H;選位的初值 調(diào)時(shí)選位INC40H;累加偏移量ADDA,40HCJNEA,#39H,CHTIME ;判

47、斷是否選位過度OUT:LJMPSTART;回主程序調(diào)時(shí)退出ADDBCD: MOVA,#36H ;操行位初值調(diào)時(shí)加 1ADDA,40H;求出操作位MOVR0,AINCR0;+1LJMP CHTIME ;返回調(diào)時(shí)SUBCD: MOVA,#36H ;操行位初值調(diào)時(shí)減 1ADDA,40H;求出操作位MOVR0,ADECR0;-1LJMPCHTIME ;返回調(diào)時(shí)CLOCK: MOV41H,#00H;鬧鐘初值鬧鐘功能MOV42H,#00HMOV43H,#00HCLOCK1: MOV3AH,#41H ;給數(shù)據(jù)處理一個(gè)初值 LCALL DATAT;數(shù)據(jù)處理LCALL DISPLAY;顯示 LCALL KS1;

48、判斷有沒鍵按下判斷鍵按下?JZLK14;有按下,是抖動(dòng)?LJMPCLOCK1 ;返回鬧鐘LK14: LCALL DIR;停一下鬧鐘防抖動(dòng)LCALL DIRLCALL KS1;再檢查有沒鍵按下JZLK16;有按下則掃描并處理LJMPCLOCK1;返回鬧鐘LK16: LCALLLK;掃描鍵LK15: LCALLKS1;是否松手JZLK15MOVA,3DH;掃描得來的鍵位JBAcc.0,XUANW1;從左到右數(shù)鍵 1選位鬧鐘菜單 JBAcc.1,ADDBCD1 ;加1JBAcc.2,OUT1退出JBAcc.3,SUBCD1 ;減1LJMPCLOCK1 ;返回鬧鐘XUANW1: MOVA,#41H;選位的初值 鬧鐘選位INC40H;累加偏移量ADDA,40H;判斷是否選位過度CJNEA,#44H,CLOCK1 返; 回鬧鐘OUT1: LJMPSTART;回主程序鬧鐘退出ADDBCD1:MOVA,#41H ;操行位初值鬧鐘加 1ADDA,40H;求出操作位MOVR0,AINCR0;+1LJMPCLOCK1 ;返回鬧鐘SUBCD1: MOVA,#41H ;操行位初值調(diào)時(shí)減 1ADDA,40H;求出操作位MO

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論