📄 macro.h
字号:
#ifndef _MACRO_H_
#define _MACRO_H_
/* ./gpio.c*
*Copyright(C) 2005 lizhenjun
*Modify by suney 2005.9.15
*Gpio read and write due to the baseAddr and the shiftAddr
*we put the gpio on the banker 1 of the arm ,so the default BaseAddr is
*0xfa000000(0x08000000) ,if the bank changed,we can select the banker
*/
static unsigned int BaseAddr=0xfa000000;//0x08000000
/*************************GPIO defination for master*********************/
#define LPTI 0
#define LPTO 2
#define VD1 4
#define VD2 6
#define ISA_IRQ 8
#define ARM_MODE 10
#define ISA_OUT4 12
#define KEY_SIG 14
#define LED_OUT 16//test result,led display it's state
#define ISA_ADDR 18//isa_addr test
#define ISA_CONTROL 20//isa_control signal test
#define ISA_DATA8 22//isa data wide 8bit
#define ISA_DATA16 24//isa data wide 16bit
#define ISA_SCAN 26
#define ISA_DATA 28//isa_data test
#define IO_BASE 0x800000
#define DPRAM0_BASE 0
#define DPRAM1_BASE 0x400000
/******************************dpram communication register*****************/
#define OK 0x5a
#define ISA_REG 1000
#define ETH_REG ISA_REG+2
#define LPTO_REG ISA_REG+4
#define LPTI_REG ISA_REG+6
#define LCD1_REG ISA_REG+8
#define LCD2_REG ISA_REG+10
#define CAN_REG ISA_REG+12
#define group_num 9
static volatile unsigned int gpio_BaseAddr[]={
0xfe000000,0xfe000010,0xfe000020,0xfe000030,0xfe000040,
0xfe000050,0xfe000060,0xfe000070,0xfe0000d0};
static int Port[group_num]={23,11,16,16,16,8,16,11,13};
#define GPA(a) a
#define GPB(a) (a+23)
#define GPC(a) (a+23+11)
#define GPD(a) (a+23+11+16)
#define GPE(a) (a+23+11+16+16)
#define GPF(a) (a+23+11+16+16+16)
#define GPG(a) (a+23+11+16+16+16+8)
#define GPH(a) (a+23+11+16+16+16+8+16)
#define GPJ(a) (a+23+11+16+16+16+8+16+11)
#define SAM7200
#ifdef SAM7200
#define LPT_IO0_O GPE(5)
#define LPT_IO1_O GPE(6)
#define LPT_IO2_O GPE(7)
#define LPT_IO3_O GPE(8)
#define LPT_IO4_O GPE(9)
#define LPT_IO5_O GPE(10)
#define LPT_IO6_O GPH(8)
#define LPT_IO7_O GPC(0)
#define LPT_IO8_O GPC(5)
#define LPT_IO9_I GPC(6)
#define LPT_IO10_I GPC(7)
#define LPT_IO11_I GPE(13)
#define LPT_IO12_I GPG(7)
#define LPT_IO13_O GPG(2)
#define LPT_IO14_I GPB(1)
#define LPT_IO15_O GPH(10)
#define LPT_IO16_O GPG(11)
//lcd macro
#define LCD_VD0 GPC(8)
#define LCD_VD1 GPC(9)
#define LCD_VD2 GPC(10)
#define LCD_VD3 GPC(11)
#define LCD_VD4 GPC(12)
#define LCD_VD5 GPC(13)
#define LCD_VD6 GPC(14)
#define LCD_VD7 GPC(15)
#define LCD_VD8 GPD(0)
#define LCD_VD9 GPD(1)
#define LCD_VD10 GPD(2)
#define LCD_VD11 GPD(3)
#define LCD_VD12 GPD(4)
#define LCD_VD13 GPD(5)
#define LCD_VD14 GPD(6)
#define LCD_VD15 GPD(7)
#define LCD_VD16 GPD(8)
#define LCD_VD17 GPD(9)
#define LCD_VD18 GPD(10)
#define LCD_VD19 GPD(11)
#define LCD_VD20 GPD(12)
#define LCD_VD21 GPD(13)
#define LCD_VD22 GPD(14)
#define LCD_VD23 GPD(15)
#define LCD_VCLK GPC(1)
#define LCD_VLINE GPC(2)
#define LCD_VM GPC(4)
#define LCD_VFRAME GPC(3)
#endif
#ifdef SAM7400
#define LPT_IO0_O GPJ(2)
#define LPT_IO1_O GPJ(4)
#define LPT_IO2_O GPJ(7)
#define LPT_IO3_O GPJ(1)
#define LPT_IO4_O GPJ(11)
#define LPT_IO5_O GPC(0)
#define LPT_IO6_O GPB(5)
#define LPT_IO7_O GPJ(12)
#define LPT_IO8_O GPJ(0)
#define LPT_IO9_I GPG(3)
#define LPT_IO10_I GPE(13)
#define LPT_IO11_I GPE(12)
#define LPT_IO12_I GPE(5)
#define LPT_IO13_O GPG(2)
#define LPT_IO14_I GPJ(3)
#define LPT_IO15_O GPJ(8)
#define LPT_IO16_O GPJ(10)
#endif
#define JTAG_TCK GPE(11)
#define JTAG_TDI GPG(2)
#define JTAG_TMS GPG(6)
#define JTAG_TDO GPG(5)
#define par_read read_gpio
#define par_write write_gpio
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -