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

📄 gpio.h

📁 这是arm10上面的linux环境下的串口通信源程序,方便学习和调试
💻 H
字号:
//
// General Purpose I/O Register Definitions
//

#ifndef __GPIO_H
#define __GPIO_H

//
// For use with GPIO registers GPLR_x, GPSR_x, GPCR_x, GPDR_x, GRER_x, GFER_x, GEDR_x
//
#define GPIO_0		0x00000001
#define GPIO_1		0x00000002
#define GPIO_2		0x00000004
#define GPIO_3		0x00000008
#define GPIO_4		0x00000010
#define GPIO_5		0x00000020
#define GPIO_6		0x00000040
#define GPIO_7		0x00000080
#define GPIO_8		0x00000100
#define GPIO_9		0x00000200
#define GPIO_10		0x00000400
#define GPIO_11		0x00000800
#define GPIO_12		0x00001000
#define GPIO_13		0x00002000
#define GPIO_14		0x00004000
#define GPIO_15		0x00008000
#define GPIO_16		0x00010000
#define GPIO_17		0x00020000
#define GPIO_18		0x00040000
#define GPIO_19		0x00080000
#define GPIO_20		0x00100000
#define GPIO_21		0x00200000
#define GPIO_22		0x00400000
#define GPIO_23		0x00800000
#define GPIO_24		0x01000000
#define GPIO_25		0x02000000
#define GPIO_26		0x04000000
#define GPIO_27		0x08000000
#define GPIO_28		0x10000000
#define GPIO_29		0x20000000
#define GPIO_30		0x40000000
#define GPIO_31		0x80000000

//
// For use with GPIO registers GPLR_y, GPSR_y, GPCR_y, GPDR_y, GRER_y, GFER_y, GEDR_y
//
#define GPIO_32		0x00000001
#define GPIO_33		0x00000002
#define GPIO_34		0x00000004
#define GPIO_35		0x00000008
#define GPIO_36		0x00000010
#define GPIO_37		0x00000020
#define GPIO_38		0x00000040
#define GPIO_39		0x00000080
#define GPIO_40		0x00000100
#define GPIO_41		0x00000200
#define GPIO_42		0x00000400
#define GPIO_43		0x00000800
#define GPIO_44		0x00001000
#define GPIO_45		0x00002000
#define GPIO_46		0x00004000
#define GPIO_47		0x00008000
#define GPIO_48		0x00010000
#define GPIO_49		0x00020000
#define GPIO_50		0x00040000
#define GPIO_51		0x00080000
#define GPIO_52		0x00100000
#define GPIO_53		0x00200000
#define GPIO_54		0x00400000
#define GPIO_55		0x00800000
#define GPIO_56		0x01000000
#define GPIO_57		0x02000000
#define GPIO_58		0x04000000
#define GPIO_59		0x08000000
#define GPIO_60		0x10000000
#define GPIO_61		0x20000000
#define GPIO_62		0x40000000
#define GPIO_63		0x80000000

//
// For use with GPIO registers GPLR_z, GPSR_z, GPCR_z, GPDR_z, GRER_z, GFER_z, GEDR_z
//
#define GPIO_64		0x00000001
#define GPIO_65		0x00000002
#define GPIO_66		0x00000004
#define GPIO_67		0x00000008
#define GPIO_68		0x00000010
#define GPIO_69		0x00000020
#define GPIO_70		0x00000040
#define GPIO_71		0x00000080
#define GPIO_72		0x00000100
#define GPIO_73		0x00000200
#define GPIO_74		0x00000400
#define GPIO_75		0x00000800
#define GPIO_76		0x00001000
#define GPIO_77		0x00002000
#define GPIO_78		0x00004000
#define GPIO_79		0x00008000
#define GPIO_80		0x00010000
#define GPIO_81		0x00020000
#define GPIO_82		0x00040000
#define GPIO_83		0x00080000
#define GPIO_84		0x00100000

//
// For use with GPIO register GAFR0_x
//
#define GPIO_0_AF1				0x00000001
#define GPIO_1_AF1_GP_RST		0x00000004
#define GPIO_2_AF1_ADC0			0x00000010
#define GPIO_3_AF1_ADC1			0x00000040
#define GPIO_4_AF1_ADC2			0x00000100
#define GPIO_5_AF1_ADC3			0x00000400
#define GPIO_6_AF1_MMCCLK		0x00001000
#define GPIO_7_AF1_48MHzClock	0x00004000
#define GPIO_8_AF1_MMCCS0		0x00010000
#define GPIO_9_AF1_MMCCS1		0x00040000
#define GPIO_10_AF1_RTCCLK		0x00100000
#define GPIO_11_AF1_3P6MHz		0x00400000
#define GPIO_12_AF1_32KHz		0x01000000
#define GPIO_13_AF1				0x04000000
#define GPIO_14_AF1_MBREQ		0x10000000
#define GPIO_15_AF1				0x40000000

//
// For use with GPIO register GAFR1_x
//
#define GPIO_16_AF1				0x00000001
#define GPIO_17_AF1				0x00000004
#define GPIO_18_AF1_RDY			0x00000010
#define GPIO_19_AF1_DREQ1		0x00000040
#define GPIO_20_AF1_DREQ0		0x00000100
#define GPIO_21_AF1				0x00000400
#define GPIO_22_AF1				0x00001000
#define GPIO_23_AF1				0x00004000
#define GPIO_24_AF1				0x00010000
#define GPIO_25_AF1				0x00040000
#define GPIO_26_AF1_RXD			0x00100000
#define GPIO_27_AF1_EXTCLK		0x00400000
#define GPIO_28_AF1_BITCLK		0x01000000
#define GPIO_29_AF1_SDATA_IN0	0x04000000
#define GPIO_30_AF1_SDATA_OUT	0x10000000
#define GPIO_31_AF1_SYNC		0x40000000

//
// For use with GPIO register GAFR0_y
//
#define GPIO_32_AF1_SDATA_IN1	0x00000001
#define GPIO_32_AF1_SYSCLK		0x00000001
#define GPIO_33_AF1				0x00000004
#define GPIO_34_AF1_FFRXD		0x00000010
#define GPIO_35_AF1_CTS			0x00000040
#define GPIO_36_AF1_DCD			0x00000100
#define GPIO_37_AF1_DSR			0x00000400
#define GPIO_38_AF1_RI			0x00001000
#define GPIO_39_AF1_ADC5		0x00004000
#define GPIO_39_AF1_MMCCS1		0x00004000
#define GPIO_40_AF1				0x00010000
#define GPIO_41_AF1				0x00040000
#define GPIO_42_AF1_BTRXD		0x00100000
#define GPIO_43_AF1_ADC6		0x00400000
#define GPIO_44_AF1_CTS			0x01000000
#define GPIO_45_AF1				0x04000000
#define GPIO_46_AF1_ICP_RXD		0x10000000
#define GPIO_47_AF1_TXD			0x40000000

//
// For use with GPIO register GAFR1_y
//
#define GPIO_48_AF1				0x00000001
#define GPIO_49_AF1				0x00000004
#define GPIO_50_AF1				0x00000010
#define GPIO_51_AF1				0x00000040
#define GPIO_52_AF1				0x00000100
#define GPIO_53_AF1_MMCCLK		0x00000400
#define GPIO_54_AF1_MMCCLK		0x00001000
#define GPIO_55_AF1				0x00004000
#define GPIO_56_AF1_nPWAIT		0x00010000
#define GPIO_57_AF1_nIOIS16		0x00040000
#define GPIO_58_AF1				0x00100000
#define GPIO_59_AF1				0x00400000
#define GPIO_60_AF1				0x01000000
#define GPIO_61_AF1				0x04000000
#define GPIO_62_AF1				0x10000000
#define GPIO_63_AF1				0x40000000

//
// For use with GPIO register GAFR0_z
//
#define GPIO_64_AF1				0x00000001
#define GPIO_65_AF1				0x00000004
#define GPIO_66_AF1_MBREQ		0x00000010
#define GPIO_67_AF1_MMCCS0		0x00000040
#define GPIO_68_AF1_MMCCS1		0x00000100
#define GPIO_69_AF1_MMCCLK		0x00000400
#define GPIO_70_AF1_RTCCLK		0x00001000
#define GPIO_71_AF1_3P6MHz		0x00004000
#define GPIO_72_AF1_32KHz		0x00010000
#define GPIO_73_AF1_ADC7		0x00040000
#define GPIO_73_AF1_MBGNT		0x00040000
#define GPIO_74_AF1				0x00100000
#define GPIO_75_AF1				0x00400000
#define GPIO_76_AF1				0x01000000
#define GPIO_77_AF1				0x04000000
#define GPIO_78_AF1				0x10000000
#define GPIO_79_AF1				0x40000000

//
// For use with GPIO register GAFR1_z
//
#define GPIO_80_AF1				0x00000001
#define GPIO_81_AF1_SCLK		0x00000004
#define GPIO_82_AF1_SFRM		0x00000010
#define GPIO_83_AF1_TXD			0x00000040
#define GPIO_84_AF1_TXD			0x00000100

