-
Thread
Wittig(welec) DSO W20xxA Open Source Firmware (Teil4) Gesperrt
in der jeweiligen Kanalsektion unterzubringen. Da bieten sich z.B. an: Speicherplatz 74/92/110/128 -> also nicht zusammenmergen. Gruß Hayo
hohen Takt (Prozessor quälen)? Ich verwende immer gern den miniDSS (KISS) http://www.myplace.nu/avr/minidds/index.htm Gruß Rainer
-
Thread
keine Breakpoints in ISR möglich
Flags, welche in den Routinen gesetzt werden, in der "main" Datei auslesen lassen) Ich benutze AVR Studio, Version: 4.18.716 Programmer ist ein AVR Dragon Könnt ihr mir weiterhelfen? Wieso werden die breakpoints nicht akzeptiert? Gibt es noch andere Einstellungen im AVR Studio, die ich beachten
Dein Codeschnippsel produziert bei mir: [pre] Build started 28.1.2011 at 22:44:34 avr-gcc -mmcu=at90can128 -Wall -gdwarf-2 -std=gnu99 -O0 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT breakpoints.o -MF dep/breakpoints.o.d -c ..
-
Thread
ATMega128 stürzt ab nachdem man Interrupts einschaltet.
kleine Testprogramm geschrieben: [c] #include <avr/io.h> #include <avr/interrupt.h> volatile unsigned int Counter; volatile unsigned int i; ISR( TIMER0_OVF_vect ) { Counter++; if( Counter == 10000 ) { i++; PORTC=(1<<i); if
Kontrolliere erstmal alle Fuse-Bits. Ich hab schon AVR's gehabt die haben von Werk an unterschiedliche Konfigurationen gehabt. Kannst du das Programm in einem anderen mega128 testen? Ansonsten fallen mir nur nicht definierte Interruptvektoren, Watchdog
-
Thread
200 I/Os Modular mit AVR verbinden
reichen die internen Schutzdioden für einen sicheren Betrieb aus. Bei einem Strobe-Signal sollen die am AVR anliegenden Pegel übernommen werden. Ein weiteres Latch soll bei einem Strobe-Signal die Schalter/Taster-Zustände einfrieren und dem AVR bereitstellen. (z.B. so lange die Strobe anliegt?!). Für
klar. Der Master soll jetzt aber den CAN-Bus und Ethernet bedienen. Muss ich jetzt z.B. einen AT90CAN128 nehmen und diesen mit SPI an einen ENC28J60 anbinden, oder kann ich auch zwei Controller (CAN und Ethernet) per SPI an einen normalen ATmega16 anbinden? Danke und schöne Grüße, Kai
-
Thread
AVRdude hängt beim flashen
AVR-Programmer Diamex DX-ISP http://www.wiesolator.de/index.php?area=AVR&topic=AVR-Progger%20Diamex%20DX-ISP "Dieses Programmiergerät wird über USB mit dem PC verbunden und kommuniziert über das STK500v2
=========================================== # Define programs and commands. SHELL = sh CC = avr-gcc OBJCOPY = avr-objcopy OBJDUMP = avr-objdump SIZE = avr-size AR = avr-ar rcs NM = avr-nm AVRDUDE = avrdude REMOVE = rm -f REMOVEDIR = rm -rf COPY = cp WINSHELL = cmd # Define Messages
-
Thread
JTAG != JTAG? Wieso gibt's für jeden µC einen anderes JTAG Programmiergerät?
Hi >Worin unterscheidet sich das AVR Programming Tool AT AVR ISP2 mit USB im >Vergleich zum AVR Dragon? >Abgesehen davon, daß der AVR Dragon etwa 20 € teurer ist? AVR ISP MKII : ISP AVR Dragon : ISP, HV-Programmierung, JTAG Debugging
User AVRs verwendet? Ich habe mit MSPs angefangen. Jetzt musste ich in der Firma mich mit einem AVR beschäftigen genauer einem AT90CAN128. Wenn ich dort die Debugfähigkeiten der beiden Prozessorarchitekturen gegenüberstelle muss ich sagen das der MSP430 sich um Längen besser debuggen lässt. Das
-
Thread
uC + 3 Schieberegister + 7-Segmentanzeige
Leute, ich hoffe ihr könnt mir helfen. Ich habe 4 Dateien Angehängt. 1. Schaltplan: AT90CAN128 + 3 Schieberegister + 3fache 7Segmentanzeige 2. BC56-13SURKWA_Ver1290387772: Datenblatt der 3fache 7Segmentanzeige 3. AT90CAN128.pdf: Datenblatt der Mikrocontrollers Electrical Characteristics
http://www.mikrocontroller.net/articles/AVR-Tutorial:_7-Segment-Anzeige
-
Thread
Größte i2c eeprom
1 Mbit (128kByte) für 3.25€ http://www.reichelt.de/?ACTION=3;GROUP=A324;GROUPID=4511;ARTICLE=96618;SID=26nsHXGawQARoAAG9fWGEa06ba826cc283c878dc84148bbf251f3 Habe ich selber schon ein paar mal verbaut, funktioniert
www.atmel.com/dyn/resources/prod_documents/doc1456.pdf Ein Application Note für einen Audioplayer mit AVR und AT45DB161B. Der EEPROM ist allerdings schon SOIC 28 wobei über die Hälfte der Anschlüsse einfach unbelegt (N.C) ist. Siehe Datenblatt http://www.atmel.com/dyn/resources/prod_documents/doc2224.pdf
-
Thread
Schnelles PWM mit AVR?
Hallo Leute, ich beziehe mich mal auf folgende Angaben: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#PWM_.28Pulsweitenmodulation.29 Da steht, wenn ich das richtig verstanden habe, das ein PWM doch einen Teiler von 510 bei 8Bit zur CPU-Freq hat, selbst wenn ich über CS10 bis 12 direkt
eine 500Khz Freq mit 7Bit Auflösung im Asnyc >Modus... Bei mir sind 250kHz x 256 oder 500kHz x 128 immer noch 64MHz. MfG Spess
-
Thread
240 RGB LED's, Hardware bzw. überhaupt machbar?
du aber auch nur eine PWM Helligkeitsauflösung mit diesen 10us, das kann ggf. schon ein einzelner AVR für alle LEDs verwalten, geschickte Assemblerprogrammmierung vorausgesetzt. 240 LEDs halte ich auch für eher wenig, 240000 sind wohl eher das was andere aufbauen.
machbar. Ich habe selbiges mit 224 einfarbigen LEDs gemacht, die mit (glaube ich ca) 100 Hertz auf 128 Stufen gedimmt werden konnten. Kriegt man mit einem Atmega32 und 28 Schieberegistern locker hin.
-
Thread
Problem mit ltoa
. Ich habe den Fehler bei WinAVR-20080110 und WinAVR-20100110 beobachtet. 2003 war der Fehler offensicht bereits vorhanden. Ich halte es deshalb für sehr wahrscheinlich, dass alle WinAVR-Versionen von 2003 bis heute betroffen sind.
gemacht." ;-) Auf jedem anderen AVR funktioniert das auch (auch auf den kleinen mit 128 oder weniger Byte SRAM). Eigentlich sollte das egal sein, was im oberen Byte des Zeigers drin steht, denn da dieses Byte für die Adressierung
-
Thread
DS18S20 - extended resolution bei Temperaturen um 0°C
16]="0011233455667889",h[16]="0639518406395184",s; if(d[1]){s='-';f=(4+d[6])&15; if(d[6]>11)t=128-d[0]/2;else t=127-d[0]/2;} else{s='+';t=d[0]/2 ;f=(28-d[6])&15; if(d[6]>12){if(d[0]){t--;}else{s='-';f=d[6]-12;}}} if(t>99){putch( s);s=0;putch('1');t-=100;} else {putch(' ');if(t>9){putch
16]="0011233455667889",h[16]="0639518406395184",s; if(d[1]){s='-';f=(4+d[6])&15; if(d[6]>11)t=128-d[0]/2;else t=127-d[0]/2;} else{s='+';t=d[0]/2;f=(28-d[6])&15; if(d[6]>12){if(d[0]){t--;}else{s='-';f=d[6]-12;}}} if(t>99){putch( s);s=0;putch('1');t-=100;} else {putch(' ');if(t>9){putch
-
Thread
IIR Besselfilter in Attiny85 - 32 Bit Berechnung möglich?
Mit großer Wahrscheinlichkeit hast du bei der Umsetzung in C die klassischen Fehler gemacht. Der avr-gcc kann jedenfalls Maschinencode für Berechnungen mit uint32_t erzeugen!
bisschen lang mit seinen Kommentaren, darum habe ich ihn erstmal nicht gepostet gehabt. [c] #include <avr/io.h> #include <avr/interrupt.h> #include <inttypes.h> //PB2: ADC1 ist der Eingang für die Fotodiode. //PB0: ist der Ausgang für den Motor. //PB4: PCINT4 ist der Steuerausgang für die Fotodioden-Beleuchtung
-
Thread
Was macht der Compiler mit meinen paar Zeilen C-Code?
0x08 ; 8 cpi r19, 0x40 ; 64 cpi r19, 0x00 ; 0 cpi r19, 0x80 ; 128 sbci r19, 0x28 ; 40 sbci r20, 0x62 ; 98 sbci r20, 0x36 ; 54 sbci r20, 0x66 ; 102 cpi r19, 0x98 ; 152 sbci r19, 0x64 ; 100 sbci r20, 0x36
; Referenced from offset 0x00 by rjmp Label2: clr r1 out 0x3f, r1 ; 63 ldi r28, 0xdf ; 223 out 0x3d, r28 ; 61 rcall Function1 rjmp Label5 ; Referenced from offset 0x04 by rjmp ; Referenced from offset 0x06 by rjmp ; Referenced from offset 0x08 by rjmp
-
Thread
XMega bleibt "hängen"?
schief läuft .... Speicher bzw. Stack kanns eigentlich auch nicht sein. Das schreibt der Kompiler: AVR Memory Usage ---------------- Device: atxmega128a1 Program: 12752 bytes (9.2% Full) (.text + .data + .bootloader) Data: 137 bytes (1.7% Full) (.data + .bss + .noinit) Build succeeded
] / 128L); Debug_EulerAngle_Filter_i16_m8__deg[i] = (int16_t) (EulerAngle_Filtered_i32_m1024__deg[i] / 128L); } Debug_Str ("SDebug: "); freemem = get_mem_unused (); Debug_i16
-
Thread
PIC oder AVR, was ist besser
von 4k-128 Bytes hat, auch noch schön mit Bankswitching und so. Den Strass sparst Du dir beim AVR. Wenn Du einen mit externem Adress/Datenbus hast, kannst Du extern problemlos 64KB RAM anschließen, mit Bankswitching
vielleicht schon drei Jahre behoben und du kriegst alte Lagerware. Schau für Spaß mal ins Errata des ENC28J60 (dieser Ethernet-PHY) rein. Verglichen damit sind die 8-Bit-AVR quasi 'perfekt'.
-
Thread
Grafik-Display Ansteuerung
viel (vergleichsweise). Heute selten zu bekommen, hin und wieder bei Pollin. Übliche Auflösungen sind 128x64 oder 128x128. Leicht zu benutzen. "Halbintelligente" Displays haben einen Grafikspeicher, der meist byteweise beschrieben wird. Dieser Speicher wird 1:1 auf das Display abgebildet. Es ist empfehlenswert
günstigsten und hat nahezu jeder Elektronikversender mit Displays im Programm. Sehr oft gibt es die in 128x64 und 128x128 Die T6963 haben, wie schon gesagt, ein wenig eigenen Grips, aber im Grunde immer noch anzusteuern wie die KS0108 / 7. Die T6963 sind meistens grösser als die KS0108. Habe eines von
-
Thread
HP-IB und AVR
echten" Open Collector Ausgang mit Transistoren dran, dann kann nichts schlimmes passieren. Ein AVR Projekt gibt es z.B. hier: http://www.spurtikus.de/basteln/gpib.html
PC der Master ist. Ich bin zB an einem System, wo wir einen Frequenzzahler haben, den ich mit einem AVR auslesen moechte. Da ist kein PC, der das machen wuerde. Zudem moechen wir mit dieser Zaehlgroesse einen Prozess steuern... ein AVR ist in diesem Fall einfach besser geeignet. Der Zaehler hat leider
-
Thread
FFT auf ATmega128
Wenn du die avr-libc 1.7.0 aus dem Zeitraum vor Mitte November 2010 hast, denk an den delay-Bug in _delay_ms() und _delay_us() und dessen Bugfix: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#avr-libc_Versionen_ab
37,5 Hz Frequenzauflösung entsprechen, oder? Damit könnte/müsste/sollte ich ja die 4,8kHz auf meinem 128Punkt-LCD darstellen können. Nun komme ich aber nur bis knapp 3MHz und dann bin ich schon am 128ten Punkt angelangt. Wo liegt denn da bitte mein Denkfehler? Grüße
-
Thread
Atmega32 Timer0 TCNT0 zählt nicht
ich nicht von irgendwelchen Hardware fehlern aus. Hier mein derzeitiger Testcode: [c] #include <avr/io.h> #include <avr/interrupt.h> #include <stdlib.h> #include <util/delay.h> #include <stdio.h> #include "macro.h" #include "konstanten.h" #include "lcd.h" char txt[16];
die gewünschten 9.98 ms sondern 10.08 ms. Warum steht in http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/Die_Timer_und_Z%C3%A4hler_des_AVR#CTC-Betriebsart_.28Clear_Timer_on_Compare_Match.29 Wenn dann der Timer0 läuft, prüfe deine Programmlogik, denn > if(test != TCNT0) ist *ziemlich oft
-
Thread
Display Reichelt TFT-DIS 4,3 LCD-Modul Fragen zum Timing
Graphiken machen kann. In deinem Post geht es um Text. Und schon dafür brauchst du schon einen riesigen AVR, mindestens 64k Flash. Die haben dann in etwa 60 Pins, wenn du das in DIP nimmst hast du schonmal einen riesen Displaycontroller. Ich sage nicht dass es mit einem AVR nicht möglich ist, ich sage
Am Schluss hast du dann ein flimmerndes Textdisplay oder so. Uzebox läuft übrigens auf einem gut 28MHz AVR.
-
Thread
Taktquelle Xmega: int. RC oder ext. XTAL?
Ich experimentiere gerade mit dem ATxmega128. Bei den ATmegas hatte ich immer einen externen Schwingquarz als Taktquelle genommen. Die Xmegas haben ja ein viel komplexeres Clock system mit mehr Moeglichkeiten. Ich bin am ueberlegen, ob
MHz RC-Osc. lief jedenfalls bei mir schon gut 3% daneben (bei Raumtemperatur). MfG, Balze aka AVR Noob
-
Thread
1Wire: Mehrere ID's über DS2480B
Rückmeldung bei FF: A3 08 00 00 82 A2 80 80 08 00 00 00 00 00 00 AA Rückmeldung bei 00: 89 0A 08 A0 28 A2 20 00 00 00 00 00 00 00 08 88 Ist die Vorgehensweise so denn überhaupt korrekt?
Atmel wesentlich verständlicher: http://www.atmel.com/Images/Atmel-2579-Dallas-1Wire-Master-on-tinyAVR-and-megaAVR_ApplicationNote_AVR318.pdf > Die ROM-Nummer ist 64bit-Lang, muss ich 2^64 > mal wiederholen? Eigentlich nicht, man baut sich ja einen binären Baum mit den ID's auf. 2^64 ID's abzusuchen
-
Thread
Fragen Temp. Logger
Bord. > > Das sind aber nur Chips mit mindestens 64 Pins ... Nein. Der 18f26j11 hat RTC und nur 28 Pins. Gibt's auch als DIL.
Hallo Obwohl du eher PIC als AVR verwenden willst, lohnt es sich vielleicht auch mal hier vorbei zu schauen: http://www.brokentoaster.com/butterflylogger/ Hab dass selber auch schon ausprobiert und läuft soweit super.
-
Thread
ATMEGA128 Timer
. http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/Die_Timer_und_Z%C3%A4hler_des_AVR#CTC_Clear_Timer_on_Compare_Match_.28Auto_Reload.29 Die Initialisierung des CTC-Modus vermisse ich zum Teil. Läuft dein Atmega128 tatsächlich mit
für Timer/Counter0 (TCCR0...) > ^ > > (Mein Datenblatt ist Rev. 2467R–AVR–06/08) ich hab mir grad das Datenblatt für den ATmeag128(L) auf der Atmel-Seite geholt und da ist Tabelle 68 für Timer0... Rev. 2464U–AVR–08/10
-
Thread
Frequenzzähler 1Hz - 40MHz
weil man SREG manuell sichern muß. Schon gar nicht in C (man schaue sich mal den Code an, den gcc/avr-libc für eine ISR erzeugen, die nur ein Byte inkrementieren muß). In Z8 ASM sieht das so aus: [code] ISR: INC foo RETI [/code] (ja, mit 128 Registern im Z8 haben alle Variablen ihr eigenes
eZ8: Interrupt Latency ist >= 16 Takte (!), plus 7 (2+5) für den Code = _23 Takte_ insgesamt. AVR: Interrupt Latency ist >= 4+3 Takte, plus 7 (1+1+1+4) für den Code = _14 Takte_ insgesamt, wenn für SREG und den Zähler Register reserviert werden können. Mit SREG und Zähler im RAM sind es 28 Takte
-
Thread
C: Pixel auf dem Bildschirm ausgeben
SetPixel(Farbe,x,y); ??? Kurzes Googlen bringt http://msdn.microsoft.com/en-us/library/dd145078%28VS.85%29.aspx zu tage, wenn du dir das (Win-API) wirklich antun willst...
nicht einfach FreeBASIC? screenres 640,480,32 'Besser wie screen wasauchimmer pset (1,1),rgb(32,64,128) sleep -1
-
Thread
Betty als Modellbau-Oszi
mainfile übernommen) ). Aber egal, was ich sagen wollte: das 'Framework' funktioniert auch mit AVR's ;-) Allerdings sind die PPM-Features auf einem AVR nicht möglich, da dieser nicht genügend RAM besitzt :-( Wo wir schonmal bei 'günstiger Hardware' sind, will noch einen STM32 vom STM8-Discover
dort anders angeschlossen als in den deutschen Bettys. http://bettyhacks.com/forum/index.php?topic=128.0
-
Thread
Junkers HT-Bus Heatronic 3 Schnittstelle
00 00 88 00 18 00 28 01 35 64 00 01 13 20 C0 80 00 80 00 80 00 FF FF FF 00 00 00 00 88 00 18 00 28 01 35 64 00 01 13 20 C0 80 00 80 00 80 00 FF FF FF 00 00 00 00 00 88 00 18 00 28 01 35 64 00 01 13 20 C0 80 00 80 00 80 00 FF FF FF 00 00 00 00 00 00 88 00 18 00 28 01 35 64 00 01 13 20 C0 80 00 80 00 80 00 FF FF FF 00 00 00 00 00 00 00 88 00 18 00 28 01 35 64 00 01 13 20 C0 80 00 80 00 80 00 FF FF FF 00 00 00 00 00 00 00 00 88 00 18 00 28 01 35 64 00 01 13
-
Thread
Drehgeber auf Atmega 88 wandeln
herum drehe, kommt erst die rechte LED und kurz darauf die linke. Hab gerade noch gesehen, das mir AVR beim übersetzen eine Warnung auspuckt: ../Drehgeber.c:28: warning: 'TIM1_COMPB_vect' appears to be a misspelled signal handler Macht vielleicht der Compiler probleme?
herum drehe, kommt erst die rechte LED > und kurz darauf die linke. Hab gerade noch gesehen, das mir AVR beim > übersetzen eine Warnung auspuckt: > > ../Drehgeber.c:28: warning: 'TIM1_COMPB_vect' appears to be a misspelled > signal handler > > Macht vielleicht der Compiler probleme? TIMER1
-
Thread
avrdude + jtagice-ii + linux + isp: laaaaangsaaaaam.
-- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 4 12 128 0 no 512 0 0 9000 20000 0x00 0xff flash 4 12 128 0 no 8192 0 0 9000 20000 0xff 0xff signature 0 0 0 0 no
sign-off command: 0x80 (1 bytes msg) avrdude done. Thank you. ed@summini:~/Projekte/Embedded/AVR/AVR-CTRL/t$ avrdude -D -p 8535 -P usb -c jtag2isp -e avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.15s