導航:首頁 > 操作系統 > 單片機課程設計實驗報告

單片機課程設計實驗報告

發布時間:2023-03-20 22:55:23

① 51單片機做數字電子鍾

這么復雜的東西給這么少分 暈死了 你也太小氣了吧,分多的話還可能幫你動動腦

② 單片機課程設計(數字時鍾) 麻煩大家不要發鏈接 直接幫我把程序寫過來。

哈哈有個1602顯示的不過程序太長貼不上給你個數碼管的吧不行再聯系

1302.c

#include<DS1302.h>

#include<key.h>

ucharbit_ser[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};

ucharseven_seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

/***********************時間顯示*****************/

voidtimer0_init(void) //T0初始化函數,用於時間的動態顯示

{

TMOD=0x21;

TL0=(65536-5000)%256;

TH0=(65536-5000)/256;

EA=1;

ET0=1;

TR0=1;

}

voidtimer0_isr(void)interrupt1 //T0中斷處理函數

{

charflag; //flag用於表示調整時閃爍的亮或滅

TR0=0;

TL0=(65536-5000)%256;

TH0=(65536-5000)/256;

TR0=1;

flag=x/100*0xff; //設置閃爍標志,如果x大於100則flag為0xff,小於100則為0x00

x++;

if(x>200)

x=0;

switch(i)

{

case0:

P2=bit_ser[0];

if(setflag==3) //根據setflag的值判斷當前位是否需要閃爍

P0=flag|seven_seg[dis_buffer[0]];

else

P0=seven_seg[dis_buffer[0]];

break;

case1:

P2=bit_ser[1];

if(setflag==3)

P0=flag|seven_seg[dis_buffer[1]];

else

P0=seven_seg[dis_buffer[1]];

break;

case2:

P2=bit_ser[2];

if(setflag==2)

P0=flag|seven_seg[dis_buffer[2]];

else

P0=seven_seg[dis_buffer[2]];

break;

case3:

P2=bit_ser[3];

if(setflag==2)

P0=flag|seven_seg[dis_buffer[3]];

else

P0=seven_seg[dis_buffer[3]];

break;

case4:

P2=bit_ser[4];

if(setflag==1)

P0=flag|seven_seg[dis_buffer[4]];

else

P0=seven_seg[dis_buffer[4]];

break;

case5:

P2=bit_ser[5];

if(setflag==1)

P0=flag|seven_seg[dis_buffer[5]];

else

P0=seven_seg[dis_buffer[5]];

break;

}

i++;

if(i>=6)

{

i=0;

if(j==10)

{

j=0;

if(setflag==0)

DS1302_GetTime(&Time); //如果setflag是0,就從1302中讀出時間,因為setflag不是0時,說明處於調整狀態,不需要讀時間

dis_buffer[5]=Time.Second%10; //把當前時間放入顯示緩沖區

dis_buffer[4]=Time.Second/10;

dis_buffer[3]=Time.Minute%10;

dis_buffer[2]=Time.Minute/10;

dis_buffer[1]=Time.Hour%10;

dis_buffer[0]=Time.Hour/10;

}

j++;

}

}

voidmain()

{

Initial_DS1302(Time);

timer0_init();

while(1)

{

set_down();

timer_down();

up_down();

down_down();

beepflag_down();

if(setflag==0&&Time.Hour==romhour&&Time.Minute==romminute&&Beepflag==1) //判斷蜂鳴器是否要響

Beep=!Beep;

}

}

//key.c

#include<reg51.h>

#defineucharunsignedchar

#defineuintunsignedint

uchari=0,j=0,x=0,setflag,flag_set,flag_timer;//setflag用來表示調整的位置,flag_set和flag_timer分別表示當前處於調整狀態還是定時狀態

SYSTEMTIMETime={0,20,15,3,30,6,10}; //系統時間的初始值2010年6月30日星期三,15時20分0秒

chardis_buffer[6]; //存放顯示數據的緩沖區

sbitBeep_flag=P3^2; //蜂鳴器的介面

sbitkey_timer=P3^4; //定時按鈕

sbitkey_set=P3^5; //調整按鈕

sbitkey_up=P3^6; //增加按鈕

sbitkey_down=P3^7; //減小按鈕

charromhour,romminute,romsec; //分別存放定時的時,分,秒

bitBeepflag; //標記鬧鍾是否開啟

//延時函數

voiddelays(ucharx)

{

while(x)x--;

}

//設置鍵的處理函數

voidset()

{

setflag++;

flag_set=1;

if(setflag>=4)

{

setflag=0;

flag_set=0;

Initial_DS1302(Time);

}

}

//定時間的處理函數

voidtimer()

{

setflag++;

flag_timer=1;

if(setflag==1)

{

Time.Hour=romhour;

Time.Minute=romminute;

Time.Second=romsec;

}

elseif(setflag>=4)

{

setflag=0;

flag_timer=0;

romhour=Time.Hour;

romminute=Time.Minute;

romsec=Time.Second;

}

}

//增加鍵的處理函數

voip()

{

switch(setflag)

{

case0:

break;

case1:

Time.Second++;

if(Time.Second>=60)

Time.Second=0;

break;

case2:

Time.Minute++;

if(Time.Minute>=60)

Time.Minute=0;

break;

case3:

Time.Hour++;

if(Time.Hour>=24)

Time.Hour=0;

break;

}

}

//減小鍵的處理函數

voiddown()

{

switch(setflag)

{

case0:

break;

case1:

Time.Second--;

if(Time.Second<0)

Time.Second=59;

break;

case2:

Time.Minute--;

if(Time.Minute<0)

Time.Minute=59;

break;

case3:

Time.Hour--;

if(Time.Hour<0)

Time.Hour=23;

break;

}

}

//設置鍵的掃描函數

voidset_down()

{

if(key_set==0&&flag_timer==0)

{

delays(100);

if(key_set==0)

{

set();

}

while(!key_set);

}

}

//定時鍵的掃描函數

voidtimer_down()

{

if(key_timer==0&&flag_set==0)

{

delays(100);

if(key_timer==0)

{

timer();

}

while(!key_timer);

}

}

//增加鍵的掃描函數

voip_down()

{

if(key_up==0&&setflag!=0)

{

delays(100);

if(key_up==0)

{

up();

while(!key_up);

}

}

}

//減少鍵的處理函數

voiddown_down()

{

if(key_down==0&&setflag!=0)

{

delays(100);

if(key_down==0)

{

down();

while(!key_down);

}

}

}

//定時開關的掃描處理函數

voidbeepflag_down()

{

if(Beep_flag==0)

{

delays(100);

{

Beepflag=!Beepflag;

while(!Beep_flag);

}

}

}

//ds1302.h

#ifndef_REAL_TIMER_DS1302

#define_REAL_TIMER_DS1302

#include<REG51.h>

sbitDS1302_CLK=P1^1;//實時時鍾時鍾線引腳

sbitDS1302_IO=P1^2;//實時時鍾數據線引腳

sbitDS1302_RST=P1^3;//實時時鍾復位線引腳

sbitACC0=ACC^0;

sbitACC7=ACC^7;

sbitBeep=P2^7;

typedefstruct__SYSTEMTIME__

{ charSecond;

charMinute;

charHour;

charWeek;

charDay;

charMonth;

charYear;

}SYSTEMTIME; //定義的時間類型

#defineAM(X) X

#definePM(X) (X+12) //轉成24小時制

#defineDS1302_SECOND 0x80//秒寄存器

#defineDS1302_MINUTE 0x82//分寄存器

#defineDS1302_HOUR 0x84

#defineDS1302_WEEK 0x8A

#defineDS1302_DAY 0x86

#defineDS1302_MONTH 0x88

#defineDS1302_YEAR 0x8C

#defineDS1302_RAM(X) (0xC0+(X)*2) //用於計算DS1302_RAM地址的宏

voidDS1302InputByte(unsignedchard) //實時時鍾寫入一位元組(內部函數)

{unsignedchari;

ACC=d;

for(i=8;i>0;i--)

{ DS1302_IO=ACC0; //相當於匯編中的RRC

DS1302_CLK=1;

DS1302_CLK=0;//發一個高跳變到低的脈沖

ACC=ACC>>1;

}

}

unsignedcharDS1302OutputByte(void) //實時時鍾讀取一位元組(內部函數)

{ unsignedchari;

for(i=8;i>0;i--)

{ ACC=ACC>>1; //相當於匯編中的RRC

ACC7=DS1302_IO;

DS1302_CLK=1;

DS1302_CLK=0;//發一個高跳變到低的脈沖

}

return(ACC);

}

voidWrite1302(unsignedcharucAddr,unsignedcharucDa)//ucAddr:DS1302地址,ucData:要寫的數據

{ DS1302_RST=0;

DS1302_CLK=0;

DS1302_RST=1;

DS1302InputByte(ucAddr); //地址,命令

DS1302InputByte(ucDa); //寫1Byte數據

DS1302_CLK=1;

DS1302_RST=0;//RST0->1->0,CLK0->1

}

unsignedcharRead1302(unsignedcharucAddr) //讀取DS1302某地址的數據

{ unsignedcharucData;

DS1302_RST=0;

DS1302_CLK=0;

DS1302_RST=1;//enable

DS1302InputByte(ucAddr|0x01);//地址,命令

ucData=DS1302OutputByte();//讀1Byte數據

DS1302_CLK=1;//RST0->1->0,CLK0->1

DS1302_RST=0;

return(ucData);

}

voidDS1302_SetProtect(bitflag)//是否防寫

