-
Thread
CH32V003: Selbstbauprogrammer und "Getting started"
aber einmal nur der Vergleich der Codegrößen Arduino IDE 18 (und ich bin immer mehr entsetzt): - CH32V003: 9572 Byte (riscv-none-elf-gcc 14.2.0) - UNO R3 (ATmega328): 2040 Byte (avr-gcc 7.3.0) - UNO R4 (RA4M1): 52576 Byte (arm-none-eabi-gcc q7-2017, für mich absoluter negativ-Wahnsinn) - STM32F401: 12836 Byte (arm-none-eabi-gcc 13.2.1) - STM32F103: 12136 Byte " Das Programm als C-Programm mit den Funktionen aus denen die Arduino-Class erzeugt wurde: - CH32V003: 1316 Byte (risc-none-elf-gcc 14.2.0) - ATmega328p: 1712 Byte (AVR-GCC
-
Thread
Wiznet W5500 Datenübertragung via Ethernet
); 10. TX Write Pointer: (0x0024, 0x0C);(0x0025, 0x0C); 11. Transfer Data: (0x8000 + i, 0x14, data[i]) 12. Read Socket 0 TX Write Pointer: (0x4000 + 0x20, 0x0C, (len >> 8) & 0xFF); (0x4000 + 0x21, 0x0C, len & 0xFF); 13. Send Command: (W5500_SOCKET0_BASE + 0x01, 0x0C, 0x20); 14. Wait
512 Bytes an RAM. Fast alle Arduinos kann man auch ohne Arduino-IDE programmieren (das ist dann AVR Studio v4.18 oder Atmel Studio 7.x). Nachdem der Preisvorteil extrem gering ist nimmt "man" heutzutage einen STM32 Controller, vorzugsweise einen Nucleo mit F4 Chip bei dem man sich bei Flash-
-
Thread
Assembler Programm von ATtiny13 auf ATtiny45 portieren
OCTAVE4: .DB "A",3,43,80,10,"a",3,40,237,10,"B",3,38,147,11,"C",3,36,68,12,"c",3,34,254,12,"D",3,32,196,13,"d",2,241,150,14,"E",2,228,116,15,"F",2,215,95,16,"f",2,203,88,17,"G",2,191,96,18,"g",2,181,120,19 OCTAVE5: .DB "A",2,170,160,20,"a",2,161,218,21,"B",2,152,39,23,"C",2,143,135,24,"c",2,135,252,25,"D",2,128,136,27,"d",2,121,43,29,"E",2,114,231,30,"F",2,107,189,32,"f",2,101,176,34,"G",2,96,192,36,"g",2,90,239,38 OCTAVE6: .DB "A",2,85,64,41,"a",2,80,180,43,"B",2,76,77,46,"C",2,72,14,49,"c",2,68,249,51,"D",2,64,16,55,"d",2,60,86,58,"E",2,57,206,61,"F",2,54,123,65
-
Thread
Analoges Projekt auf MC umrüsten. Frage zu PIN Zuweisungen.
PWM Output, PB0 (Pin12) 5) RX-SIGNAL, Analog Input, PB1 (Pin 13) 6) DELAY, Analog Input, PB2 (Pin14) 7) T-TUNER, Analog Input, PB3 (Pin15) 8) TRIGGER, Analog Input/Output, PB4 (Pin16) 9) MOSI, AVR-ISP, PB5 (Pin17) 10) MISO, AVR-ISP, PB6 (Pin18) 11) SCK, AVR-ISP, PB7 (Pin19) 12) SA, Digital
ein nicht zu unterschätzender Vorteil. https://www.reichelt.de/de/de/shop/produkt/8-bit-atmega_avr_mikrocontroller_32_kb_20_mhz_pdip-28-119685
-
Artikel
Speicher
A7 werden auch möglichst auf einen Port gelegt. An einen dritten Port wiederum werden A8-A14 angeschlossen; /WE und /OE können dann mit zwei weiteren freien Pins verbunden werden. Zusammen belegt diese Methode also 25 Pins für 32 KiBi. Auf diese Weise kann man an praktisch jeden Mikrocontroller
Stromaufnahme der Schaltung Beispiel: Verbraucher: ATtiny2313 @ 1 MHz, 5 V, ca. 0,9 mA Datensatz: 32 Byte Schreibdauer / Byte: ca. 3,4 ms Wir brauchen also ca. 32×3,4 ms = 108,8 ms, um die Daten im EEPROM zu speichern. Wenn wir den AVR mit 5 V betreiben und zulassen, dass die Spannung bis auf 3 V sinkt
-
Thread
ESP32-WROOM-32 Flash-Größe
Salami-Taktik betreiben. Mir geht es um meinen PV-Akkulader, den ich gerne WiFi-fähig hätte. Daher ESP32, das bastle ich mir nicht selbst mit einem AVR oder so. Die beiden Bibliotheken (Adafruit_ADS1X15 und Adafruit_MCP4725) habe ich bereits eingebunden, aber noch nicht benutzt (keine Ahnung, ob sie dann
der mit 14V versorgt wird) und da hängt nichts weiter dran als zwei ACS712 Stromsensoren und das ESP-Modul. Der 3,3V-Regler auf dem ESP32-Board versorgt zusätzlich einen ADS1115 ADC und einen MCP4725 DAC, aber
-
Thread
Neue Bauteile: ESP32-C5 in Produktion, spulenloses Relais und neue Mikrocontroller
Eigenschaften ihrer passiven Komponenten – was es sonst Neues gibt, zeigt der Round-Up. ### Espressif: ESP32-C5 in Massenproduktion. Im Hause Espressif hatte man mit ESP32-C5 und ESP32-P4 seine liebe Not. Im Bezug auf den C5 gibt es nun positive Neuerungen - unter der URL https://www.espressif.com/en/news/
Bluetooth mesh Channel Sounding [/c] Für das System spricht unter anderem, dass mit dem EFR32xG24 Explorer Kit eine vergleichsweise preiswerte Evaluationsplatinen zur Verfügung steht. ### MicroChip AVR32SD20 / AVR32SD28 / AVR32SD32 Mit der AVR32SD-Architektur bietet MicroChip seit einiger
-
Thread
=== GCC v15 ===
; 0x01 3f6: 40 98 cbi 0x08, 0 ; 8 // pull CS 3f8: f0 df rcall .-32 ; 0x3da <Fl::AvrIO::AvrSpiMaster<Fl::AvrIO::PinX<(unsigned char)0, Fl::AvrIO::PortX<38> > >::txRaw(unsigned char)> 3fa: 89 81 ldd r24, Y+1 ; 0x01 3fc: ee df rcall
gcc.gnu.org/gcc-16/changes.html Im Gegensatz zur v15, wo es einige Verbesserungen und Erweiterungen für AVR gab, hat die v16 praktisch keine AVR-spezifischen Änderungen. Lediglich der Code für Shifts mit konstantem Offset wurde leicht verbessert. Beispiel: [c] #include <stdint.h> uint32_t lsr22 (uint32
-
Thread
E-Bike legalisieren (PAS+Speed->Gas)
einer Halbtürkischen Frau hab ich absolut nichts mit rechts zu tun! Das kam GANZ ALLEIN von einem 14 jährigen!
der Versorgungsspannung und der Temperatur abhängig. Als Größenordnung liegt die Stromaufnahme des AVR irgendwo zwischen 0,1 µA und 14 mA.
-
Thread
6502 Emulator Arduino
: - muss auf einem Arduino Nano laufen können - soll aber auch leicht auf einen PiPico oder ESP32 portierbar sein
> > muss auf einem Arduino Nano laufen können > soll aber auch leicht auf einen PiPico oder ESP32 portierbar sein Schreib ihn dir. Dann merkst du vielleicht wie realitätsfremd dein Wunsch ist
-
Thread
Wettkampf Opa(MOS6502) gegen Frischling(ATmega)
🍅🍅 🍅. schrieb im Beitrag #7863423: > Schätzung: > AVR32: > 4x schneller wegen 32bit > 16x schneller wegen Mhz > 3x schneller wegen IPC Der AVR32U4 ist ein 8 Bitter mit 32kB Flash und USB ;-) Es gab einen AVR32, der ist aber im Strom der Zeit versunken
fertig done: BRK ; Beende das Programm und ; Fibonacci-Berechnung für den AVR ATmega32u4 ; Berechnet die ersten Fibonacci-Zahlen und speichert sie im SRAM .include "m32u4def.inc" ; AVR Header für ATmega32u4 .org 0x00 ; Startadresse (Reset-Vector) rjmp
-
Thread
CH32V003, float wirklich langsam?
AVR-Assembler Experte mitliest: Wieviel Zyklen braucht ein Atmega für ein 32Bit add ?
CH32V003 / 24 MHz: 13,5 Sekunden Kuriosität am Rande: Compilat für ATmega328p (okay, alter Compiler) avr-gcc v. 7.3.0 : 8586 Bytes Compilat für CH32V003 riscv-none-elf-gcc v. 14.2.0 : 3768 Bytes
-
Thread
Fehlermeldung: near initialization for
wenn der Code einfach genug ist geht auch C. Für init-Sections siehe: https://avrdudes.github.io/avr-libc/avr-libc-user-manual/mem_sections.html#sec_dot_init
-S -r -j .text -j .data -j .rodata -j .eeprom -j .boot test_lcd.elf > test_lcd.lst $ avr-objdump -P mem-usage test_lcd.elf test_lcd.elf: file format elf32-avr AVR Memory Usage ---------------- Device: atmega162 Program: 2512 bytes (15.3% Full) (.text + .data + .rodata +
-
Thread
C-Werkstatt für Linux Projekte
bool isRoot()[/c] Wenn man das jetzt fälschlich so aufruft: [c]if (isRoot ("meinUser", 42, 3.14)) ...[/c] Merkt das Err-Objekt das? Daniel A. schrieb im Beitrag #7949981: > Ja, das sollte sum < total_size sein. Ich find's etwas eleganter das anders rum zu prüfen: [c]if (SIZE_MAX - v[
muss übersetzt werden, der am Ende gar nicht verwendet wird. Und wer glaubt, dass sich dies bei den 32-Bit Mikrocontrollern wie die ARM Cortex-M geändert hätte, liegt falsch. Den Grundstein hat ST mit seiner unsäglich schrottigen Libraries gelegt. Arduino macht es nicht wirklich besser. Da wäre es doch
-
Thread
Moderne AVR (Nachfolger Atmega und Attiny)
ATtiny3227. AVRrc: ATtiny4, ATtiny5, ATtiny9, ATtiny10, ATtiny102, ATtiny104, ATtiny20, ATtiny40. AVR-Dx: AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16DU14, AVR16DU20, AVR16DU28, AVR16DU32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32DU14, AVR32DU20, AVR32DU28, AVR32DU32. AVR-Ex: AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32EA28, AVR32EA32, AVR32EA48. AVR-SD: AVR32SD20, AVR32SD28, AVR32SD32
-
Thread
strchr und ch32v003 mit riscv-none-elf-gcc
Beim Evaluieren mit einem CH32V003 kämpfe ich - wieder einmal - an einer Ecke mit einem Problem, an der ich kein Problem erwartet habe. Compiler ist: riscv-none-elf-gcc Version 14.2.0 Das Framework CH32FUN verwendet im Setup
Wastl schrieb im Beitrag #7858081: > Wenn's ernst gemeint wäre würde es in ch32funct.c enthalten sein. Bruha..ha.... ha. Hier übrigens, falls es wer nicht glauben will: https://github.com/cnlohr/ch32fun/blob/master/ch32fun/ch32fun.c#L384
-
Thread
Bootloader mit Microchip Studio
[X] BOOTSZ = 2048W_3800 BOOTRST = [X] CKDIV8 = [X] CKOUT = [ ] SUT_CKSEL = INTRCOSC_8MHZ_6CK_14CK_65MS EXTENDED = 0xFF (valid) HIGH = 0xD0 (valid) LOW = 0x62 (valid) [/code] [c] #define F_CPU 1000000UL #include <avr/io.h> #include <util/delay.h> int main(void) { void (*start)(
Verständnis mit zum Beispiel diesem Artikel abgeglichen? https://www.mikrocontroller.net/articles/AVR_Bootloader_in_C_-_eine_einfache_Anleitung#Der_%22echte%22_Bootloader
-
Thread
Welches Bauteil erzeugt einen Masseinpuls bei Spannungsveränderung
.microchip.com/downloads/aemDocuments/documents/OTH/ApplicationNotes/ApplicationNotes/doc7548.pdf AVR322: LIN v1.3 Protocol Implementation on Atmel AVR ...
Kommt drauf an, was für dich Großrechner ist. Schau dir mal https://www.berrybase.de/waveshare-esp32-s3-zero-m-s3fh4r2-dual-core-240mhz-wi-fi-bt-5-usb-c-ohne-header an
-
Artikel
Testseite
dieser Schönheitsfehler aber egal. Eine Umformung in verständlichen Text geht z.B. so: >>> x=b'\x31\x32\x33\x34\x35\x36\x37\x38 >>> print (x) b'12345678' >>> print("".join("\\x%02x" % i for i in x)) \x31\x32\x33\x34\x35\x36\x37\x38 MeinAbschnitt. hier steht dann das blabla Punkt1 Punkt2 Punkt3 hmm, denkbar
visible as well. = test für einen neuen abschnitt 2( = Mein Text :D = Links = intern (Artikelsammlung). AVR AVR-GCC-Tutorial/LCD-Ansteuerung AVR-GCC-Tutorial#ADC (Analog Digital Converter) intern extern. * Link Dies ist ein Boo im Text. Längerer Link = Formeln = Bool: f (AB c ) = A+ B C J N A = U W U WB =
-
Artikel
LED-Matrix
verwenden, keine Warteschleifen. LEDs style="width:4em;" | IOs Vorwider- stände 16 8 4 64 16 8 1024 64 32 Durch Einsatz der Multiplexverfahrens können mit relativ wenigen Ansteuerbauteilen (IO-Pins, Transistoren, Stromquellen) sehr viele LEDs gesteuert werden. Während bei direkter Ansteuerung für jede LED
direkt zu tun, es ist vielmehr eine Erweiterung der IO-Pins (siehe auch Porterweiterung mit SPI und AVR-Tutorial: Schieberegister). Wird ein Schieberegister nur zur Spaltenansteuerung verwendet, ergibt sich der angenehme Sonderfall, dass: Nur zum Weiterschalten der Spalte genau ein Schiebetakt erforderlich
-
Thread
PiPico Multicore
libraries/rp2040/examples/Multicore/Multicore.ino * * 2025-03-26 mchris * */ #define SPEAKERPIN 14 uint32_t DelayTime_us = 1000; // ################# CORE 0 ############################# void setup() { Serial.begin(115200); delay(5000); Serial.printf("core 0 started\n"); } void
, GPIO_OUT); >} Zu welchen Framework gehören die gpio-Funktionen? Laufen die auch auf einem STM32 oder ESP32?
-
Artikel
ARM-ASM-Tutorial
processors support all three instruction sets, while the 32bit ones only A32 and T32. The Cortex-M microcontrollers only support T32. Therefore, this tutorial will only talk about “thumb2”, the second version of the “T32” instruction set. Prerequisites. First
RCC_APB2ENR” which allows you to configure the clock signal for some peripheral modules. This register has 32 bits, of which 14 are “reserved”, i.e. can’t be used and should only be written with zeroes. Each of the available 18 bits enables one specific periphery module if set to “1” or disables it if set to
-
Thread
Arduino Days, Raspberry Pi-Neuankündigungen, CircuitPython-Update und vieles andere mehr
variants available through our Approved Reseller partners later this year. [/c] ### Microchip AVR SD – sehr preiswerte MCU für Situationen mit Redundanz zur Vermeidung von Rechenfehlern Für Hochsicherheitsanwendungen vorgesehene MCUs sind im Allgemeinen teuer – mit dem AVR SD lanciert Microchip
unter der URL https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/8-bit-mcus/avr-mcus/avr-sd .  Bildquelle: https://www.oemsecrets.com/compare/avr32sd20 ### Nuvoton M2A23 – 125 Grad-fähiger Mikrocontroller für den Automobilbereich
-
Thread
Raspberry Pi Pico SDR
weit unter 1MHz bis wenigstens 100MHz möglichst hoch sein. Da ich einen ganzen Karton voll muRata BLM32A06 habe, nehm ich die dafür.
DS-1-rp2040-datasheet.pdf? Der RP2350 (Pico 2) hat angeblich 9,2 Bit. Auch nicht sooo toll. Im AVR Datenblatt finde ich nichts. Mit insgesamt 32-fachen Oversampling wäre das nach der Tabelle 1 im von Sandra verlinkten TI-Dokument 2,5 Bit Gewinn - also am Ende doch fast 12 Bit. Alles etwas vage
-
Thread
AVR Dx Series Clock Schema
Ich setze gerade ein Projekt mit dem AVR32DD14 auf. Irgendwie komme ich mit dem Clock Controller nicht klar. Die Begrifflichkeiten sind m.E. im Datenblatt etwas unklar und nicht immer konsistent. 1. Verständnis der einzelnen Clocks Datenblatt
eine max. ADC Clock definiert ist schon klar. > Was aber soll passieren, wenn ich den ADC nur mit 32,768 KHz takte? Das ist tatsächlich eine interessante Frage. Vermutlich: bei 32,768 kHz Systemtakt sind die Specs der ADC nicht mehr in jeder Hinsicht garantiert. Grundsätzlich funktionieren wird sie
-
Thread
Arduino: digitalRead in Interrupt ist unzuverlässig
die Portausgänge eines µControllers atomar zu beeinflussen – das beste Beispiel dafür sind die STM32 oder die neuen AVR-Familien, wo man die Innereien grundlegend für diese Zwecke komplett überarbeitet und dafür ausgelegt hat. Wer aber weiter Arduino spielen will, der darf das selbstverständlich weiter
bf out 0x3f, r24 ; 63 4c: 8f 91 pop r24 4e: 18 95 reti Epilog = 14 Ticks [/pre] Also 9 + 23 + 14 = 46 Ticks im Vergleich zu 17 + 29 + 20 = 66 Ticks mit altem Compiler.
-
Thread
Windows10 löscht dieses Programm ohne Rückfrage, warum?
die Sache bringen was mir damals geholfen hat. Einfach nur das hier eingeben: PS C:\WINDOWS\system32> Set-MpPreference -PUAProtection AuditMode
lib/x86_64-linux-gnu/dri/i965_drv_video.so 13M /usr/lib/x86_64-linux-gnu/dri/d3d12_drv_video.so 14M /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so 25M /usr/lib/x86_64-linux-gnu/dri/crocus_dri.so 54M total [/pre] Dazu kommt noch die opengl/glsl (EGL) & vulkan Implementation, sowie gbm: [pre
-
Thread
Netzspannungserkennung gesucht, möglichst stromsparend
schon intern hat. Lief bei mir jahrelang an einer Dreiphasen Spannungs- und Strommessung mit einem AVR.
merken. Oder wenn du eine Batterie verwendest, kannst du dazu auch das RAM nutzen. Die meisten STM32 sind dafür perfekt vorbereitet, man kann da eine CR2032 direkt an den VBat Pin abschließen und Daten im RAM der RTC ablegen. Aber auch bei AVR ist eine Batteriepufferung kein Hexenwerk. Das ist hier
-
Thread
cpp memory leaks vermeiden
gibt, das ganze Konzept >überdenken. Ich will das Ganze auf einem Atmega328 mit 2K RAM und 32K Flash verwenden. Der Compiler ist AVR-GCC und ich weiß nicht, ob die stdlib für so kleine Controller passt.
Das ganze lasse ich auf folgenden Systemen laufen: * Arduino Nano (Atmega328), 2k Ram, 32kFlash gcc version 5.4.0 (GCC) gcc version 7.3.0 (GCC) * Pipico2, 520k Ram gcc version 14.2.0 (GCC) * PC, 16GB Ram gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) Der
-
Thread
Welche Sprache für GUIs in 2025?
Compilerdirektiven abfangen Was meinst du mit Compiler Direktiven? Präprozessor-Verzweigungen à la "#ifdef WIN32"...?
abfangen > > Was meinst du mit Compiler Direktiven? Präprozessor-Verzweigungen à la > "#ifdef WIN32"...? ja, genau das
-
Thread
Atmega FUSA - Functional Safety (ATMEGA3209-AU)
ATmega3209 ist kein Atmel, sondern Microchip® und muss anders > programmiert werden als die veralteten AVR®-Mikrocontroller. Naja, der ATmega3209 ist auch ein AVR-Mikrocontroller, nur halt mit Core AVRxt statt den älteren AVR(e(+)). Ob letztere nun schon "veraltet" sind, darüber könnte man debattieren
Noch mehr Reliability Seiten 14-15: https://ww1.microchip.com/downloads/aemDocuments/documents/MCU08/ProductDocuments/DataSheets/AVR32SD20-28-32-Data-Sheet-DS40002629.pdf