-
Thread
AT90USB162 Endpoint Interrupts funktionieren nicht
Andererseits haben die großen USB-AVRs deutlich mehr FIFO. Die kleinen haben nur 176 Bytes, wenn man 2 x 64 für die Daten-Endpunkte abzieht, bleiben nur noch 48 für den Rest. 8 verplempert man für den Interrupt-EP, damit kann der Control-EP aber trotzdem noch 16 oder 32 Byte groß sein. Double buffering
Ich Empfange einmal ein GET_DESCRIPTOR mit einer wLength von 64 und einmal mit einer wLength von 18. Das mit der 64 kommt daher das ich einen EPSIZE von 64 hab oder ? Sollte ich das eventuell ändern ?
-
Thread
ATMega16 LED Matrix
obere Matrix und xu die Variablen für die untere Matrix. [c] #define F_CPU 16000000 #include <avr/io.h> #include <avr/interrupt.h> uint16_t matrix2d[5][2] = {{0,0},{0,0},{0,0},{0,0},{0,0}}; void Init(); void InitPorts(); void InitTimer(); volatile uint_8 var = 1; volatile uint8_t c
<= 64) { xu1=xu1*2; } if (xo1 < 127) { xo1=xo1*2; } if (xo1 > 127) { xo1=xo1*2; if (xu1<0x15) { xu1=xu1+1; } } } //Übergabe
-
Thread
Kleiner AVR Trick zum schnellen Inkrementen grosser Zahlen
_t bla, blub, usw; void test(void) { inc64(&bla); 5a: 80 e7 ldi r24, 0x70 ; 112 5c: 90 e0 ldi r25, 0x00 ; 0 5e: e9 df rcall .-46 ; 0x32 <inc64> inc64(&blub); 60: 88 e6 ldi r24, 0x68 ; 104 62: 90 e0 ldi r25, 0x00 ; 0 64: e6 df rcall .-52 ; 0x32 <inc64> inc64(&usw); 66: 80 e6 ldi r24, 0x60 ; 96 68: 90 e0 ldi r25, 0x00 ; 0 6a: e3 cf rjmp .-58 ; 0x32 <inc64
-
Thread
Noch kein tinyAVR Support in avrdude?
> legen, sonst gibt's nie einen neuen Release. Darfste natürlich machen. Wobei Updates für die avr-libc auch schön wären ... 64bit double ... :-) duck und weg.
Stefan ⛄ F. schrieb im Beitrag #6872011: > Hast du wirklich Lust, alle 4 Wochen neue AVR Modelle auf zig > Programmieradaptern durchzutesten, während die Hobbybastler nach und > nach auf 32 Bit umsatteln? Auf 32bit umsteigen? Warum schreibst du solchen Unsinn? Ist das dein Wunschdenken
-
Thread
C arithmetic promotion Fallstricke
Tim T. schrieb im Beitrag #6879531: > Int ist auf x86_64 ebenfalls 32 Bit groß, erst bei long geht x86_64 mit > 64 Bit andere Wege, zumindest auf Betriebssystemen die nicht aus Redmond > kommen Abgekürzt als LP64 bei Unixoiden und LLP64 bei Windows. Aber
, 32 und 64 Bit haben, aber es gibt nur zwei Intger-Typen, die kleiner sein dürfen als int, nämlich char und short. Damit hätte man mit ILP64 einen zu wenig. Es passt nur, wenn int entweder 16 oder 32 Bit
-
Thread
EPROM Programmer bauen 27C010 27C020
genügend GPIOs und einem weiten Bereich bezüglich der unterstützten Spannungen für die IOs. Z.B.: AVR128D(A/B)64.
Mein 29F040 Programmer kommt mit 2*74LS393 (=16bit-Zähler) für A0-A15 sowie 3 Pins vom AVR für A16-A18 ganz wunderbar aus. Der Fall, dass man tatsächlich mal Sprünge in der Adresse vornehmen muss, ist mir noch nicht untergekommen. Selbst wenn: die 8 64K-Segmente sind ruckzuck direkt vom AVR
-
Thread
implementierung datentypen
#6864623: > Es gibt Compiler-Versionen, die 128-Byte Datentypen unterstützen. > Allerdings nicht für AVR. Wie kommst du auf AVR? Ich kenne keine wo int 32Bit ist und 64Bit werden dort meines wissens nach auch nicht unterstützt. Chandler B. schrieb im Beitrag #6864175: > wie sind eigentlich die standard
man an der Fehlermeldung aber ganz schnell das es diesen Type nicht gibt. 128Bit wirst du nur auf 64Bit Architekturen finden. Bestes Beispiel ist "int", der ist je nach System 16Bit, 32Bit oder 64Bit. Ein int32_t ist auch auf einer 8bit-Gurke 32Bit breit und eben nicht 16Bit wie int. - https://
-
Thread
PWM Modul gesucht
@Tim: Nimm einen ESP32 als NodeMCU, programmiere ihn mit Arduino und verwende die ledcwrite-Funktion innerhalb ihrer Grenzen: Ich glaube, für dich ist ein ESP32 am einfachsten. https://docs.espressif.com/projects/esp-idf
%2FAtmel-2542-Using-the-AVR-High-speed-PWM_ApplicationNote_AVR131.pdf&usg=AOvVaw2s5MJhgvJNM9Ft7jSOwkbh
-
Thread
Einstieg GDB
\utils\bin;C:\WinAVR-20100110\utils\bin;C:\STW\WinAVR-20100110\utils\bin;C:\HIGHTEC\toolchains\tricore\v4.9.2.0\bin;C:\HIGHTEC\licensemanager;C:\Perl64\site\bin;C:\Perl64\bin;C:\Program Files (x86)\Common Files\Oracle\Java
(x86)\Embarcadero\RAD Studio\8.0\bin;C:\Users\Public\Documents\RAD Studio\8.0\BPL;C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\SysWOW64;C:\Windows\SysWOW64\wbem;C:\Windows\SysWOW64\WindowsPowerShell\v1.0;C:\Program Files (x86)\AdminStudio
-
Thread
wert mappen, wie casten?
zum Code. Ich habe einen Wert [0..100] und möchte diesen auf [0..250] mappen. Das ganze für einen AVR. was wäre das bessere vorgehen? [c] static uint8_t mapToPWM(uint8_t speed) { uint8_t speedPWM; if(100 > speed) { speed = 100; } speedPWM = (uint8_t)((float)speed * 2.5);
Tabelleninterpolationen realisiert man vorteilhafterweise mit 9, 17 oder 33 Stützstellen entsprechend 8, 16 oder 32 Intervallen. Denn dann vereinfacht sich die notwendige Division auch auf einfaches schieben. Aber das wissen heute schon die Compiler.
-
Thread
C: Kann man mittels #define einen Wert zurück geben?
zugrundeliegende Buffer braucht das maximale Alignment, das die zugrundeliegende Hardware kann (z.B. 4 Byte auf 32bit-HW), und das muß man manuell als attribute zufügen.
dich mal auf Stand. Seit 21 Jahren kann man Konstanten > definieren. Nur liegen Konstanten beim AVR blöderweise im RAM. Sogar die avr_libc drängt zur Verwendung von #define für Konstante und konfigurierbare Parameter. Beispiele: #define F_CPU 8000000 #define BAUD 9600 Wobei man das alternativ
-
Thread
[V] Willem Eprom Programmer inklusive Adapter für Atmel-MCUs
problemlos funktioniert. Mit entsprechenden Treiber funktioniert er auch problemlos unter Windows 10 x64, LPT-Port vorrausgesetzt. Folgende Chips werden u.a. unterstützt: - 27Cxxx EPROM, 28Cxxx EEPROM, 28/29/39/49Fxxx Flash EPROM, - MCS51, AVR und diverse PIC Mikrocontroller - Intel 810,815,845
Beitrag #6860128: > Mit entsprechenden Treiber funktioniert er auch problemlos unter Windows > 10 x64 Welcher Rechner ist gleichzeitig W10/64 tauglich und bietet einen nativen Parallelport?
-
Thread
Keine RS232 Kommunikation bei CPU-Taktraten über 4 MHz
http://ruemohr.org/~ircjunk/avr/baudcalc/avrbaudcalc-1.0.8.php
funktioniert aber nicht einmal 2400 Baud. In der Regel kann jeder uart bis maximale Quarzfrequenz/16, /32 oder /64. Bei glatten Quarzen passen die baudratn oft nicht. Der Fehler sollte <1% sein, über 3 geht nix mehr. Es gibt uart-Quartze, mit vielfachen von 115200*16. Z.B. 22,1184 MHz. Da geht dann
-
Thread
uint32_t division atmega328p
AdcSamples[t]++; AdcSum[t] = AdcSum[t] + (uint32_t) ReadADC(t); } } } } [/c] main: [c] // every minute (64x60) if (AdcSamples[t] >= (64*60))
Zugriffen auf die Arrays sein. Auch wenn das nun wahrscheinlich so rauskommt. https://www.nongnu.org/avr-libc/user-manual/group__avr__cpufunc.html
-
Thread
Spannungs- oder Stromregel-IC gesucht
getestet. Auch hier ist die Wahl des Sensors offen. Meine heutigen Loesungen verwenden allerding einen AVR Controller und einen externen ADC. Man ist flexibler damit.
8Bit-Zwerg, hat aber ein paar Peripheral-Features, die für diese DC-Anwendungen gut sind: interne 64MHz PLL, die auch vom internen 8Mhz Oszilator leben kann, differentielle ADC Eingänge und ADC-Gains, 1x, 8, 16x, 32x Was er leider nicht hat, ist eine komplette UART Einheit... Er hat diese USI, die
-
Thread
Attribute used im gcc
gcc-8.5.0/configure --host=x86_64-pc-linux-gnu --target=riscv32-unknown-elf --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/riscv32-unknown-elf/gcc-bin/8.5.0 --includedir=/usr/lib/gcc/riscv32-unknown-elf/8.5.0
/riscv32-unknown-elf/8.5.0/rv32imac/ilp32/:/usr/lib/gcc/riscv32-unknown-elf/8.5.0/../../../../riscv32-unknown-elf/lib/rv32imac/ilp32/:/usr/riscv32-unknown-elf/lib/rv32imac/ilp32/:/usr/lib/gcc/riscv32-unknown-elf
-
Thread
Bascom: atmega8-16pu verhält sich anders als atmega8-8pu
Habt iht eine Idee woran es liegen könnte? Hier der Code: $regfile = "m8def.dat" $framesize = 32 $swstack = 32 $hwstack = 64 $crystal = 1000000 'Resonatorfrequenz $baud = 9800 'Baudrate (Übertragungsgeschwindigkeit) Baud = 9800 dim z as integer dim result as String * 8
-16PU flashe geht es nicht mehr. > … > Hier der Code: > $regfile = "m8def.dat" > $framesize = 32 > $swstack = 32 > $hwstack = 64 Und das flashst du genau so auf den Mega16? Oliver
-
Thread
Kaufempfehlung / Kauftipps für ein Oszilloskop
Funktionen https://www.conrad.at/de/p/voltcraft-dso-1204e-digital-oszilloskop-200-mhz-4-kanal-1-gsa-s-64-kpts-8-bit-digital-speicher-dso-1-st-1589987.html
man halt im Auge behalten. Nicht jeder bleibt ewig auf AVR mit 8 MHz hängen.
-
Thread
Probleme Diamex USB AVR ISP und Michrochip Studio 7
https://www.diamex.de/dxshop/EXA-PROG-AVR-ISP-und-UPDI-STM32-NXP-ESP Der sollte dann alles können oder? Mich ärgert es nur etwas, meiner müsste eigentlich der Vorgänger der etwas kleineren Version sein. Komisch, dass es nun auf einmal nicht
..... Auf ebay-Kleinanzeigen gibt es Atmel AVR ISP mkII.
-
Thread
Arduino: DC-Motor beeinflusst Interrupts?!
10:49:31.931 -> Motor Speed: 10:49:31.969 -> 26 Rotation per sec -- current: 266.06 mA 10:49:32.955 -> Motor Speed: 10:49:32.955 -> 83 Rotation per sec -- current: 183.03 mA 10:49:33.945 -> Motor Speed: 10:49:33.983 -> 49 Rotation per sec -- current: 203.64 mA 10:49:34.963 -> Motor Speed
, trotz der höheren Anzahl signifikanter Bits (bei 32 oder mehr) i.A. nicht der Fall ist. Bei Additionen sieht das anders aus.
-
Thread
mehrere Millis()
sind: LostInMusic schrieb im Beitrag #6847854: > long z; // zählt in Zehnerschritten von 0 bis 2^32-1 signed, damit ist 0 bis 2^32-1 falsch. Näher dran wäre (0 bis 2^32-1)/2 und danach erfolgt ein Überlauf welcher weder in C, noch in C++ spezifiziert ist. LostInMusic schrieb im Beitrag #6847854
HW-Zähler durchlaufen und formuliert die Software so, dass sie mit dem Überlauf klar kommt. Schon eine 32-Bit Subtraktion löst das Problem.
-
Thread
Arbeiten mit Registern(STM32F103) Gesperrt
wimre - nur für Linux gedacht. Nein, auch für ohne OS. FreePascal gibt es übrigens auch für den AVR.
returned value is 0x00. Workaround None https://www.st.com/resource/en/errata_sheet/es0346-stm32f101xfg-and-stm32f103xfg-xldensity-device-limitations-stmicroelectronics.pdf PS: stefanus war natürlich wieder schneller...
-
Thread
Gnu Assembler Macros
avr-gcc --version avr-gcc (GCC) 10.2.0 Mit welchen Parametern rufst du den gcc auf?
with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-HskZEa/gcc-9-9.3.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver
-
Thread
CAN Bus Messtechnik
Ein (STM32) Eval Board mit ADC und CAN? Dann muss vielleicht nur noch ein Eingangsschutz für den AD Eingang dran.
analoge Spannungen zu erfassen und auf den > CAN Bus auszugeben. > Universelle CAN-Bibliothek für AVR: http://www.kreatives-chaos.com/artikel/universelle-can-bibliothek Hardware z.B.: https://www.olimex.com/Products/AVR/Development/AVR-CAN/ Oder einen Arduino mit z.B. sowas: AZDelivery MCP2515
-
Thread
AVR Assembler Frage
XL XH auf die untere bzw. obere Hälfte zu. Wenn man jetzt darauf besteht, dass die kleinen AVRs 32 Register haben, dann müsste man den 32-Bittern eigentlich 64 Stück 8-Bit Register zugestehen ;)
Jan schrieb im Beitrag #6846065: > Wenn man jetzt darauf besteht, dass die kleinen AVRs 32 Register haben, > dann müsste man den 32-Bittern eigentlich 64 Stück 8-Bit Register > zugestehen ;) Na ja, der AVR ist nunmal ein 8-Bitter, da ergeben 8 bit schon ein vollwertiges Register.
-
Thread
Wechselrichter Hoymiles HM-xxxx 2,4 GhZ Nordic Protokoll?
case 56: this.accessModel_ = input.readInt32(); continue; case 64: this.communicationTime_ = input.readInt32(); continue
19 00 07 18 15 2022-05-21 18:08:59.334726 Decoded: 28.1 phase0=voltage:227.2, current:2.8, power:64.5, frequency:50.03 string0=voltage:32.1, current:1.04, power:33.4, total:65.888, daily:1699 string1=voltage:32.2, current:1.06, power:34.2, total:63.6, daily:1666 [/code] Edit. Mistiges Mistforum
-
Thread
#define und #include Problem
Mal wieder keine Ahnung, aber sinnlos rumkrakelen? Mit der selben make.exe kann ich makefiles für x64, AVR, ARM und MIPS durchnudeln. (Was ich eben so nutze, es kann eben alles was im makefile steht) Man merkt, dass du echt von NICHTS auch nur die geringste Ahnung hast! Alles außer deinem heißgeliebten
1<<PIN_STATUS_LED) #define STATUS_LED_TOGGLE PORT_STATUS_LED ^= (1<<PIN_STATUS_LED); #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include "uart.h" #include "stdlib.h" void init_gpio() { // Init Status LED STATUS_LED_OFF; DDR_STATUS_LED |= (1<<PIN_STATUS_LED
-
Thread
Der Weg zur kleinen Halbleiterbude
Philipp Klaus K. schrieb im Beitrag #6842045: > RISC-V hatte bei 32/64 Bit Erfolg, gegen etablierte Konkurrenz. Da > erscheint es nicht völlig unmöglich, dass so etwas im 8.Bit-Bereich > klappen könnte. Außerdem sind 8-Bit-µC etwas, unter dem sich hier jeder > im
schrieb im Beitrag #6842052: > Philipp Klaus K. schrieb im Beitrag #6842045: >> RISC-V hatte bei 32/64 Bit Erfolg, gegen etablierte Konkurrenz. Da >> erscheint es nicht völlig unmöglich, dass so etwas im 8.Bit-Bereich >> klappen könnte. Außerdem sind 8-Bit-µC etwas, unter dem sich hier jeder >>
-
Thread
WS2812B 800KHz PWM mit Transistor Pegelwandler
3,3V und gut is. Ein "paar" wären so 17 LEDs. c-hater schrieb im Beitrag #6840754: > Ein guter AVR8 > könnte das problemlos ab, eine schrottiger STM32 wahrscheinlich nicht, > jedenfalls nicht dauerhaft. Was möchtest du mir damit den sagen? Der ST der verbaut ist ein Originaler vom Nucleo-64
und fehlertoleranter sind als die der STM32. Oder anders ausgedrückt: STM32 ist eine Mimose im Vergleich zum AVR8. Da kann man schnell mal was zerschiessen, beim AVR8 muss man sich hingegen einigermaßen anstrengen, um die GPIOs kaputt zu bekommen
-
Thread
Pulslänge messen mit ATMega48 und Bascom
Word Dim Puls2 As Word Dim HM1 As Bit LED Alias Portd.5 Config Timer1 = Timer, Prescale = 64 On Timer1 T1_Sub Enable TIMER1 Enable Interrupts Cursor off Cls LED = 0 Waitms 200 Do If PinD.0 = 1 And HM1 = 0 Then HM1 = 1 Timer1 = 0 LED = 0 End IF If PinD.0 = 0
mehreren Überläufen je Messung muß man sie *synchron* mitzählen: https://www.mikrocontroller.net/topic/avr-timer-mit-32-bit#371564
-
Thread
Microcontroller aussuchen
Ahnung, das ist nicht mein Fachgebiet. Aus dem Bauch heraus geraten würde ich vermutlich deutlich mehr 32 Bit Controller finden, als 8 Bit. Wobei STM32 und AVR wiederum nur einen kleinen Teil der gesamten 8/32 Bit Palette ausmachen. 16 und 64 Bit Controllern sind vermutlich besonders selten im Einsatz
hat eine viel größeren Einfluss auf meine Entwicklungsaufwände. Bei AVR und STM32 gefällt mir daher, dass die Peripherie der ganzen Serien ähnlich ist. Wenn man einen verstanden hat, kommt man schnell mit einem anderen Modell zurecht. Hier im Forum werden AVR und STM32
-
Thread
Dateiübertragung auf W95 Laptop ohne USB
Denk aber daran, die Verwaltete Größe der CF könnte ev dein Win überfordern ;-) denke nicht das so 32 GB oder gar 64 GB CF so one weiteres verwaltet werden können. ;-) Nano schrieb im Beitrag #6837896: > Mit Samba geht das aber. > Also einfach ein Raspi mit Linux ins Netzwerk stellen, sobald der
13 ------------- 3 15 ------------- 2 25 ------------- 25 Da LM auf 64-bit BS nicht funktioniert verwende ich eine VM unter W10X64 worauf XP32 läuft. Vermutlich dürfte LM auch mit W10X32 funktionieren, habe ich aber nicht ausprobiert. Fuer den LPT Port verwende ich eine
-
Thread
uint64_t maximaler Wertebereich nicht nutzbar
TypeC,int64_t>(): ") << is_same<TypeC,int64_t>() << endl; cout << F("is_same<TypeC,int32_t>(): ") << is_same<TypeC,int32_t>() << endl; cout << F("is_same<TypeC,uint64_t>(): ") << is_same<TypeC,uint64_t
Ach ja, die Ausgabe habe ich vergessen: [c] is_signed<TypeA>(): 1 is_same<TypeA,uint64_t>(): 0 is_signed<TypeB>(): 0 is_same<TypeB,uint64_t>(): 1 is_signed<TypeC>(): 1 is_same<TypeC,int64_t>(): 1 is_same<TypeC,int32_t>(): 0 is_same<TypeC,uint64_t>(): 0 is_same<TypeC,uint32_t>():
-
Thread
Neu hier und Anfängerfragen bezüglich Programmspeicher
Hi > Wenn Du keine Bankumschaltung machen willst ist bei 64KB Schluss bei den >8bittern. Wo steht das? 1. Der Programmspeicher wird in Words adressiert Datenblatt: ...the Flash is organized as 32K/64K/128K × 16 2. Wozu braucht der ATMega 24560/
Programmcounter Datenblatt: ...Program Counter (PC) is 15/16/17 bits wide, thus addressing the 32K/64K/128K program memory locations. MfG Spess
-
Thread
neue AVR 8Bit Serien mit 12Bit ADC und Can etc
Hat hier schon jemand mit gearbeitet also z.B: AVR32DB28-E/SP? Welche Compiler unterstützen die mit entsprechenden Libs? Also damit man auch als wenigr gut geübter Programmierer CAN etc nutzen kann?
Die AVR32/64/128 Serien werden ganz normal von der AVR Toolchain unterstützt. Ich nutze einen AVR128DA in einem produktiven Design.
-
Thread
Interrupts bei Fahrradtacho und clock
richtige Verzeichnis kopiert, keine Ahnung warum ich hier gelandet bin. Es wird jedenfalls sicher ein STM32 verwendet, vermutlich STM32L152 Die Gründe sind belanglos, mir ist klar as auch ein kleiner AVR gehen würde.
Temperaturkompensation. An so einen Chip kann man auch direkt eine CR2032 anschließen, was beim STM32 nur ab 64-Pin-Gehäusen geht (und beim L151 garnicht). Mit dem 1Hz-Interrupt von der RTC könnte man den internen RC-Oszillator des STM32 abgleichen. Damit kommt man von ±3% auf unter 0.4% Fehler der
-
Thread
float16_t für AVR?
Für entsprechende Anwendungen verwende ich auf den AVRs Fixed-Points. Auszug: [pre] #include <avr/io.h> #include <math.h> #include <stdint-gcc.h> #include <stdfix.h> ... #define samples 64 ... _Fract v[samples]; ... [/pre]
gesagt wurde, Bildverarbeitung z.B. auf einem FPGA. Ansonsten ist das Quatsch, insbesondere auf einem AVR.
-
Thread
LED-Streifen dimmen
deine LED-Strips. Hat aber nur 16 Kanäle, d.H. entweder zwei von den ICs oder zwei PWM-Kanäle vom AVR mitverwenden.
const uint16_t data[]= { 0, 1, 2, 2, 2, 3, 3, 4, 5, 6, 7, 8, 10, 11, 13, 16, 19, 23, 27, 32, 38, 45, 54, 64, 76, 91, 108, 128, 152, 181, 215, 255 }; Zwischen den 32 Dimmschritten liegen jeweils 12ms, im Hoch- sowie im Runterlauf. Der Effekt, dass die LEDs nun "gleichmäßiger" für´s Auge
-
Thread
Verfügbare µC
Bei Digi-Key die PIC32MX-Reihe derzeit gut verfügbar: https://www.digikey.de/products/de/integrated-circuits-ics/embedded-microcontrollers/685?k=PIC32MX795F512 Viele Grüße Jochen
TinyGecko 11 https://www.silabs.com/mcu/32-bit/efm32-tiny-gecko-tg11
-
Thread
Thermoelement Typ K mit ADC auswerten
in Frage kämen: https://www.ti.com/data-converters/adc-circuit/precision-adcs/products.html#p84=24;32&p1028=8;16&p776=Differential&sort=p1130;asc Bei Ananlog Devices ähnlich: https://www.analog.com/en/parametricsearch/10825#/p3062=8|16&p7=24|32&p4363=|Differential&sort=s3,asc&p4365=|Serial%20SPI|
Thermosteckern hab ich in einem massiven Alublock eingebaut. Fehler 0,3K max. Digitalisiert mit einem STM32F103 12 Bit A/D. Die 1,22V sind Referenzspannung. Die negative Spannung war notwendig, weil auch negative Temperaturen gemessen werden sollten.Könnte man in deinem Fall weglassen. Grüsse
-
Thread
RaspBerry Pi Circle
Roland-Synthesizer. Das geht schon ziemlich in die Signalverabeitungsrichtung: https://github.com/dwhinham/mt32-pi
bootcode.bin COPYING.linux fixup.dat README start.elf bcm2711-rpi-400.dtb config32.txt fixup4cd.dat kernel.img start4cd.elf bcm2711-rpi-4-b.dtb config64.txt fixup4.dat LICENCE.broadcom start4.elf bcm2711-rpi-cm4.dtb config.txt fixup_cd.dat Makefile
-
Thread
Einen Softcore (AVR) an andere FPGA anpassen?
Dokumentation auf englisch zum FPGA und der Software ist da, allerdings mühsam zusammengestellt. Ich habe 64x9k und 16x32k Block RAM und 19600 LUT zur Verfühgung. Einen LCD Controller àla SSD1351 für einen 8bit AVR (6800-series Interface) hab ich schon erfolgreich in den FPGA gebaut und eingepflanzt. Dazu
8 Bitter auf FPGA...naja. AVR benötigt wohl ähnlich viele Resourcen wie ein 8051 Core, und damit immer noch mehr als ein schmaler RISC-V. Der NEORV32 ist mir etwas zu überdosiert und die Pipeline-Architektur etwas eigenwillig.
-
Thread
Interrupt beim STM32 F103
sich. Es gibt viele Arduino Cores und theoretisch könnten die sich unterschiedlich verhalten. Für STM32 dürfte der STM32DUINO aber der meistgenutzte sein und da ist es so. https://github.com/stm32duino/Arduino_Core_STM32/blob/6dec3b655fda17ba0f33cf12cef16b64d0333abd/cores/arduino/WInterrupts.cpp#L64-L73 https://github.com/stm32duino/Arduino_Core_STM32/blob/01a1aa3ff3c1eb768389fb0b3f4b97b154e63c99/libraries/SrcWrapper/src/stm32/interrupt.cpp#L186 https://github.com/stm32duino/Arduino_Core_STM32/blob/01a1aa3ff3c1eb768389fb0b3f4b97b154e63c99
-
Thread
Ad-hoc-Frequenznormal und -Zeitzeichenempfänger
Qualitativ aber brauchbar. Grund ist das SDR-Konzept ("Software-defined radio"). Dazu verwendet wird der STM32F103C8T6 (das Blue Pill Board). Der Empfänger ist gut als Behelfslösung (oder zum Basteln) geeignet. Als Alternative zum normalen Empfänger nur bedingt: - Der Stromverbrauch ist mit 15mA enorm (
7.1 18.5 36.7 71.6 1.4 | 34 | 8.5 17.3 34.4 67.5 1.5 | 32 | 0.0 13.3 32.5 64.0 1.6 | 30 | 0.0 15.2 30.6 60.9 df/fb : Abweichung in Relation zur Bandbreite U/U0 : Näherung der Amplitudenabnahme (=1/sqr(4*(df
-
Thread
Einfacher Fehler in C-Berechnung
Compiler derartige Optimierungen von selbst? Normalerweise schon, aber in dem Falle hat er nur beim AVR die Division komplett eliminiert (dort wäre sie aber auch am teuersten), während er es bei ARM und amd64 nicht getan hat.
dementsprechend BigDecimal, in Go Money*. Money ist eine Struktur aus: string currency_code int64 units // The whole units of the amount. int32 nanos // Number of nano (10^-9) units of the amount.