-
Thread
L293D für nur einen Motor
Texas Instrument DRV88xx Serie
einer Lio-Batterie mit §V Konstantspannungsregler) - 2 für die Eingangssignale (3,3V aus einem ATMega328) - 2 für den Anschluss des Motors Bezwecken soll der Treiber, das nach Abschalten des Motors kein Strom zurück in den IC fließen kann (H-Brücke) und die Ausgänge des IC nicht überlastet werden
-
Thread
Warum Gray Code für Drehencoder?
Chance. > > Gut, hier ist Quelltext dabei. > Beitrag "4-fach Flankenauswertung per Interrupt mit ATmega48/88" > > Wer keine Flankenerkennung per Interrupt mag/versteht, legt PD5 auf '0'. > Damit wird dann zyklisch per T0 ausgewertet. > *.a90 ist die Hex-Datei. Ups. Der wertet auch einen Gray-Code
-
Thread
Problem bei PWM mit Atmega88 und Assembler
Sehr geehrtes Forum, mal wieder habe ich ein Problem, und zwar möchte ich gerne die PWM Kanäle OC1A und OC1B nutzen. Dazu habe ich mir das Tutorial https://www.mikrocontroller.net/articles/AVR-Tutorial:_PWM#Fast_PWM durchgelesen, ebenso wie den Abschnitt im Datasheet. Ich habe eine LED an PB0 angeschlossen, um zu sehen wie stark die LED normal leuchtet, sowie eine zweite LED mit einem Kabel, das mit PB1 verbunden ist, damit ich einen Helligkeitsunterschied feststellen kann. Dieses Kabel ist ein Flexwire auf einem Breadboard, welches ich dann zum Vergleich auch an PB2 stecken kann.
-
Thread
AVR WakeUp mit high Interrupt
Peter F. schrieb im Beitrag #4295401: > Hab jemand eine Idee wie ich das lösen kann Einen ATmega88 nehmen. Der hat PCINTs an jedem Pin.
#4296146: > wäre das Problem ohne großen Aufwand gelöst Der geringste Aufwand wäre einfach den Atmega8 runterzulöten, zurück ins Museum bringen und stattdessen einen Atmega88 draufzupacken, das spart übrigens nicht nur Strom sondern auch Geld auf dieses fossile Museumsstück zu verzichten. Der Atmega88
-
Thread
Lichtschranke am Getriebe und die Messfrequenz
durch das Datenblatt gesucht: http://www.atmel.com/images/atmel-8271-8-bit-avr-microcontroller-atmega48a-48pa-88a-88pa-168a-168pa-328-328p_datasheet_complete.pdf Seite 237 Leider verstehe ich noch zu wenig davon, um zu wissen wonach ich suchen muss. Hier habe ich noch was zum Erhöhen der Auflösung
durch das > Datenblatt gesucht: > http://www.atmel.com/images/atmel-8271-8-bit-avr-microcontroller-atmega48a-48pa-88a-88pa-168a-168pa-328-328p_datasheet_complete.pdf > Seite 237 > > Leider verstehe ich noch zu wenig davon, um zu wissen wonach ich suchen > muss. Ich hab mal geschaut. Beim Arduino
-
Thread
Servosteuerung mit ATMEGA88 und Assembler
ebenso wie auch durch Testen der WAIT_1_SEC Methode mit einer LED in echt. [avrasm] .include "m88def.inc" /* Servosteuerung, durch Pulse zwischen 1ms und 2ms, alle 20ms Taktfrequenz des MC: 1 MHz */ .CSEG // Definitionen .def POSITION = R20 // Richtung der IO Ports definieren
Funktionen geschrieben, die einmal 1ms, einmal 1.5ms, und einmal 20ms warten. [avrasm] .include "m88def.inc" /* Taktfrequenz des MC: 1 MHz */ .CSEG // Richtung der IO Ports definieren LDI R16, 0b11111111 // 1=Output, 0=Input OUT DDRB, R16 OUT DDRC, R16 OUT DDRD, R16
-
Thread
Atmega88 Timer Problem Assembler
must be added to these addresses. Auszug ATMega88 datasheet Seite 345 siehe REG.png Auszug m88def.inc .equ GPIOR1 = 0x2a .equ OCR0B = 0x28 .equ OCR0A = 0x27 .equ TCNT0 = 0x26 .equ TCCR0B = 0x25 .equ TCCR0A = 0x24 .equ GTCCR = 0x23 Gemäss Auszug ATMega88 datasheet Seite 21 muss für z.B. TCNT0 = 0x46 benutzt werden, wenn LD oder ST Befehle benutzt werden. Gruß gatsby
-
Thread
Atmega88 ADC Assembler Problem
ich nutze folgenden Code, und leider ist stets dieselbe LED, grün, angeschaltet. Ich habe am ATMega direkt am Pin PC0 gemessen, ob die Spannung ankommt, und folgende Verschaltung: AVCC, mit VCC verbunden, AREF, an GND Code: [avrasm] .include "m88def.inc" // Definitionsdatei für den Prozessortyp
Damit keine Missverständnisse entstehen, hier der Code: [avrasm] .include "m88def.inc" // Definitionsdatei für den Prozessortyp einbinden /* ADC_ATMEGA_88 Test 30.09.2015 2 LEDs und ein Potentiometer angeschlossen Referenzspannung für den ADC ist die AVCC
-
Thread
ADC benötigt sehr viele Takte
Moin Moin, ich habe heute versucht bei meinem Atmega88 das ADC in Betrieb zu nehmen. Dazu kommt das Signal an Port PC5 an. Als Takt habe ich 20MHZ gewählt. Ich benötige allerdings nicht jeden Messwert, den der Atmega produziert, sondern nur einmal jeden
@nordman (Gast) >ich habe heute versucht bei meinem Atmega88 das ADC in Betrieb zu >nehmen. Dazu kommt das Signal an Port PC5 an. Als Takt habe ich 20MHZ >gewählt. Der Takt ist der CPU bzw. SYSTEMTakt. Dieser wird nochmal per Prescaler geteilt auf den
-
Thread
ATMEL Simulator >>> keine Veränderung
Hallo. Versuche gerade mit dem Studio 6.2 Simulator um zu gehen - aber, es tut sich nichts. Auf ATmega88 eingestellt. Optimierung (-O1) Zeigt beim Compilieren keinen Fehler. Sollte Ausgang PORTB 6 im Intervall von 1 Sek. zw. 0/1 endlos wechseln. Unter IO View findet keinerlei Veränderung statt
-
Thread
einfacher Konverter 160m/80m nach 30m
L 12MHz 14MHz deltaC ---------------------------- 1µH 176pF 130pF 46pF 2µH 88pF 65pF 23pF 5µH 35pF 26pF 9pF Der NE602 samt Oszillatorbauelementen soll später auf eine Kupferplatine montiert (Wärmeleitung) und alles unter Wachs vergossen werden. Kann
archive.org: Super Links, vielen Dank! Habe mittlerweile aus einem entkernten Stabilo Point 88 fine 0,4 ein "Blasinstrument" gemacht, um festzustellen, welche Bauteile welche Temperaturdrift haben. Gibt wegen der feinen Öffnung einen sehr dosierten Luftstrahl. Die meiste Drift kommt vom FET
-
Thread
IRMP mit 16bit PWM kombinierbar?
// enable timer2 interrupt [/c] Das obige Beispiel gilt für ATmega88/ATmega168/ATmega328. Bei anderen AVR-µCs empfiehlt sich ein Blick ins Datenblatt. Man sollte in diesem Fall nicht vergessen, auch die Interrupt-Routine an den Timer2 anzupassen: ISR(TIMER2_
Julian T. schrieb im Beitrag #4306612: > ich habe beim Atmega8 drei 8bit Timer, [...] Der Atmega8 hat 2 8Bit-Timer und 1 16Bit-Timer. > wobei ich die ersten zwei zu einem 16bit Timer kombiniert habe. Warum? Was machst Du denn mit den Timern außer IRMP
-
Thread
Dialog übernimmt Atmel [Update: Nein, Microchip übernimmt Atmel]
Sollte man sich jetzt einen Schwung -Attiny85 -Attiny84 -Atmega328 -Atmega644 kaufen, bevor es nur noch PIC gibt? (Zitter, Bange, Grübel) Paul
schrieb im Beitrag #4433482: > Sollte man sich jetzt einen Schwung > -Attiny85 > -Attiny84 > -Atmega328 > -Atmega644 > > kaufen, bevor es nur noch PIC gibt? von den Atmega328 solltest Du Dir ganz unabhängig davon welche auf Lager legen: https://www.mikrocontroller.net/topic/386799 Wegen
-
Thread
mega328 instabil, Make-Magazin
Genau, dummes Geschwätz. ATMega88PA, läuft in knapp 10.000 Stück mobil bei Wind und Wetter an einer Lithiumzelle seit Jahren. Ausfälle: 4 Stück. Ursache: Dichtring im Gehäuse nicht korrekt montiert.
-
Thread
Debuggen mit Atmega 8
mal via debug wire benutzte, uC war ein ATXmega. Meine Frage: wie debuggt mal sinnvoll in einem Atmega8? JTAG und DW kann der nicht, hilft mir da der MK2? Es wäre für Anfänger schön, wenn man Einzelschritt oder Breakpoints realisieren könnte. Muss ich zum Atmega88 wechseln, gibts den in DIL?
Holler schrieb im Beitrag #4275158: > Muss ich zum Atmega88 wechseln, gibts den in DIL? 2x ja
-
Thread
Wie Assembler ISR in C integrieren ?
man viel IO und z.B. Timer braucht > und einen AVR verwenden möchte. Dann hätte es auch ein ATmega640 oder 1280 getan. (Die sind sogar besser bezüglich Taktfrequenz vs. Versorgungsspannung, da sie in einer neueren Technologie als der alte ATmega2560 gefertigt werden.) Klar kann man sich
bin mir nicht sicher, ob ich jetzt auf dem Schlauch stehe, aber nach meiner Erinnerung macht der Atmega 16 Mips. Und damit rechne ich : 16Mhz / 364khz = 43,95 Zyklen. Verrechne ich mich oder läuft der Atmega des TO auf 8Mhz? Gruß, Stefan P.S.: Um zu sehen, wieviel Zeit main neben der ISR
-
Thread
Bootloader >>> Init-Problem
Hallo! Versuche gerade eine FRANZIS Lernpaket-Leiterplatte mit einem ATmega88, über FT232RL zum Laufen zu bringen. Zur Übertragung wird ein mitgelieferter Bootloader von FRANZIS verwendet. Im uC war, laut beiliegender Literatur, ein FRANZIS-Miniprogramm vorinstalliert,
ging. FRANZIS sprach in dem Buch, von einem kleinen vorinstallierten Prg. innerhalb des ATmega88. Ist das der Bootloader, oder das Übertragungsprogramm auf dem PC, das ich oben als Foto eingestellt habe?
-
Thread
zwei Attiny's über UART verbinden
Der ATmega644 kann auch 20Mhz
ATmega 48/88/168/328 ebenso. Und noch viele andere...
-
Thread
Atmel Studio 6.2 >>> Prog. in uC übertragen
den Controler, sondern um die Funktion (Menüpunkt) innerhalb des Studio 6.2 Der Programmer und ATmega88 ist auf der Franzis-LP integriert.
__Son´s B. schrieb im Beitrag #4270821: > Der Programmer und ATmega88 ist auf der Franzis-LP integriert. Es gibt geschätzt 2 Dutzend verschiedene Programmer, manche sind kompatibel mit irgendwelchen Atmel-Programmern, manche (die meisten) sind komplett anders aufgebaut
-
Thread
Raspberry Pi BLDC ansteuern mit Hall Sensor?
AVR447 von Atmel beschreibt einen BLDC Antrieb mit Sensoren und Sinuskommutierung. Basiert auf einem ATMega 48/88/168/328 und funktioniert auch mit 4kW Motor :-)
tinyAVR and megaAVR devices * AVR447:Sinusoidal driving of three-phase permanent magnet motor using ATmega48/88/168 * AVR448: Control of High Voltage 3-Phase BLDC Motor with an ATmega48 Das sollte dich erstmal eine Weile beschäftigen. Endstufen Design und Überwachung der Maschine ist allerdings die
-
Thread
ATmega8 ADC-Durchschnittsberechnung
Hallo zusammen, ich habe ein Problem mit meinem ADC und ATmega8. Ich will mit dem ADC eine Durchschnittsberechnung durchführen, um das Flackern auf meinen 7-Segementen zu verringern. Da meine Versuche mit einer for-Schleife nicht fruchteten, habe ich aus dem Tutorial
Probleme mit der Internen ADC Referenzspannung kommen. Ich habe noch einige neue TQFP atemga8, atmega88pa, atmega168 und atmega328P da. Die ich zu meinem EK abgeben kann. Die TQFP atmega162 kommen dann für dich sicherlich nicht in Frage?
-
Thread
LCD an PORTC ATmega8
bei dieser Anwendung( noch) nicht in gebrauch. Woran könnte es (noch) liegen? Kontroller: Atmega8 LCD: AV1624 (http://www.produktinfo.conrad.com/datenblaetter/175000-199999/183342-da-01-ml-LCD_Modul_16x2_Zeichen_de_en.pdf) lukas88
ich endlich weiter mit meinem Projekt. Danke für eure Zahlreichen Ratschläge und inputs. lukas88
-
Thread
Stromverbrauch RC-Oszillator vs Quarz vs Resonator (AVR)
des Herstellers verglichen ? http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf Seiten 318ff. Die kommen teilweise zu anderen Aussagen. Weshalb kommen die zu anderen Aussagen ? Ich wuerd eher dem Hersteller glauben
verstanden, läuft der ATmega48PA im Fall 1 mit 8 oder 1 MHz?
-
Thread
Internen Quarz und externen 32kHz Quarz benutzen auf Atmega128A
ist an XTAL1 und 2 angeschlossen. Ich habe so etwas schon mit meinem Atmega 88 alles hinbekommen. Allerdings ist beim Atmega128A alles irgendwie anders. Ich poste hier mal meine Init. Kann mir hier jemand helfen was ich falsch mache? [c] volat #define trans1 PINC0 #
Was für ein Uhrenquarz nimmt man denn da am besten? Der Atmega128 hat an TOSC1 und 2, schon Kapazitäten von 36pf!! Ich finde nur Uhrenquarze die max. 12,5pf haben sollten.
-
Thread
Eclipse Avr- undefined reference to 'main'
Konsole die Meldung [code] [...] Invoking: AVR C Linker avr-gcc -Wl,-Map,Test.map -mmcu=atmega88 -o "Test.elf" ./main.o /home/***/avr-tools/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/4.8.1/../../../../avr/lib/avr4/crtm88p.o:(.init9+0x0): undefined reference to 'main' collect2: error
-
Thread
Bosch E-Bike Antrieb Geschwindigkeitssensor
Speicherbereichen ein völlig tristes und sinnloses Dasein fristen... Da kommt es auf die paar Zellen im ATMega328 in diesem Projekt auch nicht mehr an ;-)
sicherheitshalber die RESET-Leitung noch mit 4k7 gegen VCC gezogen. Hat jemand schon erfolgreich die ATMega328 Version im Einsatz?
-
Thread
Problem mit Interrupt und Timer bei Zeitmessung
Möchte mit einem ATMEGA8 (f = 1MHz) die Zeitdauer eines High-Signals im Bereich 10us - 10s messen. Dazu benutze ich den Input-Capture des Timer1 ohne Prescaler. Zusätzlich wird bei jedem Timer-Überlauf ein Interrupt ausgelöst
Prescaler steht übrigens auf 1:1, d.h. der Timer zählt mit einer Frequenz von 1 MHz. Ich könnte dem ATMEGA natürlich einen 8MHz-Quarz spendieren und dann wäre ich natürlich auf der sicheren Seite. Danke, pescador.
-
Thread
Anzahl CPU Takte ermitteln
Informationen über > die Umgebung enthalten sein. Stimmt. Also es handelt sich um einen Atmega48 und AVR-GCC Eclipse Indigo. :) Nachfolgend das Dissassembly. Ich bin kein Experte für Assembler. Schätze die Ausführungszeit jedoch auf etwa 400 Takte. [avrasm] 0000081c <setLED>:
sbci r31, 0xFE ; 254 886: 20 81 ld r18, Z 888: 31 81 ldd r19, Z+1 ; 0x01 88a: e0 91 3a 01 lds r30, 0x013A 88e: f0 e0 ldi r31, 0x00 ; 0 890: ee 0f add r30, r30 892: ff 1f adc r31, r31 894: eb 5f subi r30, 0xFB ; 251 896:
-
Thread
Simpler Plan für einfache Atmega168-Deadbug-Projekte
Anhang ein einfacher Plan zum Ausdrucken, mit dem man auf die Schnelle einfache Schaltpläne für Atmega168-Projekte (PDIP-Gehäuse) im *Deadbugdesign* erstellen kann. An die Skizze des unteren Controllers kann man zur Schaltplanerstellung/Bauplanerstellung direkt die benötigten Bauteile anzeichnen.
- Rst Dann muss man immer nur drei Anschlüsse umstecken. Der Plan im Anhang sollte auch für Atmega 88, 328, 648 nutzbar sein, weil die Pinbelegung, so weit mir bekannt, identisch ist.
-
Thread
Zwei Arduino verbinden 5v-5v / gnd-gnd
Portpin von 5V unterscheidet. http://image.slidesharecdn.com/atmel-2486-8-bit-avr-microcontroller-atmega8ldatasheet-131016222751-phpapp02/95/atmel-24868bitavrmicrocontrolleratmega8-ldatasheet-51-638.jpg?cb=1381962876
http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf S.330 Also ich würde das ja schon als ziemlich linear beschreiben. Zumindest im gezeigten und interessanten Ausschnitt. Da sieht man
-
Thread
Flashplatzbedarf 32Bit zu 8Bit Microcontroller
nur die Grösse der Hex Files parat: STM32F103 (VL Dicovery) - 44kByte XMega128D3 - 22kByte Mega88/328 - 21kByte Gleiche Funktionalität inkl. serieller Konsole, es wurden allerdings die jeweiligen Hardware Besonderheiten ausgenutzt, also z.B. AWEX beim XMega oder Advanced Timer beim STM32.
Mein letztes Projekt (migriert von ATmega644 auf STM32F103 wegen schnelleren ADCs): AVR: 88kB (Hex) ARM: 127kB (Hex) Das Programm ist bei beiden weitestgehend identisch, der STM32 hat nur ein paar Routinen für ein externes I2C-EEPROM
-
Thread
C versus Assembler->Performance Gesperrt
bleiben ;-) Abschließende Anmerkungen: Den C-Code habe ich mangels einer Schaltung mit dem ATmega88, den Tastern und den LEDs nicht auf dem Zielsystem laufen lassen. Allerdings habe ich die Funktion /debounce/ mit simulierten Eingaben auf dem PC getestet, so dass ich mit ziemlich sicher bin,
Assembler umschreiben. Denn die 400 Bytes sind gerade einmal lausige 5% des Flash-Speichers des ATmega88. Mit den restlichen 95% kann man in C noch so viele nützliche Dinge erledigen, an die du als Assemblerprogrammierer gar nicht zu denken wagst, weil das deine Arbeitsweise schlicht und ergreifend
-
Thread
Uart Atmega 8
//Init usart DMX-BUS DDRD |= (1<<DDD0) ; UBRRL = 1; DDRD |= (1<<PD1); //Output TXD Pin ATmega88 UCSRB|=(1<<TXEN)|(1<<TXCIE); // TXEN0 Transmitter enable / TXCIE0 TX complete interrupt enable //UCSRC|=(1<<USBS); //USBS0 2 Stop bits sei();//Globale Interrupts Enable UDR = 0;
Ist ein übernommener Code. Das "Atmega 88" was auskommentiert ist, stimmt nicht.
-
Thread
LED-Laufschrift-Hack
Geräts reverse engineered, eine eigene Firmware geschrieben (Controller war glücklicherweise ein ATmega88) und ein Webscraping-Tool erstellt, dass mir die Meldungen herunterlädt. Das ganze Projekt ist mit Text und Bild auf meiner Webseite beschrieben: http://digital-nw.de/LED-Laufschrift-Hack.htm
-
Thread
Pinkompatibler AVR zu Atmega88/168/328 mit USB
Ach ganz vergessen... steht nur in der Überschrift. Er müsste Pinkompatibel zur Atmega 8er Reihe sein (Atmega88/168/328).
ATmega16U4 ATmega32U2 ATmega32U4 ATmega8U2 Antwort also: nein.
-
Thread
ATMega 168PB Interrupt Programmieren
(und genau das ist beim > PINx-Register aller neueren AVR8 der Fall): natürlich. Ah ja, beim ATMega168 (und den hat der TO) wird mit PINC |= 1<<PINC0 getoggelt. Das Datenblatt zeige mir bitte mal :-)
http://www.atmel.com/Images/Atmel-42176-ATmega48PB-88PB-168PB_Datasheet.pdf 15.2.1 Configuring the Pin Each port pin consists of three register bits: DDxn, PORTxn, and PINxn. As shown in ”Register Description” on page 88 , the DDxn
-
Thread
Effizienter Buck für LiIon->3,3V @<10mA?
Ich versorge derzeit einen ATmega328 mit 4-stelligem 7-Segment-LED via LDO aus einem LiIon-Akku. Laufzeit einer 2400mA-Zelle derzeit so 4-6 Wochen, die Schaltung benötigt etwa 2,2mA bei 3,3V. Da ein LDO jedoch Energie "verbrennt
gesellen sich zu der Quiescent Current dann bei 3,7V: 3,7V-3,3V = 0,4V; // dropout voltage * 2,2mA = 0,88mW; // power dissipation / 3,7V = 0,238mA; // aus P=UI -> P/U=I und bei 4,2V: 4,2V-3,3V = 0,9V; *2,2mA = 1,98mW; / 4,2V = 0,471 mA; Damit dürfte der Buck größtenteils effizienter sein; unter
-
Thread
Puls aus Sinuswelle herausrechnen
eine steigende (wahlweise fallende) Taktflanke am Pin erhält. Such mal hier nach "Frequenzzähler Atmega" (ich meine, es war ein ATMega8)
passen ca. 8 Wellen rein, dann sind das 80 Hz und nicht 160 Hz. Die Samplerate müsste dann ca 8.88 KHz gewesen sein, wenn in 0.1s 888 Messwerte zustande kommen. Stimmt das?
-
Thread
USBasp auf M328
wie man das schafft. Und ob. Warum? Der mega328 ist im wesentlichen kompatibel mit den mega48/88/168. Außer daß er mehr Speicher (Flash/RAM/EEPROM) hat. Da es ein usbasp Image (vulgo: Hexfile) für den mega48 gibt, reicht es vermutlich schon, das auf einen mega328 zu flashen. Falls das wieder
flashen. Wenn ich mich richtig erinnere, ist der Mega168 und der 328 nicht binärkompatibel zum ATmega48, der ATmega88 schon.