📄 sysdevinit.c
字号:
#include "SysDevInit.H"
/*******************************************************************************************************
** 名 称: void SysCfgInit(void)
** 功 能:系统配置信息初始化
** 入口参数:无
** 出口参数:无
**----------------------------------------------------------------------------------------------------
** 作 者 : 严 俊 生
** 日 期 : 2007-07-01
**----------------------------------------------------------------------------------------------------
** 修改人 : 严 俊 生
** 日 期 : 2008-12-17
*******************************************************************************************************/
#if SysCfgInit_EN
void SysCfgInit(void)
{
//==================== 7654 3210
OSCICN = 0x06;
}
#endif
/*******************************************************************************************************
** 名 称: void SysPortInit(void)
** 功 能:端口初始化
** 入口参数:无
** 出口参数:无
** 详细说明: ------------------------------------------------
| PxM1.Y | PxM2.Y | 口输出模式 |
------------------------------------------------
| 0 | 0 | 准双向口 |
------------------------------------------------
| 0 | 1 | 推挽 |
------------------------------------------------
| 1 | 0 | 仅为输入(高阻) |
------------------------------------------------
| 1 | 1 | 开漏 |
------------------------------------------------
** 注意:除了3个口(P1.2、P1.3、P1.5)以外,932其他所有I/O口均可由软件配置成
** 4种输入模式之一。其中,P1.5(RST)只能作为输入口,无法进行配置。P1.2
** (SCL/T0)和P1.3(SDA/INT0)只能配置为输入口或开漏口
**----------------------------------------------------------------------------------------------------
** 作 者 : 严 俊 生
** 日 期 : 2007-07-01
**----------------------------------------------------------------------------------------------------
** 修改人 :
** 日 期 :
*******************************************************************************************************/
#if SysPortInit_EN
void SysPortInit(void)
{
P74OUT = 0xDC;
XBR2 = 0xC0; // Enable crossbar and enable
P6 |= 0xF0;
// weak pull-up
P0MDOUT = 0x3F; // 配置P3.4 - P3.7为数字输入,其他为输出状态
P0 = 0xFF;
P1 = 0xFF;
//P1MDIN = 0x00; // 配置P1口为数字输入功能
P1MDOUT = 0xFF; // 配置P2口为推挽输出状态
P2MDOUT = 0xFF; // 配置P2口为推挽输出状态
P2 = 0xFF;
P3 = 0xFF;
P3MDOUT = 0xFF; // 配置P3口均为输出状态
}
#endif
/*******************************************************************************************************
** 名 称: void SysTimer0Init(void)
** 功 能:系统定时器0初始化
** 入口参数:无
** 出口参数:无
**----------------------------------------------------------------------------------------------------
** 作 者 : 严 俊 生
** 日 期 : 2007-07-01
**----------------------------------------------------------------------------------------------------
** 修改人 : 严 俊 生
** 日 期 : 2008-12-17
*******************************************************************************************************/
#if SysTimer0Init_EN
void SysTimer0Init(void)
{
//==================== 7654 3210
TH0 = TIMER0_RELOAD_HIGH; // Reinit Timer0 register
TL0 = TIMER0_RELOAD_LOW;
TMOD = 0x01; // 16-bit Mode Timer0
TR0 = 1;
}
#endif
void SysInterInit(void)
{
ET0 = 1; // Timer0 interrupt enabled
EX0 = 1;
EA = 1; // Enable global interrupts
}
/*------------------------------- End -----------------------------*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -