-
Thread
Qualität und Haltbarkeit von preiswerten DSOs
Beispiel ein und den selben Mikrocontroller > mit drei unterschiedlichen Beschriftungen: > > STM32F101CBT6 (128kB ohne USB) > STM32F103C8T6 ( 64kB mit USB) > STM32F103CBT6 (128kB mit USB) Kann natürlich reine Marketing Sache sein. Aber es gibt auch die Möglichkeit das der Chip beim binning
Beispiel ein und den selben Mikrocontroller > mit drei unterschiedlichen Beschriftungen: > > STM32F101CBT6 (128kB ohne USB) > STM32F103C8T6 ( 64kB mit USB) > STM32F103CBT6 (128kB mit USB) Testzeit auf der Fertigungslinie ist teuer. (so hat mir das ein FAE erklärt). Wenn weniger Flash getestet
-
Thread
AVR AtMEGA328P-PU u. I2C in Arduino: Probleme mit mehrdimensionale Arrays
nicht achten. Das ist ein Quick&Dirty Framework, das nur einfachen Ansprüchen genügt. Mehr als die 32 Bytes gehen halt nicht.
Flash-Speicher). Im Gegensatz dazu liegen konstante Variablen wie: const byte x=123; bei AVR Controllern im RAM.
-
Thread
Schnellere MCU als der ESP8266 zu einem guten Preis?
1082 CoreMark / 462 DMIPS macht : 2,138 DMIPS/Mhz ein 32H7 At 400 MHz fCPU, the STM32H743/753 lines deliver 2020 CoreMark /856 DMIPS macht : 2,14 DMIPS/Mhz RT1060 3020 CoreMark/1284 DMIPS @ 600 MHz macht : 2,14 DMIPS/Mhz zum ESP32: Xtensa dual-core
langsamer als ein M7 - trotz dual core. Eine FP-MAC braucht 100ns.. https://www.esp32.com/viewtopic.php?f=14&t=800&start=10
-
Thread
[C] Böse Falle: Datentyp korrekt angegeben, falscher verwendet
_t i = 30000 * 2; > > Code 2: long a = 30000; > long b = 2; > uint32_t i = a * b; Und schon kommen unterschiedliche Ergebnisse auf dem AVR. Und am PC hängt es davon ab, ob Windows (int=32, long=32) oder Linux (int=32, long=64), sobald die Zahlen größer werden. Sorry
= 20000 * 3; printf("%"PRIu32"\n", u1); printf("%"PRIu32"\n", u2); } [/c] und den 1:1 nach Pascal (AVR-FPC) übersetzten Code: [code] program test; var i1, i2: int16; var u1, u2: uint32; procedure init; begin
-
Thread
extended id at90can128
Vieleicht fällt ja jemanden der Fehler auf. Danke im vorraus! hier der Code: */ #include <avr/io.h> // Einbinden der Bibliothek #include <avr/interrupt.h> // Einbinden der Bibliothek volatile uint8_t ms_tick = 0; // wird alle 10ms aufgerufen ISR (TIMER3
Interrupt Mask Register (Seite 142 im Datenblatt) TCCR3B |= (1<<WGM32) | (1<<CS31); // Modus = CTC, Vorteiler (prescaler) = 8 dies entspricht dann 2 MHz (Seite 138 im Datenblatt) } void can_init(void) // CAN initialisieren { uint8
-
Thread
Problem mit Positionsrückmeldung bei GRBL
geben mit dem Sourcecode von deinem Atmel-Controller. Bei mir war es so, dass ich GRBL auf den AVR32 portiert verwendet habe. Dabei wurden die Kreisinterpolationen in float gerechnet und die waren bei Compiler deaktiviert (also die HW Unterstützung der Floating Point Unit). Da gab es dann Probleme
Spiegel sind Schrittfrequenzen von 250kHz kein Problem. Und das schafft der Atmega nicht und mein AVR32 auch nicht. Da muss was leistungsstärkeres her. Aber das Board ist noch nicht so weit. Ich kämpfe noch mit ganz anderen Sachen rund um das FPGA. Grüße, Jens
-
Thread
ESP8266 C++11 features wie lambdas
liefert das größte bzw. kleinste Element eines Arrays zurück. Das habe ich aktuell so gelöst: [c] int32_t ICACHE_FLASH_ATTR Util::get_lowest_value(int32_t *values) { return Util::get_value_with_compare(values, [](int32_t v1, int32_t v2) -> bool { return v1 < v2; }); } int32_t ICACHE_FLASH_ATTR Util::get_highest_value(int32_t *values) { return Util::get_value_with_compare(values, [](int32_t v1, int32_t v2) -> bool { return v1 > v2; }); } int32_t Util::get_value_with_compare(int32_t *values, std::function<bool (int32
-
Thread
Messungen von Funksignalen auf Pikosekunden genau
Zählerbausteine sehr modern und kommen deshalb in Zeitgemäßen Bauformen daher, fraglich ob Du TSOP14 oder gar QFN32 verarbeiten bzw. löten und fräsen kannst....
einer Raumsonde auch ein Arduino > nehmen. Sind halt aber nicht gehärtet gegen Strahlung. Der alte AVR mit seinen vergleichsweise klobigen Strukturen wird aber wahrscheinlich länger durchhalten als ein moderner ARM von heute.
-
Thread
Touch - wie kalibrieren in C?
sollte er mit niedriger Taktung betrieben werden, z.B. 650 kHz. Die gennanten Zahlen kommen vom STM32, deshalb nicht AVR-kompatibel, aber man muß darauf achten. Der zweite Punkt, die Druckerkennung, bezieht sich auf die 'Kontaktierung' der beiden Folien im Touchpanel, dieser Widerstand beeinflusst
Aufpumpen auf 32 bit wie beim AVR). Super, daß das mit der linearen Interpolation bei Dir also doch schon geht ;) Du kannst ja nun folglich beim Drücken permanent Pixel zeichnen lassen, da sieht man schon, wohin
-
Thread
VU-Meter, aber korrekt!
Die Arduinos haben doch idr einen Mega328 oder vergleichbares an board. Mit 32k Flash würde ich mir nicht die Mühe machen da sparen zu wollen. Wir reden hier von 1/32 ~= 3% des verfügbaren Speichers.
rechnen, hier ein Vorschlag fuer so eine 50dB Tabelle fuer 70 LEDs: [c]uint8_t bla[]={ 0, 0, 7,11,14,16,18,20,21,22,23,24,25,26,27,27, 28,29,29,30,30,31,31,32,32,33,33,33,34,34,34,35, 35,35,36,36,36,37,37,37,37,38,38,38,38,39,39,39, 39,39,40,40,40,40,40,41,41,41,41,41,41,42,42,42, 42,42,42,43,43,43,43,43,43,43,44,44,44,44,44,44
-
Thread
Grundbeschaltung ARM (z.B. STM) im Vergleich zu AVR
finde ich was, nachdem ich das Thema erstellt habe…) Im Moment überlege ich, auch mal in Richtung 32-Bit zu gehen. Also Segger J-Link und zum Beispiel STM. Funktioniert das genauso einfach wie beim AVR, besonders auf der Hardwareseite? Beim AVR schließt man (A)VCC und (A)GND and, eventuell noch Quarz
was, nachdem ich das Thema > erstellt habe…) > > Im Moment überlege ich, auch mal in Richtung 32-Bit zu gehen. Also > Segger J-Link und zum Beispiel STM. > Funktioniert das genauso einfach wie beim AVR, besonders auf der > Hardwareseite? > Beim AVR schließt man (A)VCC und (A)GND and, eventuell
-
Thread
Multiplexing mit einem STM32F303?
Guten Tag , Ich versuche zur Zeit ein Projekt zu machen mit dem STM32 und zwar ein Glückspiel , vershiedene Digits werden auf x4 7 Segmente angezeigt werden und deshalb spielt das Multiplexen hier eine große Rolle , ich versuche in dieser Zeit 4 verschiedene zahlen darzustellen
und die Schaltung mitteilen ich danke euch im voraus für die Hilfe Schaltung : http://www.fritzler-avr.de/HP/tipps/multi.php?fbclid=IwAR1UdwD8ZZOsQBqIGddm1tAAg14yaTb0xf6kFRXDe1pF8iJZ_Onk6Fyse2I Gleiches Prinzip 4 Basis gehen aber zur ports des prozessors . Emmiter zur VCC und Kollektor zur Common
-
Thread
DCO-Chip gesucht
*nicht* machen soll. Stefan schrieb im Beitrag #5744667: > Rechtecksignal erzeugen im Breich 14-16 MHz. Stefan schrieb im Beitrag #5744667: > weil es im Bereich Jugendbasteln im AFu Verwendung finden soll. Wie soll denn das zusammenpassen?
Mino Bachter schrieb im Beitrag #5744861: > Stefan schrieb: >> Rechtecksignal erzeugen im Breich 14-16 MHz. >> weil es im Bereich Jugendbasteln im AFu Verwendung finden soll. > > Wie soll denn das zusammenpassen? 14-16 MHz / 4 = 3,5-4 MHz ...damit sollte klar sein, worum es geht ;-) DCO
-
Thread
Erscheinungsdatum Atmega 2560
Abkündigung einer frisch releasten MCU ist > allerdings doch deutlich geringer als die einer seit 14 Jahren > produzierten Du hast noch nie mit Bauteilen von Maxim gearbeitet?
fertige interne Libraries hat, deren Portierung Aufwand mit sich bringt. Besonders der Umstieg auf die AVR-0 Serie ist aufwendiger, da sich an der Peripherie doch einiges geändert hat.
-
Thread
Encoder (Drehgeber) über den I2C Bus auslesen
eine Reihe wilder zeichen. Was kaputt? Das ist die .hex-Datei: http://mino-elektronik.de/progs/avr/qcnt25/qcnt25_twi.hex Nicht wild und nicht kaputt.
Benutze AVR Studio mit ICE Programmer. Verwende meistens den 128 und Aty 2313. Schaue gerade den Atty 816 als neuen Typ an. Möchte erst mal bei 8 Bit bleiben. 32 Bit ist natürlich besser aber auch komplizierter
-
Thread
Ausgabe mittels printf über UART für ATmega / ATtiny
Zudem sollte UART auf vielen MCUs laufen... und si gibt es ähnliche Software für MCS51, STM8 und STM32
Nenners, der auf einem ATtiny2313 noch genau so läuft wiw auf einem STM32 oder einem AT89S52. Genau darum, dass Erklärbeispiele alle dieselbe Basis verwenden egal welches Target man hat (und wenn das Target ein Konsolenprogeamm für Linux ist.) Es soll schlicht die ersten
-
Thread
Atmega328P Serial Problem
Einfach auf den Button mit der vorgegebenen Frequenz klicken. Nimm einen sog. "Baudratenquarz", z.B. 14,7456 MHz. Damit ist der Fehler dann null. Und Dein AVR rennt dabei auch noch schneller als mit 8MHz.
mit 2,304 MHz und per Software kannst du ihn beim Start auf 9,216 MHz umstellen: http://nongnu.org/avr-libc/user-manual/group__avr__power.html#gae2d32c0c4f18f0019e680354bcc1c3ef MfG, Arno ...der das umgekehrt macht, um Strom zu sparen - die Verfügbarkeit von kleinen SMD-Quarzen mit hohen (Baudraten
-
Thread
PIC16F1933: Interrupt triggert mehrfach; Flanke zu flach?
habe ich jetzt einen Schmitt-Trigger reingepfuscht (gehört eigentlich in Quick and Dirty), einen 74HC14, jetzt funktioniert's perfekt! Gruss Chregu
Christian M. schrieb im Beitrag #5737257: > Was ist denn für Euch "IOC"? Ist das AVR-Sprech? Nein das ist interrupt-on-change in PIC16f1933-Sprech. (taucht fast hundert mal im Datasheet auf ;-)
-
Thread
Leistung messen an 230V von 1W bis 2000W
wird werden: Willst du RMS-Leistung messen ist ein 8-Bit-µC nicht ausreichend, denn du darfst mit 32 bit rechnen - bei 24Bit-Samples schon nötig. Und eine 32-Bit Wurzel, Multiplikation oder Division auf dem ATMEGA geht nicht schnell genug. Ich habe einen PIC32MX beschäftigt, das klappte hervorragend. Aber 40MHz hab ich trotzdem gebraucht. Ein ARM kann das natürlich auch, oder ein AVR32. Die Softwareseite ist in folgender Appnote beschrieben: https://www.nxp.com/docs/en/application-note/AN4265.pdf Lässt sich leicht auf andere µC portieren. Datenblätter für den IC: https:
-
Thread
Serial.print() eines uint8_t gibt 4 Bytes aus?!
packet.buffer[n], HEX); } [/c] Die Ausgabe sieht so aus: 0: 54 1: 30 2: FFFFFFBC 3: 77 4: 14 5: 73 6: FFFFFF90 7: FFFFFFB0 8: FFFFFFB6 9: FFFFFFDB 10: 41 11: 10 12: FFFFFFF9 13: FFFFFFA7 14: 41 µC ist ein Atmega328p, Arduino Framework wird genutzt. Wie ist denn das möglich, dass
Serial.println(printbuf); } [/c] Gibt übrigens folgendes aus: 0: 54 1: 30 2: ffbc 3: 77 4: 14 5: 73 6: ff90 7: ff84 8: 24 9: ffdc 10: 41 11: 10 12: ffff 13: ffa6 14: 41 also nur mehr ein führendes Byte. wtf?
-
Thread
Probleme mit SS der AVR Hardware SPI im Slave Betrieb
selber den !SS Pin auswerten soll. Minimal Beispiel Hardware-SPI (nur Empfang): [c] #include <avr/io.h> #include <avr/interrupt.h> #include <inttypes.h> #define SPI_SS PB2 #define SPI_MOSI PB3 #define SPI_MISO PB4 #define SPI_CLK PB5 volatile uint8_t BUFFER[256]; volatile uint8_t
schnell zusammengestrickte Software-SPI (auch nur Empfang) anstandslos funktioniert: [c] #include <avr/io.h> #include <avr/interrupt.h> #include <inttypes.h> #define SPI_SS PB2 #define SPI_MOSI PB3 #define SPI_MISO PB4 #define SPI_CLK PB5 volatile uint8_t BUFFER[256]; volatile uint8_t
-
Thread
amForth auf ATmega1284p
.eeprom=0x810000 \ -I binary code.bin -O elf32-avr code.elf[/pre] und mit ins Makefile geschrieben. Damit kann ich simavr ausführen [pre]% simavr -f 16000000 -m atmega32 code.elf Loaded 32638 .text at address 0x0 Loaded 134 .eeprom amforth 6.7 ATmega32..[/pre] Allerdings hab ich die Bedienung von simavr noch nicht so ganz verstanden, da mein C Echo Porgramm hier nicht funktioniert. Wenn ich Eingaben auf der Konsole mache, bekomme ich keine bzw.
-
Thread
Digital angesteuerter Analog-Mixer
mein erstes größeres Elektronik-Projekt ist eine Idee, einen quasi-analogen Mixer zu bauen, der einen AVR enthält, der wiederum digitale Potis steuert rein für die Lautstärke-Regelung. Wie das alles aussieht, schreib ich später weiter auf. Erstmal, weil first things first, würde ich euch gerne meine Spannungsversorgungs-Skizze
brauchbare Amps sind z.B. > der NJM4562 oder der NJM4580. Wenn es billig sein sollte wäre der NE5534 / 32 eine gute Alternative. mfg klaus
-
Thread
STM32 Umfang
Sternchen vor uint_32? Grüße
d.h. statt [c] // 64 MHz using the 8 MHz/2 HSI oscillator with 16x PLL, lowspeed I/O runs at 32 MHz WRITE_REG(RCC->CFGR, RCC_CFGR_PLLMULL16 + RCC_CFGR_PPRE1_DIV2); // Enable PLL SET_BIT(RCC->CR, RCC_CR_PLLON); [/c] kann man auch ganz einfach (ähnlich beim AVR) schreiben: [c] // 64
-
Thread
Reset verfuste Chips retten
/en/DeviceDoc/ATmega48_88_168_megaAVR-Data-Sheet-40002074.pdf). Und als Schaltung: http://homepage.hispeed.ch/peterfleury/avr-hvsp-fuse-restore.html Du Spezialist...
ding aus China HV kann https://www.ebay.de/itm/1PCS-USB-STK500-for-ATMEGA8U2-ATMEGA8-ATMEGA128-the-AVR-best-programmer/401290517078?hash=item5d6ec75a56:g:AjoAAOSw32lYxfvh Ich finde darauf keinen Hinweis. Grüße Rudi
-
Thread
W5100 Modul und SD-Card-Modul gleichzeitig an Mega 2560
Achim A. schrieb im Beitrag #5718783: > gibt es dazu (Soft-SPI) eine Anleitung? Die AVR FAT32 Library ist dafür bereits vorbereitet, dort ist es lediglich ein Konfigurationsparameter. https://www.mikrocontroller.net/articles/AVR_FAT32
https://www.amazon.de/Adapter-Speicherkarte-Storage-Schnittstelle-Arduino/dp/B07D3QZM25/ref=sr_1_14 Der *könnte* gehen. Ich würde aber gerne den Schaltplan davon sehen, bevor ich ihn empfehle.
-
Thread
AVR: Zufallszahlengenerator - zufälliger Startwert
Schließe an den AVR per SPI oder TWI einen STM32 an. Der STM32 hat einen "TRNG" - Random Number Generator als Peripheriemodul drin. Nun brauchst du nur noch einen ein kleines Progrämmchen das den RNG aus liest und für den AVR bereit stellt.
-
Thread
MP3 Decoder in C der wenig Ressourcen braucht.
soso... schrieb im Beitrag #5715739: > Das ist ein STM32 Fanboy. Die olle "der STM32 ist das Beste auf der > Welt, und alle müssen das nutzen sonst blöke ich 100 mal" Leier. Es > nervt. ... bin ich nicht, ich nutze auch AVR, STM8, ESP8266 und manchmal
Motordrehzahl 0,00RPM $0D Geschwindigkeitssensor 0,00km/h $0E Zündzeiteinstellung Zylinder #1 -32,0degrees $0F Ansaug-Lufttemperatur 39,0C $10 Luftmassendurchsatz (MAF) 0,0g/s $11 Absolute Drosselklappenstellung 34,10% $14 Sauerstoff-Sensor-Spannung (B1-S1) 0,460V $14 Gemischregelungswerte
-
Thread
MOSFET-Verlustleistung zu groß? Berechnen?
Laden bis 2,5V 2,34 µs = 2340 ns Geht deutlich schneller. Der IRLZ34N hat bis zu 25nC und wird vom AVR (ohne Vorwiderstand) in ca. 200ns geladen. > + Entladen von 2,5V bis 0,01V 14.38 µs = 14380 ns Falsch. Siehe oben. Außerdem sind die 10mV praxisfremd. Der MOSFET ist schon knapp unter der Threshhold-Voltage
Power-SO8 (SOT669) ein. Die Verluste berechne ich überschlagsmäßig aus dem Strom und dem On-Widerstand: 14mΩ * 5A² = 350mW.
-
Thread
ATmega2560 - LED blinkt nicht
Standard-Blinky-Projekt aus der Arduino IDE nehme und diese hex flashe, dann läuft es auch. [code] >> make avr-g++ -mmcu=atmega128 -I. -gstabs -Os -pedantic -Wall -Wextra -std=c++14 main.cpp --output main.elf -lm avr-objcopy -O ihex -R .eeprom main.elf main.hex avr-objcopy -j .eeprom --set-section-flags
#5714058: > Also eine positive (unsigned) 64-Bit (long) Zahl. Nein! Long ist nur als "mindestens 32bit" spezifiziert, meisten sind es tatsächlich 32bit. Für 64bit musst du "unsigned long long" bzw "ULL" schreiben. > würde unsigned int UI auch funktionieren? Bei arm-gcc ja, bei avr-gcc nein.
-
Thread
Nachfolger für ATMega gesucht
mit Speicher und IT-Ressourcen um. Das ist leider richtig. Aber was nützt es, wenn Du ihnen einen 32-Bitter vorenthältst? Dann schlagen sie im Forum auf und schreien "Hilfe, ich hab kein RAM mehr auf dem AVR!". Gibst Du ihnen jedoch einen STM32, werden sie sich wahrscheinlich gar nicht bis selten
wesentlich eine nette Diskussion war und kein Glaubenskrieg ;) Resumee Vorschläge als Nachfolger der AVR bzw. des 328P: - XMega Serie: gute Peripherie, kein großer Umstieg, teurer, weiterhin 8Bit - STM32 Serie: sehr gute Peripherie, große Range/Auswahl, günstig, 32bit, große Community - PIC32: steht
-
Thread
µC Lab Power Supply
eine Toleranz von 7,3mV, die im schlechtesten Fall durch Regelprozess ein Flackern des ganzen mit 14 mV verursacht. 14 mV ist jetzt nicht grade toll - die Ich habe also einen langsamen ADC mit hoher Auflösung und einen schnellen DAC mit niedriger Auflösung. Gibt es da einen gesunden Mittelweg? Ich
Last die regelt locker in ein paar uS. Aber alleine der SPI-ADC dazu kostet schon 10 Euro. Und 8 Bit AVR kannste komplett vergessen, das läuft auf einem Dual-Core ESP32 mit Software PI-Regler. Netzteil ist noch eine Ecke komplexer, da ja dort zwei PI-Regler laufen müssen. Gruss Franz
-
Thread
PC-/USB-Oszilloskop
http://www.elektronik-labor.de/AVR/T13DSO.html
: > Ist der Generator tatsächlich so schlecht, Sieht so aus, als ob der Widerstand zwischen 13/14 vom XR2206 zu groß ist (sollte typisch 200 Ohm sein) und daher mehr Dreieck als Sinus erzeugt wird. Wenn man 13/14 ganz offen lässt, dann wird es ein korrektes Dreieck.
-
Thread
Compilerfehler in avr-gcc 4.8.2?
1776: 90 ff sbrs r25, 0 1778: 04 c0 rjmp .+8 ; 0x1782 <initWatchdog+0x14> WdtTrapAddress = 0; 177a: 10 92 f7 01 sts 0x01F7, r1 177e: 10 92 f6 01 sts 0x01F6, r1 // scan wdt isr for return address offset const uint16_t __flash *pushPtr
r20, 0x92 ; 146 17ac: 5f 40 sbci r21, 0x0F ; 15 17ae: 39 f4 brne .+14 ; 0x17be <initWatchdog+0x50> pushPtr++; code = SWAPB(*pushPtr); #2 17b0: 41 91 ld r20, Z+ #2 17b2: 51 91 ld r21, Z+ 17b4: 54 27 eor r21,
-
Thread
UART Signal invertieren
Inverter aus der HC Serie. 74HC14, ist so einer.
Eimer schrieb im Beitrag #5707393: > bei den STM32 habe > ich noch nicht ausgiebig geguckt. Bei STM32 geht das bei vielen Modellen, RX und/oder TX Pins sind einzeln invertierbar. Auch bei NXP Kinetis und auch bei GigaDevice GD32 (STM32-Klone fürs
-
Thread
China SUPER Bauteile-Schnäppchen Thread [V4]
DMA und zweites SPI hätten da schon gereicht um bei 32Mhz vor nem AVR zu stehen.. so bleibt es ein Nieschenprodukt mit etwas mehr Power. Bin deswegen für Display Ansteuerungen zum STM32/ESP32 gewechselt.
Versand über Amazon: 8-Kanal-Relaismodul, Reset-Taste der Entwicklungsplatine für Bessere Steuerung ESP32-WROOM-32E 4M-Byte-Flash für 9,59€ mit Prime. Bei Ali nicht unter 14€ zu finden. https://www.amazon.de/dp/B0CF2QFGHW
-
Thread
Arduino Custom Firmware für Fitness Armband mit NRF52
Hallo, ich beschäftige mich mit Thema ESP32 Bluetooth und Fitness Armband. Ich wollte eine Brücke mit dem ESP32 zwischen Internet (MQTT Hausautomatisierung)und fitness tracker bauen. Um z.B. kleine nachrichten zu empfangen ohne Smartphone. Aber Anmeldeprozess mit Mi Band 2 war zu kompliziert. ESP32 selbst als Smartuhr ist ungeiegenet wegen 120mA Stromverbrauch. Bis jetzt habe ich nur iBeacon Präsenz Schalter gebaut. http://esp32-server.de/ibeacon-itag-praesenz-schalter/