{ if(flag)

Write1302(0x8E,0x80);//WP=1,不能寫入

else

Write1302(0x8E,0x00);//WP=0,可以寫入

}

voidDS1302_SetTime(unsignedcharAddress,unsignedcharValue)//設置時間函數

{ DS1302_SetProtect(0);

Write1302(Address,((Value/10)<<4|(Value%10)));//高4位為十位,低4位為個位

DS1302_SetProtect(1);

}

//獲取時間函數,從DS1302內讀取時間然後存入Time內

voidDS1302_GetTime(SYSTEMTIME*Time)

{ unsignedcharReadValue;

ReadValue=Read1302(DS1302_SECOND);

Time->Second=((ReadValue&0x70)>>4)*10+(ReadValue&0x0F);//轉換成10進制的秒

ReadValue=Read1302(DS1302_MINUTE);

Time->Minute=((ReadValue&0x70)>>4)*10+(ReadValue&0x0F);

ReadValue=Read1302(DS1302_HOUR);

Time->Hour=((ReadValue&0x70)>>4)*10+(ReadValue&0x0F);

ReadValue=Read1302(DS1302_DAY);

Time->Day=((ReadValue&0x70)>>4)*10+(ReadValue&0x0F);

ReadValue=Read1302(DS1302_WEEK);

Time->Week=((ReadValue&0x70)>>4)*10+(ReadValue&0x0F);

ReadValue=Read1302(DS1302_MONTH);

Time->Month=((ReadValue&0x70)>>4)*10+(ReadValue&0x0F);

ReadValue=Read1302(DS1302_YEAR);

Time->Year=((ReadValue&0x70)>>4)*10+(ReadValue&0x0F);

}

//利用STime初始化DS1302

voidInitial_DS1302(SYSTEMTIMESTime)

{ unsignedcharSecond=Read1302(DS1302_SECOND);

if(Second&0x80) DS1302_SetTime(DS1302_SECOND,0);//如果第七為1(表明沒有啟動),則啟動時鍾

DS1302_SetTime(DS1302_SECOND,STime.Second); //設定起始時間

DS1302_SetTime(DS1302_MINUTE,STime.Minute);

DS1302_SetTime(DS1302_HOUR,STime.Hour);

DS1302_SetTime(DS1302_DAY,STime.Day);

DS1302_SetTime(DS1302_MONTH,STime.Month);

DS1302_SetTime(DS1302_YEAR,STime.Year);

DS1302_SetTime(DS1302_WEEK,STime.Week);

}

#endif

③ 實驗報告心得範文

實驗是科學研究的基本 方法 之一。根據科學研究的目的,盡可能地排除外界的影響,突出主要因素並利用一些專門的儀器設備,而人為地變革、控制或模擬研究對象。下面我給大家帶來實驗 報告 心得 範文 ,希望能幫助到大家!

實驗報告心得範文1

經歷了四周共八個學時的焊接學基礎實驗,我覺得自己學到了很多東西,雖然大二的時候自己也在金工實習的時候學過電焊,但是那時候自己對焊接原理是完全不了解,到現在基本學習完了焊接學基礎的理論教學再來做實驗的我感覺輕鬆了,因為我懂得了很多焊接學的原理。也知道了焊接不只是電焊,另外還有氣焊等等。

這四周的焊接學實驗我們總的來說學習了氣焊和電焊,氣焊中也分了對低碳鋼、中碳鋼和高碳鋼的焊接,我們在焊接過程中可以明顯的感覺到對於高中低碳鋼的難易明顯不同!

有一次課程我們學習的是鑄鐵的焊接,對於鑄鐵的流動性也明顯可以感受到比較差!每次體驗實驗之前老師總是給我們介紹實驗需要注意的事項以及實驗內容!通過老師的介紹和之後親身的體驗可以說我們對於每次實驗的內容都有很好的理解和體會。

對於這次的電焊實驗我的記憶尤其深刻,因為在試驗過程中我出現了很多問題,老師總會給我詳細解釋出現問題的原因和這些問題應該怎樣解決,比如有一次的試驗內容是薄板鋼的對接。兩塊薄薄的鋼板,我很認真的擺放在試驗板上焊接,我本以為這是最簡單的焊接了,但是結果卻不如意,當我用平焊的方式把這兩塊鋼板焊接完以後才發現焊接後的鋼板出現了嚴重的變形,原本平的鋼板變得翹起來了!而且由於焊接技術不好使得焊縫很不平整有些地方甚至出現了焊穿的現象,面對這樣的焊接產品我真是無地自容!但是老師給我詳細解釋了出現這些問題的原因,比如鋼板翹起來了是因為焊接過程中的散熱不均勻,這些現象可以用 經驗 解決。對於焊穿的那個窟窿老師握著我的手一點一點的把它填上了,老師告訴我這是由於漢弧太短以及焊接速度太慢造成的!他還鼓勵我別灰心,我特感動!

