⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 system.h

📁 西安明朗公司开发板ML-F020ICB的全部测试代码
💻 H
字号:
/************************************************************************************
*  Copyright (c), 2004-2007,西安铭朗电子科技有限责任公司
*            All rights reserved.
*
* Http:  www.mlarm.com
* Email: mlarm@mlarm.com
*
* File name: system.h
* Project  : ML-F020ICB
* Processor: C8051F020
* Compiler : Keil C51 Compiler
* 
* Author:  李林利
* Version: 1.20
* Date:    2007.6.1
* Email:   GavinLi@126.com
* 
* Description: 本文件是MCU系统硬件驱动程序文件,包括时钟, 看门狗(复位),电源等;
*
* Others: none;
*
* Function List:
*	1. void Sysclk_Init(void)			
*   2. void SysPort_Init(void)
*	3. void Wachdog_Enable(void)
*   4. void Wachdog_Disable(void)
*	5. void Wachdog_Clear(void)
*	6. void EWachdog_Clear(void);
*
* History:
*   1. Author:       李林利  
*	   Version: 	 1.10
*	   Date:         2007.3.12
*      Modification: none
*
*   2. Author:       李林利   
*	   Version: 	 1.00
*      Date:         2004.11.24
*      Modification: 建立文件
*
*************************************************************************************/

/*************************************************************************************
* 						MCU系统函数使用说明
*
*	1. 要使用外部时钟,在工程的主函数中必须先调用Sysclk_Init;
*	2. 再调用SysPort_Init初始化端口;
*   3. 当要应用MCU内部看门狗功能必须在main()函数一开始就调用Wachdog_Enable()函数,接下来
*      程序每隔47ms,就必须调用一次Wachdog_Clear()函数;
*      当不想应用MCU内部看门狗功能必须在main()函数一开始就调用Wachdog_Disable()函数,接
*      下来也不可在调用Wachdog_Clear()函数; 
*	4. 如果外部看门狗使能(硬件已焊接), 则程序每隔1.6s,就必须调用一次EWachdog_Clear()函数;
*	5. 其它细节详见具体函数说明;
*
*************************************************************************************/
/************************************************************************************/
// 常量及全局变量定义
/************************************************************************************/



/*************************************************************************************/
//
// 							MCU系统函数外部引用声明
//
/*************************************************************************************/
/***********************************************************************************
* 函数名称:Sysclk_Init;
*
* 函数功能描述:系统时钟初始化,使用外部22.1184MHz晶振作为时钟源;
*              
* 输入参数:none;
*
* 返回数据:none;
*
* 注意:    none;
************************************************************************************/
void Sysclk_Init (void);

/***********************************************************************************
* Function: SysPort_Init;
*
* Description: 配置端口初始化,配置交叉开关和端口;
*              配置说明: P0.0->TXD0, P0.1->RXD0, P0.2->SDA, P0.3->SCL, 
*                        P0.4->TXD1, P0.5->RXD1, P0.6->INT0, P0.7->INT1;
*                        P1,P2: 作为IO,未被分配特殊功能;
* 						 P4P5P6P7: 配置成推挽输出;
*			   			
*              
* Input:  none;
*
* Output: none;
*
* Return: none;
*
* Note:   客户可修改配置;
************************************************************************************/
void SysPort_Init (void);

/***********************************************************************************
* Function: Wachdog_Enable;
*
* Description: 使能MCU内部看门狗功能;
*
* Input:  none;
*
* Output: none;
*
* Return: none;
*
* Note:   如想一直应用看门狗功能,该函数必须在main()中最开始就调用;
************************************************************************************/
void Wachdog_Enable(void);

/***********************************************************************************
* Function: Wachdog_Disable;
*
* Description: 关闭MCU内部看门狗功能;
*
* Input:  none;
*
* Output: none;
*
* Return: none;
*
* Note:   如想不想应用看门狗功能,该函数必须在main()中最开始就调用;
************************************************************************************/
void Wachdog_Disable(void);

/***********************************************************************************
* Function: Wachdog_Clear;
*
* Description: MCU内部看门狗定时器清零功能;
*
* Input:  none;
*
* Output: none;
*
* Return: none;
*
* Note:   看门狗定时间隔计算公式: 1024*1024/SYSCLK,  以22118400HZ系统时钟计算,
*         看门狗定时间隔47。4ms; 所以,每隔47ms必须调用该函数一次,否则系统复位;
************************************************************************************/
void Wachdog_Clear(void);

/***********************************************************************************
* Function: EWachdog_Clear;
*
* Description: 外部看门狗定时器清零功能;适用于MCP1316或MAX823器件,默认未安装;
*
* Input:  none;
*
* Output: none;
*
* Return: none;
*
* Note:   外部看门狗定时间隔1.6s; 所以,每隔1.6s必须调用该函数一次,否则系统复位;
************************************************************************************/
void EWachdog_Clear(void);

/***********************************************************************************/
// 文件结束
/***********************************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -