-
Thread
AVR 2560 counter capture durch input change
Geschichte. > Eine fertige Lösung für 4 Kanäle findest Du hier: > Beitrag "4-Kanal Drehzahlmessung mit ATmega88" > Schaltung und Programm lassen sich einfach auf 8 Kanäle erweitern. Man > muß dafür einen anderen Port verwenden und eine größere LC-Anzeige - 4 x > 16 oder so. Wenn ich das richtig verstehe
ich dann 8 Stk 328er, die über I2C als slaves die Messung > an einen Master senden. Wozu? Ein ATmega328 reicht für alle acht Kanäle; ein Geizhals nimmt einen ATmega48. Wenn man einen Arduino Uno verwenden möchte, bieten sich die PC0 - PC3 und PD4 - PD7 als Eingänge an. IIC und USART Schnittstellen
-
Thread
Welche Elektronik wird in Flugzeugen verwendet?
Automobilbereich werden ICs bei der Fertigung viel ausführlicher und länger getestet als beispielsweise der Atmega8, den du beim Reichelt kaufen kannst ;-) > Man könnte doch z.B. eine Quadcoptersteuerung auf einen uC basieren > welcher auch in Flugzeuge verwendung findet. Somit hätte man schon einen > großen
> muß. Trozdem geht immer noch gelegentlich was schief: https://de.wikipedia.org/wiki/Ariane_V88 https://de.wikipedia.org/wiki/Mars_Climate_Orbiter Ein interessanter Fall in der terrestischen Luftfahrt könnte auch dieser sein: http://www.havkom.se/assets/reports/SRL-2016_01e.pdf Allerdings wird
-
Thread
Multiplexer Atmega 8
mir nur um die Atmega Programmierung. Ich weiß garnicht wie ich da Anfangen könnte. Es würde mich sehr freuen wenn einer von euch genug Zeit und Lust hat mir dabei zu helfen.
deinerseits. Optimieren kannst du danach: . Schaltflanke per Interrupt erkennen (geht beim ATmega8 nur über Timerinterrupt, wenn du einen ATmega88 nimmst, könntest du auch einen Pinchange-Interrupt benutzen) . Ausgabe über Timerinterrupt steuern . Rest der Zeit schlafen gehen
-
Thread
neuer Compiler mag libm.a und libc.a nicht
__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega2561__) // this processor family uses avr/io.h with real processor name // but share the hardware abstraction
incompatible /usr/local/avr/lib/libm.a when searching for -lm Das kann niemals die Lib für einen ATmega88 sein! dito für die folgenden. Also 1) dein Installation ist Kaputt und / oder 2) du gibst die falschen Pfade per Hand an (warum?) und / oder 3) verwendest den Treiber ohne -mmcu= und
-
Thread
LED-Quiz programmieren - nur wie?
Was vielleicht noch erwähnenswert ist, ich verwende Atmel Studio und einen ATmega88
-
Thread
C-Code von AVR-NET-IO zu bekommen?
leicht auf Platine verfügbar ist. Dieses Modul kommt aus USA: http://www.ebay.de/itm/Mighty-Mini-ATMega1284p-compatible-with-Arduino-/331463717483 Artikelstandort: Venice, California es gibt dann noch dies: SainSmart Rev. 1.3 Atmega1284p: EUR 47,88. Vielleicht habe ich etwas übersehen. Im Vergleich
Geht auch so: site:oshpark.com RFM12 ATMEGA
-
Thread
ISP Programmer ATMega168 IPS Protokoll Adressen fehlerhaft?!
Dann sollte es doch funktionieren. Beispiel, welches ich gerade zur Hand habe: ATmega88 mit 32 words per page, da lautet das erste page-write: $4C $00 $1F $00 das zweite: $4C $00 $3F $00 das dritte: $4C $00 $5F $00 usw. Genaugenommen steht im 4. Byte irgendein übriggebliebener
Beitrag #4761469: > Dann sollte es doch funktionieren. > Beispiel, welches ich gerade zur Hand habe: ATmega88 mit 32 words per > page, da lautet das erste page-write: > $4C $00 $1F $00 > das zweite: > $4C $00 $3F $00 > das dritte: > $4C $00 $5F $00 > usw. > > Genaugenommen steht im 4.
-
Thread
Die Anfänger Fragen..
denn auf diese werte ich dachte immer 1000ms = 1Sec. [c]/* * speed_button_1.c * Controller: ATmega88 @ 8MHz */ #define F_CPU 8000000UL #include <avr/io.h> int main(void) { DDRB = 0xFF; // Richtungsregister PORTB auf Ausgang DDRD &= ~(1<<PD2); /
-
Thread
AVR und C++ - ein Versuch
den Verzeichnissen "ex0" und "ex1" zwei Beispiele beigefügt, die sich mit [code]avr-g++ -mmcu=atmega8 -Os -std=c++11 -I ../includes/ -o main main.cpp[/code] übersetzen lassen.
> Flash ab 0x0000. Nein, nicht notwendigerweise. Die Interruptvectortabelle kann bei einem ATMega üblicherweise an 5 verschiedenen Stellen im Flash liegen...
-
Thread
SOFT PWM Pinversatz
den ich verwendet habe: [c] /* Eine 8-kanalige PWM mit intelligentem Lösungsansatz ATmega32 @ 8 MHz */ // Defines an den Controller und die Anwendung anpassen #define F_CPU 8000000L // Systemtakt in Hz #define F_PWM 100L // PWM-Frequenz
const uint8_t t6[8]={33, 33, 33, 33, 33, 33, 33, 33}; const uint8_t t7[8]={0, 0, 0, 0, 0, 0, 0, 88}; // Messung der Interruptdauer tmp =1; tmp =2; tmp =3; // Debug memcpy(pwm_setting, t1, 8); pwm_update(); memcpy(pwm_setting, t2, 8); pwm_update();
-
Thread
Atmega88 mit 100kHz
Hallo, im Datenblatt vom Atmega88 ist in einem Diagramm zu sehen, dass dieser Controller bei einem Takt von 100kHz nur noch sehr wenig Strom verbraucht. Bei zeitunkritischen Routinen ist das ja prinzipiell löblich. Ich frage
weiß nicht, wie Du darauf kommst. Weder kann ich es dem Datenblatt entnehmen, noch verhält sich ein ATmega88 so. Einfacher Versuch: ATmega mit 12 MHz und Teiler /8 nicht gesetzt. Der µC läßt sich mit 2 MHz Takt programmieren. Anschließend im Programm den /8 Teiler gesetzt und kontrolliert, daß der µC
-
Thread
Division mit "krummen" 10
ASCII Format muss ich nach für die Anzahl der Stellen immer durch 10 teilen. Ich arbeite mit einem Atmega32u4, dieser hat ja nun auch keine Hardwaredivision. Gibt es eine bessere Alternative als ein x/10? Vielleicht ein bitshift mit aufaddieren?
wahnsinnig enorme, extrem riesige, unvorstellbar gigantische 134 Byte Flash, das sind volle 0,4% Deines ATmega32. Findest Du es nicht selber lachhaft, darum so ein Getöse zu machen?
-
Thread
Interpretation Messwerte (oder: was war das denn)
Hi-Link Minischaltnetzteil (3,3V) als "Wandwarze" aufgebaut. Der untere gehört zu einem Aufbau mit ATMega 88. Der ESP8266 wird nur zum Senden der Werte eingeschaltet, die Abfrage des Sensors macht der ATMega. Versorgung per Li-Ion-Akku. Die letzen beiden Sensoren sind in unmittelbarer Nähe draußen (im
2. Paar: Wandwarze, DHT22 am ESP8266, 3,3V Schaltnetzteil, außen 3. Paar: Messstation, DHT22 am ATMega 88, Li-Ion-Akku (aktuell 3,6V), außen Solder
-
Thread
USBasp AVRDude Problem
Habe jetzt alle Pins angesteck und die Betriebsled leuchtet, doch wenn ich ein Programm auf meinen Atmega328p bringen will bekomme ich andauernd diese avrdude Fehlermeldung: avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update. avrdude.exe: error: programm enable: target
China sowie Deutschland und musste noch nie die Firmware für Funktion flashen. Alle Attiny85 oder Atmega88 basiert
-
Thread
AVR Timer2 gleichzeitig für PWM und Sekundenzähler benutzen?
Atmega328
Matthias S. schrieb im Beitrag #4757260: > Da bin ich auch mal gespannt. Für einen Mega48/88/168/328 jedenfalls > tuts die Anweisung > > Karl M. schrieb: >> TIMSK2|= (OCIE2B); > > und gibt den OC2B Compare Match als Interrupt Quelle frei. Na bestimmt nicht ganz so wie, man es erwartet
-
Thread
Widerstandmessung mit AVR
Klars schrieb im Beitrag #4754168: > Arbeiten mit einem ATm 88 ... Was ist das? Meinst du einen ATmega88?
Teil auf dem Rechner. Leider nicht bis zu Ende gelesen. Werde es mir gleich ansehen. Meinte den Atmega 88. Der Messbereich sollte von ca. 10 Ohm bis 1 MOhm gehen. Es geht im Grunde um die vielen R ohne erkennbare Farben aus einem relativ grossen Haufen von Restbeständen. Das andere was ich nicht
-
Thread
Atmel Studio 7.0 Probleme
daher als erstes ein Lernpaket von Franzis bestellt. Im Paket ist eine "Programmierplatine" mit Atmega88 und 4x16ER IC Sockel gelötet. Ich muss dazu erwähnen ich habe mit Mikrocontroller Programmierung schon mal angefangen und da es zeitlich nicht mehr geklappt hat musste ich aufhören (Damals war es
Wl,-Map="GccApplication1.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mmcu=atmega88 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.106\gcc\dev\atmega88" @echo Finished building target: $@ "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8
-
Thread
AVR nach watchdog-Einsatz defekt?
Moin, ich bin gerade dabei einen ATMEGA644 zu programmieren. Bei diesem wollte ich den watchdog mit 2.7V benutzen. Dies funktioniert leider nicht. Ich habe jetzt nur die Fuse gesetzt. Muss ich noch irgendetwas in Software beachten? Ich hatte
Datenblatt schauen will, kann man das auch in der <wdt.h> nachlesen: " Note that for newer devices (ATmega88 and newer, effectively any AVR that has the option to also generate interrupts), the watchdog timer remains active even after a system reset (except a power-on condition), using the
-
Thread
Atmega8 I/O Taktvorteiler
> gleich schnell wie der Quarz), doch hoffe ich diesen noch mit 256 teilen > zu können. Der ATmega8 hat keinerlei Vorteiler für den Takt, anders als seine (pinkompatiblen) Nachfolgemodelle (ATmega88 etc.). Wenn es unbedingt der Timer0 sein muss, dann würde ich dir ernsthaft zu etwas Modernerem als einem ATmega8 raten. Der Timer0 dort hat als einzige Interruptmöglichkeit den Overflow-Interrupt. Wenn man den Interrupt nicht nur aller 256 Zählertakte auslösen lassen will, dann muss man in der ISR den
-
Thread
AVR mit zu wenig Spannung betreiben
Als Beispiel nehmen wir mal den ATmega328P mit 16Mhz Quarz. Ich entnehme dem Datenblatt, dass 3,3V Versorgungsspannung zu wenig sind. Experiemntiell habe ich herausgefunden, dass er trotzdem zuverlässig startet. Wie lange er dann
CLKDIV8, welches werksmäßig gesetzt ist, hättest du 2 MHz. Was überlegst du da also noch ob der Atmega328 bei 16 MHz mit 3.3V zuverlässig läuft wenn dir auch eine deutlich geringere Taktrate genügt? Einfach den Prescaler passend einstellen und gut ist.
-
Thread
Befehlssatz der bo8-CPU - was ist gut, was ist schlecht
CPU irgendwie keinen guten Anwendungszweck. Es gehen alle auf 32 Bit ARM, von da (oder selbst vom Atmega) wäre es ein enormer Rückschritt auf 8 Bit ohne Stack & Interrutps in Assembler. So ein Projekt wäre unwartbar bzw. braucht schnell verlorene Spezialkenntnisse. Noch dazu gibt es deine CPU garnicht
Softcore-Landschaft zu sehen. Das ist sie definitiv nicht! Wie wäre es z.B. stattdessen einen ATMEGA-Softcore zu entwickeln oder bestehende weiter zu treiben? Ich könnte mir vorstellen, dass daran mehr Interesse besteht als an deiner Architektur. Dann brauchst du auch kaum noch Doku schreiben und
-
Thread
AVR: Werden gleiche Opcodes unterschieden?
Entschuldigung meines Irrtums verweise ich auf die Instruction Set Summaries in den Datenblättern zum ATmega8/16/32 + 88/168/328 + 13 + 25/45/85 (mehr habe ich mir nicht angesehen). Darin ist nämlich die LSL-Instruktion offensichtlich falsch beschrieben (*). Wer ahnt denn sowas? :-( Die Angaben im Atmel Instruction
SH, BRNE, BRPL, BRVC, BRGE, BRHC, BRTC, BRID (→ BRBC) [/code] Das Instruction Set Summary des ATMega 48/88/168 listet genau 111 Mnemonics auf (wenn man die Varianten von LD, LDD, ST, STD und LPM nur einmal zählt). Damit beläuft sich der Anteil der redundanten auf ca. 37 %.
-
Thread
Breakout Board für TQF44 (Mega32u4-AU) gesucht
gibts doch fertig http://www.ebay.de/sch/i.html?_from=R40&_sacat=0&_nkw=atmega32u4&LH_PrefLoc=2&_sop=15 oder willst du selber löten?
http://www.ehajo.de/baus%C3%A4tze/bedrahtete-baus%C3%A4tze/atmega32u4-breakout-board.html awsxderfv
-
Thread
ATMEGA 328 - AREF wiedersprüchlich
Hallo, ich habe mal eine blöde Frage zum AREF Pin beim ATMEGA 328P PU bzw. AU. Und zwar baue ich ein kleines Batterie betriebenes Gerät bei dem ich ua. auch einen Analog Pin zur "helligkeitsmessung" benutzen will. Nun habe ich aber beim entwurf meines PCBs
Datenblatt gibt es bei Atmel: http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf
-
Thread
USBASP v2.0 Fehlerhafte Schaltung?
mit umgesteckt. Und man nimmt einen µC, der die 12MHz auch bei 3.3V noch schafft. Also z.B. einen ATmega88, statt eines ATmega8L. > Meine beiden Fragen dazu sind: > > Ich vermisse Pegelwandler in den Leitungen MOSI und SCK, oder > wenigstens simple Widerstände. Widerstände sind kontraproduktiv
. Ich habe diverse USBASP-Sticks, auf keinem befindet sich ein 8L. Bis auf eine Ausnahme (ATMega8 16PU) befindet sich auf allen anderen ein ATMega8A. Lt. meinem Datenblatt benötigt der 8A für 12MHz (safe area) 4V Betriebsspannung. Es ist mir bekannt, dass einzelne Exemplare auch bei 3.3V einen
-
Thread
AVR Mega1284, Fontarray zu groß -> wie in Flash?
//I {0xE4,0x44,0xC0}, //J {0xAC,0x8C,0xA0}, //K {0x88,0x88,0xE0}, //L {0xAE,0xAA,0xA0}, //M {0xAE,0xEE,0xA0}, //N {0x4A,0xAA,0x40}, //O {0xEA,0xE8,0x80}, //P {0x4A,0xAE,0x60}, //Q {0xEA,0xEC,0xA0
, //a {0x88,0xEA,0xE0}, //b {0x0E,0x88,0xE0}, //c {0x22,0xEA,0xE0}, //d {0x4A,0xE8,0x60}, //e {0x64,0xE4,0xC0}, //f {0x6A,0xE2,0x60}, //g {0x88,0xEA,0xA0
-
Thread
Frage zu PWM
Hallo, ich habe eine Frage zur PWM-Ausgabe beim Atmega88. An OC1A wird ein PWM-Signal ausgegeben (Fast PWM). ICR1 steht auf 511 (Top = 511). Es funktioniert so weit schon mal :-) Das PWM-Signal soll aber bei Bedarf auch invertiert ausgegeben
-
Thread
Schaltung korrekt für LED Fader mit ATMega32?!
So, ich habe mich jetzt für den ATMega88-20AU entschieden. Das Layout ist hoffentlich auch soweit richtig. Das Programm habe ich noch soweit angepasst und hoffe das es so passt...!? //************************************************
LED fading test //* uses exponential PWM settings to achive visual linear brightness //* //* ATmega88 @ 8 MHz //* //************************************************************************** #include <avr/io.h> #include <avr/pgmspace.h> #define F_CPU 8000000L #include
-
Thread
avrdude 6.1 funktioniert, 6.3 nicht
operation not supported for memory "signature" avrdude: error reading signature data for part "ATmega88", rc=-2 avrdude: error reading signature data, rc=-1 avrdude: Send: . [1b] . [09] . [00] . [03] . [0e] . [11] . [01] . [01] . [0e] avrdude: Recv: . [1b] avrdude: Recv: . [09] avrdude: Recv
file "main.hex" avrdude: input file main.hex auto detected as Intel Hex avrdude: writing flash (88 bytes): Writing | ################################################## | 100% 0.20s avrdude: 88 bytes of flash written avrdude: verifying flash memory against main.hex: avrdude: load data flash
-
Thread
max. mögl. PWM-f bei Atmega88
Hallo, wie berechnet man die maximal mögliche PWM-Frequenz bei einem Atmega, z.B. Atmega88? Die Taktfrequenz soll 8 MHz sein, die Auflösung 8 Bit. Rechnet man dann Taktfrequenz / Auflösung ? 8.000.000 Hz / 256 = 31.250 Hz PWM-Frequenz => die maximal mögliche
-
Thread
ATmega88PA mehrere ADC Kanäle auslesen
Guten Tag liebe Community, Ich möchte 4 ADC Kanäle des ATmega88PA auslesen und die digitalisierten Werte via uart an meinen Rechner schicken. Harware: Ich habe 4 Potis, an einem Labornetzteil bei der Spannung 3,3V angeschlossen, den Abgriff je an einen
-
Thread
Servo Ansteuerung
#4696769: > AVR Studio4 Da habe ich falsch gefragt - ich meinte den µC. Aber es wird wohl ein ATMega 88/168/328 sein.
Beitrag #4696778: > Da habe ich falsch gefragt - ich meinte den µC. Aber es wird wohl ein > ATMega 88/168/328 sein. ja, ich verwende Atmega 328.
-
Thread
Akkumessung mit AVR
ausreichend genauem Multimeter sollten die Spannungen (Ladungsende) unbedingt nachgeprüft werden. Mein Atmega88 hat 8 Eingänge mit 10bit Auflösung. Wenn die Teilung geschickt dimensioniert wird, sind 5 bis 10mV Auflösung noch gut drin. Den Teiler würde ich so aufbauen, dass ein Spindelpotentionmeter die Feineinstellung
-
Thread
Welcher µC für meinen Zweck?
Wenn du wirklich kein Arduino nehmen willst kannst du dir mal die ATMega Reihe anschauen. Sehr beliebte µC die an sich auch gut funktionieren. Zum Beispiel den ATmega328P. Letztendlich ist ein Arduino aber nichts anderes als ein µC mit der benötigten Elektronik drumherum
mindestens 10 der 24 Bit im Rauschen unter. Und für die Anwendung hätte auch der 10 bit AD-Wandler des Atmega328 völlig genügt.
-
Thread
stm32f103 wav player?
ist der STM32F103 überdimensioniert: http://www.linusakesson.net/scene/craft/ Geht auch mit nem Atmega88. Ich bin nicht so leidensfähig. In Zeiten von Multicore CPU/GPU PCs ist embedded schon Beschränkung genug. Dann muss es nicht auch noch ein uC ohne die Hardwarefunktionen sein, die ich in meiner
-
Thread
Can einstieg
viele Möglichkeiten und Bibliotheken. Setze ich selbst ein, auch mit verschiedenen AVRs (AT90CAN128, ATmega88, ATmega2560...). Alles völlig problemlos. Da muß man nicht unbedingt auf einen anderen µC umsteigen. Andererseits ist es auch nicht schlimm, wenn man verschiedene Plattformen kennen lernt :-)
Möglichkeiten und Bibliotheken. Setze > ich selbst ein, auch mit verschiedenen AVRs (AT90CAN128, ATmega88, > ATmega2560...). Alles völlig problemlos. Da muß man nicht unbedingt auf > einen anderen µC umsteigen. Kannst Du mir die Quellen für den Avr nennen? Lg
-
Thread
ATmega168PB Interrupt an E0
Hallo, ich möchte am ATmega168PB an E0 einen externen Interrupt hängen, der den Controller aus dem PowerDown weckt. Der ATmega168PB hat die Pins E0-E3 neu als I/O-Pins mit zugehörigen Interrupts PCINT24-27. Ich verstehe
fehlt der Interrupt Vektor für die PCINT3 Gruppe. Der Mega328PB hat diesen, aber eben nicht der Mega88PB oder 168PB. Also vergiss es. Kannst ja einen 328PB nutzen.
-
Thread
Physikprojekte
Sendeleistung für die Übertragung über gut 25 m ausreicht. Mal schauen... Ich warte jetzt noch auf die ATmega328 Arduino Nanos, die ich bestellt habe. Denn meine Atmega168 hatten zu wenig Speicher für das Arduino-Programm.
So, die Arduino Nanos mit ATmega328 sind angekommen und das Programm macht, was es soll. Ich kann pro Sekunde 19 Datenpaare (Zeit, Luftdruck) speichern, das müsste eigentlich für die Wasserrakete reichen. Leider gibt es nicht mehr
-
Thread
MEGA88 springt nicht in Interrupt Routine vom ANACOMP
wird da ein UART benötigt? (Und nein, konkret kann ich nicht helfen, ich habe nur zwei steinalte ATmega88-20PU)
wenn man ACME in ADCSRB setzt (und damit für AIN1 den AD Multiplexer verwendet): " 35.4 Errata ATmega88PA The revision letter in this section refers to the revision of the ATmega88PA device. 35.4.1 Rev. F • Analog MUX can be turned off when setting ACME bit 1. Analog MUX can be turned
-
Thread
Echtzeitfähigkeit Arduino Uno
Beitrag #4679605: > Laufzeiten gleich > oder höher priorisierter Interruptroutinen relevant. Beim Atmega gibt es keine priorisierten Interrupts.
. Das ist auch eine Priorität, wenn auch eine Fixe. Wenn z.B. (bei M48/88/168/328 ExtInt0- und ADC-Int "ausgelöst" sind, dann muß der ADC warten.
-
Thread
3-Wire SPI Anschluss am AVR
zusammen, ich plane ein Projekt, bei dem zwei 6-Digit LED Controller (STLED316S)von einem ATMEGA88 gesteuert werden. Dieser LED Controller besitzt folgende drei Pins zur Kommunikation: CLK,STB und DIN/DOUT. Meine Frage lautet nun, wie muss ich die beiden LED Controller an meinen ATMEGA anschließen
--------------------------------- STB STLED316S (2) PIN1 und PIN2 können beliebige Pins des Atmega sein. Gruß, Stefan
-
Thread
Welche AVR besitzen die PIN Toggle Fähigkeit?
ATtiny2313. Man kann das auch umgekehrt machen. Hauptsächlich die AT90SNNNN, daran orientierte ATmegaNNNN wie ATmega8535, die alten Klassiker ATmega8/16/64/128 sind draussen, und ein paar alte weniger systematisch erfassbare ATtiny.
*.xml-Files sind, z.B. ATmega88.xml. Und in den XML-Files sind unter "AVRSimIOPort.SimIOPort" die einzelnen Ports(A, B, C...) aufgeführt und dort dann "TOGGLE_PIN" mit dem Wert "Y"... Keine Ahnung, warum das ganze bei dir nicht