MAINDEF.H
上传用户:jndfzc
上传日期:2014-06-02
资源大小:325k
文件大小:4k
源码类别:

单片机开发

开发平台:

Others

  1. /****************************************************************************
  2. ** File Name: maindef.h
  3. ** Description:
  4. ** Generated Automatically for: ARM7TDMI-AT91M40800 Evaluation Board.
  5. ** Time: Sunday, February 08, 2004 09:52:43
  6. ** Copyright 2001 Hitool System Inc.
  7. ****************************************************************************/
  8. #ifndef __MAIN_DEF_H_
  9. #define  __MAIN_DEF_H_
  10. // Interrupt 
  11. #define IRQ  0
  12. #define FIQ  1
  13. #define UC                                              unsigned char
  14. #define UI                                              unsigned int
  15. #define US                                              unsigned short
  16. //CPU
  17. #define Mode_USR 0x10
  18. #define Mode_FIQ 0x11
  19. #define Mode_IRQ 0x12
  20. #define Mode_SVC 0x13
  21. #define Mode_ABT 0x17
  22. #define Mode_UNDEF 0x1B
  23. #define Mode_SYS 0x1F
  24. #define I_Bit 0x80
  25. #define F_Bit 0x40
  26. #define SVC_Stack 0x10000
  27. #define ABT_Stack 0x1000
  28. #define UNDEF_Stack 0x1000
  29. #define IRQ_Stack 0x5000
  30. #define FIQ_Stack 0x5000
  31. #define USR_Stack 0x1000
  32. #define SYS_Stack 0x10000
  33. #define MCK 50000000
  34. //UART
  35. #define UART0_BASE 0xFFFD0000 //A port
  36. #define UART1_BASE  0XFFFCC000 //B port
  37. //422
  38. #define UART422_BASE 0x700008
  39. #define UART485_BASE 0x700000
  40. #define baud_2400  0x30
  41. #define baud_4800  0x18
  42. #define baud_9600  0x0c
  43. #define baud_192  0x06
  44. #define baud_384  0x03
  45. #define baud_1152  0x01    
  46. //Serial settings
  47. #define USCR 0x00    //控制寄存器
  48. #define USMR 0x04    //模式寄存器
  49. #define USCSR 0x14    //状态寄存器
  50. #define USRHR 0x18    //收取寄存器
  51. #define USTHR 0x1C    //发送寄存器
  52. #define USBRGR 0x20    //波特率发生寄存器
  53. #define USRPR 0x30 
  54. #define USRCR 0x34
  55. #define USTPR 0x38
  56. #define USTCR 0x3C
  57. //TC
  58. #define TC0 0XFFFE0000 //0 CHANNEL
  59. #define TC1 0XFFFE0040 //1 CHANNEL
  60. #define TC2 0XFFFE0080 //2 CHANNEL
  61. //TC settings
  62. #define TCCCR 0X00 //控制寄存器
  63. #define TCCMR 0X04 //模式寄存器
  64. #define TCCV 0X10 //计数器
  65. #define TCIER 0X24 //中断使能
  66. #define TCSR 0X20 //状态寄存器
  67. #define TCRA 0X14 //A寄存器
  68. #define TCRB 0X18 //B寄存器
  69. #define TCRC 0X1C //C寄存器
  70. #define WATCHDOG_OUT1  *((volatile unsigned *)PIO_SODR) = 0x40000
  71. #define WATCHDOG_OUT0  *((volatile unsigned *)PIO_CODR) = 0x40000
  72. //AIC
  73. //pio
  74. #define PIO_PER 0XFFFF0000 //PIO ENABLE
  75. #define PIO_PDR 0XFFFF0004 //PIO DISABLE
  76. #define PIO_PSR 0XFFFF0008 //PIO STATUS
  77. #define PIO_OER 0XFFFF0010 //PIO OUTENABLE
  78. #define PIO_ODR 0XFFFF0014
  79. #define PIO_OSR 0XFFFF0018
  80. #define PIO_SODR 0XFFFF0030 //PIO OUTPUT
  81. #define PIO_CODR 0XFFFF0034 //PIO CLEAR
  82. #define PIO_ODSR 0XFFFF0038
  83. #define PIO_PDSR 0XFFFF003C
  84. #define PIO_IER 0XFFFF0040  //PIO中断使能
  85. #define PIO_ISR 0XFFFF004C
  86. #define PIO_IFER 0XFFFF0020
  87. #define PIO_IFDR 0XFFFF0024
  88. //LCD
  89. #define LCMDW 0x600000  /* 数据口*/
  90. #define LCMCW 0x600001  /* 命令口*/
  91. #define LC_CUR_POS 0x21 /* 光标位置设置*/
  92. #define LC_CGR_POS 0x22 /* CGRAM 偏置地址设置*/
  93. #define LC_ADD_POS 0x24 /* 地址指针位置*/
  94. #define LC_TXT_STP 0x40 /* 文本区首址*/
  95. #define LC_TXT_WID 0x41 /* 文本区宽度*/
  96. #define LC_GRH_STP 0x42 /* 图形区首址*/
  97. #define LC_GRH_WID 0x43 /* 图形区宽度*/
  98. #define LC_MOD_OR 0x80 /* 显示方式:逻辑“或”*/
  99. #define LC_MOD_XOR0x81 /* 显示方式:逻辑“异或”*/
  100. #define LC_MOD_AND0x82 /* 显示方式:逻辑“与”*/
  101. #define LC_MOD_TCH 0x83 /* 显示方式:文本特征*/
  102. #define LC_DIS_SW 0x90 /* 显示开关:D0=1/0:光标闪烁启用/ 禁用;*/
  103. /* D1=1/0:光标显示启用/ 禁用;*/
  104. /* D2=1/0:文本显示启用/ 禁用;*/
  105. /* D3=1/0:图形显示启用/ 禁用;*/
  106. #define LC_CUR_SHP 0xA0 /* 光标形状选择:0xA0-0xA7 表示光标占的行数*/
  107. #define LC_AUT_WR 0xB0  /* 自动写设置*/
  108. #define LC_AUT_RD 0xB1  /* 自动读设置*/
  109. #define LC_AUT_OVR 0xB2 /* 自动读/ 写结束*/
  110. #define LC_INC_WR 0xC0  /* 数据一次写,地址加1*/
  111. #define LC_INC_RD 0xC1  /* 数据一次读,地址加1*/
  112. #define LC_DEC_WR 0xC2  /* 数据一次写,地址减1*/
  113. #define LC_DEC_RD 0xC3  /* 数据一次读,地址减1*/
  114. #define LC_NOC_WR 0xC4  /* 数据一次写,地址不变*/
  115. #define LC_NOC_RD 0xC5  /* 数据一次读,地址不变*/
  116. #define LC_SCN_RD 0xE0  /* 屏读*/
  117. #define LC_SCN_CP 0xE8  /* 屏拷贝*/
  118. #define LC_BIT_OP 0xF0  /* 位操作:D0-D2 :定义D0-D7 位;D3 :1 置位;0 :清除*/
  119. /************ 汉字长度定义*********/
  120. #define HZ_LENGTH 4
  121. //LED
  122. #define LED 0x500000
  123. #endif//__MAIN_DEF_H_