數(shù)字電壓表實訓報告_第1頁
數(shù)字電壓表實訓報告_第2頁
免費預覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

PAGE5/NUMPAGES5數(shù)字電壓表實訓報告數(shù)字電壓表實訓報告

一、實訓目的

1、設計電路圖,根據(jù)電路圖焊接電路。

2、通過把設計好的程序利用軟件將編譯得到HEX格式文件加載到單片機芯片中,實

現(xiàn)仿真電路,得到仿真電路結(jié)果。

二、實訓要求

1、選擇課題,獨立完成電路的焊接和程序的編寫與調(diào)試工作。

2、數(shù)碼管準確顯示電壓表上電壓值,誤差允許在+0.05。

3、具有高于或低于某值時的報警功能。

4、準確計時,以數(shù)字形式顯示時、分、秒的時間。

5、具有校正時間功能(即調(diào)整時間)。

6、結(jié)合理論知識分析在焊接電路和調(diào)試程序過程中出現(xiàn)的問題,并及時解決相應問題。

7、可以到圖書館查閱參考資料。

8、認真完成實驗課題。

三、實訓儀器

電腦,Keil軟件,Proteus軟件

四、實訓器材

晶振、電容、電阻、按鍵、單片機、數(shù)碼管、電烙鐵、烙鐵架、焊錫、電路板、實驗配套工具

五、實訓仿真電路與程序

(一)數(shù)字電壓表仿真電路

(一)數(shù)字電壓表仿真程序

#include

sbitP20=P2^0;

sbitP21=P2^1;

sbitP22=P2^2;

sbitP23=P2^3;

sbitad_st=P2^5;

sbitad_eoc=P2^6;

sbitad_oe=P2^7;

sbitP30=P3^0;

sbitP31=P3^1;

unsignedintcounter,i;

unsignedintDYZ;

unsignedintdis_code[11]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsignedintdis_buf[4];

voidAdc_chushi();//初始函數(shù)申明

voiddelayms(unsignedcharms)//延時子程序

{

unsignedchari;

while(ms--)

{

for(i=0;i45000)

P30=0;

elseP30=1;

if(DYZ

#defineucharunsignedchar

#defineuintunsignedint

ucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};sbitP3_0=P3^0;//位定義

sbitP3_1=P3^1;

sbitP3_2=P3^2;

sbitP3_3=P3^3;

sbitP3_4=P3^4;

sbitP3_5=P3^5;

sbitP3_6=P3^6;

sbitP3_7=P3^7;

sbitKEY2=P1^0;

sbitKEY3=P1^1;

sbitKEY4=P1^2;

unsignedcharM;//全局變量定義,M是模式

unsignedcharsecond,minute,hour;

unsignedcharcount;

voiddelay()//延時函數(shù)

{

uinti;//局部變量i

for(i=0;i=59)

{

second=0;

minute++;

if(minute>=59)

{

minute=0;

hour++;

if(hour>=24)

{

hour=0;

minute=0;

second=0;

}

}

}

}

ET0=1;//定時器0開中斷

TR0=1;//啟動定時器0

}

voidDisplay(unsignedcharhour,unsignedcharminute,unsignedcharsecond){

P0=table[hour/10];//顯示時的十位

P3_0=0;

delay();

P3_0=1;

P0=table[hour%10];//顯示時的個位

P3_1=0;

delay();

P3_1=1;

P0=0x40;//顯示“-”

P3_2=0;

delay();

P3_2=1;

P0=table[minute/10];//顯示分的十位P3_3=0;

delay();

P3_3=1;

P0=table[minute%10];//顯示分的個位P3_4=0;

delay();

P3_4=1;

P0=0x40;//顯示“-”

P3_5=0;

delay();

P3_5=1;

P0=table[second/10];//顯示秒的十位P3_6=0;

delay();

P3_6=1;

P0=table[second%10];//顯示秒的個位P3_7=0;

delay();

P3_7=1;

}

voidAnjian()

{

if(KEY2==0)

{

delay();//延時去抖

if(KEY2==0)//按K2進行模式切換{

M++;

if(M==3)M=0;

}

while(!KEY2);//等待按鍵釋放

}

if(M!=0)

{

switch(M)

{

case1://模式--調(diào)時

{

if(KEY3==0)

{

delay();//延時去抖

if(KEY3==0)//加鍵按下

{

hour++;//時加1

if(hour==24)hour=0;

}

while(!KEY3);//等待按鍵釋放

}

if(KEY4==0)

{

delay();

if(KEY4==0)

{

hour--;//時減1

if(hour==00)hour=24;

}

while(!KEY4);

}

}

break;

case2://模式--調(diào)分

{

if(KEY3==0)

{

delay();

if(KEY3==0)

{

minute++;//分加1

if(minute==59)minute=00;

}

while(!KEY3);

}

if(KEY4==0)

{

delay();

if(KEY4==0)

{

minute--;//分減1

if(minute==00)minute=60;

}

while(!KEY4);

}

}

break;

}

}

}

voidmain()

{

TMOD=0x01;//選擇定時計數(shù)器工作方式1

TH0=(65536-50000)/256;//裝載計數(shù)初值,每次定時50ms

TL0=(65536-50000)%256;

M=0;

count=0;//中斷次數(shù)為0

EA=1;//中斷允許控制

ET0=1;//定時器0開中斷

TR0=1;//啟動定時器0

hour=10,minute=10,second=10;//開機顯示10-10-10

while(1)

{

Display(hour,minute

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論