📄 main.c
字号:
// Target: C8051F02x
//-----------------------------------------------------------------------------
// Includes
//-----------------------------------------------------------------------------
#include <c8051f020.h> // SFR declarations
#include <stdio.h>
#include <var.h>
#include <lib.h>
#include <define.h>
#include <AD.c>
#include <data.c>
//----------------------------------------------------------------------------
// main Routine
//----------------------------------------------------------------------------
void main (void) {
WDTCN = 0xde; // disable watchdog timer
WDTCN = 0xad;
PORT_Init ();
SYSCLK_Init (); // initialize oscillator
AD();
data();
P0=0x00;
P0=0x01;
}
//----------------------------------------------------------------------------
//subprograms
//----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//SYSCLK_Init
//----------------------------------------------------------------------------
void SYSCLK_Init (void)
{
int i; // delay counter
OSCXCN = 0x67; // start external oscillator with
// 22.1184MHz crystal
for (i=0; i < 256; i++) ; // XTLVLD blanking interval (>1ms)
while (!(OSCXCN & 0x80)) ; // Wait for crystal osc. to settle
OSCICN = 0x88; // select external oscillator as SYSCLK
// source and enable missing clock
// detector
}
//----------------------------------------------------------------------------
//PORT_Init
//----------------------------------------------------------------------------
void PORT_Init (void)
{
// Enable crossbar and weak pull-ups
P0MDOUT |= 0x00;
XBR2 = 0x40;
//P1MDIN =0x40;
}
//----------------------------------------------------------------------------
//TIMER0_Init INT1_Init INT0_Init
//----------------------------------------------------------------------------
void delay(void)
{
unsigned int i;
i=11715;
while(i)
{i=i-1;
}
}
//----------------------------------------------------------------------------
//ADC1_Init
//----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// Timer3_Init
//-----------------------------------------------------------------------------
//
// Configure Timer3 to auto-reload at interval specified by <counts> (no
// interrupt generated) using SYSCLK as its time base.
//
//----------------------------------------------------------------------------
//ASC1_ISR
//----------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -