-
Thread
Timer Atmega während Interrupts
#7182616: > Guten Morgen > Bevor ich mich dumm und dusselig suche ;-) > Ich programmiere einen ATmega64 und brauche relativ zuverlässige 3 > Stunden, die ich über millis() abfrage. Die berühmt, berüchtigte Arduino-Funktion. Gibt es überhaupt einen offiziellen Arduino mit ATmega64? > Nun habe ich
() angehumpelt kommen, muß man das nicht nachmachen. Schau z.B. in das [[AVR-Tutorial:_Timer]]
-
Thread
Pic Program compilieren usw
Für die x8/16/32 compiler gibt es Medizin auf Github!
Rohs schrieb im Beitrag #7173607: > Apollo M. schrieb: >> Für die x8/16/32 compiler gibt es Medizin auf Github! > > Was meinst du Damit? Wahrscheinlich dies: https://github-com.translate.goog/Redouane64/PIC-on-VSCode?_x_tr_sl=en&_x_tr_tl=de&_x_tr_hl=de&_x_tr_pto=sc
-
Artikel
AVR-CORDIC
=AVR-Arithmetik mit dem CORDIC-Algorithmus= Der Cordic-Algorithmus bietet eine ganze Reihe mathematischer Funktionen. Er wird seit den ersten Taschenrechnern bis zu den mathematischen Befehlen der Pentium-Prozessoren
nicht. CORDIC im Diskussionsforum. "echter" double mit AVR-GCC Cordic-Algorithmus, FPGA CORDIC-Core Xilinx Mischung mit sin/cos in VHDL Genauigkeitsproblem, FFT im FPGA Wurzel mit Cordic auf Spartan3E sin/cos mit Cordic-Algorithmus in AVR-Assembler Bücher &
-
Thread
Auswahl eines passenden Nucleo Boards
M0...M4 sind schon deutlich einfacher was den Core angeht. Aufwändiger sind Taktkonfiguration (STM32Cube hilft), das man Takte für die verschiedenen Devices erst einschalten muss, die vielen Optionen in den Peripheriedevices und dann noch DMA Möglichkeit die bei STM32 sehr unterschiedlich und wenig
Speicher. Meine Erfahrungen damit habe ich dort zusammen gefasst: Siehe http://stefanfrings.de/stm32/index.html > Je nach Board scheint der Aufpreis für einen > M7 gegenüber einem M3 nur ein paar Euro zu betragen. Die Nucleo64 Boards sind mehr oder weniger als Werbeartikel zu verstehen. Sie
-
Thread
ATmega328P-Platine
Betriebsspannung, dafür 100 MHz, 24k RAM, CAN-FD statt CAN 3. https://www.microchip.com/en-us/product/PIC32MX270F256B - 32 Bit MIPS, 50 MHz, 256k Flash, 64k RAM, Codeausführung auch aus dem RAM, USB, etc etc, auch im SDIP28. Ja, man muss sich etwas umgewöhnen, aber diese Teile sind deutlich einfacher
nicht richtig. Folge dem Link und du findest <zitat> The high-performance, low-power Microchip 8-bit AVR® RISC-based microcontroller combines 64 KB ISP Flash memory with read-while-write capabilities, 2 KB EEPROM, 4 KB SRAM, </zitat>
-
Thread
phasenverschobene PWM mit STM32F103C3
defined, VCC is used. //#define USE_2V56_REFERENCE #define USE_1V1_REFERENCE main.c: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/sleep.h> #include "config.h" uint8_t cycle = 0; uint8_t pwmCycle = 0; int32_t dutyCycle = 0; int32_t adcMovingAverage = 0; uint16_t avgBuffer
Lösungen: > von Matthias S. (Firma: matzetronics) (mschoeldgen) > 04.06.2012 07:23 Ich habe die AVR447 auch auf den kleinen STM32F100RB portiert, der auf dem VLDiscovery Board ist, allerdings natürlich auf den Advanced Timer mit den bis zu 4 CC Kanälen. Die Anwendung von DMA ist völlig unnötig, weil
-
Thread
Wo bekommt man zurzeit noch Mikrocontroller her.
Wer Boards mit STM32 und Display möchte, das finde ich aktuell ganz OK: STM32H7B3I-DK Bei Mouser gibt es noch ein paar.
! Erzähl doch nicht so eine Grütze, genau das mach ich alle paar Wochen, entweder von PIC -> STM32 oder von STM32 -> STM32. Wenn man seinen Code relativ portabel hält, ist das alles nicht die Welt.
-
Thread
ATmega4809 TCA Input Event Counter
MegaCoreX erforderlich TCA0 zählt über den Event Eingang die Überläufe der RTC */ #include <avr/io.h> #include <avr/interrupt.h> #include <util/atomic.h> void setup (void) { Serial.begin(9600); Serial.println("\nuReset ### ###"); initRTC(); initTCA0
RTC.STATUS > 0) { ; } // warten auf Register Syncronisierung RTC.CLKSEL = RTC_CLKSEL_INT32K_gc; // Periodendauer 30,518µs RTC.PER = 64; // = 1000ms / 15,625ms // RTC.CTRLA Bug, see Errata byte temp {0}; temp |= RTC_PRESCALER_DIV512_gc; // Prescaler
-
Thread
8051 (AT89C51RC2), externer Programmcode wird nicht ausgeführt
Hallo, ich nutze einen AT89C51RC2 (32k Flash) mit externem RAM (64k). Unterhalb von 8000H erfolgt der Zugriff jeweils getrennt zwischen internem Flash und externem RAM. Da der µC nur 32k Flash hat, sorgt die Beschaltung (/RD und /PSEN durch
sich auch über SPI (4 Leitungen) programmieren und so die Lockbits rücksetzen. Die haben zwar alle 64kB im Flash, mit dem FBS-Bit kann man aber zur Laufzeit die oberen 32kB nach extern mappen.
-
Artikel
AVR Transistortester
, 126x64 Pixel LCD, ST7920 Controller trunk/mega328_fish8840 Makefile und Daten für chinesische Fish8840 Version, ATmega328, 126x64 Pixel LCD, ST7565 Controller trunk/mega328_wei_st7565 Makefile und Daten für
für ATmega328 mit Standard-Layout, 126x64 Pixel OLED, SSD1306 Controller, I2C Schnittstelle trunk/mega328_ssd1306SPI Makefile und Daten für ATmega328 mit Standard-Layout, 126x64 Pixel OLED, SSD1306 Controller, SPI Schnittstelle trunk/mega644
-
Thread
32 Bit MCU gesucht
Also wenn man auf einem C64 Fraktale berechnet hat, dann ein AVR auch einen poopligen Taupunkt berechnen: https://www.stefanbion.de/fraktal-generator/history.htm
im gleichen Gehäuse wie der Mega328. Und theorethisch gibt es in der Familie zig Varianten, so 48, 64, 100 Pins, weniger Speicher. Der Unterschied zwischen ATSAMC20 und ATSAMC21 ist, der C21 hat CAN-FD, beim 32er Pin 1 Kanal, ab 64 Pins zwei Kanäle. Dabei fällt mir das hier ein: https://github.com
-
Thread
8051 und float
einfach vorher noch nie auf 8051 float genutzt und war halt überrascht dass es geht :-) Sogar echte 32-Bit Single Precision, nicht sowas: https://en.wikipedia.org/wiki/Bfloat16_floating-point_format Schon Immer schrieb im Beitrag #7145664: > Wie groß ist das Programm? 16k, 32k oder etwa noch mehr? Ist ein C8051F580 mit 128k das Programm ist so 32k gibt aber noch so 64k const Tabellen. Da ich dieses 8051 Banking nicht verstehe und auch nicht lernen wollte, habe ich für die const Tabellen einfach ein Wrapper Makro gemacht ähnlich AVR pgm_read_byte_far
-
Thread
Diskettenlaufwerk ansteuern
Entweder hast du meinen Hinweis auf CCL überlesen oder du weisst nicht einmal, was das ist, weil deine AVR8-Kompetenz auf dem Stand von vor 5..10 Jahren eingefroren ist. Und was den Takt betrifft: ganz offiziell können die AVR8 heutzutage 24MHz, inoffiziell sogar 32MHz. Verstehst du jetzt das mögliche
noch Laufwerke dafür mehr. Ich halte es aber für durchaus möglich, mit den Features der neueren AVR8 einen HD-fähigen Floppycontroller umzusetzen. Konkret mit einem AVR128D(x)48 oder-64. Ich sehe eben bloß keinen Sinn darin, das tun zu wollen.
-
Thread
Hilbert Transformation im uC berechnen
Eines muss ich noch nachschieben. In der Zeile 13 sollte man die Multiplikation explizit auf 64 bit casten, damit man mehr Dynamikbereich bekommt. signal_top_right = ( (int64_t)coeff * (delay[0]-x) ) >> 16;
Baustelle... Auch dazu habe ich mal einen Artikel verfasst: https://www.mikrocontroller.net/articles/AVR-CORDIC
-
Thread
AVRDUDE und Intel-Hex
Vielen Dank für die schnellen Antworten! Ich wollte es einheitlich mit AVR-Studio, weil ich das EEPROM-File selber Parse / erstelle. Dann werde ich das einfach in meiner Software variabel gestalten... Grüße, Achim
konvertieren, Füllen, Abschneiden etc. aber auch einfach die Länge einer Intel-Hex Zeile ändern. Von 32Byte Daten zu 64Byte pro Zeile: srec_cat dump.hex -intel -output dump_formatx.hex -intel -line-length=76 Von 64Byte Daten zu 32Byte pro Zeile: srec_cat dump.hex -intel -output dump_formatx.hex -intel
-
Thread
Suche günstigen Mikrocontroller mit Ethernet
die 7er haben doch Ethernet, STM32F107, F207
Oder einen "Clone" von GigaDevice. Hier einer im LQFP64-Gehäuse: https://www.tme.eu/de/details/gd32f107rgt6/mikrocontroller-sonstige/gigadevice/
-
Thread
C++ in (deeply) Embedded Systemen für Neuprojekte Gesperrt
Hier kommt nur noch C++ zum Einsatz, von AVR 8Bit bis ARM32-Bit. Resumee: Alles in allem schneller Entwicklung und viel weniger Fehler. Allerdings: Grundlage für den Erfolg / Verbesserung ist die extrem starke Nutzung von Compile-Time-Features
Nur mal so als Beispiel eines einfachen, entkernten Projekts mit einem avr128db64 auf einem Testboard mit vielen externen Geräten. Die meisten Treiber dafür habe ich in dem Beispiel entfernt, denn compilieren könnt Ihr das eh nicht, weil zuviele weitere Header-Files (header-only
-
Thread
Wie statisches HTML/css/javascript in C/C++ Projekte einbinden?
muss ich mal versuchen rauszukriegen, wie ich an das richtige > objcopy komme .... Du musst halt avr-objcopy oder arm-none-eabi-objcopy eingeben je nachdem was das Target ist. Die elf32-little Angabe muss leider auch Target-Spezifisch angepasst werden, weiß grad nicht was dafür AVR hin muss.
ich die *.o Datei per: [code] xtensa-lx106-elf-objcopy --input-target=binary --output-target=elf32-xtensa-le meine_externe_textdaten.txt meine_externe_textdaten.txt.o [/code] Ich hatte auch andere output-target Formate versucht (elf32-xtensa-le elf32-xtensa-be elf32-little elf32-big), aber ohne
-
Thread
Atmega32 16Bit PWM oder 10 Bit?
PWM, 8-bit Fast PWM, 9-bit Fast PWM, 10-bit Parameter prescaler chooses prescale value N = 1,8,64,256 or 1024 (some modules support 32 and 128, but for this you will need to check the datasheet for the desired MCU). Paremeter inverted is for choosing between inverted and non inverted PWM signal.
Auswahl gibt es Es gibt auch 16 Bit Modi. http://download.mikroe.com/documents/compilers/mikroc/avr/help/pwm16bit_library.htm
-
Thread
Schieberegister ersetzen
AVR verbindet? Dann wäre der Takt doch starr, und der AVR müsste nur schnell genug zum richtigen Zeitpunkt in das Transfer-Register schreiben. Wenn das nicht funktionieren würde, könnte man den AVR ja
https://ww1.microchip.com/downloads/en/Appnotes/Atmel-2585-Setup-and-Use-of-the-SPI_ApplicationNote_AVR151.pdf Meinst du wirklich, daß ich nicht weiß, wie SPI beim AVR funktioniert? OMG!
-
Thread
PIT bei ATMEGA4809 macht nicht was ich gerne hätte
RTC.STATUS > 0) { ; } // wait for all register to be synchronized RTC.CLKSEL = RTC_CLKSEL_INT32K_gc; // period duration 30,518µs RTC.PER = 64; // set period -->> 1000ms / 15,625ms // RTC.CTRLA Bug, see Errata byte temp {0}; temp |= RTC_PRESCALER_DIV512
Schlafphasen > nutze ich den PIT (Periodic interrupt timer) Beim PIT beträgt die längste Periode nur 32s. Der RTC kann wesentlich längere Perioden generieren. Hier ist ein Beispielcode (getestet am ATtiny402) Periodendauer: ca. 10 min LED-Leuchtdauer: ca. 0.5s [c] #include <avr/io.h> #include
-
Thread
Ich suche das Schlechteste OS von Mikrosoft
Windows10 noch *NICHT* entfallen, sondern erst bei Windows11. Bis einschließlich Windows10 hatten die 32Bit-Varianten immer das 16Bit-Subsystem an Bord, die 64Bit-Varianten hingegen nie, schon seit der allerersten (XP64) nicht. Das endgültige Entfallen des 16-Bit-Subsystems bei Windows11 liegt also schlicht nur daran, dass es davon keine 32Bit-Variante mehr gibt.
-
Thread
STM32 Quarz und PLL
Quarz zu nehmen und mit der PLL auf 64Mhz zu erhöhen anstatt einen 32 Mhz zu nehmen und diesen entsprechend nur halt entsprechend weniger mit der PLL zu multiplizieren? Kann mir jetzt höchstens vorstellen das mit zunehmendem Multiplikator
Beitrag #7126510: > Denkbar wäre aber auch "das macht doch jeder so". Dann könnte man ja auch einen AVR als Alternative vorschlagen. Der TO möchte 64 MHz. Wenn er weniger haben möchte, kann er seine PLL anders einstellen.
-
Thread
sehr langsamen Takt erzeugen
the counter. A wide range of resolutions and time-out periods can be configured for the RTC. With a 32.768 kHz clock source, the maximum resolution is 30.5 μs, and time-out periods can be up to two seconds. With a resolution of 1s, the maximum time-out period is more than 18 hours (65536 seconds). (tinyAVR
Sie blaue Pillen? Dieser Begriff kann in einem uC-Forum durchaus mehrdeutig sein. ;) https://stm32-base.org/boards/STM32F103C8T6-Blue-Pill.html
-
Thread
AVR128DA28 9600Baud mit 24MHz
dass es keinerlei "interne Quarze" > gibt... Um auch etwas klugzuscheißen: das mag zwar für eine AVR mcu gelten, eine DS3231 hat aber einen internen Quarz, sogar einen TXCO. Wenn schon kleinlich, dann richtig :-) Michael
#7122598: > mit dem internen Quarz. Michael D. schrieb im Beitrag #7123888: > das mag zwar für eine AVR mcu gelten, eine > DS3231 hat aber einen internen Quarz, sogar einen TXCO. Geht aber um den AVR. Und nicht um den DS3231, welcher als Uhr/Zeitbasis mit 1-10% Genauigkeit absurd wäre. Michael
-
Thread
Wieso spricht man bei den 8 Bit-AVRs von RISC?
Operationen zu vergleichen, da braucht man eher ganze Funktionen bzw. Algorithmen. Und da kann der AVR u.a. mit seinen schier endlosen Registern (32!) massiv punkten. Der olle 8051 hat nur Akku, B und sonst fast nix. EIN Pointer Register. Der AVR hat drei! Jaja, ich weiß daß der RAM relativ "schnell"
allem bei den ganzen Erweiterungen, dem sei diese Seite hier empfohlen: http://ref.x86asm.net/coder64.html Es gibt viele sinnvolle 1byte/2byte Opcodes auf x86 die auch wesentlich kürzer sind als ihre (32/64bit) RISC Pendants, z.B. "ADD <register>, <register>" oder PUSH/POP, aber natürlich auch Entgleisungen
-
Thread
32-Bit-µC: Möglichst viel uint8_t verwenden?
er. Genau genommen tut es allerdings derjenige, der das Include-Files dazu schreibt, und bei einer 32-Bit RISC für int_fast8_t einen 32-Bit Typ einsetzt, bei 8-Bit AVR aber einen 8-bit Typ.
avr schrieb im Beitrag #7119523: > Das passiert aber nur auf einer 32-bit Architektur und dort sind 8-bit > Zugriffe bei mir bekannten Architekturen niemals schneller als 32-bit. Ja?! Deswegen hat
-
Thread
(V) Aufräum Aktion
Notebook mit Win7, Serieller+Parallelport inkl. NT: 25€/Stk, 2x vorhanden 11. Batronix Balino II/BX32P: 100€ (Gerade selbst noch genutzt unter Win7 und Debian11) 12. Pollin AVR Eval.-Board: 10€ 13. PAL/HAL ICs: 12€ Plus Versand. Wer mehrere Sachen abnimmt wird bevorzugt. Bei Interesse bitte
Danke für Rückmeldung. Preis Update: Batronix BX32P jetzt 90€ Alle drei 68020 zusammen: 40€ Alle drei uSD Karten zusammen: 30€ (Plus noch eine 64GB Karte) VG
-
Thread
Microchip SAMD (M0+) bzw. SAML10/11 (M23) Erfahrung
#7111144: > deutlich anders zu programmieren Ist nicht auf meinem Mist gewachsen. Ich finde die AVR32DA vollkommen ausreichend.
Max M. schrieb im Beitrag #7111169: > AVR32DA Die DA haben doch so viele Bugs dass sofort die DB nachgeschoben werden mussten :-) Ausserdem gibt es noch immer kein offizielles Arduino dafür oder? Stattdessen haben sie den ATMega4809
-
Thread
i2c & LCD stellt sich quer :/
unlogisch genau wie die 0x30/0x38), es ändert sich nichts. Hat jemand das Display mal mit C oder AVR Assembler angesteuert? mfG Frewer
die Adressjumper noch um 7 verschieben könnte. Da komme ich dann auf 0x20, was ein Bit (siebentes, 64) neben Deinen 0x70 ist.
-
Thread
Floating point Geschwindigkeit
> Uint64 ist ebenfalls echt lahm. Das habe auch ich schon festgestellt. Beispiel: Bei einer 32x32->64 MUL werden die Operatoren zuerst auf 64 Bit erweitert und dann multipliziert, mit der Folge, dass statt
Tippgeber schrieb im Beitrag #7105640: > Bei einer 32x32->64 MUL werden die Operatoren zuerst auf 64 Bit > erweitert und dann multipliziert, mit der Folge, dass statt der > notwendigen 16 Multiplikationen 64 ausgeführt werden Welche Plattform, welcher
-
Thread
Arduino IDE überholt sich selbst
10 o. höher laufen ist aber noch ziemlich "Frisch". Ps. : Ich habe die IDE-2.* unter mein Win-7-64 problemlos ans laufen bekommen. Aber ich hätte mich auch nicht beschwert, wenn es nicht geklappt hätte.
/stm32duino/Arduino_Core_STM32
-
Thread
NTC auto kalibrierung - Matheformel
aber so viele zusätzliche Konstante: 10Kohm resitor ist bei mir 0,98Kohm, Referent Spannung des ESP32
Punkten linear interpolieren. */ delta = (p1-p2) * (adc_value & 0x003f); return p1 - delta / 64; }; [/c]
-
Thread
BUZ11 parallel als regelbarer 200 Watt Widerstand bis 20V 10A
gemessen mit einem ADC des ATmega8. Die Steuerung der Gatespannungen (BUZ11 als Last) per PWM des AVR.
nur der Vollständigkeit halber:-) Stimmt Vieles, was Du aufbrachtest. Ich habe derzeit einen AVR128DB64 am Laufen mit einer gut durchdachten und ausgeführten LP und der 12-bit ADC liefert absolut stabile Werte wenn ich z.B eine CR2032 damit messe (Ext. Aref=4.096V). Also, es geht schon, wenn man
-
Thread
Leistung eines 2KW Heizstabes steuern
Gasfeuerungsautomat S4564QT1006 für Viessmann - 7823803 209 € Inkl. MwSt., zzgl. Versand Steuergerät BRAHMA CM32 - BRAHMA: 30282335 Steuergerät BRAHMA CM32 - BRAHMA: 30282335 2 220 € 69 Inkl. MwSt., zzgl. Versand Foto- und UV-resistente Zelle LANDIS ET GYR STAEFA SIEMENS QRB1B C036B40A - SIEMENS: QRB1B C036B40ASIEMENS
54, 8718575516 Nachfolger von 7747002472 152 € Inkl. MwSt., zzgl. Versand Steuergerät BRAHMA CM32 - BRAHMA: 30282335 Steuergerät BRAHMA CM32 - BRAHMA: 30282335 2 220 € 69 Inkl. MwSt., zzgl. Versand Resideo Satronic Honeywell Feuerungsautomat Steuergerät TFI 812.2 Mod.10 m.VZ 02602HONEYWELL