//
// For use with GPIO register GAFR0_x
//
#define GPIO_0_AF2				0x00000002
#define GPIO_1_AF2				0x00000008
#define GPIO_2_AF2				0x00000020
#define GPIO_3_AF2				0x00000080
#define GPIO_4_AF2				0x00000200
#define GPIO_5_AF2				0x00000800
#define GPIO_6_AF2				0x00002000
#define GPIO_7_AF2				0x00008000
#define GPIO_8_AF2				0x00020000
#define GPIO_9_AF2				0x00080000
#define GPIO_10_AF2				0x00200000
#define GPIO_11_AF2				0x00800000
#define GPIO_12_AF2				0x02000000
#define GPIO_13_AF2_MBGNT		0x08000000
#define GPIO_14_AF2				0x20000000
#define GPIO_15_AF2_nCS_1		0x80000000

//
// For use with GPIO register GAFR1_x
//
#define GPIO_16_AF2_PWM0		0x00000002
#define GPIO_17_AF2_PWM1		0x00000008
#define GPIO_18_AF2				0x00000020
#define GPIO_19_AF2				0x00000080
#define GPIO_20_AF2				0x00000200
#define GPIO_21_AF2_DVAL0		0x00000800
#define GPIO_22_AF2_DVAL1		0x00002000
#define GPIO_23_AF2_SCLK		0x00008000
#define GPIO_24_AF2_SFRM		0x00020000
#define GPIO_25_AF2_TXD			0x00080000
#define GPIO_26_AF2				0x00200000
#define GPIO_27_AF2				0x00800000
#define GPIO_28_AF2_BITCLK		0x02000000
#define GPIO_29_AF2_SDATA_IN	0x08000000
#define GPIO_30_AF2_SDATA_OUT	0x20000000
#define GPIO_31_AF2_SYNC		0x80000000

//
// For use with GPIO register GAFR0_y
//
#define GPIO_32_AF2				0x00000002
#define GPIO_33_AF2_nCS5		0x00000008
#define GPIO_34_AF2_ADC4		0x00000020
#define GPIO_34_AF2_MMCCS0		0x00000020
#define GPIO_35_AF2				0x00000080
#define GPIO_36_AF2				0x00000200
#define GPIO_37_AF2				0x00000800
#define GPIO_38_AF2				0x00002000
#define GPIO_39_AF2_FFTXD		0x00008000
#define GPIO_40_AF2_DTR			0x00020000
#define GPIO_41_AF2_RTS			0x00080000
#define GPIO_42_AF2				0x00200000
#define GPIO_43_AF2_BTTXD		0x00800000
#define GPIO_44_AF2				0x02000000
#define GPIO_45_AF2_RTS			0x08000000
#define GPIO_46_AF2_RXD			0x20000000
#define GPIO_47_AF2_ICP_TXD		0x80000000

//
// For use with GPIO register GAFR1_y
//
#define GPIO_48_AF2_nPOE		0x00000002
#define GPIO_49_AF2_nPWE		0x00000008
#define GPIO_50_AF2_nPIOR		0x00000020
#define GPIO_51_AF2_nPIOW		0x00000080
#define GPIO_52_AF2_nPCE1		0x00000200
#define GPIO_53_AF2_nPCE2		0x00000800
#define GPIO_54_AF2_pSKTSEL		0x00002000
#define GPIO_55_AF2_nPREG		0x00008000
#define GPIO_56_AF2				0x00020000
#define GPIO_57_AF2				0x00080000
#define GPIO_58_AF2_LDD0		0x00200000
#define GPIO_59_AF2_LDD1		0x00800000
#define GPIO_60_AF2_LDD2		0x02000000
#define GPIO_61_AF2_LDD3		0x08000000
#define GPIO_62_AF2_LDD4		0x20000000
#define GPIO_63_AF2_LDD5		0x80000000

//
// For use with GPIO register GAFR0_z
//
#define GPIO_64_AF2_LDD6		0x00000002
#define GPIO_65_AF2_LDD7		0x00000008
#define GPIO_66_AF2_LDD8		0x00000020
#define GPIO_67_AF2_LDD9		0x00000080
#define GPIO_68_AF2_LDD10		0x00000200
#define GPIO_69_AF2_LDD11		0x00000800
#define GPIO_70_AF2_LDD12		0x00002000
#define GPIO_71_AF2_LDD13		0x00008000
#define GPIO_72_AF2_LDD14		0x00020000
#define GPIO_73_AF2_LDD15		0x00080000
#define GPIO_74_AF2_LCD_FCLK	0x00200000
#define GPIO_75_AF2_LCD_LCLK	0x00800000
#define GPIO_76_AF2_LCD_PCLK	0x02000000
#define GPIO_77_AF2_LCD_ACBIAS	0x08000000
#define GPIO_78_AF2_nCS2		0x20000000
#define GPIO_79_AF2_nCS3		0x80000000

