Gefunden für eeprom empty 0xff - Zum Elektronik Forum |
| 1 - ATMEGA32 liest nur 0xFF aus dem EEPROM -- ATMEGA32 liest nur 0xFF aus dem EEPROM | |||
| |||
| 2 - ATMega 32 INT2 löst nicht aus -- ATMega 32 INT2 löst nicht aus | |||
| Hallo!
Ich habe hier eine Schaltung zusammengebaut mit der ich eine PC AT Tastatur an einen ATMega32 anschließen möchte. Jetzt wollte ich erstmal den INT2 einschalten und mir die Flanken des Taktsignals zählen lassen. Jedoch löst das Clock-Signal der Tastatur am INT2 keinen Interrupt aus. Schaltung ist wie folgt: Am Controller hängt ein LC-Display an Port A, das funktioniert soweit einwandfrei. An PORT B hängt eine Lochrasterplatine mit der Anschlussbuchse für die Tastatur und 2 LEDs und zwar folgenderweise: PB7 = LED rot PB6 = LED grün PB5 = NC PB4 = NC PB3 = NC PB2 = KEYBOARD Clock = INT2 PB1 = NC PB0 = KEYBOARD Data Ich habe jehweils einen 10kOhm Pullupwiderstand an KEYBOARD Data und KEYBOARD Clock. Schaut auch sehr gut aus auf dem Oszilloskop. Hab auch direkt am Controllerpin PIN3 gemessen, das Clocksignal kommt bis zum µC durch. Jetzt wollte ich den INT2 einstellen, hab mich da auch soweit ans Datenblatt gehalten. MCUCSR Bit6 = 0 -> INT2 löst bei fallender Flanke aus GICR Bit5 = 1 -> INT2 aktiviert SEI Befehl um I-Flag im SREG zu setzen hab ich verwendet. In der Interrupttabelle steht rjmp EXT_INT2 die sprungmarke existiert auch und wird mir RETI beend... | |||
3 - Probleme beim Programmieren mit STK500 -- Probleme beim Programmieren mit STK500 | |||
.include m8def.inc .org $000 rjmp init ;Program/Reset Handler reti ;INT0addr=$001 ; External Interrupt0 Vector Address reti ;INT1addr=$002 ; External Interrupt1 Vector Address reti ;OC2addr =$003 ; Output Compare2 Interrupt Vector Address reti ;OVF2addr=$004 ; Overflow2 Interrupt Vector Address reti ;ICP1addr=$005 ; Input Capture1 Interrupt Vector Address reti ;OC1Aaddr=$006 ; Output Compare1A Interrupt Vector Address reti ;OC1Baddr=$007 ; Output Compare1B Interrupt Vector Address reti ;OVF1addr=$008 ; Overflow1 Interrupt Vector Address reti ;OVF0addr=$009 ; Overflow0 Interrupt Vector Address reti ;SPIaddr =$00a ; SPI Interrupt Vector Address reti ;URXCaddr=$00b ; USART Receive Complete Interrupt Vector Address reti ;UDREaddr=$00c ; USART Data Register Empty Interrupt Vector Address reti ;UTXCaddr=$00d ; USART Transmit Complete Interrupt Vector Address reti ;ADCCaddr=$00e ; ADC Interrupt Vector Address reti ;ERDYaddr=$00f ; EEPROM Interrupt Vector Address reti ;ACIaddr =$010 ; Analog Comparator Interrupt Vector Address reti ;TWIaddr =$011 ; Irq. vector address for Two-Wire Interface reti ;SPMaddr =$012 ; SPM complete Interrupt Vector Address reti ;SPMRaddr =$012 ; SPM complete Interru... | |||
| 4 - Countdown Uhr -- Countdown Uhr | |||
| Das ASM - Beispiel:
.include tutorial/uart/2313def.inc ;Pfad zur Include-Datei ggf. anpassen .def temp = r18 .def counter = r17 .def fbin = r19 ;Ausgangswert .def tBCDL = r19 ;Obere Dezimalstelle .def tBCDH = r20 ;Untere Dezimalstelle .org 0000 rjmp reset ; RESET =$001 ;Reset RETI ; INT0addr=$001 ;External Interrupt0 Vector Address RETI ; INT1addr=$002 ;External Interrupt1 Vector Address RETI ; ICP1addr=$003 ;Input Capture1 Interrupt Vector Address RETI ; OC1Aaddr=$004 ;Output Compare1A Interrupt Vector Address rjmp check ; OVF1addr=$005 ;Overflow1 Interrupt Vector Address RETI ; OVF0addr=$006 ;Overflow0 Interrupt Vector Address RETI ; SPIaddr =$007 ;SPI Interrupt Vector Address RETI ; URXCaddr=$008 ;UART Receive Complete Interrupt Vector Address RETI ; UDREaddr=$009 ;UART Data Register Empty Interrupt Vector Address RETI ; UTXCaddr=$00a ;UART Transmit Complete Interrupt Vector Address RETI ; ADCCaddr =$00b ;ADC Interrupt Vector Address RETI ; ERDYaddr =$00c ;EEPROM Interrupt Vector Address RETI ; ACIaddr =$00d ;Analog Comparator Interrupt Vector Address reset: ;Stackpointer initialisieren ldi temp, RAMEND out SPL, temp |
|
Zum Ersatzteileshop Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation! gerechnet auf die letzten 30 Tage haben wir 8 Beiträge im Durchschnitt pro Tag heute wurden bisher 11 Beiträge verfasst 4 Besucher in den letzten 60 Sekunden alle 15.00 Sekunden ein neuer Besucher ---- logout ----su ---- logout ---- |