我的编译器HI-TECH 9.83
MPLAB IDE V8.92
#include "pic.h"
__CONFIG(FOSC_INTOSC&MCLRE_OFF&WDTE_OFF); //配置位,参考芯片头文件
#define p_led0 LATAbits.LATA2
#define p_led1 LATAbits.LATA1
bit f_led;
//-------------------------------------------------------------------------------
// 系统初始化
//-------------------------------------------------------------------------------
void System_Init(void)
{
OSCCON=0b01100000; //内部8M
LATA = 0b00000000;
TRISA = 0b00000000;
OPTION_REGbits.T0CS = 0;
OPTION_REGbits.PSA = 0;
OPTION_REGbits.PS = 0b000;
INTCONbits.TMR0IE = 1;
INTCONbits.GIE =1;
INTCONbits.PEIE = 1;
}
//-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------
// 中断程序
//-------------------------------------------------------------------------------
void interrupt SystemISR(void) //系统中断
{
if((INTCONbits.TMR0IE) & (INTCONbits.TMR0IF)) //TMR2中断
{
TMR0IF=0;
TMR0=20;
p_led0=!p_led0;
}
}
//-------------------------------------------------------------------------------
// 主程序部分
//-------------------------------------------------------------------------------
void main(void)
{
System_Init();
while(1)
{
p_led1 = !p_led1;
}
}
本意是定时多少时间 管脚电平翻转
示波器测试出来的 波形不是方波。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>