//
// For use with GPIO register GAFR1_z
//
#define GPIO_80_AF2_nCS4		0x00000002
#define GPIO_81_AF2				0x00000008
#define GPIO_82_AF2				0x00000020
#define GPIO_83_AF2_RXD			0x00000080
#define GPIO_84_AF2_RXD			0x00000200

//
// For use with GPIO register GAFR0_x
//
#define GPIO_0_AF3	0x00000003
#define GPIO_1_AF3	0x0000000C
#define GPIO_2_AF3	0x00000030
#define GPIO_3_AF3	0x000000C0
#define GPIO_4_AF3	0x00000300
#define GPIO_5_AF3	0x00000C00
#define GPIO_6_AF3	0x00003000
#define GPIO_7_AF3	0x0000C000
#define GPIO_8_AF3	0x00030000
#define GPIO_9_AF3	0x000C0000
#define GPIO_10_AF3	0x00300000
#define GPIO_11_AF3	0x00C00000
#define GPIO_12_AF3	0x03000000
#define GPIO_13_AF3	0x0C000000
#define GPIO_14_AF3	0x30000000
#define GPIO_15_AF3	0xC0000000

//
// For use with GPIO register GAFR1_x
//
#define GPIO_16_AF3	0x00000003
#define GPIO_17_AF3	0x0000000C
#define GPIO_18_AF3	0x00000030
#define GPIO_19_AF3	0x000000C0
#define GPIO_20_AF3	0x00000300
#define GPIO_21_AF3	0x00000C00
#define GPIO_22_AF3	0x00003000
#define GPIO_23_AF3	0x0000C000
#define GPIO_24_AF3	0x00030000
#define GPIO_25_AF3	0x000C0000
#define GPIO_26_AF3	0x00300000
#define GPIO_27_AF3	0x00C00000
#define GPIO_28_AF3	0x03000000
#define GPIO_29_AF3	0x0C000000
#define GPIO_30_AF3	0x30000000
#define GPIO_31_AF3	0xC0000000

//
// For use with GPIO register GAFR0_y
//
#define GPIO_32_AF3	0x00000003
#define GPIO_33_AF3	0x0000000C
#define GPIO_34_AF3	0x00000030
#define GPIO_35_AF3	0x000000C0
#define GPIO_36_AF3	0x00000300
#define GPIO_37_AF3	0x00000C00
#define GPIO_38_AF3	0x00003000
#define GPIO_39_AF3	0x0000C000
#define GPIO_40_AF3	0x00030000
#define GPIO_41_AF3	0x000C0000
#define GPIO_42_AF3	0x00300000
#define GPIO_43_AF3	0x00C00000
#define GPIO_44_AF3	0x03000000
#define GPIO_45_AF3	0x0C000000
#define GPIO_46_AF3	0x30000000
#define GPIO_47_AF3	0xC0000000

//
// For use with GPIO register GAFR1_y
//
#define GPIO_48_AF3 0x00000003
#define GPIO_49_AF3 0x0000000C
#define GPIO_50_AF3	0x00000030
#define GPIO_51_AF3	0x000000C0
#define GPIO_52_AF3	0x00000300
#define GPIO_53_AF3	0x00000C00
#define GPIO_54_AF3	0x00003000
#define GPIO_55_AF3	0x0000C000
#define GPIO_56_AF3	0x00030000
#define GPIO_57_AF3	0x000C0000
#define GPIO_58_AF3	0x00300000
#define GPIO_59_AF3	0x00C00000
#define GPIO_60_AF3	0x03000000
#define GPIO_61_AF3	0x0C000000
#define GPIO_62_AF3	0x30000000
#define GPIO_63_AF3	0xC0000000

//
// For use with GPIO register GAFR0_z
//
#define GPIO_64_AF3	0x00000003
#define GPIO_65_AF3	0x0000000C
#define GPIO_66_AF3	0x00000030
#define GPIO_67_AF3	0x000000C0
#define GPIO_68_AF3	0x00000300
#define GPIO_69_AF3	0x00000C00
#define GPIO_70_AF3	0x00003000
#define GPIO_71_AF3	0x0000C000
#define GPIO_72_AF3	0x00030000
#define GPIO_73_AF3	0x000C0000
#define GPIO_74_AF3	0x00300000
#define GPIO_75_AF3	0x00C00000
#define GPIO_76_AF3	0x03000000
#define GPIO_77_AF3	0x0C000000
#define GPIO_78_AF3	0x30000000
#define GPIO_79_AF3	0xC0000000

//
// For use with GPIO register GAFR1_z
//
#define GPIO_80_AF3	0x00000003
#define GPIO_81_AF3	0x0000000C
#define GPIO_82_AF3	0x00000030
#define GPIO_83_AF3	0x000000C0
#define GPIO_84_AF3	0x00000300

#endif

⌨️ 快捷键说明

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