-
Thread
Tasterverarbeitung mit ARDUINO-C
single press and repeat if( get_key_press( 1<<KEY2 ) || get_key_rpt( 1<<KEY2 )){ uint8_t i = LED_PORT; i = (i & 0x07) | ((i << 1) & 0xF0); if( i < 0xF0 ) i |= 0x08; LED_PORT = i; } } } [/c] Bernd_Stein
Coocox und später mit Atollic. Den Genino kenne ich momentan nicht. Ich baute mir damals einige STM32FMini Bords für F103/407 und verwendete JLINK V2. Aber für die kleineren Steuerungs Projekte ziehe ich aktuell wieder die 8-Bitter vor. Für Fernsteuerung hat man ja noch die ESP WLAN Bords Module die
-
Artikel
Reichelt-Wishlist
) * SSV DIL/NetPCs | | * ST ST7MC... (µC für Servosteuerungen, und vor allem Brushless-Motoren) | | | QFP Bausteine der STM32F4 Serie (Cortex-M4) ST STR7 Serie (ARM7TDMI) * TI MSP430F167, TI MSP430F168 * TI MSP430F2001/2/3 etc. im RSA-Gehäuse
gelb LY T676-S1T1-26 * OSRAM Hyper TOPLEDS weiss LW T67C-T2U2-5K8L * Reflektoren für 10mm LEDs * Samsung SLS RGB W815 TS (PLCC6 RGB-LED)| Seoul Z-LED RGB auf Platine * Seoul Zled P4 (100lm bei 350mA, 240lm bei
-
Thread
STM32 Bootloader RS485
Hallo Zusammen, ich würde gerne die Firmware über RS485 auf einen STM32F103C8T6 laden. Da die Controller nachher im Haus verteilt sind will ich nicht überall mit dem Laptop hin laufen.. Leider komm ich mit meiner Idee nicht wirklich weiter. Ich hab versucht die Firmware über den Internen Bootloader und UART (FTDI Adapter) auf den Stm zu laden und das hat Problem los funktioniert. Genutzt habe ich die "Flash Loader Demonstrator" Software von ST. Jetzt hab ich einen MAX485 an den STM32 gepackt und ein RS485-USB Adapter an den PC
-
Thread
STM32 SPI Test mit MCP4802
Hallo, ich will gerade die SPI Schnittstelle eines STM32F103 mit einem externen 2-Kanal DAC (MCP4802) testen (SPI Mode 0). Dabei habe ich ein unerwartetes Verhalten festgestellt. Mit dem folgenden Codeschnipsel sollten eigentlich 2 versetzte Sägezahnspannungen
Verstehe ich da etwas falsch? Könnte mir das bitte jemand kurz erklären oder mir einen Tipp geben? [c] uint8_t val = 0; while (1) { HAL_GPIO_WritePin(GPIOB, GPIO_PIN_6, GPIO_PIN_RESET); // Setze CS-Pin auf LO cmd[0] = DAC_A_GAIN_1 | (val & 0x0F); cmd[1] = 0; HAL_SPI_Transmit
-
Thread
Console auf µC oder ähnlich
#5112219: > eine Möglichkeit über eine Schnittstelle (z.B. UART<->USB / Netzwerk) > Werte auf einem µC in Echtzeit zu ändern. Nachdem inzwischen "ein µC" vom 6-Pin-SOT23 bis zum 1000-Ball-BGA und von 4MHz bis 2GHz Taktfrequenz und natürlich von 8 bis 32 Bit geht, wäre es für eine wirklich zielführende
wäre es wenn man Variablen schreiben kann. Kryptisch wäre erstmal okay. Arbeite gerade auf einem STM32F103, hatte aber auch schon atmegas und pics in der hand. Grüße Thomas
-
Thread
Thermoelement Typ K mit ADC auswerten
besser 24bit) dafür vermutlich gehen sollten. Das passt doch nicht mit deiner Anforderung von +-6°C Genauigkeit zusammen. Dein Bereich von -100 bis 1300°C braucht theoretisch nur eine Ausflösung von 1400/6=233. Das geht also locker mit jedem AVR ADC, der liefert dann eine Auflösung von 1,4°C. Mit
Ich hab einen gemultiplexten AD8495 verwendet. Die 4 Kanäle lassen sich leicht auf 8 erweitern. Bei mir kamen T- Type Thermocouples zum Einsatz. Die ganze Schaltung samt Thermosteckern hab ich in einem massiven Alublock eingebaut. Fehler 0,3K max. Digitalisiert mit einem STM32F103 12
-
Thread
Assembler wo sind eigentlich diese ganzen Genies??
auf Arbeit machen (Assemblercode und Teilassemblercode schrieben) Dazu kommt dass man auf einem STM32F103C8 wohl sowas wie den Kalman Filter nur mit Assembler zum Laufen kriegen könnte (Vielleicht) da jeder normale Compiler dafür zu schlechten Code erzeugt. Dass der C8T6 dafür eh schlecht ist,ist
wenig wie ich von Strickmustern oder Genomen. Wir hatten dir vor Monaten empfohlen, zu lernen, den STM32F103C8 in Assembler zu programmieren. Wie weit bist du denn damit gekommen? Du hast keine einzige Zeile selbst geschriebenen Code präsentiert und ich denke, das entspricht dem tatsächlichen Stand.
-
Thread
Unbekannter Assembler erzeugt große Änderungen bei kleinem Programm
Taobao steht ein Lager mit 100.000 Stück dahinter, die die Teile für 1 Cent bekommen haben (ähnlich STM32F103 & STM8S aus China). Sich nur ein Stück zu kaufen wäre hinsichtlich der Versandkosten wenig sinnvoll. 100 Stück sollten es dann schon sein.
wenige Assembler-Befehle mit den zugehörigen Opcodes angegeben (im Kontext der Optimierung durch den C-Compiler, wenn google translate nicht lügt): 5E0A MOV A BB1 1B21 COMP A #0x21 2040 T0SN CF 5C0B MOV BB2 A Weiter vorne finden sich noch (S. 73): C028 GOTO 0x28 0030 WDRESET 1F00 MOV A #0x0
-
Thread
HTU21 Mögliches Problem mit CRC Erzeugung im Sensor
) 7a8ah 31368 4 - CRC Error SHT2x_MeasureHM (T): 65c4h 26052 4 - CRC Error SHT2x_MeasurePoll (RH): 7a7ah 31352 4 - CRC Error SHT2x_MeasurePoll (T): 65c4h 26052 4 - CRC Error SHT2x_CalcTemperatureC
aus. Ich verwende Si7051(ClosedCube) und HTU21(China) und bei mir gibt es unterschiede in der I2C Abarbeitung. Anwendung ist ein STM32F103, I2C Umschaltung zwischen PB67 und PB89. Mit 2x Si7051 funktioniert das. Mit HTU21 funktioniert es nach dem Einschalten genau 1mal. Mit einem I2C-Multiplexer
-
Thread
LCD EA DIP203 Problem (unerklärbare Zeichen)
Platine ist ein 3.3V Regler, welcher nur für das Display (+Pegelwadler) verwendet wird und der hat 6,8µF Elko und 100nF Keramik am Ausgang. Wenn ich jetzt so sehe, könnten die natürlich etwas näher am Display sein. Kann das mit dem Enable leider nicht mehr überprüfen, habe die Tage meine Kontroller
Hallo Maxim, ich habe ein Projekt MIT Dem Dip 203G-4 und ich verwende den STM32F103: ich habe mir dein Code eingeschaut und im Vrgleich zu meienem gibt es nicht viel Unterschied. Aber ich bekomme nichts am Display. Überhaupt nicht. Eine Frage zu der Beschaltung: muss
-
Thread
IRMP auf einen PIC18F4520 portieren
sieht das eher wie ein Folgefehler aus. > #define PIC_C18 XC8 ist aber nicht unbedingt C18 ;-) > #define WIN32 Wofür? Vielleicht wegen uint8_t, weil es kein stdint gibt? Dieses Problem mit define von WIN32 totzuschlagen ist eher der falsche Weg.
möchte. Deshalb musst Du nun die Bytes konvertieren, z.B. nach Hex: Eine Möglichkeite wäre: [c] // Konvertierung eine Nibbles uint8_t itox (uint8_t val) { uint8_t rtc; val &= 0x0F; if (val <= 9) { rtc = val + '0'; } else { rtc = val
-
Thread
Einstieg in die µC-Welt
entweder einen ab, oder musst dir wieder Leute suchen, die Bibliotheken dafür geschrieben haben. [c] uint8_t results[4]; barometer_read(0, 4, results); unsigned padc = (results[0] << 2) + (results[1] >> 6); unsigned tadc = (results[2] << 2) + (results[3] >> 6); double pcomp = a0
genaue Uhr/Taktquelle. Du wirst eine RTC anschließen müssen, zum Beispiel DS1302. Anders ist das beim STM32F103, der hat eine Uhr mit passabler Genauigkeit integriert. Der ESP8266 hat sehr viel Speicher und kann daher problemlos HTML Seiten generieren. Er schwächelt aber beim ADC (sehr ungenau) und hat
-
Thread
Welche NRF24L01+ 2.4 Ghz Transmitter taugen?
die Platine im Raum gedreht ist, ob man die Hand über die CPU hält (EMV?) oder nicht. Da tickert ein STM32F103 mit 72 Mhz in der Nähe, keine 4cm weiter weg. Jetzt habe ich in der Bucht die hier gefunden, sicherlich auch China Klone. Die Original Nordic Steine liegen ja bei ca 8 Euro nur der Chip.
FIFO ganz voll macht mit 3 Datensätzen. Wie schaut das denn codemässig aus? Bei mir bisher: [c] CSN_LOW; /* Kommando Wort senden fuer Payload mit ACK*/ SPI_TransferByte(NRF24L01_CMD_W_TX_PAYLOAD); for (uint8_t i = 0; i < len; i++) SPI_TransferByte(*(ptr++));
-
Thread
DCF77 Selbstbauempfänger
den DDH47 Sender gemacht. https://de.wikipedia.org/wiki/DDH47 Als Controller habe ich einen STM32F103 genommen.
tx_news_pi1%5Baction%5D=detail&tx_news_pi1%5Bday%5D=25&tx_news_pi1%5Bmonth%5D=10&tx_news_pi1%5Byear%5D=2021&cHash=1e27d53fe127612d4f55345fbf7a40b8
-
Thread
an STM32F103-benutzer, ADC
Hallo, ich habe folgendes Problem: ich habe der AD-Wandler des Microkontrollers STM32F103 wie folgendes programmiert. ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; ADC_InitStructure.ADC_ScanConvMode = DISABLE; ADC_InitStructure.ADC_ContinuousConvMode = ENABLE
RCC_HCLK_Div2); /* ADCCLK = PCLK2/4 */ RCC_ADCCLKConfig(RCC_PCLK2_Div4); #ifndef STM32F10X_CL /* PLLCLK = 8MHz * 7 = 56 MHz */ RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_7); #else /* Configure PLLs *********/ /* PLL2 configuration: PLL2CLK = (HSE / 5)
-
Thread
BMP280 an PIC18F45K42 mit MPLAP und I2C
BMP280_REG_CONFIG 0xF5 #define BMP280_REG_PRESS_MSB 0xF7 int32_t adc_T, adc_P, t_fine; // void BMP280_Write8(uint8_t reg_addr, uint8_t _data); // // BMP280 sensor modes, register ctrl_meas mode[1:0] typedef
_status = bme280_init(&bme280); } [/c] [c] int8_t user_i2c_read(uint8_t reg_addr, uint8_t *reg_data, uint32_t len) { HAL_StatusTypeDef status = HAL_OK; //initial value is usually zero int32_t iError = BME280_INIT_VALUE
-
Thread
AVR-Bootloader mit Verschlüsselung
folgender Hinweis: In einer funktionierenden Datei endet diese beispielsweise mit: [pre]:1066A000B1F6D363BA6B8B95869F12841FEB668617 :1066B0007FF6B6B56AB249D283E3D1713A62B66663 :0C66C000C8E77F006C0B23456810000049 :00000001FF [/pre] Eine nichtfunktionierende Datei sieht am Ende hingegen so aus:
0 Request: 14.11.2013 11:19:12.51564 (+0.0000 seconds) FE 00 36 00 26 48 0C 94 B0 01 0C 94 CF 01 0C 94 þ.6.&H.?°..?Ï..? 93 09 0C 94 CF 01 0C 94 CF 01 0C 94 CF 01 0C 94 ?..?Ï..?Ï..?Ï..? ... 861 (!) Zeilen später ... 4F 92 5F 92 6F 92 7F 92 8F 92 9F 92 AF 92 BF 92
-
Thread
Vollprogrammierbare Zündanlage für 1Zylinder 2 und 4 Takt Motoren
300v wechsel Spannung" die Frequenz und der Strom bekannt? - Jeder VCC Pin des AVR brauch einen 100nF(!) - AVCC solltest du auch Anschließen (wie VCC mit 100nF) - GND an AVR Pin 21 fehlt - IC2 fehlt am Eingang 100nF Wo kommt die Spannung von Pad 6/7 her? - Wie gross soll C3 sein? - Bei T1 währen
können wir uns ja mal austauschen. Allerdings muss ich sagen, dass ich einen wesentlich potenteren µC benutze (Stm32f103rc). Ich muss zugeben ich bin etwas faul, daher hab ich mir nicht den kompletten Post durchgelesen. Zuerst einmal das ganze auf eine fertig geäzte Platine aufzubauen ist eine
-
Thread
AVR AtMEGA328P-PU u. I2C in Arduino: Probleme mit mehrdimensionale Arrays
Es gibt Mikrocontroller, die nicht einzelne Bytes via I²C aneinander reihen können. So ist das z.B. beim STM32F103. Da muss man die letzten drei Bytes vor dem anders behandeln. Es gibt vielleicht auch Mikrocontroller, wo das gesamte zu übertragende Paket
, wird als erstes Byte die Zeilennummer übertragen. Hier mal Quick-n-Dirty runtergeschrieben: [c] #define L 8 #define C 8 uint8_t array[L][C]; void sendline(uint8_t l) { Wire.beginTransmission(8); Wire.write(l); for (uint8_t i = 0; i < C; ++i) Wire.write
-
Thread
Verkaufe jede Menge Bauteile
1 4x ENC28J60 DIP 3 3x ENC28J60 SOIC 3 1x 24C1024 DIP 2 1x 24C512 DIP 1 3x 24FC1025 DIP 2 2x 24AA1025 DIP 2 3x MCP2515 DIP 1,5 3x STR712FR2T6 TQFP64 8 3x STM32F103CBT6 LQFP48 6 2x STR711FR2H6 LFBGA64 7 1x ATMega 8535L PLCC44 4 3x MAX7221 DIP 4 6x MAX7119 DIP 4 3x MSP430F2013 DIP 2 [/pre] Versandkosten sind abhängig
-
Thread
nRF5 SDK vs. nRF Connect SDK (Zephyr)
**************/ int main(void) { uint32_t time_ms = 1; uint32_t time_ticks; uint32_t err_code = NRF_SUCCESS; bsp_board_init(BSP_INIT_LEDS); nrf_drv_timer_config_t timer_cfg = NRF_DRV_TIMER_DEFAULT_CONFIG; err_code
schon gestolpert. Dafür erreicht man z.B. problemlos 25µA mit dauerhafter Erreichbarkeit über BLE. Ein STM32F103 schafft das vielleicht gerade so im power down. Der interne HF RC Osc. braucht sicher weniger Strom als ein Quarz, also ist es nur logisch, dass der uC auf dem läuft wenn der BLE Stack nicht
-
Thread
Variablen eindeutig benennen damit der Typ eindeutig ist
ist einfach eine Anweisung für Präprozessor. Einen Array mit festen Werten schreibe ich als: [c] static const uint8_t c_7seg[] = { ... } [/c] und kann auch daraus lesen. So etwas kann man aber mit const *nicht* machen: [c] const uint8_t c_DatBlkLen = 0x3F; // 63 Byt max uint8_t
kenne, landet so eine > "Variable" tatsächlich im Flash und das war's. Dann probier doch mal einen STM32F103 aus. Aus [c]#include <stdint.h> static volatile uint32_t * const GPIOA_BSRR = ((volatile uint32_t*) 0x40010810); static const uint8_t iPin = 3; void setPin () { *GPIOA_BSRR = (1
-
Thread
Zeta SBC V2 Z80 mit Floppy Disk
P8255A-5 5 MHz (200 ns) NEC D8255AC-2 5 MHz (200 ns) D8255AC-5 4 MHz (250 ns) D71055C 8 MHz (120 ns) D71055C-8 8 MHz (120 ns) D71055C-10 10 MHz (100 ns) Harris 82C55A-5 5 MHz (200 ns) 82C55A 8 MHz (120 ns)
Default reentranten Code (anders als bei MCS-51 oder Padauk). Mit dem STM8 unterstützt SDCC übrigens auch eine Architektur die nichtorthogonal ist, aber sich dennoch gut für C eignet. Aber auch der STM8 ist noch nicht das Ende der nichtorthogonalen Fahnenstange. Man könnte
-
Thread
Schaltplankontrolle - Tomatenbewässerung
sorry, das PDF eignet sich sicherlich besser zum anschauen. Mit dem ganzen würde ich gern bis zu 8 Tomatentöpfe bewässern :-) Es soll auf ein STM32F103C8 DevBoard gesteckt werden, daher oben links die Connections. Ansonsten gibt es eine 12V Pumpe, einen Durchflusssensor (12V), 7x Feuchtigkeitssensoren
Hersteller-HR-Batterie-HR-Bike-Power-12V-GEL-Motorradbatterie-YB4L-B-50411-5Ah.html?sPartner=shopping&gclid=CjwKEAjwmdu5BRCg1O3a-tDY0AQSJACKPgRKorR6WR6_8ldpawT2GlLCH0BXkhKMqareketLwa1cBhoCuznw_wcB (Oder ein 3S LiPo Akku als Alternative, falls ich es mit der Ladeschaltung hinbekomme, dazu geht der Laderegler leider nicht) Damit
-
Thread
Einsteiger Debugger für STM32
Hallo, ich möchte mich mit ARM Mikrocontrollern beschäftigen, dafür habe ich mir den STM32F103C8T6 von STMicoroelektronics ausgesucht. Ein Board habe ich bereits selbst entwickelt, geätzt und es funktioniert sogar!!! Ich habe mir (um erstmal eine all in one lösung zu haben die 30 Tageversion
Ist so'ne Sache: Wenn Du ausschließlich bei den STM32 bleiben willst, würde ich den ST-Link nehmen (z.B. bei HBE oder so). Damit läuft Atollic super. Ist aber gerade am Anfang schwer zu sagen, welcher Hersteller einem später wirklich zusagt. Ansonsten
-
Thread
Probleme mit RFM69CW Modul
Hallo zusammen! Ich habe hier einen Aufbau mit STM32F103 Mikrocontrollern und dem Funkmodul RFM69CW. Die SPI Ansteuerung funktioniert gut und ich kann die Register auf mehreren Entwicklungsboard Aufbauten lesen und schreiben. Mein Aufbau ist folgendermaßen: 1. Board STM32-H152 mit Pollin "Funkmoduladapter RFM12/RFM12B" 2. Board Olimexino STM32 mit Pollin "Funkmoduladapter RFM12/RFM12B" Die Adapterboards dienen nur der Adaption der Funkmodule und sind per Steckkabel
-
Thread
[F] OCXO 10-MHz-Frequenzstandardreferenzmodul
großer Adresse: https://de.aliexpress.com/item/1005007475865985.html?spm=a2g0o.productlist.main.1.691d6f27I0wJd8&algo_pvid=4e229aad-7630-49fd-aaa3-2b0e9a131b0d&algo_exp_id=4e229aad-7630-49fd-aaa3-2b0e9a131b0d-0&pdp_npi=4%40dis%21EUR%217.87%217.49%21%21%2158.25%2155.44%21%40211b813b17375598928721462e4e34%
man per PWM erzeugen und ausreichend geglättet an den ADJ Eingang legen. Ich habe versuchsweise ein STM32F103C8T6 Blue Pill Board mit der Firmware von fredzo für den BH3SAP GPSDO, ein GPS-Modul mit 1PPS Ausgang und ein paar Widerstände und Kondesatoren zusammengelötet und habe einen fast funktionierenden
-
Thread
ZX81 plus38 Clone
hier auch direkt einen "um die Ecke": https://www.mikrocontroller.net/topic/490145 Läuft auf STM32F407VET6-China-Board. Aber auch auf Linux (Framebuffer und/oder X11) und Windows (QT).
vorgenommen: C1 und C2 des Kristalloszillators wurden auf 4,7 pF abgesenkt Das Signal n6.5M wurde entfernt und Flip / Flop U18B wurde mit dem nicht invertierten Takt 6.5M getaktet Der entfernte Wechselrichter U21D
-
Thread
Arduino Nano interner Temperatursensor auslesen
ATmega328P ausprobiert: Das TS_GAIN ist nicht gesetzt (0xFF). Die Device Signatur stimmt aber 0x1E 0x95 0x0F = ATmega328P. [c] [00]: 1E [01]: B8 [02]: 95 [03]: FF [04]: 0F [05]: FF [06]: FF Device signature: 1E 95 0F RC oscillator calibration byte: B8 [/c] Evtl. kann das ja mal jemand
Beitrag #6813552: > Scheint dir das realistisch zu sein? Das hatten wir schon einmal bezüglich des STM32F103C8T6 diskutiert. Ehrlich gesagt weiß ich nicht, was ich glauben soll. Ist das nicht zu aufwändig? Und wenn eine Hälfte des Speichers schon ab Werk kaputt is, wie vertrauenswürdig ist dann die andere
-
Thread
Frequenz- und Spannungspanelmeter mit ATtiny44 und TM1637
und versteht, wie DIESER Zähler funktioniert. Einen reziproken Zähler habe ich einmal mit einem STM32F103 gemacht und vom Ansatz her ist das vllt. reizvoll zu versuchen das auf einem Tiny44 umzusetzen. Weiß ich nicht ob ich dazu komme, aber wenn, wird das dann vllt. doch eine Version 2 geben.
die Umschaltung von Spannungs- und Frequenzmessung muß auf einen anderen IO-Pin (PA0 oder PA4 - PA6) verschoben und Fin an PA7 gelegt werden. Die Ausgaberoutine kannst Du vielleicht hier entnehmen: http://mino-elektronik.de/progs/avr/Drehzahl_4_45_float/Drehzahl_4_45_float.c Das Programm läuft auf
-
Thread
Pflanzensensor Akkulaufzeit
ausschaltest bzw. mittels Transistoren abtrennst, sollte das möglich sein. Habe selber mit einem STM32F103C8T6 so einen Pflanzensensor gebastelt und der braucht im Durchschnitt ca. 30µA, ist aber ohne Funk, misst alle 2 Sekunden und nach der Messung blitzt jeweils kurz eine grüne oder rote LED auf.
client.publish("/Plant_Sensor_001/analog", aValue); delay(1000); } digitalWrite(D8, LOW); ESP.deepSleep(3600e6); } [/c]