-
Thread
Was benötige ich um einen 8086 in Assembbler zu programmieren ?
EPROMs kann man auch Statische RAMs (z.B. 6264) mit Pufferbatterie verwenden. Oder EEPROMs, wie den 28C64.
Percy N. schrieb im Beitrag #6481831: > Demnach wäre also die olle IBM eher akkufrei als AVR. AVR hat keinen Akku.
-
Thread
AVR und der Umgang mit C++
jmp 0x7c ; 0x7c <__bad_interrupt> 60: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt> 64: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt> 00000068 <__ctors_end>: 68: 11 24 eor r1, r1 6a: 1f be out 0x3f, r1 ; 63 6c: cf ef ldi r28, 0xFF ; 255
r24 ; 0x03 spi_init(); 282: 0e 94 04 01 call 0x208 ; 0x208 <_Z8spi_initv> __builtin_avr_delay_cycles(__ticks_dc); 286: 8f e3 ldi r24, 0x3F ; 63 288: 9c e9 ldi r25, 0x9C ; 156 28a: 01 97 sbiw r24, 0x01 ; 1 28c: f1 f7 brne .-4 ; 0x28a
-
Thread
Maskenprogrammierten 80c51BH auslesen?
Dazu bräuchte ich dann wohl noch ein Latch (welches?)? Was genau soll das Programm machen außer /EA wider auf Masse zu legen? Ich habe leider keine Möglichkeit EPROMs zu brennen. Ginge es auch mit einem AVR-µC (STK 500 ist vorhanden). Also praktisch dass der AVR-µC dem 80C51 ein EPROM vorgaukelt
Dieser Speicher sollte größer sein als der interne ROM, damit die Adressierung einfacher ist. Der AT28C64 (EEPROM) sollte passen. Diesen kannst du ohne EPROM-Brenner, wie ein normales SRAM beschreiben. Du springst beim Resetvektor in dein Programm, das im Speicher hinter dem internen Speicher stehen
-
Thread
Noch ein Taschenrechner auf ATMega Basis
und RCL benutzt und sich dieses Programm in einer Endlosschleife befindet, dann ist der EEPROM des AVR bald hinüber :-(
Diskussion. Als Randbedingungen halte ich mal die folgenden Komponenten fest. - Atemga 1284 - FRAM FM 24C64B-G - Micro-SD - USB (Mini/Micro/USB-C) incl. Ladeelektronik und USB/Seriell-Wandler - Display EA DOGS104-A - 5x8 Matrix für Keypad (somit gibt es HP42 oder WP34S Kompatibilität bezüglich der Tastenanordnung
-
Thread
[Sammelbestellung] µC-Board + RAM
zusammen, Preise für SRAM: 512 k x 8 (4 Mbit): ca. 3,00€ 512 k x 16 (8 Mbit): ca. 3,50€ 4 M x 16 (64 Mbit): ca. 4,75€ Besteht Interesse an einem "Breakout-Board" mit einem µC + RAM? Der CPU-Core wäre noch festzulegen: ARM, AVR, PIC, ... Ich kann mir vorstellen, dass man ab 1000 Stück in China
optional bestücken, mal sehen. Als "Formfaktor" bin ich immer noch bei der "Briefmarke", hier ca. 28 x 37 mm². Kosten für ein Einzelstück: Ca. 6,00€: ATXMEGA64A1U + 8MiB SDRAM + Spannungsregler + Hühnerfutter: Ca. 3,40€: PCB vom Platinensammler ≈ 8,40€ Klingt gut.
-
Thread
pointer struct parameter übergabe / fehler?
files/winavr-20070525/bin/../lib/gcc/avr/4.1.2/../../../../avr/lib/avr5\libc.a(mulsf3x.o) (__fp_nanx) c:/program files/winavr-20070525/bin/../lib/gcc/avr/4.1.2/../../../../avr/lib/avr5\libc.a(fp_split.o) c:/
ldi r24, 0x00 ; 0 e6: 90 e0 ldi r25, 0x00 ; 0 e8: df 91 pop r29 ea: cf 91 pop r28 ec: 08 95 ret 000000ee <square>: ee: 9b 01 ac 01 0c 94 7b 00 ......{. 000000f6 <__mulsf3>: f6: 67 d0 rcall .+206
-
Thread
Pac Man mit dem ATmega8
Na ja, der eine AVR muß ja nur Daten lesen und ausgeben und sollte nicht dabei gestört werden. Der 2. AVR muß zum Grafikaufbau nicht nur schreiben, sondern bei Bitverknüpfungen (OR, AND) für einzelne zu setzende Pixel
Also, ich hatte auch überlegt. Ein Chip liest Bilder von EEProm in RAM. Anderer AVR sendet Befehl mit Bildnummer u. Position an GrafikAVR. GrafikAVR fügt Bild ein und zeigt an. Bsp. Befehl: 1011010-111111-101010-1 BildNR.-Pos.X -Pos.Y -Tranzparenz?
-
Thread
AVR64DD32, UART-Ausgabe bleibt hängen, Assembler
wenige Ausnahmen. Sorry, aber du bist nicht mehr auf dem aktuellen Stand. Siehe Datenblatt des AVR64DD32, S. 134; dort wird es in Satz 2 sehr deutlich: "15.3.2.4 Interrupt Priority AVR64DD32/28 CPUINT - CPU Interrupt Controller All interrupt vectors are assigned to one of three possible priority
anderen? Es ist ja eine große Familie. Mit entsprechender CLKCTRL-Anpassung läuft es auch auf einem AVR32EA28, legt man das TCA-Fragment still auch auf einem AVR16EB28; von den DA und DB ganz zu schweigen. Und sicher klappt es auch mit einem der neueren ATtinies. Allerdings halte ich ein Problem mit
-
Thread
Quarz und Clock bei AVR series 1 (z.B. Attiny 816)
Beitrag #7536305: > wenn das Upgrade sinnvoller auf eine andere CPU gehen > sollte (wobei ich in der AVR-Familie bleiben will) Für universelle Verwendung auf minimalem (aber bequem lötbaren) SMD Raum empfehle ich die neuen AVR64DD14 aufwärts, bei mehr Platz und Pinbedarf genauso die AVR128-DB Reihe
Beide Quarze möglich z.B. bei: AVR32EA28/32/48 AVR16EA28/32/48
-
Thread
Probleme win WinAVR 20081205
PWM_value; PORTD ^= (1<<PD6); // LED rot toggle cc: c2 e3 ldi r28, 0x32 ; 50 ce: d0 e0 ldi r29, 0x00 ; 0 d0: 00 e4 ldi r16, 0x40 ; 64 PWM_value = uart0_rx_getchar(); uart0_tx_putchar(PWM_value); if ( (PWM_value
rot toggle besteht insgesamt aus zwei verteilten Codeblöcken, einmal cc: c2 e3 ldi r28, 0x32 ; 50 ce: d0 e0 ldi r29, 0x00 ; 0 d0: 00 e4 ldi r16, 0x40 ; 64 als Initialisierung vor der Schleife, und dann e6: 88 81 ld r24, Y e8: 80 27
-
Thread
Ist das ein Bug im Compiler?
ldi r28, 0x43 ; 67 64c2: d7 e3 ldi r29, 0x37 ; 55 64c4: 6f e0 ldi r22, 0x0F ; 15 64c6: 7e e3 ldi r23, 0x3E ; 62 64c8: 41 e0 ldi
if (!mask) { mask = 1; 64ec: 41 e0 ldi r20, 0x01 ; 1 Pointerverschieben 64ee: 34 96 adiw r30, 0x04 ; 4 64f0: 24 96 adiw r28, 0x04 ; 4 64f2: 6f 5f
-
Thread
CP/M auf Atmega8515 mit XMEM
weil CP/M mit nur 32 KB RAM keinen Spaß macht. Deswegen auch der zusätzliche 74xx-Baustein (A15 vom AVR geht einmal auf /CS vom einen Baustein, und durch einen Inverter auf /CS vom anderen Baustein). Aber ja, das kann man auch besser machen, z.B. mit einem 64 KB oder 128 KB SRAM - dann reichen drei
belegt die Sektoren 24576 bis 40959 (12 bis 20 MB) C: belegt die Sektoren 40960 bis 57343 (20 bis 28 MB) D: belegt die Sektoren 57344 bis 73727 (28 bis 36 MB) Alle Laufwerke sind 8 MB groß und haben die gleiche Geometrie; die erste Spur (64 Sektoren x 512 Byte = 32 KB) ist für den Bootcode (BDOS
-
Thread
Was für eine Art von ROM?
Passend wäre wohl ein EEPROM - weil man die Löcheinrichtung spart. So etwas wie 28C64 (8 K x 8) bekommt man noch als DIP28. Wenn der Speicher seriell (SPI) sein darf, gibt es auch welche im DIP8 und sehr günstig.
Wenn ich 16 Bit benötige Eine TTL CPU mit 16Bit? Hut ab! > 3. Sind alle EEPROM-Programmer mit dem 28C64 kompatibel oder muss man > auf bestimmte Angaben im Datenblatt achten? Zwei Fragen, zwei Antworten: Nein. Ja: in der Liste der unterstützten Bausteine muss der 28C64 stehen. Idealerweise vom
-
Thread
Max233: Falsche Characters
A0 AF 30 19:09:19 hypertrm.exe IRP_MJ_READ Serial0 SUCCESS Length 80: BE 7D 72 65 7D 2F 28 70 6F 7D 73 69 7B 6D 6C A9 BB 23 20 BC 3F 31 19:09:19 hypertrm.exe IRP_MJ_READ Serial0 SUCCESS Length 80: B0 BF 3F 30 B0 BF 2D 20 64 BB 3F 30 B8 BF 3F 30 B8 BF 0D 8A ED 32 19:09:19 hypertrm.exe
AD BB BF B7 3F 47 19:09:24 hypertrm.exe IRP_MJ_READ Serial0 SUCCESS Length 80: 6D 61 6E 64 B0 6E 6D 6F 75 BB BF 7B 6F 6F 77 BD AF 77 75 77 AF 48 19:09:24 hypertrm.exe IRP_MJ_READ Serial0 SUCCESS Length 80: 3D 3D 35 32 30 30 EA ED 7B 5F 55 BB 3F 5B 5B 4D 35 33 35 32 BE 49 19:
-
Thread
Reziproker Frequenzzähler+ Optimierte 64bit uint Routinen
gerechnet werden - was mal eben locker den Bereich einer 32-Bit Zahl sprengt. Die libgcc-Routinen für 64 bit Zahlen sind leider viel zu groß für einen ATtiny, deshalb habe ich noch ein paar Spezialroutinen in Assembler geschrieben. Zu finden unter http://www.mshopf.de/proj/avr/uint64_ops.html * Bit
0120 38EC ldi r19,lo8(-56) 1183 0122 47E1 ldi r20,lo8(23) 1184 0124 58EA ldi r21,lo8(-88) 1185 0126 64E0 ldi r22,lo8(4) 1186 0128 70E0 ldi r23,lo8(0) 1187 012a 80E0 ldi r24,lo8(0) 1188 012c 90E0 ldi r25,lo8(0) 1189 012e
-
Thread
GCC Compiler + ATXMEGA E = Schrott?
ein atxmegaE unterscheidet sich bei mir nicht von einem A: [avrasm] 000000da <main>: #include <avr/io.h> uint8_t a=1; int main(void) { da: cf 93 push r28 dc: df 93 push r29 de: cd b7 in r28, 0x3d ; 61 e0: de b7 in r29, 0x3e ; 62 while
Bitte schön: [c] #include <avr/io.h> #include <avr/sleep.h> #include <avr/interrupt.h> uint8_t a=1; uint16_t Millisekunden; uint8_t Sekunden; uint8_t Trigger_Sekunde; uint8_t Trigger_Millisekunden; void initialisiere_System
-
Thread
Transistortester AVR
keine gute Idee. Einmal versehentlich einen Elko mit Restspannung >5V angeschlossen, und schon ist der AVR kaputt. Deshalb ist DIL28 die bessere Wahl, man kann ihn auswechseln. Aber es soll jeder so machen wie er mag... @Karl-Heinz: Scheenes Ding, danke... ...
-DPULLUP_DISABLE -DANZ_MESS=25 -DPOWER_OFF -DBAT_CHECK -DBAT_OUT=150 -DBAT_POOR=64 -DF_CPU=8000000UL -mmcu=atmega168 -gdwarf-2 -std=gnu99 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT main.o -MF dep/main.o.d -DLANG_ENGLISH -c ../main.c avr-gcc
-
Thread
CRC oder einfach die Daten doppelt schicken?
Die fortlaufende Nummer ist am Ende des Telegramms zu sehen: [pre] 2021-05-20 11:11:47 68:c6:3a:ea:86:4f -L-S-. E 29oC 3298mV 2497mV 5638 2021-05-20 11:11:50 68:c6:3a:ea:86:4f -.-S-. E 29oC 3272mV 2497mV 5639 Routerausfall (ETH) 2021-05-20 2021-05-22 12:11:59 68:c6:3a:ea:86:4f ELRS.. P 28oC 3409mV 2497mV 0 2021-05-22 12:12:20 68:c6:3a:ea:86:4f -L-.-. E 28oC 3384mV 2497mV 1 [/pre]
-
Thread
Tutorial 10x10x10 LED-Cube
* '* EA0 - 0 1 0 1 0 1 0 1 1 0 * '* EA1 - 0 0 1 1 0 0 1 1 0 1 * '* EA2 - 0 0 0 0 1 1 1 1 0 0
kann dir jetzt nicht folgen.... EA0 bis EA3 müssen am 13ten Latch an den Pins 16-19 sein....weil im Bitmuster auch die letzten 4 Bits die Ebenen steuern...
-
Thread
Nach entfernen von Redundanz größer?
<lcdNumberPad+0x4c> c8: c4 36 cpi r28, 0x64 ; 100 ca: d1 05 cpc r29, r1 cc: 10 f0 brcs .+4 ; 0xd2 <lcdNumberPad+0x36> ce: 03 e0 ldi r16, 0x03 ; 3 d0: 0b c0 rjmp .+22 ; 0xe8
; 0x90 <lcdData> e6: 11 50 subi r17, 0x01 ; 1 e8: 01 17 cp r16, r17 ea: d0 f3 brcs .-12 ; 0xe0 <lcdNumberPad+0x44> ec: ce 01 movw r24, r28 ee: 0e 94 4b 00 call 0x96 ; 0x96 <lcdDigits> f2: 09 c0 rjmp .+18 ; 0x106 <lcdNumberPad
-
Thread
Brauche Hilfe Oled Display 2x16 EA W162-X3LG
Kannst ja auch hier mal schauen - Goggle / Chrome etc. übersetzen das gerne für Dich :-) http://www.avr-asm-tutorial.net/avr_en/apps/lcd/lcd.html
oled-serial-character-display-module-screen-yellow-on-black >müsste identisch sein-Chipsatz ist US2066. Der Controller hat aber nur 3 Zeichensätze. Die EA-Module aber 4, genau wie der RS0012. MfG Spess
-
Thread
ATMEGA328P auf Arduino Uno
Arduino-Programierumgebung 0.22 getestet. Bootlader Uno: ATmegaBOOT_168_atmega328_pro_8MHz.hex in C:\AVR\Arduino_stuff\arduino-0022\arduino-0022\hardware\arduino\bootloaders\atmega Firmware in zugehörigen ATMega8U2 des Uno: C:\AVR\Arduino_stuff\arduino-0022\arduino-0022\hardware\arduino\firmwares
Arduino as ISP eingestellt, aber auch schon die anderen Punkte ausprobiert. Wäre ja auch unlogisch wenn AVR ISP funktionieren würde!
-
Thread
LCD Display funktioniert nicht
fleury */ /*@{*/ #if (__GNUC__ * 100 + __GNUC_MINOR__) < 303 #error "This library requires AVR-GCC 3.3 or later, update to newer AVR-GCC compiler !" #endif #include <inttypes.h> #include <avr/pgmspace.h> /** * @name Definitions for MCU Clock Frequency * Adapt the MCU clock frequency
*/ #define LCD_E_PIN 2 /**< pin for Enable line */ #elif defined(__AVR_AT90S4414__) || defined(__AVR_AT90S8515__) || defined(__AVR_ATmega64__) || \ defined(__AVR_ATmega8515__)|| defined(__AVR_ATmega103__) || defined(__AVR_ATmega128__) || \ defined(__AVR_ATmega161
-
Thread
uint32_t variable byteweise füllen
r29 2 7a: cf 91 pop r28 2 7c: 1f 91 pop r17 2 7e: 08 95 ret[/avrasm] [avrasm]00000080 <bar>: 80: cf 93 push r28 2 82: df 93
0424 lsls r4, r4, #16 1 16: f7ff fffe bl 0 <nextByte> 1 1a: ea44 2406 orr.w r4, r4, r6, lsl #8 1 1e: 432c orrs r4, r5 1 20: ea44 6000 orr.w r0, r4, r0, lsl #24 1 24: bd70 pop {r4, r5, r6, pc} 5 26:
-
Thread
Zeichensuppe von Spambot in URL
+++++Result:+%F0%E5%F1%F3%F0%F1+%E4%EB%FF+%EF%EE%F1%F2%E8%ED%E3%E0+%ED%E5%EF%F0%E8%E3%EE%E4%E5%ED+%28%EB%E8%E1%EE+%EE%F2%F1%F3%F2%F1%F2%E2%F3%E5%F2+%EF%EE%E4%EA%EB%FE%F7%E5%ED%E8%E5+%EA+%E8%ED%F2%E5%F0%ED%E5%F2%F3%29[/code] Gut dachte mir, das sieht URL-kodiert aus. Durch urldecode gejagt, nichts.
ich gerade mal probiert, sehr sinnvoll sieht das nicht aus. Ich muss allerdings sagen ich kann nur AVR-ASM. [code] F0 E5 F1 F3 F0 F1 E4 EB FF EF EE F1 F2 E8 ED E3 E0 ED E5 EF F0 E8 E3 EE E4 E5 ED 28 EB E8 E1 EE EE F2 F1 F3 F2 F1 F2 E2 F3 E5 F2 EF EE E4 EA EB FE F7 E5 ED E8 E5 EA E8 ED F2 E5 F0 ED
-
Thread
Display: Unterschied zwischen character mode und graphic mode?
Hallo, ich habe ein OLED-Display EA W162-X9LG: http://cdn-reichelt.de/documents/datenblatt/A400/DS_OLED_EA.pdf In dem Datenblatt gibt es eine Tabelle zum Befehlssatz. Dort steht, dass ich zwischen character mode und graphic mode wählen
Byte des Strings nach R0 lesen ist bloß ungenügend klar formuliert Zitat: "http://www.avr-asm-tutorial.net/avr_de/testlpm.html" lesen: LPM ; Lese das Byte, auf das Zeiger Z zeigt in Register R0 Zufrieden?
-
Thread
Arduino Bit Shifting Problem
OK: AVR-GCC9.2.0, Optimierung = Os [avrasm] uint8_t MirrorByte ( const uint8_t ToMirrorByte ){ 52: cf 93 push r28 54: df 93 push r29 56: 30 e0 ldi r19, 0x00 ; 0
sbrc r24, 4 e6: 28 60 ori r18, 0x08 ; 8 e8: 85 fd sbrc r24, 5 ea: 24 60 ori r18, 0x04 ; 4 ec: 86 fd sbrc r24, 6 ee: 22 60 ori r18, 0x02 ; 2 f0: 88 0f
-
Thread
Stack Überschreiber beim Rechnen mit uint64_t
Peter II schrieb im Beitrag #2410918: > warum brauchen 64bit denn 256byte ram? Weil es im Map-File so steht: [pre] .data 0x00800100 0x100 c:/avr/winavr/bin/../lib/gcc/avr/4.3.3/avr5\libgcc.a(_clz.o) 0x00800100
return 1; } #endif long long a, b; int main (void) { return a/b; } [/c] [code] $ avr-gcc div64.c -Os && avr-size a.out text data bss dec hex filename 4392 0 16 4408 1138 a.out $ avr-gcc div64.c -Os -DMYDIV && avr-size a.out text data
-
Thread
Atmel Studio 7 schnarchlangsam
Leistungsdaten meines Laptops: Prozessor: AMD E-350 1.6GHz Ram: 4GB HD: SATA 500GB System: Win7, 64 Bit Startzeit Atmel Studio: 28 Sekunden Zeit, die gebraucht wird, wenn man ein Projekt öffnet: 32 Sekunden Ram-Auslastung:1.95GB ( also nur die Hälfte des verfügbaren Rams ) Könntet Ihr mal die
@ chris_ (Gast) >Prozessor: AMD E-350 1.6GHz >Ram: 4GB >HD: SATA 500GB >System: Win7, 64 Bit Ich hab nur einen alten Core Duo2 mit 2x1,5GHz, 2GBRAm, WinXP >Startzeit Atmel Studio: 28 Sekunden Bei mir 45-60s >Zeit, die gebraucht wird, wenn man ein Projekt öffnet: 32 Sekunden
-
Thread
Jump zum Bootloader beim XMEGA Gesperrt
Debugger. Jedoch habe ich mit dem Debugger noch so meine Probleme. Ich downloade gerade das aktuelle AVR Studio.
Hi, vielleicht kannst Du Dir da etwas herauspicken: http://www.avr-praxis.de/forum/entry.php?77-Starten-des-Bootloaders-aus-der-eigenen-Applikation Hier nochmal besser beschrieben: http://www.avr-praxis.de/forum/showthread.php?759-Programmer-und-Developmenttool-f
-
Thread
Bug in WinAVR oder liegts an mir?
ldi r24, 0x02 ; 2 64: 91 e0 ldi r25, 0x01 ; 1 66: ea df rcall .-44 ; 0x3c <testmich> for (;;) asm("nop"); 68: 00 00 nop 6a: fe cf rjmp .-4 ; 0x68 <main
64: cf 91 pop r28 66: ff 90 pop r15 68: ef 90 pop r14 6a: 08 95 ret 0000006c <main>: zeit_t zeit; zeit.x.minuten = 1; zeit.x.sekunden = 2;
-
Thread
RWE Smarthome
0x0000000 = 0 / 1024 = 0 BL - 0x0080000 = 524288 / 1024 = 512 (starting with "FE 03 00 EA 00") - 0x0360000 = 3538944 / 1024 = 3456 (starting with "FE 03 00 EA 00") - 0x3475800 = 55007232 / 1024 = 53718 (starting with "FE 03 00 EA 00") Das DIV 1024 mache ich, weil ich mit "dd" zum splitten
Toolchain für die CCU ist hier. > > http://www.eq-3.de/software.html Das Funkmodul hängt nur am AVR. TRX868 <-SPI-> AVR <-UART-> ARM Ich gehe davon aus, dass die unteren Protokollschichten im AVR sind. Ich kann mich aber auch irren. Vielleicht kann sich ja mal jemand die Mühe machen und
-
Thread
schnell binär nach bcd wandeln
50 subi r18, 0x00 ; 0 9e8: 3f 4f sbci r19, 0xFF ; 255 bin-=100; 9ea: 84 56 subi r24, 0x64 ; 100 9ec: 90 40 sbci r25, 0x00 ; 0 9ee: 84 36 cpi r24, 0x64 ; 100 9f0: 91 05 cpc r25, r1 9f2: c8 f7 brcc .-14
dec r0 9e2: e2 f7 brpl .-8 ; 0x9dc <bintobcd+0x1c> 9e4: c8 2b or r28, r24 9e6: d9 2b or r29, r25 bin/=10; 9e8: c9 01 movw r24, r18 9ea: 6a e0 ldi r22, 0x0A ; 10 9ec: 70 e0 ldi r23, 0x00 ; 0 9ee: 0e 94 02 05
-
Thread
ISR() ->error: redefinition of 'ISR'
@Simon #include <avr/pgmspace.h> #include <avr/io.h> #include <stdio.h> #include "uart.h" in die uart.c
21 c0 rjmp .+66 ; 0x68 <__bad_interrupt> 26: 20 c0 rjmp .+64 ; 0x68 <__bad_interrupt> 28: 1f c0 rjmp .+62 ; 0x68 <__bad_interrupt> 2a: 1e c0 rjmp .+60 ; 0x68 <__bad_interrupt> 2c: 1d c0
-
Thread
Erste 65C02 Basteleien.
Peter D. schrieb im Beitrag #5777564: > Als 8Bit-CPU dürfte der Z80 interessanter sein. Wie AVR vs. Pic Mit anderen Worten: Du hattest keine Apple II, C64, Atari o.ä., sondern einen TRS80, ZX81 oder was auch immer. ;-) Ich fand die Adressierungsarten des 6502 immer spannend: Indiziert/Indirekt
viewtopic.php?f=4&t=3458&hilit=romulus+1st da es für 11MHz beim ROM schwierig wird habe ich dem 6502 einen AVR spendiert der ihm beim Booten ein paar Instruktionen liefert und so das "BootROM" liefert. Der AVR kontrolliert den Takt, d.h. da hat der AVR keine Eile. Sobald das "BootROM" über diesen Weg geladen
-
Thread
RNmega2560 via Bootloader programmieren
1.) HEX file in ELF konvertieren: [code] avr-objcopy -I ihex -O elf32-avr datei.hex datei.elf [/code] 2.) alle Sektionen der ELF disassemblieren (weil in der hex nicht mehr bekannt war, was .text und was .data war) [code] avr-objdump -D datei.elf
ldi r24, 0xFF ; 255 3f802: 8d bf out 0x3d, r24 ; 61 3f804: c8 ed ldi r28, 0xD8 ; 216 3f806: e0 ea ldi r30, 0xA0 ; 160 3f808: 4e 2e mov r4, r30 3f80a: 81 e2 ldi r24, 0x21 ; 33 3f80c: 8e bf out 0x3e, r24 ; 62 3f80e
-
Thread
KIM-1 in AVR?
das letztens mal für VC20 gesehen ,ob hier im Forum k.a. und es gibt diese Spiele Joysticks mit C64 emulation für ca.20€ da ist irgendein AVR verbaut. mfg
@alle: Thomas Winkler hat eine 6502 Emulation für AVR erstellt, die läuft.. ist aber für den damals gedachten Zweck (1541 Emulation) etwas zu langsam.. @Dr.PillePalle: Im sog. 64DTV Joystick mit ca. 30 C64 Programmen werkelt kein AVR, sondern ein custom
-
Thread
DOGM163B, 5V, SPI: Initialisierung geht nicht
, 25, 26, 30...37 GND: Pin 23, 27 NC: Pin 21, 22 MOSI-Signal vom AVR: Pin 28 SCK-Signal vom AVR: Pin 29 RS-Signal vom AVR: Pin 39 CS-Signal vom AVR: Pin 38 Hier die Initialisierung gemäß Display-Controller, die eigentlich so funktionieren sollte (die Zeit der
wie folgt: > +5V: Pin 24, 25, 26, 30...37 > GND: Pin 23, 27 > NC: Pin 21, 22 > MOSI-Signal vom AVR: Pin 28 > SCK-Signal vom AVR: Pin 29 > RS-Signal vom AVR: Pin 39 > CS-Signal vom AVR: Pin 38 Was ist mit Reset Pin 40? Sollte auch auf +5V. fchk
-
Thread
Bizarrer Firmware crash - ATmega4808. Wie Debuggen?
Auch das Assembler Listing der beiden Versionen zu Vergleichen werde ich umsetzen. Wie man beim AVR den "Stack hochsetzen" kann weiß ich nicht. Ich glaube auch nicht dass es einen Überlauf des RAMs in irgendeiner Form gibt. Denn der ATmega4808 hat 6kB RAM, der AVR64DD32 hat 8kB. Auf beiden Prozessoren
bool myMAC::radio_receive(bool blocking) ; ; Source Code Zeile: rxpacket.FEI = radio.FEI; 41ea: 80 91 b2 28 lds r24, 0x28B2 ; 0x8028b2 <_ZN12GenericRadio3FEIE> 41ee: 90 91 b3 28 lds r25, 0x28B3 ; 0x8028b3 <_ZN12GenericRadio3FEIE+0x1> 41f2: 58 01 movw r10, r16 ; this
-
Thread
AVR Atmega88PA Interrupts werden nich ausgeführt, sondern "soft"-Reset
Routine wird auch nicht ausgeführt. Bei anderen Interupts passiert auch das gleiche. Eclipse CDT mit AVR Plugin avr-libc avrdude avr-gcc gcc version 4.3.3 (GCC) Ubuntu 9.10 Hier der Code: [c] #include <avr/io.h> #include <avr/interrupt.h> ISR(TIMER1_COMPA_vect) { TCNT1H = 0; TCNT1L =
Wie gesagt, gleiches Problem hatte ich hier auch schon. Ursache war der Umstieg auf einen grösseren AVR (16 auf 64 oder so). Und damit war ich wohl zu spät :-) Vielleicht solltest du auch noch -mmcu= an deine Hardware anpassen.
-
Thread
250 kHz PWM -> ¿Filter? -> micro speaker
0x93, 0x90, 0x8C, 0x89, 0x86, 0x83, 0x80, 0x7D, 0x7A, 0x77, 0x74, 0x70, 0x6D, 0x6A, 0x67, 0x64, 0x61, 0x5E, 0x5B, 0x58, 0x55, 0x52, 0x4F, 0x4D, 0x4A, 0x47, 0x44, 0x41, 0x3F, 0x3C, 0x39, 0x37, 0x34, 0x32, 0x2F, 0x2D, 0x2B, 0x28, 0x26, 0x24, 0x22, 0x20, 0x1E, 0x1C, 0x1A, 0x18,
0x0D, 0x0F, 0x10, 0x11, 0x13, 0x15, 0x16, 0x18, 0x1A, 0x1C, 0x1E, 0x20, 0x22, 0x24, 0x26, 0x28, 0x2B, 0x2D, 0x2F, 0x32, 0x34, 0x37, 0x39, 0x3C, 0x3F, 0x41, 0x44, 0x47, 0x4A, 0x4D, 0x4F, 0x52, 0x55, 0x58, 0x5B, 0x5E, 0x61, 0x64, 0x67, 0x6A, 0x6D, 0x70, 0x74, 0x77, 0x7A, 0x7D
-
Thread
Anfängerfrage avr/interrupt.h
stefan@stefanpc:~/Downloads$ avr-gcc -mmcu=atmega328 -O1 test.c stefan@stefanpc:~/Downloads$ avr-objdump -h -S a.out a.out: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn
jmp 0x7c ; 0x7c <__bad_interrupt> 60: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt> 64: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt> 00000068 <__ctors_end>: 68: 11 24 eor r1, r1 6a: 1f be out 0x3f, r1 ; 63 6c: cf ef ldi r28, 0xFF ; 255
-
Thread
Thermomix Rezeptchips
8d9b a3e1 1c19 9c77 7b3d 6fd8 5000350 1a3e 9fb9 db41 9b64 6094 a79b ea62 9fdb 5000360 54d0 87da b14d e3f5 20a1 55a7 dea8 38d6 5000370 3454 298d a8ea 96da 614c b721 a548 989b 5000380 07a0 5df8 78a4 854e 8092 e65b c035 9cb2 5000390 b902 4c35 6efc 0b95 0443
11ec 50008e0 d8dc 73c1 8649 e484 b499 815a ff2d 7cda 50008f0 7106 ff4f f34b 6db8 2e96 b725 a77b e4ea 5000900 3d5d 1877 61f3 f725 903c a28e 48c1 1fcb 5000910 3392 f9d7 b081 f8b0 e03f 82ee dd6a 9eff 5000920 457b 1c20 5f59 8c00 f24e b297 4876 5ba9 5000930 ff04 b638 75fe 882d 4edf df2b 64d3 90fd 5000940
-
Thread
Benörige Hilfe bei Grafikdisplay LM240120
= P3^7; sbit _RD = P3^1; und folgende Zeilen in der main: void main() { SP=0x60; EA=0; ...
_RD = P3^1; > > und folgende Zeilen in der main: > > void main() > { > SP=0x60; > EA=0; > ... SP ist der Stackpointer EA ist das *E*nable *A*ll Interrupts Flag Mit sbit XYZ = P<x>^<Y> definiert man sich einen direkten Bitzugriff auf den Pin <Y> vom Port <X>. Das in AVR Code
-
Thread
DOG-M Display über SPI
RS kannst du an jeden IO Pin am AVR anschließen, nimm einfach einen den du sonst nicht brauchst. RS bestimmt ob die Daten die der AVR gerade ans Display schickt Steuerkommandos sind oder darzustellende Zeichen. MISO heißt Master In
Also am Pin 28 D7 des Displays ist MSB. Z.B. PortD,7 <-------> D7