?? ocmprj1.c
字號:
/*****************************************************************
**功能描述: RD2(OC3)輸出比較,單比較匹配模式,電平交替翻轉輸出**
*****************************************************************/
#include "p30f6014.h"
/*系統初始化子程序,放在程序首部*/
void InitializeSys()
{
INTCON1 = 0x0000; //關中斷
INTCON2 = 0x0000;
IEC0 = 0x0000; //IECx中斷禁止
IEC1 = 0x0000;
IEC2 = 0x0000;
}
/*輸出比較模塊配置子程序*/
void ConfigOC3()
{
OC3CON = 0x0000; //Timer2是比較3的時鐘源
OC3R = 0x001a; //設置匹配值0x001a
T2CON = 0x0000; //預分頻1,16位定時器,使用內部時鐘
PR2 = 0x003a; //周期寄存器賦值0x003a,TMR2在0x003a處復位
TMR2 = 0x0006; //TMR2初值0x0006
IFS1bits.OC3IF = 0; //清除輸出比較中斷標志位
IEC1bits.OC3IE = 1; //使能輸出比較中斷
IPC4bits.OC3IP = 7; //設置中斷優先級7
IEC0bits.T2IE = 0; //不使能Timer2定時器中斷
}
/*中斷子程序:輸出比較3中斷,比較匹配時產生中斷*/
void __attribute__((__interrupt__)) _OC3Interrupt()
{
IFS1bits.OC3IF = 0; //清除輸出比較3中斷標志位
}
main()
{
InitializeSys();
ConfigOC3();
T2CONbits.TON = 1; //打開定時器2
OC3CONbits.OCM = 3; //選擇單比較匹配模式,電平交替翻轉輸出
while(1)
{
; //可編寫其它程序
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -