-
Thread
tuidude - Textuserinterface für AVRDUDE unter Linux
Unterschiedlichkeiten der Bitpositionen, vor allem wenn man nicht nur die Bits bspw. CKSEL1 / CKSEL2 / CKSEL3 eines Atmega anzeigen möchte, sondern per Text anzeigen möchte dass: [code] CKSEL0 = 1 CKSEL1 = 0 CKSEL2 = 1 CKSEL3 = 1 der Einstellung: Int. RC Osc. 8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 0
.. Das wird aber enden. Und das wird diesmal voraussichtlich schneller gehen als damals bei dem 16Bit-Kram.
-
Thread
Counter für Reedkontakt - was mache ich flasch?
#7348233: > Aber die RC-Schaltung benötigst du trotzdem. Die nutzt ihm nichts. Wie soll er denn die 16 x LS163 auslesen? 16 x Arduini? Mit T0-Eingang wäre dann aber der LS163 überflüssig, wenn es irgendwie noch geschafft wird, einen Überlauf von T0 auszuwerten. Insgesamt ein völlig falscher Ansatz
ist. So wird das nichts. 74LS163 ist jedenfalls der falsche Ansatz. Arduino auch. Nackter ATmega328 ist batteriefreundlicher.
-
Thread
DFN-16 Platine
3100084 Hier für 2,50. https://www.artekit.eu/products/breakout-boards/bbadapters/dfn-to-dip/dfn-16-to-dip-adapter-5mm-x-5mm-p0-50-pack-of-2/ Wie suchst du? Kennst du google schon?
den Rücken legen (und fest kleben) und mit dünnen Drähtchen an die Stiftleiste kontaktieren. Bei 16 Pins und 3mm x 3mm und etwas Sehhilfe sollte dass noch machbar sein.
-
Thread
Bitte um Hilfe mit Verständnis, ISR von Timer usw.
. Damit bekommt man wieder die > oben demonstrierten Probleme beim Lesezugriff. Mmh. Auf dem ATMega1284 *sind* Zugriffe auf die 16-bit TCNTn-Register atomar: "16.3 Each 16-bit timer has a single 8-bit register for temporary storing of the high byte of the 16-bit access. [...] When the low byte of
Sebastian W. schrieb im Beitrag #7349475: > Mmh. Auf dem ATMega1284 *sind* Zugriffe auf die 16-bit TCNTn-Register > atomar: Nein, sind sie nicht. Das zitierte Feature dient nur dazu, auf Timer-Register Glitch-frei zugreifen zu können. > "16.3 Each 16-bit
-
Thread
Wer kennt dieses AVR-Board?
zwei 32 KiB-RAMs & SN74HC04 (huckepack) draufgesetzt; benutze das aber praktisch nicht mehr, da für ATmega8515 & ATmega162.
angefangen. Der Quarz ist auswechselbar, sonst habe ich wenig modifiziert. Links der Anschluss für ein 2*16 Textdisplay, meine alten Typen brauchten noch -5V, daher ein zusätzlicher ICL7660 mit zwei Elkos Der Controller in DIL-28 ist hier ein ATmega48-20 Baujahr 2008
-
Thread
atmega328pb - Maximum Frequency vs. VCC
Ich habe über längere Zeit einen ATmega328P-PU an 3,3 Volt mit 16 Mhz Quarz geteilt durch 2 betrieben. Hat problemlos geklappt. Aber eine offizielle Angabe dazu konnte ich auch nicht finden.
anschließend nur noch Frequency Auf welche Info beziehst Du Dich da? Ich beziehe mich auf das aktuelle atmega328pb Datasheet und da ist vorher kein Wort von Sysclock frequency zu lesen.
-
Artikel
AVR Net-IO Bausatz von Pollin
Spannungsregler wird mehr heiß, kein Kühlkörper wird benötigt, das Board arbeitet absolut stabil. Ersatz des ATmega32 durch einen ATmega644 oder ATmega1284p mit mehr FLASH-Speicher. Der ATmega644 und auch der ATMega1284p sind nicht mit der Pollin-Firmware kompatibel 100 nF Kondensatoren an allen VDD/VSS Paaren
vollzogen). Das sorgt für einen stabilen Betrieb des AVR-Oszillators im "full rail-to-rail swing"-Mode bei 16 MHz. Atmel garantiert ansonsten nur stabilen Betrieb bis 8 MHz. Siehe ATmega32-Datenblatt, Kapitel 8.4, Crystal Oscillator. Funktionsfähige Konfiguration - AVR-Prog. Benutzer von AVR-Prog können die
-
Thread
AVR-NET-IO PlatformIO Arduino Bauumgebung
://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide) * Verwendeter AVR: [ATmega32](http://ww1.microchip.com/downloads/en/DeviceDoc/doc2503.pdf) * verwendete Bibliotheken: [MCUdude/MightyCore](https://github.com/MCUdude/MightyCore), [jandrassy/EthernetENC](https://github.com
|27 PC5 (D 21) TDI // TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO // RX1/INT0 (D 10) PD2 16| |25 PC3 (D 19) TMS // TX1/INT1 (D 11) PD3 17| |24 PC2 (D 18) TCK // PWM (D 12) PD4 18| |23 PC1 (D 17) SDA // PWM (D 13) PD5 19| |22 PC0 (D 16) SCL //
-
Thread
ATmega32U4 USB Init
Hallo an die Experten: ich habe ein proMicro board mit einem ATmega32U4 drauf. Die HW scheint okay - ich kann damit alles machen, der uC läuft korrekt. Nur gelingt es mir nicht die USB Schnittstelle zu initialisieren. Ich benutze Standard-Code aus dem Netz, den ich auch verstehe. [c] //------------------------- int16_t usb_init (void) //------------------------- { ATOMIC_BLOCK(ATOMIC_RESTORESTATE) { UHWCON |= (1 << UVREGE); // Enable USB Pads Regulator // configure PLL
-
Thread
Keine Verbindung zu mySmartUSB light in Arduino IDE
[/c] Hier wäre fast so was ähnliches oder?: https://starthardware.org/arduino-bootloader-auf-atmega-chip-ubertragen/ werde mal schauen ob ich den optiboot jetzt drauf bekomme nur mit avrdude
Ach so wahrscheinlich die andere ISP-Verbindung.. Ja. Mein UNO hat als USB-UART-Bridge einen ATmega16U2 mit einem eigenen 6poligen ISP-Adapter drauf. Wer das nicht sauber auseinanderhält, bekommt Probleme. Nach Deinen ersten Postings hätte ich Dir zugetraut, das zu verwechseln, es klang alles nach
-
Thread
ATMEGA32A: korrupte Daten im EEProm nach Spannungsverlust
So habe ich es auch immer gehalten (& BOD) und nie EEPROM-Probleme gehabt bei den kleinen Brüdern ATmega16 und ATmega16A; zumindest wurden mir keine gemeldet, und rund tausend Anwendungen sind immerhin draußen.
> Bei >= 16 MHz und nicht gesetzter CKOPT gibt es > jedoch die merkwürdigsten Fehler. Was daran liegen mag, dass der ATmega32A nur bis 16 MHz spezifiziert ist.
-
Thread
Spannung messen
Strom würde ich annehmen? Habe gerade keine Arduino Schaltbild vor mir. Hier guck dir die Dioden im Atmega an https://www-user.tu-chemnitz.de/~heha/hsn/chm/ATmegaX8.chm/14.htm Deshalb flisst Strom und es entsteht die Gegenkraft https://studyflix.de/elektrotechnik/lenzsche-regel-1811
würde ich annehmen? Habe > gerade keine Arduino Schaltbild vor mir. Hier guck dir die Dioden im > Atmega an > > https://www-user.tu-chemnitz.de/~heha/hsn/chm/ATmegaX8.chm/14.htm > > Deshalb flisst Strom und es entsteht die Gegenkraft > > https://studyflix.de/elektrotechnik/lenzsche-regel-1811
-
Thread
ADC über SPI
den Controller im Titel nennen sollen. So ohne jede Information lockt man viele an, die z.B. den ATmega8 kennen, aber den STM32F446RE nicht.
SPI1->SR & SPI_I2S_FLAG_BSY) != 0); return ret_val; } /* --- SPI_TransferByte --- */ uint16_t Read_ADC (void) { uint8_t byte_low, byte_high; uint8_t config_byte; uint16_t adc_val; uint8_t mode = 1; uint8_t channel = 0; config_byte = 0b100|(mode << 1) | ((channel
-
Thread
Phänomen tinyAVR-series(R) 0/1
Pseudofloatausgaben im Bereich) ------------------------------------------------------------ */ void putint(int16_t i, char komma) { typedef enum boolean { FALSE, TRUE }bool_t; static uint16_t zz[] = { 10000, 1000, 100, 10 }; bool_t not_first = FALSE; uint8_t zi; int16_t z
so daß der Bug sich nicht auswirkt. Ein Bug im avr-gcc 7.3 erscheint mir unwahrscheinlich, da ja ATmega168 usw. gehen.
-
Thread
Inkrementalgeber an CMOS Dekadenzähler CD4017
ds/symlink/cd74hc40103.pdf bei Reichelt 1,60€ https://www.reichelt.de/counter-8-stage-2--6-v-dil-16-74hc-40103-p3215.html?&trstct=pol_2&nbc=1
Interrupt erfasst, dann kannst Du in der ISR auch die Ausgangsimpulse mit feiner Auflösung erzeugen. Ein 16-bit Timer ist dafür ungeeignet. Auf einem STM32 dauert die ISR für die Verarbeitung von uint32_t Werten < 1 µs.
-
Thread
Langzeittimer per RC-Glied?
wenig ist, was der µC im aufweckmodus braucht Schau doch einfach mal ins Datenblatt, z.B. für den Atmega328, den Manfred oben als Beispiel gab. Gruß Marcus
Schon, aber an einem ATmega328P z.B. erlaubt der Quarz einen niedrigeren Stromverbrauch als der Watchdog - falls das denn überhaupt relevant wäre.
-
Thread
ISR Aussetzer durch Volatile-Variablen-Polling ?
Danke an alle! Ich vergaß zu erwähnen, dass es sich um einen ATMega644 handelt. Ich verstehe "volatile" als einen MB-Mechanismus zwischen ISR und Singletask-App. Die Platine arbeitet unter harschen Bedingungen durch die direkte Verschraubung mit dem Verbrennungsmotor
schrieb im Beitrag #7338436: > Danke an alle! > Ich vergaß zu erwähnen, dass es sich um einen ATMega644 handelt. Ich > verstehe "volatile" als einen MB-Mechanismus zwischen ISR und > Singletask-App. Das ist eine ganz normale Anwendung von volatile und memory barrier. Aber hört bitte auf, für
-
Thread
Zeigt her eure Kunstwerke (ab 2023)
Kleiner GPS Navigator mit ATmega16. Grundgerüst ist ein Projekt hier im Forum von 2006. Bastle daran schon seit Ewigkeiten immer wieder mal. Habe es im Sandwich aufgebaut damit es als Einschub dienen kann. Navigiert wird per
Thomson werden und arbeitet mit einen NEC-ähnlichen Code. Das Herz der Schaltung ist nun der ATMEGA32-16PU und der 74LS123. Der 74LS123 soll mir die richtigen Flanken vom IR-Empfänger liefern und auch am Bedienteil optisch anzeigen, das der Empfänger funktioniert. Der ATMEGA32 steuert und verarbeitet
-
Thread
Wie wichtig ist eine Mini-USB-Buchse zum Laden für die Kundenakzeptanz
den Augen: Selber kaufen... Von 2017 Monitor Philips 241B7QUPBEB, von 2015 Notebook MSI WS60 6QJ16H11.
Anschluss haben? https://www.lenovo.com/de/de/laptops/ideapad/ideapad-flex-series/IdeaPad-Flex-5-Gen-8-16-inch-AMD/p/LEN101I0065
-
Thread
Frage zu UART AVR Code
Falk B. schrieb im Beitrag #7336428: > Bei 9600 Baud und 16 MHz CPU-Takt, dauert ein Zeichen mit > 10 Bit stolze 1,042ms, das sind 16.666 CPU-Takte. wow das ist viel.
Ich benutze den Simulator2 mit Device ATmega328p
-
Thread
ATtiny1604 - Fuses unter Linux
CLKCTRL_PEN_bm); // 3.333 MHz [/c] Nur wenn man die Oszillatorfrequenz ändern möchte (20MHz / 16MHz), dann nur über die Fuses und dann eben nicht zur Laufzeit.
keinerlei Alternative. bloom (+ SNAP) scheint den tiny1604 zu unterstützen. Habe selbst auf den Atmega16 damit erste Erfahrungen gesammelt. Konsolenbasierend der Einäugige unter den Blinden.
-
Thread
Empfehlenswerte Literatur zum Erlernen von C
Mikrocontrollern-Vom Programmiergerät bis zu fertigen Projekten" von Holger Weiß. Verwendet wird der ATMega328. Ideal für Anfänger. Endlich mal etwas, das wirklich was taugt. Empfehlenswert!
meiner Meinung nach gar nicht geben. Denn diese Programmiersprache war eigentlich für (mindestens) 16 Bit Computer mit Betriebssystem gemacht. Deswegen hat in C der normale Integer 16 Bit. Einzelne Bits gibt es in C eigentlich nicht. Interrupthandler und das Ansprechen von Registern war dem Betriebssystem
-
Thread
7-Segment-Ansteuerung
drei 7-Segment-Anzeigen, CA, Ansteuerung an PORTB0, PORTB1 und PORTB2 mit PNP Transistoren ATMega48 */ #define F_CPU 8000000UL #include <avr/io.h> #include <util/delay.h> uint16_t display_value; uint8_t einer, rest, zehner, hunderter; const uint8_t segmenttable[11]; #define
drei 7-Segment-Anzeigen, CA, Ansteuerung an PORTB0, PORTB1 und PORTB2 mit PNP Transistoren ATMega48 */ #define F_CPU 8000000UL #include <avr/io.h> #include <util/delay.h> uint16_t display_value; uint8_t einer, rest, zehner, hunderter; #define T1 0xFE // Basis Transistor
-
Thread
Beispielcode: ATMega16 8 bit LCD-Ansteuerung von ChatGPT
ausprobiert, das ist das Ergebniss auf eine sehr simple Vorgabe: Schreibe einen AVR ASM Code für den ATMEGA16 zur Ausgabe von Hallo World! auf ein LCD im 8 Bit Modus, nach nichtmal einer Minute kommt das dabei raus. Klar ein paar Syntaxfehler aber schon der Wahnsinn. Vorallem da man es präzisieren oder Änderung
> kommt das dabei raus. Wen willst Du hier veralbern? Schreibe einen AVR ASM Code für den ATMEGA16 zur Ausgabe von Hallo World! auf ein LCD im 8 Bit Modus [avrasm] .nolist .include "m16def.inc" .list .org 0x0000 rjmp reset .org 0x0100 reset: ldi r16,0xFF ; Configure Port B as
-
Thread
Kleiner Arduino-MC für UART zu SN74HC595
32U auch schön klein. https://ww1.microchip.com/downloads/en/devicedoc/atmel-7766-8-bit-avr-atmega16u4-32u4_datasheet.pdf
an UART > Idealerweise: geht über Arduino oder eine ähnlich einfache > Programmierumgebung PIC16F1454/1455. 14 Pins in DIL/SOIC/TSSOP, 16 Pins in UQFN 4*4mm, Hardware-USB-Device. Hardware UART. Hardware SPI/I2C. 3V3 und 5V-Betrieb möglich fchk
-
Thread
Zabex Ohmmeter mit Atmega 88 Funktion ?
ist: [c] ADC_Wert_2 = ADC(2) # mit Messung R while True: Nenner = 65536 - ADC_Wert_2.read_u16() # 16 Bit Zaehler = ADC_Wert_2.read_u16() * 10 # Referenz R 10K Rx = Zaehler / Nenner print('ADC2:', ADC_Wert_2.read_u16()) print('Nenner: ', Nenner) print('Zaehler ', Zaehler
nicht geeignet für einen 16-Bit ADC.
-
Thread
Strings mit AVR - aber richtig
UDR2 = c; //send data } void print_flashstr(PGM_P str) { u8 c; while((c=pgm_read_byte_near ((u16)str))) { send_byte_usart0(c); str++; } } [/c] benutzt wird, sollte [c] print_flashstr(BUILDTIME); [/c] beim ATMega328 und auch bei den größeren Varianten (z.B. ATMega2560) sicher
//send data > } > void print_flashstr(PGM_P str) { > u8 c; > while((c=pgm_read_byte_near ((u16)str))) { > send_byte_usart0(c); > str++; > } > } > benutzt wird, sollteprint_flashstr(BUILDTIME); > beim ATMega328 und auch bei den größeren Varianten (z.B. ATMega2560) > sicher funktionieren
-
Thread
ATMega328 im Hutschienengehäuse mit Ethernetanschluss
schrieb im Beitrag #7323707: > Ich hatte mal wieder etwas Zeit und habe ein Hutschienenmodul auf > ATMega328-Basis warum nur? der ATmega 1284p mit 20 MHz 128k flash und 16k SRAM ist viel interessanter. Das Modul würde auch nicht größer. Manfred schrieb im Beitrag #7323867: > 5V am µC und 3,3V
0.6xVcc). https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf
-
Thread
STM32L051 UART transmit
zur TX-Routine, der ursprünglich von R. Jesse stammt: void USART2_IRQHandler(void) { uint16_t received = 0; if (USART2->ISR & USART_ISR_RXNE) { received = USART2->RDR & 0x01FF; if (received == 'a') { LED_PC13_ON; } if (received
verschaffen. Allerdings haben wir 'zu meiner Zeit' immer erstmal versucht einen 8 Bit Controller (ATmega8) zum laufen zu bringen. Das ist dann doch etwas einfacher. Was den UART bzw. die Interrupts betrifft ist es keine gute Idee, darin die Daten auszuwerten. Du sollstest einfach einen globulen Byte
-
Thread
AVR®DD family, low pin count devices
jede Pinanzahl einen eigenen Chip? Das wäre viel zu teuer. Kuriosum sind in der Hinsicht die ATmega1280/1281. Da der ATmega1281 in der Linie von ATmega103 und ATmega128 liegt, hat er seine ISP-Pins nicht auf den SPI-Pins, sondern auf separaten PDI/PDO (gedoppelt mit den Pins von UART0). Bei den 100
Die M103C Fuse haben aber nur der ATmega64, ATmega128 und der ATmega128A.
-
Thread
DAB Shield Frage zu Arduino Code
damit gemeint, ein externes an I2C Bus oder der Controller interne EEPROM. #ifdef USE_EEPROM uint16_t writeCurrentSettingsToFlashDelayTimer; uint8_t writeCurrrentSettingsToFlash = 0; #define WAIT_SAVECURRENTSETTINGS 10000 //wait 10 sec. after channel/vol change before save, prevent writing while
eingestellt war das UNO Board. Es kommt die Fehlermeldung das zu wenig RAM vorhanden ist. Erst mit einem ATMEGA 1284 läuft das Compilieren durch. Hat den Sourcecode schon mal jemand verwendet, mit welchen Controller was hat es mit dem EEPROM auf sich.
-
Thread
Manson HCS-3602 HCS-3600 Reparatur
Es gibt ein altes und ein neues Board bei der Frontplatte. Ich habe noch ein altes und da ist ein Atmega 16A AU verbaut. Danke!
selbst nur gekauft, hat also keine technische Ahnung. Letztlich bräuchte ich einen programmierten Atmega, der für genau meinen Gerätetyp konfiguriert ist. Ich könnte wetten, daß Manson das per Software macht. Also die Frontplatte wird generisch gelagert, und beim Einbau bzw. Verkauf als Ersatzteil (falls