?? 4051.c
字號:
//-----------------------函數聲明,變量定義--------------------------------------------------------
#include <reg51.h>
#include <intrins.h>
sbit sel_A = P1^1;
sbit sel_B = P1^2;
sbit sel_C = P1^3;
unsigned char ABC;
void timer_set(); //定時器初始化函數
void collection_data(); //采集函數聲明
#define delayNOP(); {_nop_();_nop_();_nop_();_nop_();}; //--------------------------------------------------------------------------------------------------
#define on_system_interrupt(); {EA=1;}; // 打開系統中斷允許,與硬件有關
#define off_system_interrupt(); {EA=0;}; // 關閉系統中斷允許,與硬件有關
//-------------------------------------------------------------------------------------------------------
// 函數名稱: timer_set
// 功能說明: 設置定時器工作狀態,與硬件有關
//--------------------------------------------------------------------------------------------------------
void timer_set()
{
TMOD=0x22; //定時器1為工作模式2(8位自動重裝),0為模式2(8位自動重裝)
PCON=0x00;
TH0=(256-100); //100微秒定時
TL0=TH0;
ET0=1;
}
//-------------------------------------------------------------------------------------------------------
// 函數名稱: IntTimer0
// 功能說明: 定時器中斷函數,與硬件有關,但不做處理,直接調用通用中斷處理函數
//--------------------------------------------------------------------------------------------------------
void IntTimer0() interrupt 1
{
off_system_interrupt();
ABC++;
sel_A=ABC&0x01;
sel_B=ABC&0x02;
sel_C=ABC&0x03;
delayNOP(); //定時消除抖動
collection_data();
on_system_interrupt();
}
//-------------------------------------------------------------------------------------------------------
// 函數名稱: collection_data
// 功能說明: 數據采集子函數,與具體應用有關
//--------------------------------------------------------------------------------------------------------
void collection_data()
{
}
//-------------------------------------------------------------------------------------------------------
// 函數名稱: collection_data
// 功能說明: 數據采集子函數,與具體應用有關
//--------------------------------------------------------------------------------------------------------
void main()
{
timer_set();
on_system_interrupt();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -