計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí)報(bào)告_第1頁
計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí)報(bào)告_第2頁
計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí)報(bào)告_第3頁
計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí)報(bào)告_第4頁
計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí)報(bào)告_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí)報(bào)告學(xué)院:信息科學(xué)與工程學(xué)院班級(jí):電子信息科學(xué)與技術(shù)08-2學(xué)號(hào):3080448201姓名:鄺輝寧指導(dǎo)老師:陳小琴 日期:2010.9.18計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí)報(bào)告一實(shí)習(xí)的性質(zhì)與目的1、課程性質(zhì):計(jì)算機(jī)輔助設(shè)計(jì)是電子信息類各專業(yè)本科生的必修課。計(jì)算機(jī)輔助設(shè)計(jì)技術(shù)范疇包含電子系統(tǒng)設(shè)計(jì)和開發(fā)的全過程,可分為系統(tǒng)級(jí)、電路級(jí)和物理級(jí)。2、實(shí)習(xí)目的:借助現(xiàn)代EDA技術(shù)進(jìn)行系統(tǒng)電路設(shè)計(jì),側(cè)重于綜合應(yīng)用所學(xué)知識(shí),設(shè)計(jì)較為復(fù)雜的功能電路或小型電子系統(tǒng),培養(yǎng)學(xué)生的現(xiàn)代電路設(shè)計(jì)與綜合應(yīng)用的能力,提高電路設(shè)計(jì)水平,培養(yǎng)現(xiàn)代電子系統(tǒng)設(shè)計(jì)能力和創(chuàng)新研究能力。二實(shí)習(xí)教學(xué)的基本要求給出實(shí)習(xí)課題任務(wù)要

2、求,學(xué)生通過閱讀資料、選擇方案、設(shè)計(jì)電路、編程仿真、性能指標(biāo)測(cè)試、撰寫報(bào)告等過程,培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí)解決實(shí)際問題的能力和創(chuàng)新研究能力。需要熟練掌握常用電子系統(tǒng)設(shè)計(jì)工具Protel DXP。三實(shí)習(xí)主題:LED數(shù)字式溫度計(jì)的設(shè)計(jì)。要求:1.用2個(gè)8段數(shù)碼管顯示所測(cè)溫度計(jì);2.測(cè)量范圍為3099四實(shí)習(xí)內(nèi)容及過程:1.方案選擇和電路設(shè)計(jì)根據(jù)題目要求,選用單片機(jī)設(shè)計(jì)電路系統(tǒng)能較輕松和準(zhǔn)確地實(shí)現(xiàn),這里采用的單片機(jī)是常用的AT89C52。2.利用keilc51編寫單片機(jī)程序已經(jīng)有了電路圖,接下來就要編寫程序并進(jìn)行仿真,從而確定各元件的參數(shù)。Keilc51是常用的單片機(jī)編程軟件,現(xiàn)用于編寫一個(gè)應(yīng)用于AT

3、89C52的溫控程序。程序如下:編譯結(jié)果如圖1所示:圖13.利用proteus進(jìn)行電路圖仿真Proteus是適合于單片機(jī)電路仿真的軟件,現(xiàn)用于對(duì)LED數(shù)字式溫度計(jì)電路仿真。通過仿真可以確定各元件的參數(shù),并對(duì)程序進(jìn)行修正。經(jīng)過多次測(cè)試,終于確定了元件的參數(shù)。電路圖及仿真過程如圖2所示:圖24.利用Protel DXP畫出PCB圖(1).電路原理圖設(shè)計(jì)新建工程,然后新建原理圖文件,打開原理圖就可以設(shè)計(jì)原理圖了。畫原理圖之前,先添加所需要的元件庫。利用設(shè)計(jì)管理器可以方便地添加元件庫,一般常用的是“Miscellaneous Devices.ddb”庫和“Protel Dos”庫。在畫原理圖時(shí),放置元

4、件的方法是,選擇目標(biāo)元件所在的元件庫,然后從它下面的具體元件列表框中選擇目標(biāo)元件,點(diǎn)擊place按鈕,將目標(biāo)元件拖到圖紙中,并放置在所需要的位置。點(diǎn)擊“place”之后,放置元件之前,按下“tab”鍵,就會(huì)彈出元件屬性對(duì)話框,可以編輯元件的屬性,其中元件封裝和元件標(biāo)號(hào)是必須編輯的。放置好元件之后,就可以連線了,Protel DXP提供了多種連線方式,可以通過空格鍵進(jìn)行切換。連好線,原理圖就設(shè)計(jì)好了。 (2).編輯新元件盡管Protel DXP內(nèi)置的元件庫已經(jīng)相當(dāng)豐富,但有時(shí)還是無法從這些元件庫中找到想要的元件,這時(shí)就需要自行建立新的元件及元件庫了。現(xiàn)在需要建立單片機(jī)AT89C52這個(gè)元件,方法

5、如下:在當(dāng)前設(shè)計(jì)管理器環(huán)境下,執(zhí)行“”,選擇“Schematic Library Document”,就創(chuàng)建了一個(gè)新元件庫文檔,把文檔名改為“89c52”。雙擊打開進(jìn)入元件庫編輯界面,執(zhí)行“Place/Rectangle”,拖動(dòng)鼠標(biāo)繪制一個(gè)直角矩形,大小為25*13格,執(zhí)行“Place/Pins”,在矩形周圍畫40個(gè)引腳,用空格鍵可以旋轉(zhuǎn)方向。雙擊引腳,逐一編輯各引腳屬性。執(zhí)行“Tools/Rename Component”,在對(duì)話框中把元件名稱改為“89c52”,然后保存。在原理圖設(shè)計(jì)界面把此元件裝載到元件庫中,就可以取用“89c52”元件了。(3)ERC檢查在原理圖設(shè)計(jì)界面下,執(zhí)行“Too

6、ls/ERC”可以生成ERC表,用于檢查電路圖是否有問題,可以根據(jù)ERC表修正原理圖中的錯(cuò)誤。原理圖的最終設(shè)計(jì)如圖3:圖3(4).生成網(wǎng)絡(luò)表ERC檢查無誤后,執(zhí)行“Design/Create Netlist”,選擇網(wǎng)絡(luò)表類型,生成網(wǎng)絡(luò)表。 (5).建立PCB文件,裝載網(wǎng)絡(luò)表執(zhí)行“”,選擇“PCB Document”,則建立了一個(gè)PCB文件,雙擊打開PCB編輯器,添加所需要的封裝庫。執(zhí)行“Design/Load Nets”,在對(duì)話框中選擇所用到的網(wǎng)絡(luò)表,點(diǎn)擊“ok”按鈕,這時(shí)如果有錯(cuò)誤提示,則要返回原理圖修正,重新生成和裝載網(wǎng)絡(luò)表,直到?jīng)]有錯(cuò)誤提示為止,點(diǎn)擊“Execute”按鈕,就裝入了網(wǎng)絡(luò)表

7、和元件。 (6).布局和布線在PCB編輯界面下,點(diǎn)擊下方的“keepoutlayer”,執(zhí)“Place/Keepout/Track”,畫出電路板邊框。執(zhí)行“右鍵/Rules”,在彈出對(duì)話框中定義布局和布線規(guī)則。然后進(jìn)行手工布局,把已裝入的元件一一拖入邊框內(nèi)的合適位置,并調(diào)整好元件放置方向。布局完后,執(zhí)行“AutoRoute/All”,單擊對(duì)話框中的“Route All”按鈕即可完成自動(dòng)布線,手工進(jìn)行一些調(diào)整即可完成PCB圖的設(shè)計(jì)。如圖4:圖4(7).電氣規(guī)則檢查當(dāng)一塊線路板已經(jīng)設(shè)計(jì)好,我們要檢查布線是否有錯(cuò)誤,Protel DXP提供了很好的檢查工具“DRC” 自動(dòng)規(guī)則檢查。執(zhí)行“Tools/

