51微控制器內部定時器/計數器實驗
51微控制器內部定時器/計數器實驗
一、實驗內容
使用MCS-51內部定時/計數器,定時1秒鐘,CPU運用定時中斷方式,實現每1秒鐘輸出狀態發生一次反轉,即發光管每隔1秒鐘亮一次(P1.7接LED)。
根據實驗內容編寫一個程式,並在實驗儀器上除錯和驗證。
二、模擬圖
三、程式碼
C語言實現:
# include <reg52.h>
# include <intrins.h>
# define uint unsigned int
# define uchar unsigned char
sbit LED=P1^0;
uchar t,temp;
void init();
void main()
{
t=0;
init();
while(1)
{
if(t>=20)
{ t=0;
LED=~LED ;
}
}
}
void init()
{
// 定時器1
TMOD=0x10;//設定定時器1 的工作方式
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
EA=1;//開總中斷
ET1=1;//開定時器1 的中斷
TR1=1;//啟動定時器1;
}
void timr1() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
t++;
}
彙編實現:
TICK EQU 10000 ; 10000 X 100US = 1S
T100US EQU 156 ; 100US時間常數(6M)
C100US EQU 30H ; 100US記數單元
LEDBUF BIT 20H
ORG 0000H
LJMP START
ORG 000BH
LJMP T0INT
ORG 0030H
START: MOV SP, #60H
MOV TMOD, #02H ; 定時器0,方式2
MOV TH0, #T100US
MOV TL0, #T100US
MOV IE, #10000010B ; EA=1, IT0 = 1
SETB TR0 ; 開始定時
CLR LEDBUF
CLR P1.0
MOV C100US, #27H ;#HIGH(TICK)
MOV C100US+1, #10H ;#LOW(TICK)
LOOP: MOV C, LEDBUF
MOV P1.0, C
SJMP LOOP
T0INT: PUSH PSW
MOV A, C100US+1
JNZ GOON
DEC C100US
GOON: DEC C100US+1
MOV A, C100US
ORL A, C100US+1
JNZ EXIT ; 100US 記數器不為0, 返回
MOV C100US, #27H ; #HIGH(TICK)
MOV C100US+1, #10H ; #LOW(TICK)
CPL LEDBUF ; 100US 記數器為0, 重置記數器,取反LED
EXIT: POP PSW
RETI
END
相關文章
- 51微控制器定時器數碼管顯示定時器
- 基於51微控制器的定時器定時器
- 51定時器/計數器齊上陣,借鑑定時器
- 利用定時器實現51微控制器返回上電執行時間功能定時器
- 51微控制器實現數碼管顯示
- 【微控制器彙編實戰】基於51微控制器的搶答器設計
- 51微控制器實現流水燈
- 51微控制器學習歷程(二)快速入門51微控制器
- 51微控制器系列(三)51 微控制器遊戲設計 —— 雙人對戰小遊戲(石頭剪刀布)遊戲設計
- 51微控制器C語言延時函式C語言函式
- 51微控制器彙編教程
- 51微控制器lcd程式碼
- 快速入門51微控制器
- (八)定時計數器
- 51模組_定時器與中斷定時器
- 讀取微控制器內部程式的方法
- 51微控制器學習筆記:連續讀寫STC89C52RC內部EEPROM儲存器筆記
- 51微控制器序列通訊原理
- 關於初學51微控制器
- 51微控制器學習跳轉
- 微控制器學習(六)定時器的使用定時器
- 初學51微控制器--網上教程(51自學網)
- 1、51微控制器實現LED燈的閃爍
- 【黑金ZYNQ7000系列原創視訊教程】04.熟悉ZYNQ內部中斷——內部定時器中斷實驗定時器
- (畢業設計資料)基於微控制器51微控制器智慧藥盒控制系統設計
- 51微控制器亮燈程式(入門)
- C51-------時鐘程式(C語言編寫的微控制器時鐘)C語言
- 51微控制器—矩陣鍵盤-程式碼矩陣
- 一個不用定時器簡易51呼吸燈定時器
- 簡單的51微控制器多工作業系統(C51)作業系統
- Flutter 快速上手定時器/倒數計時及實戰講解Flutter定時器
- 51微控制器程式下載失敗原因排查
- 51微控制器學習資料書籍分享
- 基於51微控制器的矩陣按鍵矩陣
- python、51微控制器、百度ai介面PythonAI
- 51微控制器控制LCD1602模組
- 基於51微控制器的貪吃蛇遊戲遊戲
- 初學51微控制器--場效電晶體