




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 湖 南 科 技 大 學(xué)單 片 機(jī) 課 程 設(shè) 計(jì) 題 目 基于單片機(jī)的數(shù)字電流表設(shè)計(jì)姓 名 學(xué) 院 專 業(yè) 學(xué) 號(hào) 指導(dǎo)教師 成 績(jī) 二一一年 五 月 二十六日 單片機(jī)課程設(shè)計(jì)任務(wù)書一、設(shè)計(jì)題目:基于單片機(jī)的數(shù)字電流表設(shè)計(jì)二、設(shè)計(jì)要求:1、 數(shù)字電流表在平常工作環(huán)境中能良好工作2、 能測(cè)01000mA電流,至少能達(dá)1%的精度3、 要求掌握I/V信號(hào)轉(zhuǎn)換,A/D轉(zhuǎn)換器的使用和數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)4、 電流表能數(shù)字顯示,且由單片機(jī)處理采集數(shù)據(jù)并驅(qū)動(dòng)LED顯示摘 要本設(shè)計(jì)是通過(guò)采樣電阻及信號(hào)放大電路將待測(cè)的電流信號(hào)I轉(zhuǎn)換成01V電壓信號(hào), 由A/D轉(zhuǎn)換器采集電壓信號(hào),并將電壓轉(zhuǎn)換的數(shù)字信號(hào)傳輸給單片
2、機(jī),由單片機(jī)完成對(duì)采樣信號(hào)的處理、分析,最后輸出信號(hào)驅(qū)動(dòng)LED顯示器,顯示被測(cè)的電壓值。目 錄一、功能要求 1二、原理及方案論證.2三、系統(tǒng)硬件電路的設(shè)計(jì)3四、系統(tǒng)程序的設(shè)計(jì)4五、調(diào)試及設(shè)計(jì)結(jié)果.5參考文獻(xiàn) .6 一、功能要求1、數(shù)字電流表在平常工作環(huán)境中能良好工作2、能測(cè)01000mA電流,至少能達(dá)1%的精度3、要求掌握I/V信號(hào)轉(zhuǎn)換,A/D轉(zhuǎn)換器的使用和數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)4、電流表能數(shù)字顯示,且由單片機(jī)處理采集數(shù)據(jù)并驅(qū)動(dòng)LED顯示二、原理及方案論證1、數(shù)字電流表工作原理1.1采樣電阻網(wǎng)絡(luò)原理如下圖所示,輸入被測(cè)電流通過(guò)量程轉(zhuǎn)換開關(guān)S1S4,流經(jīng)采樣電阻R1R4,由歐姆定律可知:U=I*R,
3、因而轉(zhuǎn)換輸出電壓為0V0.1V的電壓,輸出電壓可再經(jīng)后續(xù)放大電路放大處理。 1.2高共模抑制比放大電路如下圖,由雙運(yùn)放組成的同相輸入高共模抑制比放大電路,其閉環(huán)輸出可表示為:為使共模輸入為0,可令R1/R2=R4/R3,此時(shí)電路的差動(dòng)閉環(huán)增益為Kd=1+R1/R2, U0=Kd(U1-U2); 下圖即Kd=11,U0=11(U1-U2); 1.3通用A/D轉(zhuǎn)換器ADC0832 是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的一種 8 位分辨率、雙通道 A/D 轉(zhuǎn)換芯片。由于它體積小,兼容性強(qiáng),性價(jià)比高而深受單片機(jī)愛好者及企業(yè)歡迎,其目前已經(jīng)有很高的普及率。ADC0832 具有以下特點(diǎn): 8 位分辨率; 雙通道 A/
4、D轉(zhuǎn)換; 輸入輸出電平與 TTL/CMOS 相兼容; 5V 電源供電時(shí)輸入電壓在 05V 之間; 工作頻率為 250KHZ,轉(zhuǎn)換時(shí)間為 32S; 一般功耗僅為 15mW; 8P、14PDIP(雙列直插)、PICC 多種封裝; 商用級(jí)芯片溫寬為0°C to +70°C,工業(yè)級(jí)芯片溫寬為- 40°C to +85°C;芯片接口說(shuō)明 CS_ 片選使能,低電平芯片使能。 CH0 模擬輸入通道 0,或作為 IN+/-使用。 CH1 模擬輸入通道 1,或作為 IN+/-使用。 GND 芯片參考 0 電位(地)。 DI 數(shù)據(jù)信號(hào)輸入,選擇通道控制。 DO 數(shù)據(jù)信號(hào)輸出
5、,轉(zhuǎn)換數(shù)據(jù)輸出。 CLK 芯片時(shí)鐘輸入。 Vcc/REF 電源輸入及參考電壓輸入(復(fù)用)。 1.4 AT89C52單片機(jī) AT89C52 是美國(guó)ATMEL 公司生產(chǎn)的低電壓,高性能CMOS 8 位單片機(jī),片內(nèi)含8k bytes 的可反復(fù)擦寫的只讀程序存 儲(chǔ)器(PEROM)和256 bytes 的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM ),器件采用ATMEL 公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn), 與標(biāo)準(zhǔn)MCS-51 指令系統(tǒng)及8052 產(chǎn)品引腳兼容,片內(nèi)置通用8 位 央處理器(CPU)和Flash 存儲(chǔ)單元,功能強(qiáng)大AT89C52 單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場(chǎng)合。 主要性能參數(shù) ·與MCS-
6、51 產(chǎn)品指令和引腳完全兼容 ·8k 字節(jié)可 擦寫Flash 閃速存儲(chǔ)器 ·1000 次擦寫周期 ·全靜態(tài)操作:0Hz24MHz ·三級(jí)加密程序存儲(chǔ)器 ·256 ×8 字節(jié)內(nèi)部RAM ·32 個(gè)可編程I O 口線 ·3 個(gè)16 位定時(shí)計(jì)數(shù)器 ·8 個(gè) 斷源 ·可編程串行UART 通道 ·低功耗空閑和掉電模式 功能特性概述 AT89C52 提供以下標(biāo)準(zhǔn)功能:8k 字節(jié)Flash 閃速存儲(chǔ)器,256 字節(jié)內(nèi)部RAM,32 個(gè)I O 口線,3 個(gè)16位定時(shí)計(jì)數(shù)器,一個(gè)6 向量?jī)杉?jí) 斷結(jié)構(gòu),一
7、個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí),AT89C52 可降至0Hz 的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU 的工作,但允許RAM,定時(shí)計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM 中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個(gè)硬件復(fù)位。2、方案論證 本設(shè)計(jì)采用精密采樣電阻(9歐、0.9歐、0.09歐、0.01歐),電阻精度可達(dá)0.1%可忽略;八位A/D精度為5/256(V);因而除去放大電路增益誤差及線性誤差,電流表精度約為(5/256)/11,約為1.7mA;對(duì)于1000mA的總量程精度可達(dá)0.1%,因而方案可達(dá)設(shè)計(jì)要求。三、系
8、統(tǒng)硬件電路的設(shè)計(jì) 系統(tǒng)仿真接線簡(jiǎn)圖本設(shè)計(jì)中用到AT89C52單片機(jī)、八位ADC AD0832、發(fā)光二極管、六位八段顯示數(shù)碼管LED,通用運(yùn)放 UA741 、PNP管及必要的電阻、電容元件等。系統(tǒng)原理方框圖電路仿真簡(jiǎn)圖如上圖。系統(tǒng)方框圖四、系統(tǒng)程序設(shè)計(jì)程序流程圖如下: 系統(tǒng)程序流程圖C語(yǔ)言程序如下:#include<reg52.h>/包含相應(yīng)的頭文件#include<intrins.h>#include<math.h>#define uchar unsigned char#define uint unsigned intuchar axs6,azs6,ac10
9、,dc6;void ITOAZ(int num,uchar *p); void ITOAX(int num,uchar *p);float U,U1;sbit CS=P34;/定義數(shù)模轉(zhuǎn)換器硬件對(duì)應(yīng)引腳sbit CLK=P35;sbit DO=P36;sbit DI=P37;/*讀寫AD0832函數(shù)*/*/unsigned char ReadADC(unsigned char channel) unsigned char j; unsigned char Temp=0; DI=1; _nop_(); _nop_(); CS=0;/拉低CS端 _nop_(); _nop_(); CLK=1;/拉
10、高CLK端 _nop_(); _nop_(); CLK=0;/拉低CLK端,形成下降沿1 _nop_(); _nop_(); CLK=1;/拉高CLK端 DI=(channel>>1)&0x1; _nop_(); _nop_(); CLK=0;/拉低CLK端,形成下降沿2 _nop_(); _nop_(); CLK=1;/拉高CLK端 DI=channel&0x1; _nop_(); _nop_(); CLK=0;/拉低CLK端,形成下降沿3 DI=1;/控制命令結(jié)束 _nop_(); _nop_(); for(j=0;j<8;j+) /處理讀入8位數(shù)據(jù) CL
11、K=0;_nop_(); Temp=(Temp<<1)|DO; _nop_(); CLK=1; CS=1; CLK=0; DI=1;return(Temp); /返回轉(zhuǎn)換值/*/*/*顯示轉(zhuǎn)換函數(shù)*/*/延時(shí)函數(shù)void delay(uint n)uint a;uchar i;for(a=n;a>0;a-)for(i=0;i<2;i+); /將浮點(diǎn)數(shù)轉(zhuǎn)成函數(shù)void ITOC(float f,uchar *c)float zs,xs;int bxs,bzs,i,k=0;xs=modf(f,&zs); /分離整數(shù)部分與小數(shù)部分函數(shù) if(P3=0XFE) bxs=
12、(int)(xs*100)+0.5); else bxs=(int)(xs*100)+0.5); /小數(shù)點(diǎn)后兩位有效數(shù)字ITOAX(bxs,axs); /把小數(shù)部分轉(zhuǎn)換成字符串存入axs數(shù)組bzs=(int)zs; /把整數(shù)部分轉(zhuǎn)成整型ITOAZ(bzs,azs); /把整數(shù)部分轉(zhuǎn)換成字符串存入azs數(shù)組 for (i=0;axsi!='s'i+) /把最終結(jié)果存入c數(shù)組ci=axsi; ci='.'for(k=0,i=i+1;azsk!='s'k+,i+) ci=azsk; if(U<0) ci='-' else ci=0
13、xff;ci+1='s'/將整型數(shù)轉(zhuǎn)換成對(duì)應(yīng)的void ITOAZ(int num,uchar *p) uchar w,i=0; dow=num%10; /將整型數(shù)各位分離,并轉(zhuǎn)換成對(duì)應(yīng)的字符存入a中pi=w; num=num/10;i+;while(num); pi='s'/將小數(shù)數(shù)部分轉(zhuǎn)換成對(duì)應(yīng)的void ITOAX(int num,uchar *p) uchar w,i=0; dow=num%10; /將整型數(shù)各位分離,并轉(zhuǎn)換成對(duì)應(yīng)的字符存入a中pi=w; num=num/10;i+; while(num); while(i<2) pi=0;i+;
14、pi='s' w=pi;/顯示譯碼函數(shù)void decode(uchar *n,uchar *dn) uchar i;for(i=0; ni!='s'i+) switch( ni) case 0: dni=0x3F;break; case 1: dni=0x06;break; case 2: dni=0x5B;break; case 9: dni=0x6F;break; case 3: dni=0x4F;break; case 4: dni=0x66;break; case 5: dni=0x6D;break; case 6: dni=0x7D;break; c
15、ase 7: dni=0x07;break; case 8: dni=0x7F;break; case 46: dni=0x80;break; case'-':dni=0x40;break; default:dni=0x00;break; dni='s'/*/*/*主換函數(shù)*/*/void main(void)uchar i,j,P2_;float A;while(1)U=ReadADC(0)/256.0;switch(P1)case 0xfe:A=U*10*1.025;break; case 0xfd:A=U*100/1.09;break; case 0xfb: A=U*1000;break; default: A=0.0;break;A=10*A;ITOC(A,ac);decode(ac,dc); P2=0XFf; P2_=0Xfe;for(j=0;dcj!='s'j+) P2=0XFf; P0=dcj; P2=P2_; delay(150); P2_=_crol_(P2_,1); /*P2_<<=1;*/ /*/*/ 五、 調(diào)試及設(shè)計(jì)結(jié)果1、 PROTUSE系統(tǒng)仿真結(jié)果
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 景區(qū)物業(yè)收費(fèi)管理辦法
- 跨層網(wǎng)絡(luò)安全防護(hù)-洞察及研究
- 安全日常安全檢查表
- 電力安全個(gè)人工作總結(jié)
- 網(wǎng)絡(luò)安全技術(shù)培訓(xùn)機(jī)構(gòu)
- 安全生產(chǎn)月心得體會(huì)煤礦
- 老年護(hù)理學(xué)題庫(kù)與參考答案
- 三級(jí)老年人能力評(píng)估師題庫(kù)(附參考答案)
- 綠色建筑施工技術(shù)創(chuàng)新與市場(chǎng)前景分析-洞察闡釋
- 打造全息課堂實(shí)現(xiàn)教育技術(shù)與學(xué)習(xí)體驗(yàn)的雙重升級(jí)
- 冷鐓機(jī) 質(zhì)量要求技術(shù)條件
- 《全國(guó)統(tǒng)一安裝工程預(yù)算定額》工程量計(jì)算規(guī)則
- translated-NCCN臨床實(shí)踐指南:非小細(xì)胞肺癌(中文版2022.V5)
- GB/T 8312-2002茶咖啡堿測(cè)定
- 通信線路工程施工組織設(shè)計(jì)方案【實(shí)用文檔】doc
- 護(hù)士注冊(cè)健康體檢表下載【可直接打印版本】
- 預(yù)計(jì)財(cái)務(wù)報(bào)表編制及分析課件
- 學(xué)生集體外出活動(dòng)備案表
- Q∕SY 1347-2010 石油化工蒸汽透平式壓縮機(jī)組節(jié)能監(jiān)測(cè)方法
- 西門子順序功能圖語(yǔ)言S7-Graph的應(yīng)用
- 中醫(yī)治療室工作制度管理辦法
評(píng)論
0/150
提交評(píng)論