📄 frmwrk.h
字号:
/*------------------------------------------------------------------------------------------------------------------
* frmwrk.h --
*
*
*
------------------------------------------------------------------------------------------------------------------*/
#ifndef __H_FRMWRK__
#define __H_FRMWRK__
#include "type.h"
//为了C++语言中兼容。
#ifdef __cplusplus
extern "C" {
#endif
/*---------------------------------------------------------------------------------------------------------------
* Revision Infomation
---------------------------------------------------------------------------------------------------------------*/
#define BULID_DATE "06/23/04" // Revision date
#define BULID_VER "1.01" // Revision Number
/*---------------------------------------------------------------------------------------------------------------
* Hardward Platform Information
---------------------------------------------------------------------------------------------------------------*/
#define PROCESSOR_ID "EP7312 (ARM720T from CIRRUS Logic)"
/*---------------------------------------------------------------------------------------------------------------
* UART Information
* UART : Universal Asynchronous Receiver/Transmitter (通用异步接收器)
* UART是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调
* 制解调器或其它使用RS-232C接口的串行设备通信了。
* 作为接口的一部分,UART还提供以下功能:
* 将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行数据转换为字节,供计算机内部
* 使用并行数据的器件使用。在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流
* 中加入启停标记,并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号(键盘和鼠票也是串行设备)。可以
* 处理计算机与外部串行设备的同步管理问题。有一些比较高档的UART还提供输入输出数据的缓冲区,现在比较新的UART是
* 16550,它可以在计算机需要处理数据前在其缓冲区内存储16字节数据,而通常的UART是8250。现在如果您购买一个内置的
* 调制解调器,此调制解调器内部通常就会有16550 UART。
---------------------------------------------------------------------------------------------------------------*/
#define CONSOL_PORT 1 // Consol UART port number
#define CONSOL_BAUD 115200 // Consol Baud rate (Baud:波特)
#define CONSOL_FIFO_ENABLE True // FIFO Enable Flag
/*---------------------------------------------------------------------------------------------------------------
* Module Configuration
---------------------------------------------------------------------------------------------------------------*/
#define MMU_enabled // This switch is included with the compiler flags
#define MCLK (74000000) // 74MHz
#define SRAM_SIZE (48*1024) // 48K Internal SRAM
#define SDRAM_SIZE (16*1024*1024) // 16M SDRAM
// NOTE: Reflect(发射) the changes in init.s
#ifndef MMU_enabled
#define FLASH_SADDR 0x00000000 // Flash starting address
#define SRAM_SADDR 0x06000000 // SRAM starting address
#define SFR_BADDR 0x08000000 // SFR base address
#define SDRAM_SADDR 0x09000000 // SDRAM starting address
#define ISR_BADDR 0x06000000 // ISR vector table start address
#define ETH_BADDR 0x02000000 // Ethernet Controller (CS8900) base address
#else
#define FLASH_SADDR 0x00000000 // Flash starting address
#define SRAM_SADDR 0x60000000 // SRAM starting address
#define SFR_BADDR 0x80000000 // SFR base address
#define SDRAM_SADDR 0xc0000000 // SDRAM strating address
#define ISR_BADDR 0x60000000 // ISR vector table start address
#define ETH_BADDR 0x20000000 // Ethernet Controller (CS8900) base address
#endif
#define ETH_IO_BADDR 0x300 // Default value
#define SRAM_EADDR (SRAM_SADDR+SRAM_SIZE-1) // SRAM end address
#define SDRAM_EADDR (SDRAM_SADDR+SDRAM_SIZE-1) // SDRAM end address
/*---------------------------------------------------------------------------------------------------------------
* Interface macro & data definition
---------------------------------------------------------------------------------------------------------------*/
extern char Image$$ZI$$Limit[];
#define C_abRTMem Image$$ZI$$Limit
#ifndef FRMWRK_VERBOSE_EN
#define VERBOSE(x) { x }
#else
#define VERBOSE(x) { }
#endif
/*---------------------------------------------------------------------------------------------------------------
* Interface function definition
---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------
* Routine : FRMWRK_vRamTest
* Description : This routine is used do RAM test.
---------------------------------------------------------------------------------------------------------------*/
void FRMWRK_vRamTest(u8 *pbID, u32 wSAddr, u32 wEAddr);
/*---------------------------------------------------------------------------------------------------------------
* Routine : C_vMain
* Description : This routine is the Application main entry function.
* Note(s) : This routine needs to be implemented in the application.
---------------------------------------------------------------------------------------------------------------*/
void app_main(void);
#ifdef __cplusplus
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -