最近博主在學習微控制器的課程,這快到期末考試了,老師讓做個簡單的課設,我看了看老師給的課題,感覺這個比較容易實現,今天下午花了兩個小時左右的時間,把**程式電路圖畫好了,現在分享大家,希望大家批評改正。
實驗器材:**微控制器、按鈕、電阻、pnp型三極體、有源蜂鳴器、共陰極數碼管
實現的功能:
通過按鍵實現倒計時
逐秒倒計時
使用4為一體數碼管顯示時間
時間到發出警報聲,或者在數碼管閃爍顯示0000
程式**:148行程式,不是太長
//盡本人最大的努力,將程式中的每條語句較為詳細的講解
#include
#include
#define uint unsigned int
#define uchar unsigned char
uchar count=
0,minute=
0,second=
3,flag=
0,stop=0;
uchar table[10]
=;//共陰極
uchar disbuf[4]
=;//位選定義乙個四位的陣列,迴圈掃瞄顯示相應的內容
sbit buzzer=p1^0;
//定義微控制器的相應引腳
sbit p1_1=p1^1;
sbit p1_2=p1^2;
void
delay_ms
(uint x)
//延時消抖函式
void
display()
//模組化書寫函式,進行相應的呼叫,實現模組化程式設計
}void
modify_time()
//更改計時器時間的函式,修改初始定時時間
}else
//修改分鐘}}
void
main
(void
)//主函式
}else
display()
;//呼叫顯示函式,依次減一if(
!p1_1)
//判斷更改時間按鍵是否按鍵 進行相應的消抖}}
void
inter1
() interrupt 1
//定時器t0的中斷}}
else}}
}void
inter0
() interrupt 0
//外部中斷0
void
inter2
() interrupt 2
//外部中斷1
工程檔案自取:
提取碼:4qfb
點讚、點讚、點讚
微控制器 定時器 計數器
一 簡述 mcs 51系列微控制器內部有兩個16位定時器 計數器,即定時器t0和定時器t1。它們都具有定時和計數功能,可用於定時或延時控制,對外部事件進行檢測 計數等。定時器 計數器是乙個加 1 計數器,來一脈衝即做加1計數,直至暫存器各位全為1,再來一脈衝,計數器回0且使tf0 定時器t0 tf1...
51微控制器的定時 計數器
實現led燈閃爍,如下 include 51微控制器標頭檔案 sbit led p0 0 定義特殊暫存器p0.0 注意 sbit 必須小寫 p 大寫!void main 在上面的程式中,使用for迴圈來實現延時功能,很簡單,但是存在問題 延時時間不準確 嚴重浪費cpu資源 所以我們要使用微控制器的定...
微控制器實驗彙編案例 計數器實驗
一.實驗要求 8031內部定時計數器,按計數器模式和方式1工作,對p3.4 t0 引腳進行計數。使用8031的t1作定時器,50ms中斷一次,看t0內每0.50ms來了多少脈衝,將其數值按二進位制數在74ls273驅動led燈上顯示出來,5秒後再次測試。二.實驗目的 1.學習8031內部定時 計數器...