我十分懊惱自己有一身的理論知識卻還是焊接處這么差的效果,所以我覺得這次的實驗是很必要的,對於我們這些學了很多理論知識的學生來說是很有幫助的,它使得我們看到了自己的差距和經驗的不足,以後需要勤奮的學習的同時多注重實際的運用,這樣才應該是全面實際的應用型人才!

實驗報告心得範文2

透過這次實驗,我大開眼界,正因這次實驗個性是回轉機構振動測量及譜分析和懸臂梁一階固有頻率及阻尼系數測試,需要用軟體編程,並且用電腦顯示輸出。能夠說是半自動化。因此在實驗過程中我受易非淺:它讓我深刻體會到實驗前的理論知識准備,也就是要事前了解將要做的實驗的有關質料,如:實驗要求,實驗資料,實驗步驟,最重要的是要記錄什麼數據和怎樣做數據處理,等等。雖然做實驗時,指導老師會講解一下實驗步驟和怎樣記錄數據,但是如果自己沒有一些基礎知識,那時是很難作得下去的,惟有胡亂按老師指使做,其實自己也不知道做什麼。

在這次實驗中,我學到很多東西,加強了我的動手潛質,並且培養了我的獨立思考潛質。個性是在做實驗報告時,正因在做數據處理時出現很多問題,如果不解決的話,將會很難的繼續下去。例如:數據處理時,遇到要進行數據獲取,這就要求懂得labview軟體一些基本操作;還有畫圖時,也要用軟體畫圖,這也要求懂得e_cel軟體的插入圖表命令。並且在做回轉機構振動測量及譜分析實驗,獲取數據時,注意讀取波形要改變采樣頻率,等等。當然不只學到了這些,那裡我就不多說了。

還有動手這次實驗,使測試技術這門課的一些理論知識與實踐相結合,更加深刻了我對測試技術這門課的認識,鞏固了我的理論知識。

但是這次實驗雖好,但是我認為它安排的時刻不是很好,還有測試技術考試時刻,正因這些時刻安排與我們的課程設計時刻有沖突,使我不能專心於任一項,結果不能保證每一個項目質量,因此如果有什麼出錯請指出!

實驗報告心得範文3

在第一學期的專業導論課程之後,我們初步認識了船舶與海洋工程這個專業,所以在這個學期,我們脫離幻燈片,脫離那些圖片,文字,看到了真正的實驗室,船舶就是這樣造出來的。每個星期的星期四下午,兩點開始,拖著尚未完全清醒的身體,我們遊走於各個實驗室,聽老師娓娓道來,每一個實驗室的 故事 ,每一個實驗室的作用。這是上個學期專業導論之後,在我看來,應該是一次實踐吧,我們更進一步了解了我們的專業,雖然其中老師說的很多專業名詞我還是沒有聽懂,但是認真聽聽還是會覺得,我有再進一步了解了這個專業,可是說專業導論的延續外加實踐。

前幾個星期,我們在性能實驗室中聽老師介紹了一些有關船性能方面的知識,參觀了大型船模拖曳水池,大型深淺操縱水池,當時還看見學長學姐在做實驗來著,估計過一年兩年就到我們了吧。雖然這些實驗室現在看起來有些陳舊,雖然我們現在看見的只是一些鋼啊,鐵啊,水槽啊,更加確切一些的說,我們看到的是一些生了銹的鋼鐵,還有感覺裡面很臟的水槽,可是這些實驗室里東西當年可都是國內很先進的實驗室裝備,大型船模拖曳水池:1,深淺兩用,且能作船隊試驗,在國內獨具特色;2,大型深淺操縱水池:為亞洲人工操縱水池之最;3,具有國內先進水平的造船工藝與設備實驗室,其「肋骨冷彎機器人」實驗設備為國際水平;4,大型結構試驗平台與完備的靜力、動力載入與分析系統國內同類高校第一;5,循環水槽、風洞、24單元造波機、計算機工作站及相關軟體等高水平研究平台。這些實驗室都是研究船體性能,船舶性能,廣義上指船舶各種性能的總和;狹義上指船舶靜力性能和動力性能的概括。狹義的船舶性能與船舶的主要尺寸、形狀及載裝情況等有密切關系。在理論研究中,以流體靜力學為基礎研究船舶在不同條件下的浮性、穩性及抗沉性等,以流體動力學為基礎研究船舶的快速性、適航性及操縱性等,這些都是船舶最基本的性能。聽完之後真的覺得船舶也是一樣很神奇的東西,在那樣的風浪中,居然還可以載著這么多的物品航行,另外那些軍艦什麼的更是厲害了,這么大的體積還可以有這么快的速度,不禁對造船工作者肅然起敬,克服了這么多的阻力,造出這么厲害的船舶。接下來,我們參觀了有關船舶構造的實驗室,構造決定性能,所以船舶的構造可以說是相當於人的身體一樣,皮相當於船殼,骨頭相當於船體骨架等等,都是一一對應很重要的。通過老師講述,我們初步了解到一般船舶是由船殼、船體骨架、甲板、船艙和上層建所組成。船殼又稱船殼板,船的外殼,它包括船側板和船底板。船體的幾何形狀是由船殼板的形狀決定的。船體承受的縱向彎曲力、水壓力、波浪沖擊力等各種外力首先作用在船殼板上。船體骨架是由龍骨、旁龍骨、肋骨、龍筋、舭龍骨、船首柱和船尾柱構成,它們共同組成了船舶骨架。甲板位於內底板以上的平面結構,用於封蓋船內空間,並將其水平分隔成層。甲板是船樑上的鋼板,將船體分隔成上、中、下層。甲板對保證船體強度及不沉性有重要作用,而且提供了布置各種艙室、安置武器裝備和機械設備的面積。甲板數量多少視船舶的大小,取決於艦艇的類型、使命和主尺度。通常小型艦艇有1~3層;中型艦艇有3~5層;大型艦艇有5~_層。船艙是指甲板以下的各種用途空間,包括船首艙、船尾艙、客艙、貨艙、機艙、鍋爐艙和各種專門用途船艙。上層建築是指主甲板上面的建築,上層建築位於上甲板圍成、主要用於布置各種用途的艙室,如工作艙室、生活艙室、貯藏艙室、儀器設備艙室等。供船員工作起居及存放船具。上層建築部分有首樓、橋樓、尾樓、甲板室及各種圍壁建築。當然,以上大多是我上網查的,老師雖然向我們做了介紹,但不至於這么詳細。

然後就是給我印象最深刻的船舶操作的輪機實驗室了,輪機實驗室的老師很負責的在介紹船上有什麼設備,分別是什麼作用,雖然我們是船舶與海洋工程,不是輪機工程,按道理來說我們更關注的應該是船舶構造,但是我們還是聽得很有意思。輪機綜合實驗室主要系統有:主推進系統,船舶管系,船舶電站系統,機艙自動化系統,柴油機數字化監測與診斷系統。其中我們詳細認識了船舶管系,有機艙燃油系統,機艙潤滑油系統主海水和主淡水管系,壓縮空氣系統,機艙艙底水,壓載水,消防水系統。首先向我們介紹的是機艙燃油系統,船上一般有柴油和燃油當然還有潤滑油,老師在這里提出了一個問題,為什麼不用汽油而是用柴油呢?汽油要點燃,柴油是壓燃,為了安全起見所以選用柴油。離岸的時候耗能量少,靠岸的時候耗能量多,原因是靠岸的時候需要調用多種系統,但是離岸的時候就不用這么多,所以靠岸的時候耗能量比較多。還有我們了解到原來還有重油和輕油之分,重油通過管道的時候要加熱,這樣才能順利在管道中遊走,否則就會凝固在管道中,所以在離岸的時候通常是用重油,在靠岸的時候通常用輕油,為的是保護機器,如果用了重油,凝固在管道中將為下次啟動帶來很大的麻煩。接下來介紹的是主海水和主淡水系統,這個系統主要是為了冷卻機器。為什麼還分海水和淡水,原來海水中鹽含量高,容易腐蝕機器,於是要把海水先進行淡化,首先我們想到的是鹽水分離,但是老師說這樣鹽分還是太高了,最後他告訴我們,一般來說,是用蒸餾這種方法將鹽水轉化成淡水。冷卻本來目的是要帶走能量的,但是柴油機主要靠獲得高溫來為系統提供能量,如果能量被都帶走了,那就不符合經濟效益,所以是用高溫淡水對機器進行降溫。高溫淡水用完之後鹽水再對其進行降溫,之後循環利用,達到降溫目的。油水系統介紹完畢後,我們看到壓縮空氣系統,壓縮空氣系統,顧名思義是通過空氣壓縮機來產生的熱量,供其他部件使用。

最後我們簡單了解了一下船舶種類,通常按用途分類:一般運輸船舶客船、雜貨、散貨等。專用運輸船舶集裝箱船、木材船、滾裝船、冷藏船、油船、液化天然氣船等。多用途船舶礦散、礦油等。特種用途船科考、破冰、救助等。其中我們最感興趣的當然就是豪華游輪,超級豪華游輪通常是指排水量在_0,000噸以上的超級游輪,截止到20_年年底,這樣的超級游輪已經超過15艘,其中的游輪要數20_年12月進行處女航的皇家加勒比郵輪公司的「海洋綠洲」號。該游輪長約360米,寬約47米,吃水線以上高約65米,共16層甲板,設有2700間客艙,能搭載搭載6360名乘客及2160名船員。排水量22.5萬噸,被譽為「活動城市」。真是非常嚮往這樣的超級豪華游輪!

此次的認知實驗我收獲了很多,從以前到現在任何科研無一不是經過實驗的驗證的,也可以說,實驗是檢驗理論的標准,作為一名大學生,我們決不能容忍自己讀死書,死讀書,只是在理論上去分析而缺乏實踐,我相信,只要我們肯動手動腦,再輔之以勤奮和堅持,必能不斷提高我們的實干能力,必能不斷的創新,為我國的造船事業發展與進步貢獻自己的一份力量。

實驗報告心得範文4

高校實驗室是培養高層次人才和開展科學研究的重要基地。在西方發達國家,學校對培養學生的動手能力是十分重視的,這一問題近年來也越來越受到我國 教育 界人士的廣泛重視。為了提高學生的動手能力,讓學生做相關實訓並完成單片機實驗報告,在實驗的形式上注重培養學生的實驗技能和動手能力。從單片機實驗心得中學生就可以 總結 出大量的經驗以適應當代社會的發展。

學習單片機這門課程,要掌握單片機指令系統中匯編語言各種基本語句的意義及匯編語言程序設計的基本知識和方法,以及單片機與其他設備相連接的輸入輸出中斷等介面技術。使學生從硬體軟體的結合上理論聯系實際,提高動手能力,從而全面掌握單片機的應用。

實驗教學的全過程包括認識、基礎、綜合3個階段。以往的單片機實驗是進行軟體的編制和調試,與實際應用中的硬體電路相脫節。使學生缺乏硬體設計及調試分析能力,對單片機如何構成一個單片機最小應用系統,缺乏認識。單片機實驗板,通過計算機連接模擬器在實驗板上把硬體和軟體結合起來一起調試,

軟體的修改也非常方便,軟體和硬體調試都通過後,把程序固化在eprom當中,插上8051單片機構成一個完整的單片機應用系統。

一、單片機實驗板的構成及基本功能

單片機實驗板,它由8031、8155,eprom2764,ma_232鍵盤及 顯示器 組成。其中8155片內有256個ram單元,接6個7段碼顯示器和8個按鍵作輸入。串列口連接ma_232串列口轉換晶元,p1口留出作為一些控制量的輸入輸出用以擴展使用。在實驗板上可編寫鍵盤掃描程序、顯示程序、時間的設定及計時程序、從鍵盤上輸入兩個加數或減數顯示結果程序、位變數的邏輯運算程序及串列口和上位機通訊程序等,還可和 其它 課程相結合,進行實驗。例如,《電子測量》課程中各種頻率的測量,可通過8031單片機p1口輸入被測量,由單片機來進行檢測和顯示,把幾門課程結合在一起學習,使課程有延續性,也提高了學生學習的積極性。由於p1口通過插座引出,也可外部擴展a/dd/a等其他介面晶元,以構成新的應用系統。

二、單片機實驗板的衍生功能

此單片機實驗報告中的實驗板是一個單片機應用系統的硬體電路。有鍵盤輸入和顯示輸出,在這個基礎電路上通過p1口對不同檢測或控制對象還可衍生出各種應用來。例如:時間的設置及顯示、溫度的檢測及控制等,在此實驗板上,編寫相應的軟體即可,否則,只在計算機上模擬調試軟體,則無法了解單片機介面中各種控制信號的使用。還可幫助學生學會分析問題和解決問題的能力。這在單片機實驗報告中都要體現出來。

實驗報告心得範文5

_月_日,在學院理事會辦公室主任__的帶領下,學院財務、審計、教務及各系實驗室負責人一行,奔赴__水利職業技術學院,就實踐教學、實驗室建設、 財務管理 等方面的先進經驗進行交流學習。

此次參觀學習的黃河水利職業技術學院為國家示範性高等職業院校,辦學特色鮮明,人才培養聚焦應用型、復合型,實驗實訓條件完備,緊密貼合行業企業需求。機電工程系是學院重點建設系部之一,共開設機電一體化技術、工程機械運用與維修、機械設計與製造、汽車檢測與維修技術、數控技術、模具設計與製造等六個專業。在校生1944餘人,計60個教學班級。教學設備先進,實驗實訓條件優越,有電工、電子、液壓傳動、自動檢測、自動控制、CAD/CAM、PLC、電機與拖動等近十個專業實驗室,有可編程式控制制室、模具設計與工藝編程演練室、機加工中心和數控加工中心等專業實訓中心。通過與(來自:ACT)、PE2400型PCR儀、GENEGENIUS全自動凝膠成像及分析系統。許多儀器多帶自動進樣裝置,只要在計算機上設好數據就可自動工作,很省事。中心最忙的地方是前處理室。現在儀器分析的化學的發展方向是前處理,在這兒我有了這個認識。在這兒給我留下的印象就是設備先進管理嚴格,人員素質高。

