Created
March 5, 2014 16:52
-
-
Save tothandras/9371244 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;*************************************************************** | |
;* Feladat: | |
;* Rövid leírás: | |
; | |
;* Szerzõk: | |
;* Mérõcsoport: <merocsoport jele> | |
; | |
;*************************************************************** | |
;* "AVR ExperimentBoard" port assignment information: | |
;*************************************************************** | |
;* | |
;* LED0(P):PortC.0 LED4(P):PortC.4 | |
;* LED1(P):PortC.1 LED5(P):PortC.5 | |
;* LED2(S):PortC.2 LED6(S):PortC.6 | |
;* LED3(Z):PortC.3 LED7(Z):PortC.7 INT:PortE.4 | |
;* | |
;* SW0:PortG.0 SW1:PortG.1 SW2:PortG.4 SW3:PortG.3 | |
;* | |
;* BT0:PortE.5 BT1:PortE.6 BT2:PortE.7 BT3:PortB.7 | |
;* | |
;*************************************************************** | |
;* | |
;* AIN:PortF.0 NTK:PortF.1 OPTO:PortF.2 POT:PortF.3 | |
;* | |
;*************************************************************** | |
;* | |
;* LCD1(VSS) = GND LCD9(DB2): - | |
;* LCD2(VDD) = VCC LCD10(DB3): - | |
;* LCD3(VO ) = GND LCD11(DB4): PortA.4 | |
;* LCD4(RS ) = PortA.0 LCD12(DB5): PortA.5 | |
;* LCD5(R/W) = GND LCD13(DB6): PortA.6 | |
;* LCD6(E ) = PortA.1 LCD14(DB7): PortA.7 | |
;* LCD7(DB0) = - LCD15(BLA): VCC | |
;* LCD8(DB1) = - LCD16(BLK): PortB.5 (1=Backlight ON) | |
;* | |
;*************************************************************** | |
.include "m128def.inc" ; Definition file for ATmega128 | |
;* Program Constants | |
.equ const =$00 ; Generic Constant Structure example | |
;* Program Variables Definitions | |
.def temp =r16 ; Temporary Register example | |
;*************************************************************** | |
;* Reset & Interrupt Vectors | |
.cseg | |
.org $0000 ; Define start of Code segment | |
jmp RESET ; Reset Handler, jmp is 2 word instruction | |
jmp DUMMY_IT ; Ext. INT0 Handler | |
jmp DUMMY_IT ; Ext. INT1 Handler | |
jmp DUMMY_IT ; Ext. INT2 Handler | |
jmp DUMMY_IT ; Ext. INT3 Handler | |
jmp DUMMY_IT ; Ext. INT4 Handler (INT gomb) | |
jmp DUMMY_IT ; Ext. INT5 Handler | |
jmp DUMMY_IT ; Ext. INT6 Handler | |
jmp DUMMY_IT ; Ext. INT7 Handler | |
jmp DUMMY_IT ; Timer2 Compare Match Handler | |
jmp DUMMY_IT ; Timer2 Overflow Handler | |
jmp DUMMY_IT ; Timer1 Capture Event Handler | |
jmp DUMMY_IT ; Timer1 Compare Match A Handler | |
jmp DUMMY_IT ; Timer1 Compare Match B Handler | |
jmp DUMMY_IT ; Timer1 Overflow Handler | |
jmp DUMMY_IT ; Timer0 Compare Match Handler | |
jmp DUMMY_IT ; Timer0 Overflow Handler | |
jmp DUMMY_IT ; SPI Transfer Complete Handler | |
jmp DUMMY_IT ; USART0 RX Complete Handler | |
jmp DUMMY_IT ; USART0 Data Register Empty Hanlder | |
jmp DUMMY_IT ; USART0 TX Complete Handler | |
jmp DUMMY_IT ; ADC Conversion Complete Handler | |
jmp DUMMY_IT ; EEPROM Ready Hanlder | |
jmp DUMMY_IT ; Analog Comparator Handler | |
jmp DUMMY_IT ; Timer1 Compare Match C Handler | |
jmp DUMMY_IT ; Timer3 Capture Event Handler | |
jmp DUMMY_IT ; Timer3 Compare Match A Handler | |
jmp DUMMY_IT ; Timer3 Compare Match B Handler | |
jmp DUMMY_IT ; Timer3 Compare Match C Handler | |
jmp DUMMY_IT ; Timer3 Overflow Handler | |
jmp DUMMY_IT ; USART1 RX Complete Handler | |
jmp DUMMY_IT ; USART1 Data Register Empty Hanlder | |
jmp DUMMY_IT ; USART1 TX Complete Handler | |
jmp DUMMY_IT ; Two-wire Serial Interface Handler | |
jmp DUMMY_IT ; Store Program Memory Ready Handler | |
.org $0046 | |
;**************************************************************** | |
;* DUMMY_IT interrupt handler -- CPU hangup with LED pattern | |
;* (This way unhandled interrupts will be noticed) | |
;< többi IT kezelõ a fájl végére! > | |
DUMMY_IT: | |
ldi r16, 0xFF ; LED pattern: *- | |
out DDRC, r16 ; -* | |
ldi r16, 0xA5 ; *- | |
out PORTC, r16 ; -* | |
DUMMY_LOOP: | |
rjmp DUMMY_LOOP ; endless loop | |
;< többi IT kezelõ a fájl végére! > | |
;*************************************************************** | |
;* MAIN program, Initialisation part | |
.org $004B; | |
RESET: | |
;* Stack Pointer init, | |
; Set stack pointer to top of RAM | |
ldi temp, LOW(RAMEND) ; RAMEND = "max address in RAM" | |
out SPL, temp ; RAMEND value in "m128def.inc" | |
ldi temp, HIGH(RAMEND) | |
out SPH, temp | |
M_INIT: | |
;< ki- és bemenetek inicializálása stb > | |
;*************************************************************** | |
;* MAIN program, Endless loop part | |
M_LOOP: | |
;< fõciklus > | |
jmp M_LOOP ; Endless Loop | |
;*************************************************************** | |
;* Subroutines, Interrupt routines |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment