main.c

来自「CC2510 timer1 PWM输出2M波形」· C语言 代码 · 共 64 行

C
64
字号
#include "config.h"
__data unsigned int i;
#pragma vector = T1_VECTOR
__interrupt void T1_Interrupt()
{
   T1CC0H = 0x32;
   T1CC0L = 0xC8;
  i=i;
  i=i;
}
void main()
{
    //IOCFG0 = 0x00;      // disable RF IO debug
    SLEEP &= ~0x04;
    while((SLEEP&0x40)!=0x40);
    asm("NOP");
    CLKCON &= ~0x4f;
    SLEEP |= 0x04;
    MPAGE = 0;              // Memory page, high-order bits of address in MOVX instruction
    MEMCTR = 0x00;		   // Memory Arbiter Control
    DPS = 0;                // Data Pointer Select
    PSW = 0;                // Program Status Word
    IEN0 = 0x01;   IEN1 = 0X01;  IEN2 = 0;               // Interrupt Enable 2 Register
    TCON = 0x05;            // CPU Interrupt Flag 1
    S0CON = 0;   S1CON = 0;
    IRCON = 0;   IRCON2 = 0;


    while(1){
       P0 = 0;       P1 = 0;       P2 = 0;
        PERCFG = 0x03 ;
        P0SEL = 0x08; P1SEL = 0;    P2SEL = 0x00;
        P0DIR = 0;    P1DIR = 0;    P2DIR = 0;
        P0INP = 0;	  P1INP = 0;    P2INP = 0;
        ADCCFG=0x00;
       T1CTL = 0x02;                  //Timer 1 Control and Status
       T1CCTL0 = 0x38;   T1CC0H = 0x00;T1CC0L = 0xc;
       T1CCTL1 = 0x34;   T1CC1H = 0x00;   T1CC1L =0x6;
       T1CCTL2 = 0;      T1CC2H = 0;   T1CC2L = 0;
       TIMIF = 0x00;  // Timers 1/3/4 Interrupt Mask/Flag
    }
    while(0){
        P0 = 0;       P1 = 0;       P2 = 0;
        PERCFG = 0x10 ;
        P0SEL = 0x00; P1SEL = 0;    P2SEL = 0x01;
        P0DIR = 0;    P1DIR = 0;    P2DIR = 0;
        P0INP = 0;	  P1INP = 0;    P2INP = 0;
        ADCCFG=0x00;
        T4CNT = 0x00;
        T4CTL = 0x15;
        T4CCTL0 = 0x34;   T4CC0 = 0x80;
        T4CCTL1 = 0x34;   T4CC1 =0x50;
        TIMIF = 0x00;  // Timers 1/3/4 Interrupt Mask/Flag

    }
   while(1){
     i = 0;
     i=1;
    i=1000;
    for(i=1000;i>0;i--);
   }

}

⌨️ 快捷键说明

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