_月_號我們參觀了陝西農業廳農葯檢驗檢定所。工作也比較簡單主要是依照國家制定的標准檢驗檢測農葯是否合格或接受委託檢測果蔬類的農殘是否超標。這項工作也要求工作人員嚴謹求實負責任的態度,每一項數據都關繫到農民或企業根本利益。在本系校友帶領講解下,我們先後參觀了液相色譜儀和高效氣相色譜儀,氣質連用色譜儀,及前處理室,遇到不明白地方都得到詳細的解釋。接著單位領導在會議廳給我們詳細介紹了單位的管理制度,使我們對事業單位管理機制有了一定了解。還有這兒每年要接受國家的檢驗,確定盲樣所含那幾種農殘及其含量。這是一項復雜的工作,不是一個剛 畢業 的本科生能夠作到的,需要一定的工作經驗專業知識。我深刻體會到了我知識的不足,及專業知識應用到實踐的能力。

_月_日我們參觀實習了環境監測站。環境監測站是國家一級監測站,負責對空氣水污染的檢察監測,下設三個地方站。這兒有很多職員是西大的校友。在校友前輩的陪同帶領下參觀了水污染幾空氣污染處理室。通過校友的介紹了解到如今國家對環保工作越來越支持,他們的試驗條件和十年前有了很大改善試驗條件及設備越來越好。

_月_日,我們到了最後一站到了集團有限公司,這是我們此次實習的一家企業。集團有限公司是年8月由原__省____總廠整體改制而成的省屬國有大型化工企業,同年由集團公司控股,聯合11家投資單位共同發起設立了股份有限公司。公司佔地面積_7萬平方米,現有員工3600餘人,總資產12.5億元,注冊資本4.1億元。年產合成氨20萬噸、尿素30萬噸,硫酸15萬噸、磷酸二銨14萬噸,甲醇3萬噸,三元素復合肥5萬噸, 編織 袋_00萬平方米。以前以為生產化肥尿素沒什麼值得參觀的,到了廠里我發現我錯了,生產尿素遠沒有我認識的那麼簡單,不是一簡單的方程式,生產過程涉及到很多化學知識。紙上得來終覺淺,絕知此事要躬行。」在短暫的實習過程中,我深深的感覺到自己所學知識的膚淺和在實際運用中的讓我感到非常的難過。在學校總以為自己學的不錯,一旦接觸到實際,才發現自己知道的是多麼少,這時才真正領悟到「學無止境」的含義。這不是我一個人的感覺。我們依次參觀了沼氣車間,合成車間,控制室,及廠里的實驗室最後到了尿素合成車間。一進廠,廠里的校友就一再向我們強調安全問題。廠里在一些顯眼位置都有 安全生產 的 標語 ,還有考查崗位的工作情況,一些在崗位上打盹,或精神不振被點名批評,的確安全生產是第一位。進入公司企業後不能再自由散漫了。

經過短暫的四天實習使我獲益不淺。第一,使我深刻地體會到,無論我們在學校所學到的書面知識多麼深厚,理論掌握的多麼牢固,最重要的還是要聯系操作聯系生產實際,需要有一定的實踐動手能力,操作能力,同時還需要有發現問題、分析和解決實際問題的能力,這樣才能適應生產發展的需要;第二,使我積累了一定的生產工作經驗,認清了就業方向及就業特點;第三,通過這次生產實習,使自己認識到我自身的不足,爭取在未來通過努力學習,是自己各方面的能力得到提高,進一步完善自己提高自身素質;第四,通過這次生產實習,使我眼界得到了拓寬,學會了很多課本外的知識。希望以後還能有更多的生產實習機會,讓我們更好地鍛煉自己,在實踐中提高自己的能力。

作為一名學生,我想學習的目的不在於通過結業考試,而是為了獲取知識,獲取工作技能,換句話說,在學校學習是為了能夠適應社會的需要,通過學習保證能夠完成將來的工作,為社會作出貢獻。

幾天的實習期很快就過去了,美好的東西總是稍縱即失。在此,我要感謝所有為我的實習提供幫助和指導的領導老師們,感謝你們這么多天的照顧和幫助。相信這次珍貴的實習經歷會一直伴隨著我以後的工作生活。千里之行,始於足下,我會通過這次實習,更加懂得知識和實踐的積累,不斷充實自己。

實驗報告心得範文相關 文章 :

★ 實驗報告心得體會範文3篇

★ 個人實驗報告心得體會優秀範文

★ 實驗報告心得體會

★ 實訓報告心得體會6篇

★ 實訓報告心得體會範文大全

★ 實訓報告心得體會範文3篇

★ 實驗報告總結範文

★ 實訓報告總結範文5篇

★ 實訓心得範文精選五篇

★ 實驗報告的總結怎麼寫

④ 51單片機設計0~99秒的工作原理

51單片機設計0~99秒的工作原理,單片機的工作原理與計算機CPU的工作原理是一樣知或帶的,主要是利用片內的半導體存儲器存放用戶的程序和數據,單片機的核心中央微處理器CPU中有指令寄存器、指令解碼器,程序計數器等部件,由程序計數器尋找下一條要執行的指令,找到後,將指令送給指令寄存器,再由指令解碼器翻譯執行該指令,完成對指令功能的操作。 一句話:單片機的工作就是不斷地取指令、分析指令、執行指令的循環過程。按預先編寫的程序執行,以達到用戶期待的結果。 單片機主要用途是做生產設備的控制器,做智能儀表的核心部件,由於單片機搭蘆體積微小,可以植入任何團改一個設備和儀表當中,因此它也是嵌入式技術的核心部件。

⑤ 求單片機課程設計用8255A控制交通燈的報告,謝了

單片機交通燈課配檔談程設計主要做培碰了如下幾方面的工作:一是確定系統交通控制的總體設計,包括,十字路口具體的通行禁行方案設計以及系統應擁有的各項功能,二是進行感測器的硬體電路、顯蠢則示電路等的設計和基本功能要求。

⑥ 高分求單片機課程設計報告

手邊有一些你需要的關於單片機的論文設計資料 需要的話加QQ 晚上7點以後隱身在線,直接加就行,說明要的資料名字就好。嘿嘿 樓主 要是覺的好的話 可別忘了給分哦。

⑦ 利用51單片機,4個數碼管設計一個計時器,要求在數碼管上顯示的數據從0開始每1秒鍾加1。

共陽數碼管中斷程序:

#include<reg52.h>

#define uint unsigned int

#define uchar unsigned char

uchar code table[]=

{

0xc0,0xf9,0xa4,0xb0,

0x99,0x92,0x83,0xf8,

0x80,0x90,0x88,0x83,

0xc6,0xa1,0x86,0x8e};

uint num,a;

uchar ,shi,ge;

void init();

void delay(uint);

void display(uchar,ucharshi,ucharge);

uint fb();

uint fs();

uint fg();

void main()

{

init();

while(1)

{

display(fb(),fs(),fg());

}

}

void init()

{

num=0;

a=0;

TMOD=0x01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

}

void display(uchar,ucharshi,ucharge)

{

P1=0xfd;

P0=table[];

delay(1);

P1=0xfb;

P0=table[shi];

delay(1);

P1=0xf7;

P0=table[ge];

delay(1);

}

void timeoff() interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65526-50000)%256;

a++;

if(a%20==0)

{

num++;

if(num==999)

{

num=0;

}

}

}
void delay(uint z)
{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

uint fb()

{

=num/100;

return ;

}

uint fs()

{

shi=num%100/10;

return shi;

}

uint fg()

{

ge =num%100%10;

return ge;

}

(7)單片機課程設計實驗報告擴展閱讀

2個可編程定時/計數器·5個中斷源,2個優先順序(52有6個)

一個全雙工串列通信口

外部數據存儲器定址空間為64kB

外部程序存儲器定址空間為64kB

邏輯操作位定址功能·雙列直插40PinDIP封裝

單一+5V電源供電

CPU:由運算和控制邏輯組成,同時還包括中斷系統和部分外部特殊功能寄存器;

RAM:用以存放可以讀寫的數據,如運算的中間結果、最終結果以及欲顯示的數據;

ROM:用以存放程序、一些原始數據和表格;

I/O口:四個8位並行I/O口,既可用作輸入,也可用作輸出

T/C:兩個定時/記數器,既可以工作在定時模式,也可以工作在記數模式;

五個中斷源的中斷控制系統;

一個全雙工UART(通用非同步接收發送器)的串列I/O口,用於實現單片機之間或單片機與微機之間的串列通信;

片內振盪器和時鍾產生電路,石英晶體和微調電容需要外接。最佳振盪頻率為6M—12M。

參考資料來源:網路-51單片機



閱讀全文

與單片機課程設計實驗報告相關的資料

熱點內容
77電影網 瀏覽:67
在線可以觀看的網站 瀏覽:827
電梯日本電影 瀏覽:73
有部電影裡面有兩個人一個拿白色光劍 瀏覽:63
程序員如何自行車通勤 瀏覽:213
打開文件夾一直彈出新的窗口win10 瀏覽:475
外出2015孫藝珍完整板 瀏覽:409
男主角叫奧斯丁的電影 瀏覽:901
linux殺進程命令 瀏覽:597
主角叫秦天系統小說 瀏覽:703
韓國倫理游泳池 瀏覽:6
電影殺手為小男孩改名叫林默 瀏覽:373
現代道士電影 瀏覽:263
tcltkpdf 瀏覽:309
台灣四級論理電影 瀏覽:578
以肉為主yy小說txt下載 瀏覽:727
俄羅斯穿越電影 瀏覽:485
韓國《奇怪的美發沙龍》中文 瀏覽:137
建行app怎麼調成日間模式 瀏覽:666
穿越皇帝當種馬 瀏覽:48