-
Thread
Mehrere Shields auf einem Arduino Uno R3: Verständnisfrage
sinnvoller Weise Interrupts verwenden. Da das SPI nicht reentrant ist, braucht man also 2 SPI. Beim ATmega328 kann man die UART als 2. SPI-Master benutzen. Die ist dann auch einen Zacken schneller, da mit Sendepuffer. Oder einen ATmega328PB mit 2 SPI und 2 UARTS.
sollte er getrennt auf ein 2. SPI geroutet werden können. Vorzugsweise auf eine UART mit Puffer, d.h. 16 Bit je Interrupt.
-
Thread
Temperatur-Sensor für Funkübertragung, Schaltplanidee
dann ein einzelner LiPo oder 2xAA. z.B. ein STM32WL33 kommt mit 1.7V aus, kann dann aber wohl nur 16 dBm Sendeleistung. Kompakter wird es dadurch auch.
dann ein einzelner LiPo oder 2xAA. z.B. ein > STM32WL33 kommt mit 1.7V aus, kann dann aber wohl nur 16 dBm > Sendeleistung. Kompakter wird es dadurch auch. Ja, es gibt effizienteres und der STM33WL33 scheint interessant zu sein aber mit ATMEGA+HC12 hab ich schon einiges gemacht.
-
Thread
ATmega Power-Down und Wakeup mit INT0
Power-down, 'rising edge of INT0': von meinen 8ern wachen die neueren (ATmega48PA, ATmega328P) auf, die älteren (ATmega88, ATmega168) nicht.
> Wäre mal interessant ... Ein ATmega16 wacht nicht auf, mein einziger ATmega16A ist unauffindbar, ein ATmega644 wacht auf, und für die anderen gehe ich auch von Letzterem aus (ATmega324PA, ATmega644P, ATmega1284P), erspare mir also den
-
Thread
ATmega: unerwatetes Reset
verlinkt, und davon die falschen 1,8V entnommen. https://www.reichelt.com/dk/de/shop/produkt/8-bit-atmega_avr_mikrocontroller_32_kb_20_mhz_pdip-28-119685?q=%2Fdk%2Fde%2Fshop%2F8-bit-atmega-avr-mikrocontroller-32-kb-20-mhz-pdip-28-atmega-328p-pu-p119685.html Mouser hat beim ATmega328P-PU das richtige
Hmm, in dem nicht-automotive Datenblatt sind tatsächlich beide gelistet. ATmega328-PU ATmega328P-PU beide ab 1,8 V.
-
Thread
Daten per Audio übertragen
Hier ein Programm, das ich 2011 schrieb, um einen ATMega über die Sound-Karte des PCs zu flashen: [[SOUNDRX]] Der Hardware-Aufwand ist minimal, siehe Artikel. Thread zum Thema: https://www.mikrocontroller.net/topic/224911
von R. M. (rmax) 16.01.2025 23:51 >Ich habe vor einigen Jahren das AudioLINK-Protokoll von Ei Electronics >analysiert, das in deren Rauchwarnmeldern (z.B. Ei650i) und anderen >Warngeräten verwendet wird, > .. >
-
Thread
"Intelligenter" Textdisplayadapter mit Padauk PFS154
Preis bei lcsc.com, Stand 23.10.2024 für PFS154-8 bei Abnahme von 50 Stück 5,76 Cent, für den PFS154-16 bei Abnahme von 50 Stück 7,99 Cent Der Displayadapter hat nur eine Eingangsdatenleitung auf der die Information über ein proprietäres 12-Bit PWM Protokoll übertragen wird. Der steuernde Microcontroller
PIC16F15213 für 35ct oder LPC824 für 80ct hätten UART, wobei die sogar aufgrund ihres internen kalibrierten Oszillators ohne Quarz auskommen. Oder noch billiger PY32F002 für 15ct, braucht aber AFAIK einen
-
Thread
Fehler bei avr-gcc 4.8.1 und nicht bei 4.3.3
ich habe mir das ucos-ii für verschiedene Controller portiert. Momentan teste ich das mit dem ATMega2560. Da ich schon seit Jahren mit winavr bestens klar komme, habe ich bei mir das immer noch installiert. Da die Software auf dem Atmega2560 erst nicht lief, habe ich das auch mit ATmel-Studio compiliert
schon seit längerem durch eine bedingte Compilierung auch für den AT90CAN128, den AT90S8515 und den ATMega162 geändert. Dort liefen die auch einwandfrei. Daher wollte ich zunächst testen, ob das auf allen drei Controllern noch funktioniert. Während ich die Software für den ATMega2560 geändert hatte, fielen
-
Thread
SPI EEPROM durch lesen kaputt?
zu enablen. > > Harmoniert leider nicht so gut mit (langzeit-) Batteriebetrieb. Z.B. beim ATmega328P/PA kann man das BODS Bit vor dem Schlafen setzen.
nicht drei Level (TL=Triple Level), sondern 8 Level unterscheiden muss, ein "QLC" (QL=Quad Level) 16 Level. Eigentlich müsste es also nicht SLC/MLC/TLC/QLC, sondern SBC(single Bit Cell)/DBC/TBC usw. heißen. Aber das Kind ist wohl in den Brunnen gefallen.
-
Thread
neuer atmega328p
Hightiger schrieb im Beitrag #7758769: > sowohl mit 16000Mhz Oszilator. Wie auch ohne probiert. 16GHz wird der µC nicht schaffen. Der ATmega328 wird ab Werk mit 1MHz getaktet (8MHz RC mit 1:8 Teiler). Dann ist der AVR-Dude mit seinem Default-Clock (IMHO 4MHz) wahrscheinlich zu schnell. Setze den
Hightiger schrieb im Beitrag #7758769: >> sowohl mit 16000Mhz Oszilator. Wie auch ohne probiert. > > 16GHz wird der µC nicht schaffen. > Der ATmega328 wird ab Werk mit 1MHz getaktet (8MHz RC mit 1:8 Teiler). > Dann ist der AVR-Dude mit seinem Default-Clock (IMHO 4MHz) > wahrscheinlich zu schnell.
-
Thread
Wer hat ein ILI9341 Display mit 5v im Betrieb?
Bei mir läuft das ILI9341-Display mit einem ATmega1284 mit 20MHz Takt. Als Pegelwandler ist von der MCU zum Display ein 74LCX541 verbaut. Die 3,3V Pegel vom Display zum ATmega gehen direkt auf den Port und machen hier keine Probleme. Das MISO-Signal
wird. Mein Tipp für dich: Das von dir verlinkte Display kostet inkl. Versand 9,29€+4,87€=14,16€. Dieses Display hier (ebenfalls 3,2", 320×240, resistiver Touch) kostet 17,59€+0,00€=17,59€, also gerade mal 3,43€ mehr: https://de.aliexpress.com/item/1005006623203478.html Für diesen
-
Thread
Wert in AVR Register laden: optimalen Code generieren?
denn? In meiner kleinen Welt haben AVR Register 8-Bit Dann wäre die Aufgabe so zu lösen: LDI R16, $Wert MOV R17, R16 MOV R18, R16 MOV R19, R16
Eigenschaften des AVR (hat MOVW oder nicht) sind als Pa Parameter des Algorithmus' anzusehen. > LDI R16, $Wert > MOV R17, R16 > MOV R18, R16 > MOV R19, R16 Auch falls das unterste zu setzende Reg >= R16 ist, gibt es Abkürzungen. Beispiel: Wert = 0 mod 65537 und MOVW verfügbar: LDI R16, lo8
-
Thread
Hilfe bei dem RFID RC522 in Assembler
ich bräuchte Hilfe beim Ansteuern, bzw. in Betrieb setzen des RC522. Ich habe das Modul an einen ATMega16 per SPI angeschlossen und programmiere in Assembler. Man findet im Netz milliarden beispiele für die dämlichen Aruinos (sorry) und ihre Bibliotheken bei deren Benutzung man eh nichts lernt sondern
wären viel schöner Die Arduinos haben ja alle mindestens 32 KiB flash, es könnte da bei deinem ATmega16 sogar knapp werden mit dem Flash. Andreas D. schrieb im Beitrag #7756602: > in C > und dergleichen verblödet man Andreas D. schrieb im Beitrag #7756284: > Ja, ich versteh den Arduino Code
-
Thread
Einfache CPU, einfacher Rechner, nur zum Lernen, Erfahrung?
Schau Dir mal den Commander X16 an. Das ist vielleicht genau das, was Du suchst? Ein moderner retro Lern- und Spielcomputer mit aktueller Hardware. https://8bit-museum.de/der-neue-retro-computer-commander-x16/ Es gibt auch eine
durch Tabellen gehen kann. Richtig, aber die des 6502 waren nur 8 Bit breit, das des 6800 aber 16 Bit, so daß Tabellen auch größer als eine "Page" werden konnten, ohne daß zusätzliche Klimmzüge nötig waren. Der 6809 hatte zwei 16-Bit-Indexregister und einen weiteren, ebenfalls 16 Bit großen Stackpointer
-
Thread
Micropython und Esp32 statt Arduino ?
ich Aktionen im microSekunden - Raster brauche, läßt sich das in Python realisieren ? (Vergleiche ATMega : 1 mikroSekunde Auflösung ist drin bei 16 Mhz Takt).
Reiner D. schrieb im Beitrag #7753674: > (Vergleiche ATMega : 1 > mikroSekunde Auflösung ist drin bei 16 Mhz Takt). Wenn du eine Million mal pro Sekunde etwas jeweils innerhalb von 16 Taktzyklen erledigen willst (ca. 8 bis 10 Assembler Befehle), dann ist
-
Thread
Wo kann ich ATMEGA16A-PU für AMAX BLDC programmieren lassen?
Woher kommt eigentlich die Diagnose, dass der ATmega16 defekt ist?
H. H. schrieb im Beitrag #7753413: > Woher kommt eigentlich die Diagnose, dass der ATmega16 defekt ist? Genau, und warum ist noch niemand auf die Idee gekommen zu versuchen, die Firmware aus dem 'defekten' ATmega16 auszulesen? Die Chance, dass der ATmega den Kurzschluss ansich überblebt
-
Thread
BME280 liefert zu genaue Ergebnisse :-)
16X oversampling writeRegister(BME280_REG_CONTROL, 0xb7); //Choose 16X oversampling [/code] Hat vielleicht jemand eine Idee dazu, oder gerne auch einen anderen Ansatz? Danke!
0xB7: 1011_0111: 101_101_11 ^--> Modus ^--> Druck x16 ^--> Temp. x16 [/code] (Über den Sinn des Unterfangens denke ich jetzt nicht nach)
-
Thread
seriell auslesbare Taster/Schalter, Idee zur Diskussion
sendet (TX). Wieso SoftSerial? Es gibt genügend Controller mit Hardware UART. Beispielsweise PIC16F15213 für 36 Cent ab 25 Stück bei Digikey. Sollte alles haben, was Du brauchst. https://www.digikey.de/de/products/detail/microchip-technology/PIC16F15213-I-SN/12807336 Wenn es unbedingt AVR sein
technischer Hinsicht deutlich besser als die Klassiker. Z.B.: (Mouser-Preise Einzelstück): Klassiker ATMEGA1284P-AUR : 6,65€ Modern AVR128DB48T-I/PT: 2,16€ Die sind vom Package, der Pinzahl und vom Speicher her in etwa gleich, der Moderne hat aber mehr Takt, einen effizienteren Befehlssatz, modernere
-
Thread
Viele Drucktaster und LEDs ansteuern
LEDs. Das ginge mit z.B. 8 kombinierten Spalten, 8 Zeilen für die Taster -> max. 8x8=64 Taster 16 Zeilen für die LEDs -> max. 16x8=128 LEDs. Der ATmega2560 hat mehr als genug Pins dafür und ist gut erhältlich - bei Bedarf auch auf Lochraster-freundlichen Boards.
Von Holtek der HT16K33 ist als als Displaytreiber für LED Anzeigen bekannt, kann aber mehr. Neben 16x8 Matrix LED kann er auch noch einen Haufen Tasten abfragen. Wenn das immer noch nicht reicht, ist er auch noch kaskadierbar
-
Thread
externes Ram am Atmega162
anderen zu nehmen. Falk B. schrieb im Beitrag #7751048: > Es gab mal die Info, daß bei vollen 16 MHz ein HCT zu langsam ist und > man ein ACT Latch braucht. Die exakte Bezeichnung ist: MM74HCT573N Was mich irritiert ist, dass es mit einem AT90S8515 funktioniert. Aber nicht mit dem ATmega162
> nach langen Jahren mal wieder ... ATMega162 Funktioniert denn überhaupt etwas auf dem ATmega162? Oder ist vielleicht Fuse M161C eingeschaltet?
-
Thread
Synchrongleichrichter 400V 400A
braucht mann 400 V und 400 A. E-Lok oder was. ich rechne zu Hause bei mir in yA, max 30 mA an AtMega So long, HolgerR
In Deutschland sind 750VDC üblich, aber es gibt auch Mehrsystemstraßenbahnen mit 750VDC/15kVAC(16,7Hz). In Frankreich gibt es sogar 750VDC/1,5kVDC/25kVAC(50Hz).
-
Thread
SPI Kommunikation zwischen AT90CAN und ATmega16 (AVR)
SPI Kommunikation zum laufen bringen. Hierbei wird der AT90CAN128 als Master initialisiert und der ATmega16 als Slave. Es soll der Master den Slave ansprechen über den SS Pin (low) und der Atmega soll in diesem Projekt dann mit den ausgewerteten Sensordaten antworten. Da das alles nicht so gefunzt hat,
original doch gar nicht übersetzt!?) läuft es hier (mutatis mutandis), mangels AT90CAN zwischen zwei ATmega16.
-
Thread
CH340N nur bis 38400 Baud?
, damit hier der > Fehler definitiv immer bei 0% liegt, denn 2,5% ... auch mit einem 16Hz Quarz. Also konnte das wohl nur noch an der Versorgung liegen. Eine Drosselspule und ein Kondensator in die Versorgungsleitung des ATmega und es hat funktioniert. Ein STM32F030 der über einen
Du verbindest das womöglich mit > Dupontkabeln, Du hast auf der anderen Seite den UART mit einem ATMEGA > mit 16MHz betrieben, was krumme Baudraten und erhebliche Fehler > verursacht Wieviele Millionen von ATmega werden mit 16 MHz betrieben und funktionieren mit einer Baudrate von 115200 Bd absolut
-
Thread
AVR TWI Master ausschließlich mit Interrupt in C
NULL; if (twi_read(0x44,&length,&buffer)==TWI_OK) { if (length==6) { uint16_t t=buffer[0]*256+buffer[1]; uint16_t h=buffer[3]*256+buffer[4]; reg.temperature=-45.0f+175.0f*((float) t/65535.0f); reg.humidity=-6.0f+125.0f*((float) h/65535.0f
TWI_OK steht dort dann die Länge der empfangenen Daten drin. Getestet wurde die Bibliothek mit Atmega324PB (twi0) und einem Atmega328P (twi). Ein Test mit Atmega328PB (twi0) steht noch aus..
-
Artikel
AVR-Simulation
breakpoints setzen. Den Ersten am besten bei main: (gdb) b main Breakpoint 1 at 0xd2: file main.c, line 16. Jetzt kann man das Programm im Simulator mit continue starten: (gdb) c Continuing. Bei Erreichen des zuvor gesetzten breakpoints stoppt GDB und meldet: Breakpoint 1, main () at main.c:16 (gdb) Eine
avr-gdb: $ avr-gdb -tui Jetzt müssen wir unsere software laden: (gdb) file examples/board_i2ctest/atmega1280_i2ctest.axf Antwort: Reading symbols from examples/board_i2ctest/atmega1280_i2ctest.axf...done. Danach eine Verbindung zwischen simavr und gdb aufbauen: (gdb) target remote localhost:1234 Antwort
-
Thread
Solar 20V 100Watt Einergiemesser Stromzähler
nicht mit der oben gezeigten Schaltung. Die Modulspannung ist stark vom fließenden Strom abhängig. Die 16V-Z-Diode klemmt zwar die Basisspannung der Darlingtons auf 16V über Masse, aber die positive Schiene ist über 2 B-E-Strecken und die Emitterwiderstände an die Basisspannung gekoppelt. Bei 12A in dem
dann den Strom langsam zu erhöhen, bis die Spannung einen Wert unterschritten hat. Das könnte ein ATmega o.ä. machen. Gruß Carsten
-
Thread
25LC512 SPI EEPROM seltsames Verhalten / defekt?
By the way: Mein Code hat bei einem ATmega644P funktioniert. Auf diesen Chip hatte ich ihn entwickelt. Interessant, dass der ATmega32A wohl vor dem Empfang ein Schreiben des SPI Data Register benötigt. Der ATmega644P wohl nicht. Da hat das
Kai schrieb im Beitrag #7742816: > By the way: Mein Code hat bei einem ATmega644P funktioniert. Auf diesen > Chip hatte ich ihn entwickelt. Interessant, dass der ATmega32A wohl vor > dem Empfang ein Schreiben des SPI Data Register benötigt. Der ATmega644P > wohl nicht.
-
Thread
Geschichte des Mikrocontrollers.
Zitat: "Die Block-I-Version des AGC verfügte über ein RAM mit einer Kapazität von 1024 Datenworten à 16 bit und ein ROM mit einer Kapazität von 12288 Datenworten à 16 bit, die später auf 24576 Datenworte erweitert wurde. Die Block-II-Version des AGC verfügte über ein RAM mit einer Kapazität von 2048 Datenworten und ein ROM mit einer Kapazität von 32768 Datenworten à 16 bit." https://de.wikipedia.org/wiki/Apollo_Guidance_Computer 73, Thomas
-
Thread
Einzelne Bit in Bitfeld in for Schleife ansprechen
Hallo! Ich habe in C/C++ (ATmega328) zum Speichern der Ausgangszustände ein Bitfeld definiert: [c] struct Ausgaenge // jeweils 1 Bit fuer Speicherung der Zustaende der Ausgänge { uint16_t A1:1; uint16_t A2:1; uint16_t A3:1; uint16_t A4:1; uint16_t A5:1; uint16_t A6:1; uint16_t A7:1; uint16_t A8:1; uint16_t A9:1; uint16_t A10:1; uint16_t A11:
-
Thread
rpi <--> avr uart Übertragungsfehler bei Quarzbetrieb
S. schrieb im Beitrag #7742197: > Nein. Eher 6%. Bei 8 Datenbit + Parity, typischer Abtastrate 16-fach, Abtastung bei 7,8 und 9 16tel und *perfekter* Leitung wird das Stop-Bit nach 10 + 7,8 und 9 /16 Bitdauern abgetastet, wovon 2 "OK" sein müssen. Es bleibt also eine Reserve von 6/16 Bit auf
werden dann in der Mitte abgetastet, meist 3 Mal, um "glitche" auszufiltern. Bit n wird also bei T(n * 16 + 6), T(n * 16 + 7) und T(n * 16 + 8) abgetastet (Mehrheit gewinnt). tl;dr;: Für nMBaud brauchst Du einen Takt T von 16*n Herz. Dieser Takt T muss aus einem internen Takt erzeugt werden, meist aus
-
Thread
P Kanal Mosfet schlägt immer wieder mal Durch.
Stepdown Wandler doch mal die 28 Volt Durchlassen muss die Diode solange halten bis ein Überstrom vom Atmega 328P gemessen wurde und eine Not Trennung macht ( 20-60 ms ca. Was dann danach noch zu retten ist wird sich zeigen.
DAVID B. schrieb im Beitrag #7741051: > muss die Diode solange halten bis ein Überstrom vom Atmega 328P gemessen > wurde und eine Not Trennung macht ( 20-60 ms ca. ... Denke nach Murphy haengt in dem Fall auch der Atmega. Daher empfehle ich Dir eine Feinsicherung zu ergaenzen, die in dem Falle
-
Thread
ATMega Auslaufmodell?
Basic war im ROM schon drin. Das war ein Z80 mit 4MHz Takt und 2x 64KB Ram. Wovon der Grafikspeicher 16KB war. Ist jetzt zwar kein Atmega, jedoch auch 8 Bit.
Migration between ATmega16/32 and ATmega164P/324P/644P - AVR533: Migrating from ATtiny2313 to ATtiny2313A
-
Artikel
SMD Löten
nach einiger Zeit recht saubere Schnitte, wie auf den folgenden Bildern zu sehen: Schablone für Atmega328, sowie zwei 1206 Bauteile Bild: Verfasser Nahaufnahme der Schablone für den Atmega, Pitch: 0,8mm Bild: Verfasser Lötpaste auftragen. In der industriellen Fertigung wird die Lötpaste zum Beispiel
wurde hier zuvor sparsam mit Hilfe der oben gezeigten Mylarfolienmethode aufgetragen. Nahaufnahme Atmega, Pitch: 0,8mm, gelötet im DIY Reflowofen Elektro-Pfanne. Statt eines mit einer Temperatursteuerung nachgerüsteten Pizzaofens wird gelegentlich einfach eine teflonbeschichtete Elektro-Pfanne verwendet
-
Thread
DCF77 - Empfang
Ich betreibe so eine Uhr mit dem Pollin-Modul an einem Atmega 16 mit der DCF77Lib von Bascom. Die Stromversorgung habe ich mit einer Mehrfachsteckdose mit USB, und zwei Mobilfoneladern getestet. Bei den Mobilfoneladern, Schaltnetzteilen, lief sie besser als
werden, reicht aber aus, um die Uhr sekundengenau zu halten, sie läuft sonst über den CPU-Takt mit 16 MHz eher mässig genau, macht aber nichts, alle paar Minuten passt das. Liegt wohl daran, dass der Empfänger, der Prozessor und das Display in einem Gehäuse sitzt Über einen 4066 treibe ich auch