題目:通過外部中斷
0,觸發乙個延時過程,假定延時時間為
1秒,延時期間可以點亮乙個
led或讓蜂鳴器發出聲音。已知微控制器晶振頻率為
6 .00mhz
問題:上面的方法可以完成乙個「重複觸發問題」,即定時時間沒有到的時候又來乙個觸發訊號,應該怎麼辦?
解:對於「重複觸發問題」,單片及不響應外部中斷。
硬體電路:
實驗程式: //
程式說明,外部中斷服務程式的工作是
:禁止外中斷,啟動定時器
0,允許定時//器
0中斷,
led1
(p1.0
口)取反。 //
定時器中斷服務程式的工作是:過載
th0和
tl0的初值,延遲
3s後,關閉定
//時器
0,禁止定時器
0中斷,允許外部中斷,
led進入滅狀態。 //
主函式設定定時器
0的工作模式,外中斷的觸發模式(本實驗使用的是脈衝觸
//發),允許總中斷和外中斷。
//yzxled.h
#include
sbit led1=p1^0;
#define on 1
#define off 0
#define reloadth0 0x3c
#define reloadtl0 0x0b0
typedef unsigned char uchar;
uchar time=0,delaytime=10;
//yzxled.c
#include "yzxled.h"
void inter1(void) interrupt 0 using 1
void time0(void) interrupt 1 using 2 }
void main()
實驗結果:程式執行後,
led燈進入滅狀態。當有外部脈衝進入
p3.2
口時,led
燈進入亮狀態。在
led燈亮的期間,再次給
p3.2
口送入一脈衝,
led燈依舊亮,說明程式沒有響應外中斷,因為如果響應外中斷
0服務程式,
led
應該進入滅狀態。定時結束後,
led燈進入滅狀態,程式等待下次外中斷。
中斷和定時器實驗
實驗五 中斷和定時器實驗 姓名 鄭旅軍學號 0656061 指導老師 鄒慧蘭成績 如有疑問,請zlj800800 163.com 題目 通過外部中斷0,觸發乙個延時過程,假定延時時間為1秒,延時期間可以點亮乙個led或讓蜂鳴器發出聲音。已知微控制器晶振頻率為6 00mhz。可以使用定時器中斷,也可以...
定時器中斷實驗
常用庫函式 定時器引數初始化 void tim timebaseinit tim typedef timx,tim timebaseinittypedef tim timebaseinitstruct typedef struct tim timebaseinittypedef 定時器使能函式 vo...
定時器中斷實驗
今天看了並實際做了一次正點原子的定時器中斷實驗,實驗結果並不重要,這部分教程的意義在於讓我們學會如何去配置乙個定時器中斷。想要使用定時器中斷,我們要進行各種配置,將它們整合到乙個初始化函式裡,在這個函式中我們要做的事主要有 1.定義nvic和定時器初始化的結構體。2.使能定時器時鐘。3.配置nvic...