Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. ;***** THIS IS A MACHINE GENERATED FILE - DO NOT EDIT ********************
  2. ;***** Created: 2005-01-11 10:30 ******* Source: AT90S4433.xml ***********
  3. ;*************************************************************************
  4. ;* A P P L I C A T I O N   N O T E   F O R   T H E   A V R   F A M I L Y
  5. ;*
  6. ;* Number            : AVR000
  7. ;* File Name         : "4433def.inc"
  8. ;* Title             : Register/Bit Definitions for the AT90S4433
  9. ;* Date              : 2005-01-11
  10. ;* Version           : 2.14
  11. ;* Support E-mail    : avr@atmel.com
  12. ;* Target MCU        : AT90S4433
  13. ;*
  14. ;* DESCRIPTION
  15. ;* When including this file in the assembly program file, all I/O register
  16. ;* names and I/O register bit names appearing in the data book can be used.
  17. ;* In addition, the six registers forming the three data pointers X, Y and
  18. ;* Z have been assigned names XL - ZH. Highest RAM address for Internal
  19. ;* SRAM is also defined
  20. ;*
  21. ;* The Register names are represented by their hexadecimal address.
  22. ;*
  23. ;* The Register Bit names are represented by their bit number (0-7).
  24. ;*
  25. ;* Please observe the difference in using the bit names with instructions
  26. ;* such as "sbr"/"cbr" (set/clear bit in register) and "sbrs"/"sbrc"
  27. ;* (skip if bit in register set/cleared). The following example illustrates
  28. ;* this:
  29. ;*
  30. ;* in    r16,PORTB             ;read PORTB latch
  31. ;* sbr   r16,(1<<PB6)+(1<<PB5) ;set PB6 and PB5 (use masks, not bit#)
  32. ;* out   PORTB,r16             ;output to PORTB
  33. ;*
  34. ;* in    r16,TIFR              ;read the Timer Interrupt Flag Register
  35. ;* sbrc  r16,TOV0              ;test the overflow flag (use bit#)
  36. ;* rjmp  TOV0_is_set           ;jump if set
  37. ;* ...                         ;otherwise do something else
  38. ;*************************************************************************
  39.  
  40. #ifndef _4433DEF_INC_
  41. #define _4433DEF_INC_
  42.  
  43.  
  44. #pragma partinc 0
  45.  
  46. ; ***** SPECIFY DEVICE ***************************************************
  47. .device AT90S4433
  48. #pragma AVRPART ADMIN PART_NAME AT90S4433
  49. .equ    SIGNATURE_000   = 0x1e
  50. .equ    SIGNATURE_001   = 0x92
  51. .equ    SIGNATURE_002   = 0x03
  52.  
  53. #pragma AVRPART CORE CORE_VERSION V1
  54.  
  55.  
  56. ; ***** I/O REGISTER DEFINITIONS *****************************************
  57. ; NOTE:
  58. ; Definitions marked "MEMORY MAPPED"are extended I/O ports
  59. ; and cannot be used with IN/OUT instructions
  60. .equ    SREG    = 0x3f
  61. .equ    SP      = 0x3d
  62. .equ    GIMSK   = 0x3b
  63. .equ    GIFR    = 0x3a
  64. .equ    TIMSK   = 0x39
  65. .equ    TIFR    = 0x38
  66. .equ    MCUCR   = 0x35
  67. .equ    MCUSR   = 0x34
  68. .equ    TCCR0   = 0x33
  69. .equ    TCNT0   = 0x32
  70. .equ    TCCR1A  = 0x2f
  71. .equ    TCCR1B  = 0x2e
  72. .equ    TCNT1H  = 0x2d
  73. .equ    TCNT1L  = 0x2c
  74. .equ    OCR1H   = 0x2b
  75. .equ    OCR1L   = 0x2a
  76. .equ    ICR1H   = 0x27
  77. .equ    ICR1L   = 0x26
  78. .equ    WDTCR   = 0x21
  79. .equ    EEAR    = 0x1e
  80. .equ    EEDR    = 0x1d
  81. .equ    EECR    = 0x1c
  82. .equ    PORTB   = 0x18
  83. .equ    DDRB    = 0x17
  84. .equ    PINB    = 0x16
  85. .equ    PORTC   = 0x15
  86. .equ    DDRC    = 0x14
  87. .equ    PINC    = 0x13
  88. .equ    PORTD   = 0x12
  89. .equ    DDRD    = 0x11
  90. .equ    PIND    = 0x10
  91. .equ    SPDR    = 0x0f
  92. .equ    SPSR    = 0x0e
  93. .equ    SPCR    = 0x0d
  94. .equ    UDR     = 0x0c
  95. .equ    UCSRA   = 0x0b
  96. .equ    UCSRB   = 0x0a
  97. .equ    UBRR    = 0x09
  98. .equ    ACSR    = 0x08
  99. .equ    ADMUX   = 0x07
  100. .equ    ADCSR   = 0x06
  101. .equ    ADCH    = 0x05
  102. .equ    ADCL    = 0x04
  103. .equ    UBRRHI  = 0x03
  104.  
  105.  
  106. ; ***** BIT DEFINITIONS **************************************************
  107.  
  108. ; ***** ANALOG_COMPARATOR ************
  109. ; ACSR - Analog Comparator Control And Status Register
  110. .equ    ACIS0   = 0     ; Analog Comparator Interrupt Mode Select bit 0
  111. .equ    ACIS1   = 1     ; Analog Comparator Interrupt Mode Select bit 1
  112. .equ    ACIC    = 2     ; Analog Comparator Input Capture Enable
  113. .equ    ACIE    = 3     ; Analog Comparator Interrupt Enable
  114. .equ    ACI     = 4     ; Analog Comparator Interrupt Flag
  115. .equ    ACO     = 5     ; Analog Compare Output
  116. .equ    AINBG   = 6     ; Analog Comparator Bandgap Select
  117. .equ    ACD     = 7     ; Analog Comparator Disable
  118.  
  119.  
  120. ; ***** AD_CONVERTER *****************
  121. ; ADMUX - The ADC multiplexer Selection Register
  122. .equ    MUX0    = 0     ; Analog Channel and Gain Selection Bits
  123. .equ    MUX1    = 1     ; Analog Channel and Gain Selection Bits
  124. .equ    MUX2    = 2     ; Analog Channel and Gain Selection Bits
  125. .equ    ADCBG   = 6     ; ADC Bandgap Select
  126.  
  127. ; ADCSR - The ADC Control and Status register
  128. .equ    ADPS0   = 0     ; ADC  Prescaler Select Bits
  129. .equ    ADPS1   = 1     ; ADC  Prescaler Select Bits
  130. .equ    ADPS2   = 2     ; ADC  Prescaler Select Bits
  131. .equ    ADIE    = 3     ; ADC Interrupt Enable
  132. .equ    ADIF    = 4     ; ADC Interrupt Flag
  133. .equ    ADFR    = 5     ; ADC  Free Running Select
  134. .equ    ADSC    = 6     ; ADC Start Conversion
  135. .equ    ADEN    = 7     ; ADC Enable
  136.  
  137. ; ADCH - ADC Data Register High Byte
  138. .equ    ADC8    = 0     ; ADC Data Register High Byte Bit 0
  139. .equ    ADC9    = 1     ; ADC Data Register High Byte Bit 1
  140.  
  141. ; ADCL - ADC Data Register Low Byte
  142. .equ    ADC0    = 0     ; ADC Data Register Low Byte Bit 0
  143. .equ    ADC1    = 1     ; ADC Data Register Low Byte Bit 1
  144. .equ    ADC2    = 2     ; ADC Data Register Low Byte Bit 2
  145. .equ    ADC3    = 3     ; ADC Data Register Low Byte Bit 3
  146. .equ    ADC4    = 4     ; ADC Data Register Low Byte Bit 4
  147. .equ    ADC5    = 5     ; ADC Data Register Low Byte Bit 5
  148. .equ    ADC6    = 6     ; ADC Data Register Low Byte Bit 6
  149. .equ    ADC7    = 7     ; ADC Data Register Low Byte Bit 7
  150.  
  151.  
  152. ; ***** UART *************************
  153. ; UDR - UART I/O Data Register
  154. .equ    UDR0    = 0     ; UART I/O Data Register bit 0
  155. .equ    UDR1    = 1     ; UART I/O Data Register bit 1
  156. .equ    UDR2    = 2     ; UART I/O Data Register bit 2
  157. .equ    UDR3    = 3     ; UART I/O Data Register bit 3
  158. .equ    UDR4    = 4     ; UART I/O Data Register bit 4
  159. .equ    UDR5    = 5     ; UART I/O Data Register bit 5
  160. .equ    UDR6    = 6     ; UART I/O Data Register bit 6
  161. .equ    UDR7    = 7     ; UART I/O Data Register bit 7
  162.  
  163. ; UCSRA - UART Control and Status register A
  164. .equ    MPCM    = 0     ; Mulit-processor Communication Mode
  165. .equ    DOR     = 3     ; Data overRun
  166. .equ    FE      = 4     ; Framing Error
  167. .equ    UDRE    = 5     ; UART Data Register Empty
  168. .equ    TXC     = 6     ; UART Transmitt Complete
  169. .equ    RXC     = 7     ; UART Receive Complete
  170.  
  171. ; UCSRB - UART Control an Status register B
  172. .equ    TXB8    = 0     ; Transmit Data Bit 8
  173. .equ    RXB8    = 1     ; Receive Data Bit 8
  174. .equ    CHR9    = 2     ; 9-bit Characters
  175. .equ    TXEN    = 3     ; Transmitter Enable
  176. .equ    RXEN    = 4     ; Receiver Enable
  177. .equ    UDRIE   = 5     ; UART Data Register Empty Interrupt Enable
  178. .equ    TXCIE   = 6     ; TX Complete Interrupt Enable
  179. .equ    RXCIE   = 7     ; RX Complete Interrupt Enable
  180.  
  181. ; UBRRHI - UART Baud Rate Register High Byte
  182. .equ    UBRRHI0 = 0     ; UART Baud Rate Register High Byte bit 0
  183. .equ    UBRRHI1 = 1     ; UART Baud Rate Register High Byte bit 1
  184. .equ    UBRRHI2 = 2     ; UART Baud Rate Register High Byte bit 2
  185. .equ    UBRRHI3 = 3     ; UART Baud Rate Register High Byte bit 3
  186.  
  187. ; UBRR - UART Baud Rate Register
  188. .equ    UBRR0   = 0     ; UART Baud Rate Register bit 0
  189. .equ    UBRR1   = 1     ; UART Baud Rate Register bit 1
  190. .equ    UBRR2   = 2     ; UART Baud Rate Register bit 2
  191. .equ    UBRR3   = 3     ; UART Baud Rate Register bit 3
  192. .equ    UBRR4   = 4     ; UART Baud Rate Register bit 4
  193. .equ    UBRR5   = 5     ; UART Baud Rate Register bit 5
  194. .equ    UBRR6   = 6     ; UART Baud Rate Register bit 6
  195. .equ    UBRR7   = 7     ; UART Baud Rate Register bit 7
  196.  
  197.  
  198. ; ***** SPI **************************
  199. ; SPDR - SPI Data Register
  200. .equ    SPDR0   = 0     ; SPI Data Register bit 0
  201. .equ    SPDR1   = 1     ; SPI Data Register bit 1
  202. .equ    SPDR2   = 2     ; SPI Data Register bit 2
  203. .equ    SPDR3   = 3     ; SPI Data Register bit 3
  204. .equ    SPDR4   = 4     ; SPI Data Register bit 4
  205. .equ    SPDR5   = 5     ; SPI Data Register bit 5
  206. .equ    SPDR6   = 6     ; SPI Data Register bit 6
  207. .equ    SPDR7   = 7     ; SPI Data Register bit 7
  208.  
  209. ; SPSR - SPI Status Register
  210. .equ    WCOL    = 6     ; Write Collision Flag
  211. .equ    SPIF    = 7     ; SPI Interrupt Flag
  212.  
  213. ; SPCR - SPI Control Register
  214. .equ    SPR0    = 0     ; SPI Clock Rate Select 0
  215. .equ    SPR1    = 1     ; SPI Clock Rate Select 1
  216. .equ    CPHA    = 2     ; Clock Phase
  217. .equ    CPOL    = 3     ; Clock polarity
  218. .equ    MSTR    = 4     ; Master/Slave Select
  219. .equ    DORD    = 5     ; Data Order
  220. .equ    SPE     = 6     ; SPI Enable
  221. .equ    SPIE    = 7     ; SPI Interrupt Enable
  222.  
  223.  
  224. ; ***** CPU **************************
  225. ; SREG - Status Register
  226. .equ    SREG_C  = 0     ; Carry Flag
  227. .equ    SREG_Z  = 1     ; Zero Flag
  228. .equ    SREG_N  = 2     ; Negative Flag
  229. .equ    SREG_V  = 3     ; Two's Complement Overflow Flag
  230. .equ    SREG_S  = 4     ; Sign Bit
  231. .equ    SREG_H  = 5     ; Half Carry Flag
  232. .equ    SREG_T  = 6     ; Bit Copy Storage
  233. .equ    SREG_I  = 7     ; Global Interrupt Enable
  234.  
  235. ; SP - Stack Pointer
  236. .equ    SP0     = 0     ; Stack pointer bit 0
  237. .equ    SP1     = 1     ; Stack pointer bit 1
  238. .equ    SP2     = 2     ; Stack pointer bit 2
  239. .equ    SP3     = 3     ; Stack pointer bit 3
  240. .equ    SP4     = 4     ; Stack pointer bit 4
  241. .equ    SP5     = 5     ; Stack pointer bit 5
  242. .equ    SP6     = 6     ; Stack pointer bit 6
  243. .equ    SP7     = 7     ; Stack pointer bit 7
  244.  
  245. ; MCUCR - MCU Control Register
  246. .equ    ISC00   = 0     ; Interrupt Sense Control 0 bit 0
  247. .equ    ISC01   = 1     ; Interrupt Sense Control 0 bit 1
  248. .equ    ISC10   = 2     ; Interrupt Sense Control 1 bit 0
  249. .equ    ISC11   = 3     ; Interrupt Sense Control 1 bit 1
  250. .equ    SM      = 4     ; Sleep Mode Select
  251. .equ    SE      = 5     ; Sleep Enable
  252.  
  253. ; MCUSR -
  254. .equ    PORF    = 0     ; Power-on Reset Flag
  255. .equ    EXTRF   = 1     ; External Reset Flag
  256. .equ    BORF    = 2     ; Brown-Out Reset Flag
  257. .equ    WDRF    = 3     ; Watchdog Reset Flag
  258.  
  259.  
  260. ; ***** EXTERNAL_INTERRUPT ***********
  261. ; GIMSK - General Interrupt Mask Register
  262. .equ    INT0    = 6     ; External Interrupt Request 0 Enable
  263. .equ    INT1    = 7     ; External Interrupt Request 1 Enable
  264.  
  265. ; GIFR - General Interrupt Flag register
  266. .equ    INTF0   = 6     ; External Interrupt Flag 0
  267. .equ    INTF1   = 7     ; External Interrupt Flag 1
  268.  
  269.  
  270. ; ***** EEPROM ***********************
  271. ; EEAR - EEPROM Read/Write Access
  272. .equ    EEAR0   = 0     ; EEPROM Read/Write Access bit 0
  273. .equ    EEAR1   = 1     ; EEPROM Read/Write Access bit 1
  274. .equ    EEAR2   = 2     ; EEPROM Read/Write Access bit 2
  275. .equ    EEAR3   = 3     ; EEPROM Read/Write Access bit 3
  276. .equ    EEAR4   = 4     ; EEPROM Read/Write Access bit 4
  277. .equ    EEAR5   = 5     ; EEPROM Read/Write Access bit 5
  278. .equ    EEAR6   = 6     ; EEPROM Read/Write Access bit 6
  279. .equ    EEAR7   = 7     ; EEPROM Read/Write Access bit 7
  280.  
  281. ; EEDR - EEPROM Data Register
  282. .equ    EEDR0   = 0     ; EEPROM Data Register bit 0
  283. .equ    EEDR1   = 1     ; EEPROM Data Register bit 1
  284. .equ    EEDR2   = 2     ; EEPROM Data Register bit 2
  285. .equ    EEDR3   = 3     ; EEPROM Data Register bit 3
  286. .equ    EEDR4   = 4     ; EEPROM Data Register bit 4
  287. .equ    EEDR5   = 5     ; EEPROM Data Register bit 5
  288. .equ    EEDR6   = 6     ; EEPROM Data Register bit 6
  289. .equ    EEDR7   = 7     ; EEPROM Data Register bit 7
  290.  
  291. ; EECR - EEPROM Control Register
  292. .equ    EERE    = 0     ; EEPROM Read Enable
  293. .equ    EEWE    = 1     ; EEPROM Write Enable
  294. .equ    EEMWE   = 2     ; EEPROM Master Write Enable
  295. .equ    EERIE   = 3     ; EEProm Ready Interrupt Enable
  296.  
  297.  
  298. ; ***** PORTB ************************
  299. ; PORTB - Data Register, Port B
  300. .equ    PORTB0  = 0     ;
  301. .equ    PB0     = 0     ; For compatibility
  302. .equ    PORTB1  = 1     ;
  303. .equ    PB1     = 1     ; For compatibility
  304. .equ    PORTB2  = 2     ;
  305. .equ    PB2     = 2     ; For compatibility
  306. .equ    PORTB3  = 3     ;
  307. .equ    PB3     = 3     ; For compatibility
  308. .equ    PORTB4  = 4     ;
  309. .equ    PB4     = 4     ; For compatibility
  310. .equ    PORTB5  = 5     ;
  311. .equ    PB5     = 5     ; For compatibility
  312.  
  313. ; DDRB - Data Direction Register, Port B
  314. .equ    DDB0    = 0     ;
  315. .equ    DDB1    = 1     ;
  316. .equ    DDB2    = 2     ;
  317. .equ    DDB3    = 3     ;
  318. .equ    DDB4    = 4     ;
  319. .equ    DDB5    = 5     ;
  320.  
  321. ; PINB - Input Pins, Port B
  322. .equ    PINB0   = 0     ;
  323. .equ    PINB1   = 1     ;
  324. .equ    PINB2   = 2     ;
  325. .equ    PINB3   = 3     ;
  326. .equ    PINB4   = 4     ;
  327. .equ    PINB5   = 5     ;
  328.  
  329.  
  330. ; ***** PORTC ************************
  331. ; PORTC - Port C Data Register
  332. .equ    PORTC0  = 0     ; Port C Data Register bit 0
  333. .equ    PC0     = 0     ; For compatibility
  334. .equ    PORTC1  = 1     ; Port C Data Register bit 1
  335. .equ    PC1     = 1     ; For compatibility
  336. .equ    PORTC2  = 2     ; Port C Data Register bit 2
  337. .equ    PC2     = 2     ; For compatibility
  338. .equ    PORTC3  = 3     ; Port C Data Register bit 3
  339. .equ    PC3     = 3     ; For compatibility
  340. .equ    PORTC4  = 4     ; Port C Data Register bit 4
  341. .equ    PC4     = 4     ; For compatibility
  342. .equ    PORTC5  = 5     ; Port C Data Register bit 5
  343. .equ    PC5     = 5     ; For compatibility
  344.  
  345. ; DDRC - Port C Data Direction Register
  346. .equ    DDC0    = 0     ; Port C Data Direction Register bit 0
  347. .equ    DDC1    = 1     ; Port C Data Direction Register bit 1
  348. .equ    DDC2    = 2     ; Port C Data Direction Register bit 2
  349. .equ    DDC3    = 3     ; Port C Data Direction Register bit 3
  350. .equ    DDC4    = 4     ; Port C Data Direction Register bit 4
  351. .equ    DDC5    = 5     ; Port C Data Direction Register bit 5
  352.  
  353. ; PINC - Port C Input Pins
  354. .equ    PINC0   = 0     ; Port C Input Pins bit 0
  355. .equ    PINC1   = 1     ; Port C Input Pins bit 1
  356. .equ    PINC2   = 2     ; Port C Input Pins bit 2
  357. .equ    PINC3   = 3     ; Port C Input Pins bit 3
  358. .equ    PINC4   = 4     ; Port C Input Pins bit 4
  359. .equ    PINC5   = 5     ; Port C Input Pins bit 5
  360.  
  361.  
  362. ; ***** PORTD ************************
  363. ; PORTD - Port D Data Register
  364. .equ    PORTD0  = 0     ; Port D Data Register bit 0
  365. .equ    PD0     = 0     ; For compatibility
  366. .equ    PORTD1  = 1     ; Port D Data Register bit 1
  367. .equ    PD1     = 1     ; For compatibility
  368. .equ    PORTD2  = 2     ; Port D Data Register bit 2
  369. .equ    PD2     = 2     ; For compatibility
  370. .equ    PORTD3  = 3     ; Port D Data Register bit 3
  371. .equ    PD3     = 3     ; For compatibility
  372. .equ    PORTD4  = 4     ; Port D Data Register bit 4
  373. .equ    PD4     = 4     ; For compatibility
  374. .equ    PORTD5  = 5     ; Port D Data Register bit 5
  375. .equ    PD5     = 5     ; For compatibility
  376. .equ    PORTD6  = 6     ; Port D Data Register bit 6
  377. .equ    PD6     = 6     ; For compatibility
  378. .equ    PORTD7  = 7     ; Port D Data Register bit 7
  379. .equ    PD7     = 7     ; For compatibility
  380.  
  381. ; DDRD - Port D Data Direction Register
  382. .equ    DDD0    = 0     ; Port D Data Direction Register bit 0
  383. .equ    DDD1    = 1     ; Port D Data Direction Register bit 1
  384. .equ    DDD2    = 2     ; Port D Data Direction Register bit 2
  385. .equ    DDD3    = 3     ; Port D Data Direction Register bit 3
  386. .equ    DDD4    = 4     ; Port D Data Direction Register bit 4
  387. .equ    DDD5    = 5     ; Port D Data Direction Register bit 5
  388. .equ    DDD6    = 6     ; Port D Data Direction Register bit 6
  389. .equ    DDD7    = 7     ; Port D Data Direction Register bit 7
  390.  
  391. ; PIND - Port D Input Pins
  392. .equ    PIND0   = 0     ; Port D Input Pins bit 0
  393. .equ    PIND1   = 1     ; Port D Input Pins bit 1
  394. .equ    PIND2   = 2     ; Port D Input Pins bit 2
  395. .equ    PIND3   = 3     ; Port D Input Pins bit 3
  396. .equ    PIND4   = 4     ; Port D Input Pins bit 4
  397. .equ    PIND5   = 5     ; Port D Input Pins bit 5
  398. .equ    PIND6   = 6     ; Port D Input Pins bit 6
  399. .equ    PIND7   = 7     ; Port D Input Pins bit 7
  400.  
  401.  
  402. ; ***** TIMER_COUNTER_0 **************
  403. ; TIMSK - Timer/Counter Interrupt Mask Register
  404. .equ    TOIE0   = 1     ; Timer/Counter0 Overflow Interrupt Enable
  405.  
  406. ; TIFR - Timer/Counter Interrupt Flag register
  407. .equ    TOV0    = 1     ; Timer/Counter0 Overflow Flag
  408.  
  409. ; TCCR0 - Timer/Counter0 Control Register
  410. .equ    CS00    = 0     ; Clock Select0 bit 0
  411. .equ    CS01    = 1     ; Clock Select0 bit 1
  412. .equ    CS02    = 2     ; Clock Select0 bit 2
  413.  
  414. ; TCNT0 - Timer Counter 0
  415. .equ    TCNT00  = 0     ; Timer Counter 0 bit 0
  416. .equ    TCNT01  = 1     ; Timer Counter 0 bit 1
  417. .equ    TCNT02  = 2     ; Timer Counter 0 bit 2
  418. .equ    TCNT03  = 3     ; Timer Counter 0 bit 3
  419. .equ    TCNT04  = 4     ; Timer Counter 0 bit 4
  420. .equ    TCNT05  = 5     ; Timer Counter 0 bit 5
  421. .equ    TCNT06  = 6     ; Timer Counter 0 bit 6
  422. .equ    TCNT07  = 7     ; Timer Counter 0 bit 7
  423.  
  424.  
  425. ; ***** TIMER_COUNTER_1 **************
  426. ; TIMSK - Timer/Counter Interrupt Mask Register
  427. .equ    TICIE1  = 3     ; Timer/Counter1 Input Capture Interrupt Enable
  428. .equ    OCIE1   = 6     ; Timer/Counter1 Output Compare Match Interrupt Enable
  429. .equ    TOIE1   = 7     ; Timer/Counter1 Overflow Interrupt Enable
  430.  
  431. ; TIFR - Timer/Counter Interrupt Flag register
  432. .equ    ICF1    = 3     ; Input Capture Flag 1
  433. .equ    OCF1    = 6     ; Output Compare Flag 1
  434. .equ    TOV1    = 7     ; Timer/Counter1 Overflow Flag
  435.  
  436. ; TCCR1A - Timer/Counter1 Control Register A
  437. .equ    PWM10   = 0     ; Pulse Width Modulator Select Bit 0
  438. .equ    PWM11   = 1     ; Pulse Width Modulator Select Bit 1
  439. .equ    COM10   = 6     ; Compare Ouput Mode 1, bit 0
  440. .equ    COM11   = 7     ; Compare Output Mode 1, bit 1
  441.  
  442. ; TCCR1B - Timer/Counter1 Control Register B
  443. .equ    CS10    = 0     ; Clock Select1 bit 0
  444. .equ    CS11    = 1     ; Clock Select1 bit 1
  445. .equ    CS12    = 2     ; Clock Select1 bit 2
  446. .equ    CTC1    = 3     ; Clear Timer/Counter1 on Compare Match
  447. .equ    ICES1   = 6     ; Input Capture 1 Edge Select
  448. .equ    ICNC1   = 7     ; Input Capture 1 Noise Canceler
  449.  
  450.  
  451. ; ***** WATCHDOG *********************
  452. ; WDTCR - Watchdog Timer Control Register
  453. .equ    WDP0    = 0     ; Watch Dog Timer Prescaler bit 0
  454. .equ    WDP1    = 1     ; Watch Dog Timer Prescaler bit 1
  455. .equ    WDP2    = 2     ; Watch Dog Timer Prescaler bit 2
  456. .equ    WDE     = 3     ; Watch Dog Enable
  457. .equ    WDTOE   = 4     ; RW
  458. .equ    WDDE    = WDTOE ; For compatibility
  459.  
  460.  
  461.  
  462. ; ***** LOCKSBITS ********************************************************
  463. .equ    LB1     = 0     ; Lockbit
  464. .equ    LB2     = 1     ; Lockbit
  465.  
  466.  
  467. ; ***** FUSES ************************************************************
  468. ; LOW fuse bits
  469.  
  470.  
  471.  
  472. ; ***** CPU REGISTER DEFINITIONS *****************************************
  473. .def    XH      = r27
  474. .def    XL      = r26
  475. .def    YH      = r29
  476. .def    YL      = r28
  477. .def    ZH      = r31
  478. .def    ZL      = r30
  479.  
  480.  
  481.  
  482. ; ***** DATA MEMORY DECLARATIONS *****************************************
  483. .equ    FLASHEND        = 0x07ff        ; Note: Word address
  484. .equ    IOEND   = 0x003f
  485. .equ    SRAM_START      = 0x0060
  486. .equ    SRAM_SIZE       = 128
  487. .equ    RAMEND  = 0x00df
  488. .equ    XRAMEND = 0x0000
  489. .equ    E2END   = 0x00ff
  490. .equ    EEPROMEND       = 0x00ff
  491. .equ    EEADRBITS       = 8
  492. #pragma AVRPART MEMORY PROG_FLASH 4096
  493. #pragma AVRPART MEMORY EEPROM 256
  494. #pragma AVRPART MEMORY INT_SRAM SIZE 128
  495. #pragma AVRPART MEMORY INT_SRAM START_ADDR 0x60
  496.  
  497.  
  498.  
  499.  
  500.  
  501. ; ***** INTERRUPT VECTORS ************************************************
  502. .equ    INT0addr        = 0x0001        ; External Interrupt 0
  503. .equ    INT1addr        = 0x0002        ; External Interrupt 1
  504. .equ    ICP1addr        = 0x0003        ; Timer/Counter Capture Event
  505. .equ    OC1addr = 0x0004        ; Timer/Counter1 Compare Match
  506. .equ    OVF1addr        = 0x0005        ; Timer/Counter1 Overflow
  507. .equ    OVF0addr        = 0x0006        ; Timer/Counter0 Overflow
  508. .equ    SPIaddr = 0x0007        ; Serial Transfer Complete
  509. .equ    URXCaddr        = 0x0008        ; UART, Rx Complete
  510. .equ    UDREaddr        = 0x0009        ; UART Data Register Empty
  511. .equ    UTXCaddr        = 0x000a        ; UART, Tx Complete
  512. .equ    ADCCaddr        = 0x000b        ; ADC Conversion Complete
  513. .equ    ERDYaddr        = 0x000c        ; EEPROM Ready
  514. .equ    ACIaddr = 0x000d        ; Analog Comparator
  515.  
  516. .equ    INT_VECTORS_SIZE        = 14    ; size in words
  517.  
  518. #pragma AVRPART CORE INSTRUCTIONS_NOT_SUPPORTED break
  519.  
  520. #endif  /* _4433DEF_INC_ */
  521.  
  522. ; ***** END OF FILE ******************************************************
  523.