8、Design Rlue Check”,計(jì)算機(jī)會(huì)自動(dòng)將檢查結(jié)果列出來。電氣規(guī)則檢查無誤,就可以保存設(shè)計(jì),并交付PCB文件給制版廠家生產(chǎn)電路板了。實(shí)習(xí)心得:經(jīng)過為時(shí)三周的計(jì)算機(jī)輔助設(shè)計(jì)綜合實(shí)習(xí),我查閱了不少的資料,使用了Protel DXP畫PCB圖和keilc51編程,用了proteus仿真:利用EDA技術(shù)完成了一個(gè)LED數(shù)字式溫度計(jì)的設(shè)計(jì)。這個(gè)實(shí)習(xí)使我的電子設(shè)計(jì)水平和解決實(shí)際問題的能力有了很大的提高。附錄:/* 18B20單線溫度檢測(cè)的應(yīng)用樣例程序,請(qǐng)將18b20插緊,然后在數(shù)碼管可以顯示XX,如顯示28表示當(dāng)前溫度28度 */#include /包含頭文件,一般情況不需要改動(dòng),頭文件包含特殊

9、功能寄存器的定義#include#include#define uchar unsigned char#define uint unsigned int;/* 定義端口 */sbit seg1=P20;sbit seg2=P21;sbit seg3=P22;sbit DQ=P13;/ds18b20 端口sfr dataled=0x80;/顯示數(shù)據(jù)端口/* 全局變量 */uint temp;uchar flag_get,count,num,minute,second;uchar code tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;

10、/7段數(shù)碼管段碼表共陽uchar str6;/* 函數(shù)聲明 */void delay1(uchar MS);unsigned int ReadTemperature(void);void Init_DS18B20(void);unsigned char ReadOneChar(void);void WriteOneChar(unsigned char dat);void delay(unsigned int i);/* 主函數(shù) */main()unsigned char TempH,TempL;TMOD|=0x01;/定時(shí)器設(shè)置TH0=0xef;TL0=0xf0;IE=0x82;TR0=1;P

11、2=0x00; count=0;while(1) str2=tab(TempH%100)/10; /十位溫度 str3=tab(TempH%100)%10+0x80; /個(gè)位溫度,帶小數(shù)點(diǎn) if(flag_get=1) /定時(shí)讀取當(dāng)前溫度 temp=ReadTemperature(); if(temp&0x8000) str0=0x40;/負(fù)號(hào)標(biāo)志 temp=temp; / 取反加1 temp +=1; else str0=0; TempH=temp4; TempL=temp&0x0F; TempL=TempL*6/10;/小數(shù)近似處理 flag_get=0; /* 定時(shí)器中斷 */void

12、tim(void) interrupt 1 using 1/中斷,用于數(shù)碼管掃描和溫度檢測(cè)間隔TH0=0xef;/定時(shí)器重裝值TL0=0xf0;num+;if (num=50) num=0; flag_get=1;/標(biāo)志位有效 second+; if(second=60) second=0; minute+; count+;if(count=1) P2=0; dataled=str0;/數(shù)碼管掃描if(count=2) P2=1; dataled=str1;if(count=3) P2=2; dataled=str2; if(count=4) P2=3; dataled=str3; if(co

13、unt=5) P2=4; dataled=str4; if(count=6) P2=5; dataled=str5; count=0;/* 延時(shí)函數(shù) */void delay(unsigned int i)/延時(shí)函數(shù) while(i-);/* 初始化 */void Init_DS18B20(void) unsigned char x=0; DQ = 1; /DQ復(fù)位 delay(8); /稍做延時(shí) DQ = 0; /單片機(jī)將DQ拉低 delay(80); /精確延時(shí) 大于 480us DQ = 1; /拉高總線 delay(10); x=DQ; /稍做延時(shí)后 如果x=0則初始化成功 x=1則初

14、始化失敗 delay(5);/* 讀一個(gè)字節(jié) */unsigned char ReadOneChar(void)unsigned char i=0;unsigned char dat = 0;for (i=8;i0;i-) DQ = 0; / 給脈沖信號(hào) dat=1; DQ = 1; / 給脈沖信號(hào) if(DQ) dat|=0x80; delay(5); return(dat);/* 寫一個(gè)字節(jié) */void WriteOneChar(unsigned char dat) unsigned char i=0; for (i=8; i0; i-) DQ = 0; DQ = dat&0x01; delay(5); DQ = 1; dat=1; delay(5);/* 讀取溫度 */unsigned int ReadTemperature(void)unsigned char a=0;unsigned int b=0;unsigned int t=0;Init_DS18B20();WriteOneCh

溫馨提示

  • 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)論