flicker.c

来自「《dsPIC通用数字信号控制器原理及应用》源码」· C语言 代码 · 共 38 行

C
38
字号
/*************************************
文件名  :Flicker.c                 **
功能说明:循环点亮六个贴片发光二极管**
*************************************/
#include "p30f6014.h"

unsigned char Led = 1;

void InitializeTMR1()
{
    TMR1 = 0;           //定时器1计数寄存器TMR1=0
    T1CON = 0x0020;	//关闭定时器,使用内部时钟,预分频比为1:64
    PR1 = 0x3D09;       //定时器Timer1周期寄存器PR1=0xf424,0.5s初值
    IFS0bits.T1IF = 0;  //清除TMR1的中断标志
    IPC0bits.T1IP = 7;  //中断优先级为7
    IEC0bits.T1IE = 1;  //使能中断
}

void __attribute__((__interrupt__)) _T1Interrupt(void)
{
    TMR1=0;							
	IFS0bits.T1IF = 0; //清定时器中断标志 
    Led = Led<<1;
    if(Led == 0x40)
        Led = 1;
}

int main()
{
    InitializeTMR1();
    TRISF = 0x00;
    T1CONbits.TON = 1;
    while(1)
    {
    PORTF = ~Led; 
    }    
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?