📄 020_config_body.h
字号:
#include "020_Function.h"
/**********************************************************************
* 本模块提供外部调用的函数 *
**********************************************************************/
/*******************************IO端口初始化函数***************************************/
void Port_Init (void)
{
XBR0 = 0x08; //CEX0连接到端口上
XBR1 = 0x00;
XBR2 = 0x40; // 使能交叉开关和IO的输出
// 一般情况都设置为推挽方式,开漏只有在3V的电平不能满足外围5V器件的
// 最小输入高电平时才采用。
// 开漏状态,IO口写0,处于GND状态,写1处于高阻状态,无法提供高电平
// 推挽状态,IO口写0,处于GND状态,写1处于VDD状态;
P0MDOUT |= 0x01; // 设置 P0 的输出方式
P1MDOUT |= 0x00; // 设置 P1 的输出方式
P2MDOUT |= 0x07; // 设置 P2 的输出方式
P3MDOUT |= 0xff; // 设置 P3 的输出方式
P74OUT |= 0xfc; // 设置 P4 P5 P6 P7的输出方式
/*
位7: P7H--端口7高4位的输出方式
位6: P7L--端口7低4位的输出方式
位5: P6H--端口6高4位的输出方式
位4: P6L--端口6低4位的输出方式
位3: P5H--端口5高4位的输出方式
位2: P5L--端口5低4位的输出方式
位1: P4H--端口4高4位的输出方式
位0: P4L--端口4低4位的输出方式
*/
}
/********************************片上看门狗初始化函数**************************************/
void Watch_Dog_Init (void)
{
WDTCN = 0xde; // 禁止看门狗
WDTCN = 0xad;
}
/**********************************系统时钟设置函数************************************/
void Sys_Clk_Init(unsigned char Select)
{
if(Select) // 外部时钟
{
OSCICN = 0x88; //关闭内部振荡,时钟信号检测(如果时钟丢失超过100us将触发复位)
OSCXCN = 0x00; //外部振荡
}
else // 内部时钟
{
OSCXCN = 0x00; //关闭外部振荡
OSCICN = 0x84; //使能内部时钟,时钟信号检测(如果时钟丢失超过100us将触发复位)
//上电默认时钟为片内2MHZ的晶体振荡器
/*
0x84 2M
0x85 4M
0x86 8M
0x87 16M
*/
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -