📄 initsystem.c
字号:
#include "Regs240x.h"
#include "ClearDog.h"
void Initsystem() /* system initialization */
{
int n;
asm(" SETC INTM " ); /*Disable interrupts */
asm(" CLRC SXM "); /*Reset Sign Extension Mode*/
asm(" CLRC OVM "); /*Reset Overflow Mode */
asm(" CLRC CNF "); /*Config Block B0 to Data memory.*/
/* * SCSR1=0x02CD; /* PLL x2,CPUCLK=2*CLKIN,Enable ADC,SCI and EV*/
* SCSR1=0x00CD; /* PLL x2,CPUCLK=4*CLKIN,Enable ADC,SCI and EV*/
* IMR = 0x00; /**Mask all INTs **/
* IFR = 0x0FF; /*clear all the int flags */
/* Watchdog*/
* WDCR=0x002F; /*Enalbe Watchdog,prescaler=64*/
ClearDog();
/*I/O*/
* MCRA=0x6FFF; /*use IOPB4 IOPB7 as I/O port*/
* MCRB=0x0FFFF;
* MCRC=0x0FFFF;
* PBDATDIR=0x7FFF; /*IOPB7:input:H;IOPB4:output:H */
/*ADC*/
* MAXCONV=0x0; /* Convert num=1 */
* CHSELSEQ1=0x0000;
* CHSELSEQ2=0x0000;
* CHSELSEQ3=0x0000;
* CHSELSEQ4=0x0000;
* ADCTRL1=0x2F19; /* 级连、启停模式,使能校准 */
* ADCTRL2=0x4000; /*,Start calibrate or 0x2000*/
for(n=200;n>0;n--) /* wait for ADC calibrate*/
asm("NOP");
* ADCTRL1=0x2F10;
* ADCTRL2=0x4000;
/* SCI BaudRate 38400*/
* SCICCR = 0x07; /*forbid calibrate,odle mode,8bit data */
* SCICTL1 = 0x13;
* SCICTL2 = 0x02; /*Enable RX interrupt*/
* SCIHBAUD = 0x00; /* BaudRate 38400 */
* SCILBAUD = 0x81; /*0x81:40MHz,0x40:20MHz*/
* SCIPRI = 0x10; /********************/
* SCICTL1 = 0x33; /*Enable SCI,Forbid SLEEP,enalbe TX and RX*/
/* Pwm 10kHz */
* T1PR = (int)(1000);
* ACTRA = 0x01; /*PWM1=0 =>PWM=1,=>BREAK=H */
* CMPR1 = (int)1000;
* COMCONA = 0x0CB00; /* Enable Compare */
* T1CNT = 10;
/** T1CON = 0x8840; /*20MHz,prescaler=1 */
* T1CON = 0x8C40; /*40MHz, prescaler=2 */
/** Timer 10ms **/
/* * T3PR = (unsigned int)(12500); /**20MHz:12500**/
* T3PR = (unsigned int)(25000); /**40MHz:25000**/
* T3CNT = 0;
* T3CON= 0x1440; /*Continuous up mode,prescaler=16 */
/* GPT */
* GPTCONA = 0x0;
* GPTCONB = 0x0;
/* EVINT */
* EVAIMRA=0x0000;
* EVAIMRB=0x0000;
* EVAIMRC=0x0000;
* EVBIFRA=0x00FF; /* Clear */
* EVBIMRA=0x0080; /*Enable Timer3 period interrupt*/
* EVBIMRB=0x0000;
* EVBIMRC=0x0000;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -