-
Thread
Ich werde irre ;-) (Timer compare match interrupt)
1000(dez) zählen, das macht bei 1MHz gut eine Sekunde (1,024 Sekunden um genau zu sein). ldi r16,0b00000011 ldi r17,0b11101000 out OCR1BH,r16 ;lade Comparewert 3(dez) ins H-Byte out OCR1BL,r17 ;lade Comparewert 232 ins L-Byte ldi temp,0b0001000 out TIMSK,temp ; aktiviere
Kenne mich jetzt mit ATmega nicht so aus, aber Interrupts müssen allgemein freigegeben werden - Stichwort: SEI
-
Thread
Mikrocontroller-Auswahl: ATTiny, ATMega, Pic,?
. schrieb im Beitrag #7499073: > sodass der MEGA328P jetzt 20 MHz Clock kann, statt früher nur > 16Mhz. Der ATmega328/P konnte schon immer 20MHz Quarz. Der ATmega328PB kann aber 20MHz nur noch mit externem Oszillator, da der Full Swing Crystal Oscillator Mode entfallen ist.
schrieb im Beitrag #7499073: >> sodass der MEGA328P jetzt 20 MHz Clock kann, statt früher nur >> 16Mhz. > > Der ATmega328/P konnte schon immer 20MHz Quarz. > Der ATmega328PB kann aber 20MHz nur noch mit externem Oszillator, da der > Full Swing Crystal Oscillator Mode entfallen ist. Der 328
-
Thread
8 oder 16 Zeichen 4 Zeilen LCD mit 9 mm Zeichenhöhe
.bootloader.file=optiboot/optiboot_atmega328.hex nano.menu.cpu.atmega328.build.mcu=atmega328p ## Arduino Nano w/ ATmega328P (old bootloader low mem) ## -------------------------- nano.menu.cpu.atmega328old=ATmega328P (Old Bootloader
=0xDA nano.menu.cpu.atmega328old.bootloader.extended_fuses=0xFD nano.menu.cpu.atmega328old.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex nano.menu.cpu.atmega328old.build.mcu=atmega328p [/c]
-
Thread
was verwendet ihr für Lötkolben und Lötstationen?
Lötstationen? > und welche Erfahrungswerte habt ihr? Bei mir laufen Delta Lötkolben aus DDR-Zeiten (12V/16W, 24V/16W und 220V/80W) zwischenzeitlich nun schon seit ca. 40-50 Jahren problemlos. Die 16W Lötkolben werden für die "Feinarbeiten" z.B. µC mit 0,5mm RM oder SMD Bauelemente o. ä. (auch bedrahtet
ganzen Beitrag gelesen: Wolle G. schrieb im Beitrag #7498187: > Delta Lötkolben aus DDR-Zeiten (12V/16W, 24V/16W und 220V/80W)
-
Thread
STM32F4 - Audioausgabe realisieren?
einem USART bauen. Kenne mit konkret mit STM32 nicht aus, aber habe das mal für einen 8-Bit Atmel ATmega32 gebaut. Der ominöse Takt nennt sich MCLK - Master Clock. Nicht alle DAC-Chips brauchen den. Er ist ein vielfaches vom Bitclock und der Samplerate Fs, üblicherweise Fs*256|384|512. Die Phase spielt
keine bestimmte standardmäßige Sample Rate, wenn dich nur das analoge Audio interessiert. Bei meinem ATmega-Projekt brauchte ich den MCLK, dafür habe ich dann meinen eh existierenden externen Clock genommen, den USART mit passendem Teiler betrieben und die Samplerate ergab sich daraus. (War glaube ich 20MHz
-
Thread
Alte FMZ-Zentrale 6800 mit Z84
Schnittstelle > - diverse weitere Bausteine für I/O Dieses ganze Geraffel könnte man durch einen ATmega2560 ersetzen. Debugger und C-Compiler wären dann kein Problem. Jens schrieb im Beitrag #7495162: > Und ich habe > Linux-Kenntnisse. Die nützen dafür nicht.
Von Resetvektor spricht man eher dann, wenn von der prozessorspezifischen "Startadresse" erst die 16 oder 32 Bit breite Adresse des Programmanfangs in den Programmcounter geladen wird.
-
Thread
LED CUBE selberbauen
Hilfe. Sind das einfarbige LEDs? ELV hat im Shop einen Bausatz für einen 4x4x4-Würfel mit einem ATmega168. https://de.elv.com/elv-led-cube-lc444-4x4x4-leds-bausatz-085272?fs=3796573803 Da ist sogar der Schaltplan hinterlegt.
Led-Matrix: 2 Schieberegister und fettisch. Dafür gibts auch gleich fertige Treiber-ICs wie HT16K33...
-
Thread
größeres OLED mit Arduino lib
OK, dann wird es wohl dieses hier in der 16 Bit-Variante. Ich glaube was die 8 von der 16 Bit Variante untescheidet ist nur ob ein zusätzlicher Level-Shifter aufgelötet ist oder nicht: https://es.aliexpress.com/item/1005003752743978.html?spm
Stefan F. schrieb im Beitrag #7493121: > Der ATmega2560 hat 8 Kilobyte. und ein ESP32 512KB, ein ATmega 1284p immerhin 16KB
-
Thread
Peter Dannegger´s ( PeDa ) Entprellroutine in ein Arduino Sketch einbinden
10.000 scheint nicht in ein 8 Bit Register zu passen. 10.000 modulo 256 ergibt 16. Du musst mit den Grundlagen vom ersten Kapitel an anfangen. Edit: Ok, es ist ein 16 Bit Register. Das ist es nicht. Der Wert steht vermutlich richtig im Register, aber im PrintLn wird der Zugriff nicht richtig gemacht. Auslesen über 16 Bit Hilfsvariable könnte gehen.
-
Thread
Bewertungszähler fehlerhaft programmiert Gesperrt
in den darauffolgenden Wochen. Der "Welle Teilchen" Thread bietet sich zum Glück mit seinen über 16.000 Beiträgen regelrecht als Mülleimer für Plus-Points an. Kurt würde sich freuen 😅
und -7 frage ich mich, was mir das sagen soll? Mal angenommen jemand stellt ein Projekt vor. "ATmega8 und LED" Der Eröffnungsbeitrag hat +8 und -7 Bewertungen. Jetzt findet jemand diesen Thread weil er nach LED und ATmega8 gesucht hat und fragt sich, ist der jetzt gut oder schlecht? Wären die
-
Thread
Arduino - zeitkritische Signale
/#Arduino_Uno_Mikrocontroller_ATMEGA328P 8 Bit-Timer0: wird genutzt für die Funktionen millis(), micros(), delay() und für PWM an Pin D5 und D6 16 Bit-Timer1: wird z. B. für die Bibliothek Servo, VirtualWire, TimerOne und für PWM
noch einmal zum Problem des TOs zurueckzukommen: Er benutzt einen Arduino (nehmen wir mal an, AVR mit 16MHz) und moechte 500ms (=0.5s) "abwarten". Das ist eine halbe Ewigkeit fuer den ATMEGA328P! Oder habe ich mich ein paar Zehnerpotenzen verrechnet? -> Entweder Troll oder BWLer. Gruesse Turbine
-
Thread
PIC16LF1847 flashen mit ATmega / USBasp / Arduino Nano / ponyser?
keinen PICkit da und verwende auch sonst keine PIC. Es liegen herum: * LC-01 / USBasp programmer (ATmega8 o.ä. mit Software USB) * Arduino Nano (ATmega328p + USB head) * Pollin AVR-Evaluationsboard, mit - Basales ponyser RS232 ISP interface welches evtl. direkt verwendet werden kann; und USB-RS232
Du kannst für den PIC16F1847 auch einen billigen PICkit2 verwenden, wenn Du die Software PICkitminus verwendest http://kair.us/projects/pickitminus/
-
Artikel
AVR-Tutorial: ADC
Folgende AVRs können das (X = Flash-Größe in KByte): Tinys: ATtinyX61, ATtinyX0Y Megas ohne USB: ATmega8, ATmegaX8, ATmega32, ATmega2560, ... Megas mit USB: ATmegaXU4, ATmegaXU6 Diese können das nicht: ATtiny5, ATtiny10, ATtiny13, ATtinyX4, ATtinyX5 Bei allen AVRs mit ADC lässt sich die Betriebsspannung
Subtract Immediate with Carry, Subtrahiere Konstante mit Carry-Flag). Das folgende Programm ist für den ATmega8 geschrieben. Für moderne Nachfolgetypen wie den ATmega88 muss der Code angepasst werden (siehe diesen Forumsthread und die Application Note AVR094: Replacing ATmega8 by ATmega88 (PDF; 74 KB)). Ausgabe
-
Artikel
Umstieg von Arduino auf AVR
anderem die folgenden Typen definiert: Größe Vorzeichenlos Vorzeichenbehaftet 8 bit uint8_t int8_t 16 bit uint16_t int16_t 32 bit uint32_t int32_t 64 bit uint64_t int64_t Die Nomenklatur ist eigentlich ganz einfach: [u]int[bits]_t, wobei das [u] für unsigned, also vorzeichenlos, steht und [bits] eben
Pin Register Wobei das x für den Port steht. Welche Ports es gibt hängt vom jeweiligen AVR ab. Der Atmega328p hat zum Beispiel vier Stück: PORTA, PORTB, PORTC, PORTD. Ein ATmega2560 hingegen hat derer elf: PORTA - PORTH und PORTJ - PORTL. Gemeinsam ist allen, dass ein Port maximal 8 Pins enthält (PXN,
-
Artikel
AVR-GCC-Tutorial/Die Timer und Zähler des AVR
Timer/Counter1 Timer/Counter2 AT90S2313 8 16 - ATtiny2313 8 16 - ATtiny25 8 8 - ATmega8 8 16 8 ATmega88 8 16 8 ATmega16 8 16 8 ATmega32 8 16 8 ATmega644 8 16 8 8-Bit Timer/Counter. Der 8-Bit Timer wird z.B bei AT90S2313 über folgende Register angesprochen
Zustände und Einstellungen, welche sowohl für den 8-Bit, als auch für den 16-Bit Timer/Counter in ein und demselben Register zu finden sind. Dies gilt für viele ATTiny und die älteren ATMega, wie z.B. Atmega8. Die neueren ATMegas und einige ATTiny haben bei einigen mit Ausnahme
-
Thread
Bastelei identifizieren
mit einer 8x16 LED-Matrix konnte ich nicht finden. Nur LED-Oszilloskope und NF-Spektrumanalysatoren. Letzteres ist es auf keinen Fall.
Elektronikzeitschrift ELO aus, müsstest du mal in Archiven und Jahresinhaltsverzeichnissen blättern, wohl 16 Kanal Lichteffektgerät, und er wollte aus den 16 Kanälen eine Matrix basteln, was wohl misslungen ist.
-
Thread
Universeller Schieberegister-Controller
Ausgangskonfigurationen auf applikationsspezifischen PCBs haben, habe ich mich an einen kleinen Controller mit ATMEGA328PB gemacht, welcher möglichst universell konfiguriert werden kann. Das Ergebnis in branchless findet ihr im Anhang :) Mit channelassignment[channelcount] können dabei beliebige Ausgangskonfigurationen
Beantwortung der Fragen völlig irrelevant ist und es hier um Code geht, neben einem ISP-Header, einem 16MHz Quarz, einem UART-Header passend zum FTDI-Kabel und ein paar Header zum Anschließen gäbe es da exakt nichts zu sehen. Die Header zum Anschließen werden dann auf die applikationsspezifische PCB aufgesteckt
-
Thread
Atmega328p und DS1307
Fehler > sein. Die Diskussion hatten wir gestern schon. Er benutzen den internen Oszillator am ATMega328P F_CPU wird auf 8000000 gesetzt. Wir hatten den über den Quarz am DS1307 gesprochen, weil ich keinen 32,768 kHz da hatte hab ich mit nem 16Mhz versucht, was nicht von Erfolg gekrönt war. Deshalb
fehlt etwa bcd to int? [c] uint8_t decToBcd( int val ) { return (uint8_t) ((val / 10 * 16) + (val % 10)); } uint8_t bcdToDec( uint8_t val ) { return (uint8_t) ((val / 16 * 10) + (val % 16)); } [/c] [Mod: C-Tags eingefügt]
-
Thread
Chip für super simple Funktion
schon verbaut, geht nur noch um die Ansteuerung. Muss nicht Arduino sein, habe auch schon "nackte" Atmega benutzt, aber es ist einfach komfortabel. Ich mache das ja nur hobbiemässig nebenher (shocking, I know) Drum allergrössten Respekt für alle die das richtig und professionell machen. Aber manchmal
man sich fuer einen Arduino schaemen? Nimm mal den Pro Mini.Das ist ein kleines Board mit einem Atmega 328p drauf dessen Pins auf der Platine nach aussen gefuehrt sind.Mehr nicht. Wofuer muss man sich nun schaemen? Fuer den uC,die Leiterbahnen,die kleine Platine und/oder die Pfostenfeldstecker die
-
Thread
Impulse zählen ohne EXTI, 20kHz 300kHz
Ja habe ich gerade realisiert :-) > Fossil. Welches denn? Ich habe noch ein ganz paar alte ATmega 16A daheim. Die würde ich gern für mein Hobby Projekt nutzen weil die einfach zu programmieren sind und völlig ausreichen - und nun einmal auch da sind.
#7475486: > Habe gehofft es gibt mehrkanalige Zähler-ICs > mit I2C ... Gibt es, zum Beispiel Atmega16 😀 Du musst sie nur passend programmieren.
-
Thread
Sinus mit DAC725
über einen Arduino in die DACs eintakten, das spart VIELE ICs und Verdrahtung. Wenn man denn WIRKLICH 16 Bit DACs braucht. Dreiphasig klingt nach Motorsteuerung. Die braucht keine 16 Bit Auflösung. > Finde keine Application Notes dazu im Netz. Du suchst nach [[DDS]]. Aber so baut das HEUTE keiner
> Die braucht keine 16 Bit Auflösung. Sieht aber besser aus. :)
-
Thread
Liste von ICs usw. fürs Breadboard
45, 85 > 14 Pins: ATtiny 24, 44, 84, 441, 841 > 20 Pins: ATtiny 261, 461, 861 > 28 Pins: ATmega 48, 88, 168, 328 > 40 Pins: ATmega 164, 324, 644, Warum denn diesen alten Mist. Nimm von den neueren aus der DA, DB, DD oder EA Serie. Da ist alles einfacher.
Arduino und mit vielen 4000ern: https://www.youtube.com/watch?v=pvF4IiFHuBA&list=PLd91TQa8J24_cpUXZgXfyv16ZouuHnzds
-
Thread
Arduino 2560 / Datenverlust bei Hardware-UART und SPI
Wo kommen die +5V für den Lesekopf jeweils her? LG, Sebastian PS: Ich glaube du meinst Atmega2560 bzw. Atmega328P, nicht Atmega256 bzw. Atmega32?
Ja, mit Atmega2560 bzw. Atmega328P hast Du Recht! War unpräzise! Stromversorgung kommt originär über USB, Sensor VCC kommt vom der Arduino- Board 5V! GND kommt auch vom A-Board
-
Thread
I2C RTC+EEPROM mit ESP8266. Mal funktionierts mal nicht
https://www.nxp.com/docs/en/user-guide/UM10204.pdf 3.1.16 Bus clear In the unlikely event where the clock (SCL) is stuck LOW, the preferential procedure is to reset the bus using the HW reset signal if your I2C devices have HW reset inputs. If the I2C devices
EEPROM) und INA219(Stromsensor) hatte ich bei meinem letzten Projekt verwendet dort kam als CPU ein ATMega1284P zum Einsatz welcher ja ein echtes TWI Hardware Interface hat und dort gabs keine Probleme wenn man ein HW-Reset am AVR ausgelöst hat mit dem I2C Bus. D. J. schrieb im Beitrag #7467896: > Sollte
-
Thread
Neue Version V32! von Target 3001!
jenseits der 250 Pins. Ich hatte damals, als ich noch Target benutzte, im Zusammenhang mit dem ATmega1280 tatsächlich dieses Problem. Als willkommene Lösung gab es die Light-Version von Target für nichtkommerzielle Nutzung. Mit 400 Pins für knapp 40€ war ich wieder im Rennen :) Leider scheint
ATI] Turks XT [Radeon HD 6670/7670] bus-ID: 01:00.0 Display Server: X.Org 1.16.4 drivers: ati,radeon (unloaded: fbdev,vesa) Resolution: 1360x768@59.80hz, 1024x768@75.08hz GLX Renderer: Gallium 0.4 on AMD TURKS GLX Version: 3.0 Mesa 10.3.2 Direct
-
Thread
PIC12F675 - Port-IO in C
funktionierte, das waren alles umgelabelte OPs. Mein Beileid. Hier genau andersherum. *Jeder* bestellte 12F/16F funktionierte wie erwartet. Und es waren eine ganze Menge.
AVRs gibt es auch solche Umstände, ein Attiny25 kann z.B. Binärcode des ATtiny15 ausführen, ein ATmega128 Code des ATmega103 usw. Es war früher üblich, daß Code extern entwickelt wurde und die Sourcen sind entweder verschollen oder der Entwickler verstorben, aber die Geräte werden noch viele Jahre
-
Thread
UART: Verschliffene Flanken - wann werden die Datenbits gesampelt?
z.B. Atmega644P 16.9.2 Asynchronous Data Recovery [code] The decision of the logic level of the received bit is taken by doing a majority voting of the logic value to the three samples in the center of the
jeweilige Bit gültig sein muss? Fast alle Receiver sampeln dreimal in der Mitte des Bits, mit 8× oder 16× Oversampling. Hier der MSP430.
-
Thread
Probleme mit Werten vom BME280
- "Was ist mit diesem Rätselwort gemeint?" Der BME280 wird per I²C oder SPI angesprochen, der ATmega8 kann beides - wozu wird ein Oszilloskop benötigt?
1.). Hier sollte auch das Handling von Multi-Byte Registern vorgenommen werden damit diese mit int16 und int32 Werten ohne Klimmzüge klar kommen. Testen gegen Datenblatt + Read/Write Tests. Implementiert nach Datenblatt des Sensors. Beispiele: int8_t reg_read(), int32_t reg_read, reg_write(int16_t
-
Thread
Auflösung Elektronik Shop
Manuel, falls noch vorhanden, würde ich gerne 5x ATTINY85-20PU DIP8 17x 74LS247 und 1x ATMega32-16DIP übernehmen. Gruß Thomas
-
Thread
Fernbedienung geht nicht
ist hinüber dank Schwimmbadsalzwasser, du kannst ja mal spasseshalber versuchen ob du über J2 den ATmega16 noch im Programmiermodus erreichst.
große Massefläche auf dem Board. Wie auch immer, wenn's was zu demodulieren ist seitens des ATmega, könnteste ins Datenblatt schauen und gucken, welche Pins da für was zuständig sind. Btw. was ist eigentlich mit den Flachsteckern auf dem Board? Kriegt das Board darüber Spannung - oder über die
-
Thread
Objektinitialisierung mit Parametern im Konstruktor in C++
BITISSET(Reg, Bit) (Reg & (1 << Bit)) class Uart { public: static void enable(const uint16_t boudRateRegisterValue); static void printChar(const uint8_t c); private: Uart(); Uart(const Uart&); Uart& operator=(const Uart&); }; void Uart::enable(const uint16_t baudRateRegisterValue
{ using uart = Uart; uart::enable(1); uart::printChar('H'); }; [/c] mit -mmcu=atmega16 https://godbolt.org/z/PMGznh9EP
-
Thread
Debuggen mit VisualGDB ATmega16A
Hallo zusammen, ich habe zu dem Thema schon viel gelesen, und eigentlich damit abgeschlossen, aber durch ein kleinen Fehler habe ich neue Hoffnung. Ich bin gerade dabei, für mein Abschlussprojekt als "FI Anwendungsentwicklung" die Software für meine Hardware zu schreiben. Ich haben einen AVR-Dragon, und nutze als IDE VisualStudio2022 mit VSgdb Extension zum coden und Kompilieren, und zum debuggen McS(MicrochipStudio v7.0.2542), soweit so gut, klappt auch alles. Ich habe vorher sehr lange versucht, aus VSgdb zu debuggen, hatte mir sogar extra den alten Dragon besorgt, da aktuellere ja erstmal
-
Thread
ADC - Wert berechnen
CPU-Zyklen. Vor allem wenn man versucht eine halbwegs akzeptable Genauigkeit heraus zu holen und mit 16, evtl. sogar 32 Bit rechnet.
integer-Rechnung, die das selbe Ergebnis bringt. Das halte ich für einen Irrtum. Miss mal nach, wenn mit 16 oder eher 32 Bit grerechnet wird! Ich würde vermuten, daß Float weniger als Faktor 5 langsamer ist.
-
Thread
Falsche Signature Bytes bei von mir gekauften China Nano mit 328PB
das damit zu tun? Natürlich sind beide unterstützt (genau genommen alle drei, der ursprüngliche ATmega328 mit 0x1e 0x95 0x14, der ATmega328P mit 0x1e 0x95 0x0f und der ATmega328PB mit 0x1e 0x95 0x16).
überschreiben. Dann musst du halt nur sehen, was der restliche Chip denn wirklich ist. Ein alter ATmega328, ein ATmega328P, oder ein ATmega328PB?
-
Thread
Arduino Mega R3 PWM funktioniert nicht für Timer 5 (A), Pin 44
_t NO_INPUT = 0; const uint8_t DIGITAL_INPUT = 1; const uint8_t ANALOG_INPUT = 2; const uint16_t PWMFreq = 720; // output PWM frequency (Hz) uint16_t ICR16Val; void setup() { ICR16Val = 16000000 / PWMFreq / 2; // set Phase PWM /////////////////////////////////////////////////
OutPort; // pin number of pwm output port uint8_t Timer; // assigned timer uint16_t OCRReg; // Adresse Output Compare Register // uint16_t TCCRAReg; // Adresse Output Compare Register // uint16_t TCCRBReg; // Adresse Output Compare Register // uint8