📄 sysdevinit.h
字号:
#ifndef _SysDevInit_H
#define _SysDevInit_H
//===================================================== SFR文件的包含,不同的CPU不一样,需要修改
#include <c8051f020.h> // SFR declarations
#include "stdio.h"
#include "math.h"
#include "absacc.h"
#include "intrins.h"
//===================================================== 本文件中定义的一些编译使能或者是常量参数的宏
//-----------------------------------------------------------------------------
// Global Variables
//-----------------------------------------------------------------------------
#define SYSCLK 8000000/8 // SYSCLK in Hz (16 MHz internal
// oscillator / 8)
// the internal oscillator has a
// tolerance of +/- 20%
#define TIMER_PRESCALER 12 // Based on Timer CKCON settings
#define LED_TOGGLE_RATE 10 // LED toggle rate in milliseconds
// if LED_TOGGLE_RATE = 1, the LED will
// be on for 1 millisecond and off for
// 1 millisecond
// There are SYSCLK/TIMER_PRESCALER timer ticks per second, so
// SYSCLK/TIMER_PRESCALER/1000 timer ticks per millisecond.
#define TIMER_TICKS_PER_MS SYSCLK/TIMER_PRESCALER/1000
// Note: LED_TOGGLE_RATE*TIMER_TICKS_PER_MS should not exceed 65535 (0xFFFF)
// for the 16-bit timer
#define AUX1 TIMER_TICKS_PER_MS*LED_TOGGLE_RATE
#define AUX2 -AUX1
#define AUX3 AUX2&0x00FF
#define AUX4 ((AUX2&0xFF00)>>8)
#define TIMER0_RELOAD_HIGH AUX4 // Reload value for Timer0 high byte
#define TIMER0_RELOAD_LOW AUX3 // Reload value for Timer0 low byte
/*--------------------------------------------------- 函数编译与否的宏定义 */
#define SysCfgInit_EN 1 /* 系统配置函数的宏,1:编译;0:不编译 */
#define SysPortInit_EN 1 /* 系统端口初始化函数的宏,1:编译;0:不编译 */
#define SysTimer0Init_EN 1 /* 系统定时器0初始化函数的宏,1:编译;0:不编译 */
#define SysWdtDogInit_EN 0 /* 系统看门狗初始化函数的宏,1:编译;0:不编译 */
//------------------------------------------------------- 端口输出宏定义
#define LedLight_ON() P6 |= 0x04 // 输出1端口置位
#define LedLight_OFF() P6 &= ~0x04 // 输出1端口复位
//--------------------------------------------------- 端口输入宏定义
//#define Input3_IN() Input3PinIn // 输入端口3口线状态
//#define Input4_IN() Input4PinIn // 输入端口4口线状态
//===================================================== 本文件中硬件输入输出端口状态的设置
//---------------------------------------------------- 作为输出口线的定义
//sbit JIDIANQI1PinOut = P0^2; // 输出口线1端口定义
//---------------------------------------------------- 作为输入口线的定义
//sbit GONGDIANPinIn = P0^1; // 输入口线1端口定义
//sbit GONGDIANPinIn1 = P0^0; // 输入口线2端口定义
//sbit Input3PinIn = P0^0; // 输入口线3端口定义
//sbit Input4PinIn = P0^0; // 输入口线4端口定义
//---------------------------------------------------- 一些特殊功能寄存器的定义
//===================================================== 本文件中定义的公共函数
extern void SysCfgInit(void); /* 系统配置信息初始化函数 */
extern void SysPortInit(void); /* 系统端口状态初始化函数 */
extern void SysTimer0Init(void); /* 系统定时器0初始化函数 */
extern void SysInterInit(void);
extern void SysWdtDogInit(void); /* 系统看门狗控制初始化函数 */
extern void InitInterrupt(void);
#endif
/*------------------------------- End -----------------------------*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -