-
Thread
BME280 an 5V, Spannungsregler und Layout
laut Internetsuche nach der Markierung ein XC6206 (Supply Current 3uA max.) Der BME280 braucht im "1 Hz forced mode" Temperatur + Feuchte 2.8 uA, Temperatur + Druck 4.2 uA, während der Messung insg. 1.4 mA Also heizt der LDO mit P_avg = (VI - VO) * IO = (5V - 3.3V) * (2.8 uA + 4.2 uA) = 0.012 mW P_mes = (VI - VO) * IO = (5V - 3.3V) * 1400uA = 2.38 mW Thermischer Widerstand des SOT23-3 Gehäuses irgendwas in der Größenordnung 300 °C/W d.h. der Regler erwärmt sich max. um 0.714°C bzw. um 0.0036 °C im "1 Hz forced mode" > Wenn vermutet wird daß
-
Thread
AVR AtMEGA328P-PU u. I2C in Arduino: Probleme mit mehrdimensionale Arrays
M. S. schrieb im Beitrag #5770147: > Ich habe das jetzt aufgespielt und bekomme nur Einsen. Ist ja auch richtig. Das laesst dir ja den Rueckgabewert der Funktion ausgeben. Entweder bedeutet die 1
M. S. schrieb im Beitrag #5771015: > Kann man damit dann auch das Programm kleiner machen? Bitte korrigiert mich, aber rechnet Arduino nicht standardmäßig mit int16_t ? Auf einem 8bit MCU wie dem
-
Thread
VNH3sp30 Revision?
. Ja der ist auch überflüssig ... > Welchen tieferen Sinn hat die Leiterbahnführung der an Pin 16 & 21 bzw. > an Pin 25 & 30 angeschlossenen Leiterbahnen? Irgendwie keinen. 23 liegt an HeatSlug0 an, 16,21, 25, 30 könnte auch entfernen, da diese ja direkt an HeatSlug1 und HeatSlug2 anliegen,
bereits wechselseitig die 5V vom Mikrokontroller messen konnte. Genau wie das PWM am R11. Sind die 1k evtl. zu groß? (1:1 aus dem Datenblatt genommen) Grüße David
-
Thread
16x PT100X ausweten
Ray M. schrieb im Beitrag #5766640: > 1 bis 2 Grad genau wär schön und ausreichend Dann würde ja auch diese Schaltung ausreichen, wobei ein ATmega328 im TQFP32 auch acht Kanäle verarbeiten könnte: https
Quark schrieb im Beitrag #5766848: > Ray M. schrieb im Beitrag #5766640: >> 1 bis 2 Grad genau wär schön und ausreichend > > Dann würde ja auch diese Schaltung ausreichen, wobei ein ATmega328 im > TQFP32 auch acht Kanäle verarbeiten könnte
-
Thread
Atmega32 Dimmer Schaltung in Assembler
; eigene Initialisierungen ;------------------------------------------------------ ldi r16, 0b00010000 ;0x10 out DDRD, r16 ;PORTD4 als Ausgang initialisieren ;ldi r16, 0b00010000 ;PortD4 0x10 ;out PORTD, r16 ldi r16, 1<<COM1A1 | 1<<COM1B1 | 1<<WGM10 | 1<<WGM11 out TCCR1A, r16 ;TimerCounter1:10-Bit-Fast-PWM ldi r16, 1<<WGM12 | 1<<CS10 ;Mode: 7 out TCCR1B, r16 ldi r16, 1<<TOIE1 out TIMSK, r16
-
Thread
[C] Böse Falle: Datentyp korrekt angegeben, falscher verwendet
Alexander M. schrieb im Beitrag #5764572: > "Standard": > 30000 * 2 --> int16_t * int16_6 => int16_t Nur wenn sizeof(int16_t) == sizeof(int). Präziser: int * int => int, egal wie gross.
Fällen bei unterschiedlicher Bitbreite unnötig, ein Sign Extent allerdings nicht. [code] // r0+r1: int32 + *int16 ldrh r0, [r2] sxth r0, r0 add r0, r1 [/code] vs [code] // r0+r1: uint32 + *uint16 ldrh r0, [r2] add r0, r1 [/code]
-
Thread
avr/iom328p.h ist da, wird aber nicht anerkannt
:~$ grep '__AVR_ATmega' /usr/lib/avr/include/avr/io.h #elif defined (__AVR_ATmega8U2__) #elif defined (__AVR_ATmega16M1__) #elif defined (__AVR_ATmega16U2__) #elif defined (__AVR_ATmega16U4__) #elif defined (__AVR_ATmega32C1__) #elif defined (__AVR_ATmega32M1__) #elif defined (__AVR_ATmega32U2__) #elif defined (__AVR_ATmega32U4__) #elif defined (__AVR_ATmega32U6__) #elif defined (__AVR_ATmega64C1__) #elif defined (__AVR_ATmega64M1__) #elif defined
-
Thread
Atmega 328 Timer 2: Hilfe für Frequenzerzeugung
stammt nicht aus meiner Feder, Kritik am Stil wird verpuffen) Geschrieben für Arduino Mega, also ATMEGA2560 [c] // diese Version funktioniert void set_Timer2() // CTC, Mode 2 { cli(); // Interrupts ausschalten TCCR2A = (1<<WGM21); // set Mode TCCR2B = (1<
gültig bleibt: Der OCR2A Wert wird nicht übernommen. Das gilt auf jeden Fall für den Timer2 vom ATMEga328P und ATMega2560 [c] OCR2A = 50; TCCR2A = (1<<WGM21); TCCR2B = (1<<CS22); [/c] > > In der Reihenfolge steckt ein Problem und lauert nur darauf einen > Wahnsinnig zu machen. >
-
Thread
Atmel-Ice: Debug programmieren über Jtag bei Atmega´s sehr langsam
im Internet nix zu dem Thema, drum schreibe ich mal hier. Folgende Konstellation haben wir: µC: Atmega324PA, Atmega644P und XMega32D4 Compiler: IAR 7.10 (probeweise auch mit 7.20, selbe Zeiten) Debugger SW: IAR 7.10 oder AtmelStudio 7 (1931) Die Atmegas sind über Jtag mit dem ICE verbunden. Wenn
hoch stellen, wenn ich AS7 aufmache und JTAG auswähle steht da per Default 7,5MHz. ISP muss unter 1/4 des Taktes bleiben, bei JTAG gilt so nicht, ich habe nur gerade nicht im Kopf wie es da aussieht, da meine Controller sowieso fast immer auf 16MHz laufen.
-
Thread
AtTiny13 Clock auf 128kHz und Division = 0/1
homepage.hispeed.ch/peterfleury/avr-hvsp-fuse-restore.html Hat vielleicht jemand eine .hex file für ATmega8 und 16 MHz Takt? In AVRDude kann ich ja dann B3000 setzen. Mein ATtiny13 läuft mit 2 kHz clock, weil ich per SW den Teiler nicht auf 1 gesetzt habe sondern auf 64 stehen ließ. Muss wohl das Programm
Alexander S. schrieb im Beitrag #5906035: > Device: atmega8 > > Program: 664 bytes (8.1% Full) > (.text + .data + .bootloader) > > Data: 0 bytes (0.0% Full) > (.data + .bss + .noinit) > > Im Anhang die .hex Datei. Die habe ich selber
-
Thread
I2C Beispielcode - 1xAVR Master / 1xAVR Slave
Hallo zusammen, Aufgabe: Datenübermittlung von AVR1 zu AVR2 mittels I2C Master:Atmega8 Slave: Atmega16 in einem vorherigen Thread ging es bereits um die Frage, welche Schnittstelle wohl am besten geeignet ist. Egal welche Schnittstelle es später
? - Muss ich dem Slave die Taktzeiten eigentlich nicht mitteilen? - Welche Taktzeiten kann ein Atmega16 als Slave verwalten (Pkt.2) Wie man in den Screenshots sieht, sendet der Master erst die Adresse 0x50 (0b01010000) und danach die Daten 0XFF (und zum Vergleich 0X0F). Der Master scheint also
-
Thread
SS bei 2 uC weglassen?
zusammen, Gibt es irgendwelche Nachteile, wenn ich bei 2uC`s über SPI den SS weglasse? Master: Atmega8 Slave: Atmega16 ich habe eine Kommunikation von 2uC`s über SPI, wobei uC2 nur Slave ist. Wenn ich nun SS weglasse und bei uc2 SS auf dauer Gnd lege, funktioniert es noch immer einwandfrei.
Beispiel in C, wie ich zwischen 2uC`s mittels Hardware-I2C kommunizieren kann? Ich muss lediglich 1 Byte vom Master zum Slave senden.
-
Thread
ATmega32 noch zeitgerecht?
Marko R. schrieb im Beitrag #5757694: > Wie lange wird es den ATmega32 noch geben? Der wird wohl auslaufen, man sollte auf den ATmega32A umsteigen. Pinkompatibel ist auch der ATmega324PB (3 UARTs, 3 Timer 16Bit).
Die neuen Megas (mega-0/1 Serie) und die neuen Tinys (tiny1 serie), explizit nutze ich die ATmega4808 und Tiny1614 (Tiny3217 ist auch toll) sind m.E. sehr zeitgemäße und vor allem günstige 8 Bitter. Klar, Ein STM32 ist teils
-
Thread
Problem mit Positionsrückmeldung bei GRBL
Projekt zum Laufen zu bringen. Dann gibst du nur einen Sägezahn aus. Also so etwas: [c] for (uint16_t i=0; i<4095; i++) { dac.write(i); _delay_ms(1); } [/c] Wenn das läuft und du ein schönes Signal am Oszi siehst, dann baust du das entsprechend in dein GRBL ein. Für den G-code verwende
Laser-GRBL das Bild zeilenweise abtasten und das so an den Laser senden. Inkscape macht da nur das draus: M05 S0 G90 G21 G1 F800 G1 X5.0 Y15.0 G4 P0 M03 S190 G4 P0 G1 F160.000000 G1 X15.0 Y15.0 G1 X15.0 Y5.0 G1 X5.0 Y5.0 G1 X5.0 Y15.0 G4 P0 M05 S0 G1 F800 G1 X0 Y0 Mein Laser schneidet
-
Thread
Stromspartipps Arduino nano
Programme also schnell machen, damit wenig Zeit vergeht. Taktfrequenz ist auch noch ein Faktor. der 16MHz-Arduino braucht mehr Strom als der 8MHz. Letzterer braucht aber doppelt so lange. Möglicherweise ist aber trotzdem eine Ersparnis möglich, weil 8M z.B. nur 45% des Stroms der 16M verbraten. Außerdem
bb = ii & 7; if (ii > 7) bb |= (1 << 5); bb |= (1 << WDCE); MCUSR &= ~(1 << WDRF); WDTCSR |= (1 << WDCE) | (1 << WDE); WDTCSR = bb; WDTCSR |= 1 << WDIE; } ISR(WDT_vect) { waitForWDT = 0; } [/c] In der setup-Methode
-
Thread
Gibt es den Atmega1284 auch eine Nummer größer?
Uwe D. schrieb: > Also der PC ist ebenfalls 16Bit breit, den Rest würde ich teilen... Arduino Fanboy D. schrieb im Beitrag #5755301: > Beim ATMega2560? 24Bit breit! Zitat aus dem Datenblatt: "The ATmega640/1280/1281/2560/2561 Program Counter
und geöffnet habe ist von Mai 2015 (ST32F103xF STM32F103xG). Das ist in etwa vergleichbar mit ATMEGA8 / ATMEGA16 zu ATMEGA88PA / ATMEGA164PA. Kann man machen, aber irgendwie legt man sich damit nur Steine in den Weg. Stefanus F. schrieb im Beitrag #5755243: > Es gibt da einige, die von der Komplexität
-
Thread
BOM: Widerstände und Kondensatoren sinnvoll spezifiziert?
16MHz 3,2x1,3 50ppm 10 -20°C 85°C usw. In der Spezifikationsspalte können auch umfangreichere Festlegungen stehen. > Einige Fragen haben sich erledigt: > ⋆ Wie weiß der Bestücker
Q1 4.24 19.02 90 8/16/20MHz RESONATOR-SMD-1:1 R2 4.55 5.23 90 10K 0603-RES U1 8.89 13.97 315 ATMEGA328 TQFP32-08 U2 8.89 24.18 90 MIC5205 SOT23-5 [/pre] Arduino-Pro-Mini.mnb: leer Diese
-
Thread
Der Timer0 läuft 2Hz zu langsam
Oder liegt das Problem wo anders? Hier mal der Code: [c] void Timer_Init(void) { //ATMega 328p / 8MHz // 8-Bit TimerTC0 für 1ms Takt TCCR0A |= (1<<WGM01); //CTC TIMSK0 |= (1<<OCIE0A); //compare match TCCR0B |= (1<<CS01)
Frühere Versionen waren mit Quarz, jetzt mit Keramik. https://www.ebay.de/itm/Pro-Mini-Atmega328-ATmega328-3-3V-5V-8-16M-Replace-ATmega128-Compatible-Nano/173565957876
-
Thread
Schaltung für 5V für 4,5 oder 3V umbauen
MaWin schrieb im Beitrag #5751392: > Niemand braucht bei nur 1 leuchtenden LED einen MAX7219. Direkt die LEDs > an 16 uC Ausgänge und einige Vorwiderstände für max 20mA dazu. Geht auch, nur ist der MAX7219 jetzt auch nicht so teuer. Dafür würde dann auch ein
Jörg R. schrieb im Beitrag #5751398: > MaWin schrieb: >> Niemand braucht bei nur 1 leuchtenden LED einen MAX7219. Direkt die LEDs >> an 16 uC Ausgänge und einige Vorwiderstände für max 20mA dazu. > > Geht auch, nur ist der MAX7219 jetzt auch nicht so teuer. Dafür würde > dann
-
Thread
dimmen eines LED Cubes
an den 8 Pins des A Ports meine LED´s angeschlossen deswegen muss ich alle 8 dimmbar bekommen. Mfg M.
du sie aus. Durch Variieren des Compare-Wertes bestimmst du die Helligkeit der LEDs. Mit einem 16bit Timer klappt das am besten, weil das Auge auf Helligkeit logarithmisch reagiert. Siehe Datenblatt (http://ww1.microchip.com/downloads/en/DeviceDoc/doc2503.pdf) ab Seite 86.
-
Thread
Atmega88 DAC +-10V
8-20bit ich hernehmen könnte. Grüsse Huber M.
Aufwand > realisieren kann. Natürlich nimmt man etwas von der Stange. https://www.ebay.de/itm/1-Kanal-D-A-Wandler-DAC-MCP4725-I2C-12Bit-EEPROM-Analog-Digital-fur-Arduino/113661798745?hash=item1a76c56959:g:OIIAAOSwoP9ccPgV:rk:1:pf:0 Und schaltet einen OpAmp dahinter, das ist praktisch unvermeidbar
-
Thread
C-Variablen nur vorübergehend?
wie: - erstelle 34 uint_16 Variablen ini(); calc(); out(); - lösche die 34 uint_16 Variablen wieder Danke für jede Hilfe! Gruß AVRli...
innerhalb > einer Funktion, dann leben sie bis zu deren Ende: > void maches () > { > int bla1 = 123; > int blubb = 321; > // und so weiter [1] > ini(); > calc(); > out(); > } Damit die Funktionen auch darauf zugreifen können: [C] void ini(uint16_t* werte); void calc(uint16
-
Thread
Reverse Engineering vom Retro-Computer - Tools?
> Die haben ein blaues(!) Gehäuse und die Beschriftung "16-1-330 > 8502". Das dürften Widerstandsarrays sein, ich tippe auf 330Ω ...
foobar schrieb im Beitrag #5748739: >> Die haben ein blaues(!) Gehäuse und die Beschriftung >> "16-1-330 8502". > Das dürften Widerstandsarrays sein, ich tippe auf 330Ω ... Die Chips sind DIP16. Widerstandsarrays kenne ich nur einreihig. Nachtrag: Der Hinweis auf "Bus-Terminierung" war hilfreich
-
Thread
Transistor mit 2 logischen Eingängen?
angehängte Schaltung so funktioniert. Und zwar habe ich eine externe PWM mit etwas kleiner als 1khz, 3,3v. Diese will ich in einem uC einlesen. Wenn der uC (ein Arduino Pro Micro mit 3,3V, also ein Atmel 32u4) das passende Signal erkennt, soll die LED (2mA gelb) an das PWM Signal gekoppelt werden
nicht sehen. Alles, was wir wissen, ist: - Die PWM-Frequenz beträgt 600Hz bzw. "etwas kleiner als 1khz". - Die Plattform ist ein Arduino Pro Micro (ATmega32U4 mit 16MHz). - Der µC soll künftig "noch viele andere Dinge" tun, weswegen das PWM-Signal nur "alle 500ms oder 1s" gelesen werden soll
-
Thread
Zehntel springt von 4 wieder auf 2. Warum?
haut da was mit der Freigabe der Overflow Timer nicht hin. Ausgewählt hatte ich am Anfang einen Atmega16. Datenblatt für Atmega16 finde ich jedoch nicht. Sondern nur für Atmega16(plus irgendwelche Zahlen und Buchstaben). Geöffnet habe ich nebenher Atmel ATmega16M1/32M1/64M1 [DATASHEET]. Da wird
Jens N. schrieb im Beitrag #5747846: > Ausgewählt hatte ich am Anfang einen Atmega16. Datenblatt für Atmega16 > finde ich jedoch nicht. Sondern nur für Atmega16(plus irgendwelche > Zahlen und Buchstaben). > > Geöffnet habe ich nebenher Atmel ATmega16M1/32M1/64M1 [DATASHEET].
-
Thread
Umstieg von ATmega2560 auf STM32F767 ?
Mixed-Signal-Derivate aus der STM32F3-Serie an. Und ja, die Rechenleistung reicht. Wenns auf dem ATMEGA ruckelt, dann flutscht es auf dem Cortex-M4 mit 10MHz. Möglicherweise reicht dir auch ein F0? Das solltes du dir gut überlegen. Auch das wäre mehr als ein ATMEGA. Geh dazu auf die webseite von
Helmut V. schrieb im Beitrag #5747927: > Werden AT91SAM3X8E und ATmega 32u4 als XMega-Prozessoren bezeichnet? Der SAM3X (Arduino Due) ist ein ARM Cortex-M3, der ATmega32u4 ist, wie der Name schon sagt, ein ATmega, sowie der 2560.
-
Thread
ATmega64, Programmspeicher
Alexander M. schrieb im Beitrag #5746121: > Mit wie vielen Bit wird der Programmspeicher ausgelesen? 16 Bit OpCode + > 16 Bit Adresse / Zahl? Das würde ja bedeuten, dass 1 Anweisung 32 Bit > lang ist, oder? Anschließend
Alexander M. schrieb im Beitrag #5746266: > Danke ;) das hat mir gefehlt! > Wenn aber 32 Bit ausgelesen werden (16 Bit Adresse + 16 Bit Befehl), Es wird keine Adresse gelesen, die wird vorgegeben! und
-
Thread
DCO-Chip gesucht
m.n. schrieb im Beitrag #5744720: > Per PWM eine analoge > Steuerspannung erzeugen und damit die Frequenz ändern. Ja, ja, und die wabert dann vor sich hin wie ein Kuhschwanz. Geniale Idee. m.n
http://ww1.microchip.com/downloads/en/AppNotes/90003131A.pdf Gruß Anja
-
Thread
Erscheinungsdatum Atmega 2560
Moin. Weiß hier jemand wann der ATmega 2560 das erste mal erschienen ist? Viele liebe Grüße! Jan
Lt. Datenblatt März 2005: 38.16 Rev. 2549A-03/05 1. Initial version.
-
Thread
int nach 'Bar graphic' konvertieren
CPU: ATMEGA328 LCD: 16x2 Zeichen Der numerische Wert 'iTurbo10e' kann 0 bis maximal 16 haben. Dieser soll in einer Art 'Zeichenstrahl' auf dem LCD ausgegeben werden. Beispiele: bei 0: ---------------- bei 1: *--------------- bei 5: *****----------- bei 16: **************** Hierfür der Code: [c] if (iTurbo10e > 0) { for (int i = 0; i < iTurbo10e; i++)
-
Thread
Mittelwert aus ca.100 Werten.
Philipp M. schrieb im Beitrag #5742855: > Martin B. schrieb im Beitrag #5742838: >> für negative Zahlen unterscheidet sich das Ergebnis um 1. Aber auch >> nicht mehr. > > Meinst du Negation vs. bitweises
einfügen sondern das > MSB kopieren. Um beim Beispiel shiften eines int um 7 zu bleiben: -1 ... -128 liefern beim shiften eine -1 -1... -127 liefern beim dividieren eine 0, bei -128 eine -1 um das zu korrigieren muss bei einer Division einer negativen Zahl durch 128 erst 127 aufaddieren
-
Thread
Welchen CAN-Bus Microcontroller/Platine
selber Bestücken scheidet aus? Wäre für einen ATMega16M1 gedacht
@kosmos Das hört sich alles sehr interessant an. Wo bekomme ich die passenden Platinen für den ATMega16M1 her?
-
Thread
RTC driftet nach Tagen mehrere Sekunden ab
schon nach zwei Tagen hat die RTC eine Abweichung von +12 Sekunden. Nach einer Woche sind es schon gut 1-2 Minuten, damit ist es auf dauer nicht möglich eine Lampe zuverlässig zu steuern. Laut Datenblatt werden für den MCP7940M Lastkapazitäten von 6 bis 9 pF Empfohlen. Ich habe mein Quarz danach ausgewählt
Felix N. schrieb im Beitrag #5738884: > Andreas M. schrieb: >> Laut Datenblatt 3pF/Pin > > Wo genau hast du das gefunden? Ich finde das nicht in meine Datenblatt. Weiter oben war das Datenblatt ja verlinkt, Tabelle 1-1 Parameter D8
-
Thread
Atmega328P Serial Problem
ja vieles wünschen, aber alle Wünsche werden einem nie erfüllt jedenfalls nicht 115k2 Baud mit 8/16 MHz und 0% Fehler http://www.gjlay.de/helferlein/avr-uart-rechner.html Segor.de 11.0592 MHz http://www.segor.de/#Q=Q11%252C0592MHz-LP&M=1 (Lager im Zulauf) http://www.segor.de/#Q=Q11%252C0592MHz-SMD%252FSM49&M=1 (Lager) 9.216 MHz http://www.segor.de/#Q=Q9%252C216MHz-LP&M=1 (Lager)
-
Thread
Es'hail2 - erster geosationärer Amateurfunk-Satellit
Christoph db1uq K. schrieb im Beitrag #5747883: > So jetzt habe ich einen PLL-LNB. > In der CQ-DL 1-2019 ab S.16 wird der Umbau von zwei LNBs für Es'Hail-2 > beschrieben, den einen gibt es von Reichelt, (steht
Sendeleistungsgrenzen: https://w.wol.ph/2015/08/28/maximum-wifi-transmission-power-country/ Meine 250mW müssen wohl 1W sein.