-
Thread
CAN Bus <-> Lin Bus, oder was anderes?
i2c rs485
wirklich die paar Cent für die Transceiver sparen musst. asd schrieb im Beitrag #6511864: > Ca. 2m max Abstand, aber durch die 8 Teilnehmer doch ca. 10m Kabel. Das ist gar nicht /so/ wenig. Hast du starke Störer in der Nähe, z.B. Elektromotoren? Dann ist CAN definitiv das Mittel der Wahl. A
-
Thread
STM32 feature DMAMUX
= SPI1 MOSI // Initialize SPI WRITE_REG(SPI1->CR1, SPI_CR1_SSM_Msk|SPI_CR1_SSI_Msk|(0b010<<SPI_CR1_BR_Pos)| SPI_CR1_SPE_Msk|SPI_CR1_MSTR_Msk); MODIFY_REG(SPI1->CR2, SPI_CR2_DS_Msk, (7<<SPI_CR2_DS_Pos)); } [/c] Übetragung: [c] /** \brief Transmit SPI data block by
WRITE_REG(DMA1_Channel4->CMAR, (uint32_t)pu8_dataTransmit); // Number of data to transfer (0 to 2^16 - 1) WRITE_REG(DMA1_Channel3->CNDTR, u16_count); WRITE_REG(DMA1_Channel4->CNDTR, u16_count); SET_BIT(DMA1_Channel3->CCR, DMA_CCR_EN); // enable RX DMA SET_BIT(DMA1_Channel4-
-
Thread
STM32 5V tolerant, welcher Pegel?
Den Schaltplan müsste ich rekonstruieren, und da es min. 2 Lagen + ein GND Lage sind wird das womöglich nichts. Für 5V spricht der Siebdruck sowie die Tatsache dass der TX mit 5V antwortet wenn man RX mit 5V fragt.
ob man am RX Pin mit 3V oder 5V sendet. Die genauen Pegel am TX Pin sind 4,99V bzw. 2,81V laut Oszilloskop. 4. Die Verkabelung ist original und der Abstand beider Controller beträgt ca 1 m. Meine Frage war ob
-
Thread
Mein verrücktes Projekt ist fertig :)
Spannungsteiler macht Dir mit der Engangskapazität die Flanken rund. Auf keinen Fall über 2.7Volt gehen. Kannst Du selbst testen, indem Du von aussen eine (langsam ansteigende) Spannung an RX(PIN6) anlegst und auf dieser Leitung den Stom misst (natürlich im uA Bereich). Dann siehst Du, wann
Firmware wäre per Zahlencode das Abfragen der Akkuspannung oder das Ausschalten von Handy und uC, z.B durch wählen von 2x 9 o.ä. Die Ausgabe würde dann von Tönen im Hörer erfolgen müssen, bei der Spannung wäre max. 1-4x piepen für den Spannungsbereich am sinnvollsten. Aber da kann jeder seine Ideen
-
Thread
STM32 UART DMA Circular Vertändnisproblem
gleichzeitig über zwei UARTs. 1) https://de.wikipedia.org/wiki/Warteschlange_(Datenstruktur) 2) https://github.com/MaJerle/stm32-usart-uart-dma-rx-tx
Puffer dynamisch machen....weit über meinem Niveau. Unter /* USER CODE BEGIN 0 */ void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart2) { flagUartEingabe = 1; BufferNummer++; HAL_UART_Receive_DMA(&huart2,(uint8_t*)UartBufferEingabe[BufferNummer],3); } mainloop: if (flagUartEingabe
-
Thread
CAN Repeater / Optoadapter mit zwei Transceivern und Optokopplern
dass die Schaltung im Anhang nicht funktionieren kann ist mir mittlerweile klar, da die 5V auf den Rx und Tx Leitungen fehlen die normalerweise vom CAN-Controller gespeist werden. Zwei PCA82C250 ( http://www.nxp.com/acrobat/datasheets/PCA82C250_5.pdf ) mit 2 invertierenden Optokopplern 6N137 die
1 A ist dominat und gibt dies an B weiter. 2 B ist also auch dominat und gibt dies an A weiter. usw. usf.
-
Thread
Seriellen Anschluss finden
Kerim B. schrieb im Beitrag #6279194: > DSO138 gekauft (kommt in 2-3 Wochen > an) Das gibt's doch schon mit Standardversand 2-3 Tage für unter 20€. Wieso dann aus China?
Benedikt M. schrieb im Beitrag #6279309: > Kerim B. schrieb im Beitrag #6279194: >> DSO138 gekauft (kommt in 2-3 Wochen >> an) > > Das gibt's doch schon mit Standardversand 2-3 Tage für unter 20€. > Wieso dann aus China? Weil ich aus China 8
-
Thread
Char Array über USART Empfangen und vergleichen
1.) UART Receive Interrupt verwenden ODER 2.) while-schleife abbrechen, wenn z.B. 10ms kein Zeichen gekommen ist. Wenn allerdings ein Zeichen kommt, dann alle einlesen, bis '\r'. Sonst wartest du bis auf den St.Nimmerleinstag auf deinen String
damit anfängst erst mal das Array richtig zu definieren und zu initialisieren. [C] uint8_t Codetest2[] = { 29, 34, 41, 52 }; [/C] Du willst Zahlen speichern. Also ist schon mal char kein geeigneter Datentyp dafür. Gewöhn dir an, char ausschliesslich für echte Zeichen (also 'A', 'B', 'C'...) bzw.
-
Thread
LPC2368 Uart löst keinen IRQ aus
Christian J. wrote: > [c] > void uart2_init (uint32_t baud) > { > // Pinsel Bits für UART2 Funktion setzen > PINSEL0 &= ~ ( (0x03<<PINSEL_BITPIN_TX) | (0x03<<PINSEL_BITPIN_RX) ) ; > PINSEL0 |= (PINSEL_UART_FUNC << PINSEL_BITPIN_RX
available) else if (int_stat == UIIR_RDA_INT) { idx = RxFifo.wptr; cnt = RxFifo.count; // Solange RX Fifo nicht leer ist... while (U2LSR & ULSR_RDR) { zeichen = U2RBR; // Zeichen aus
-
Thread
LED Strip mit sehr hoher Leuchtstärke
kaufe meine Bänder immer hier, wenn es was gescheites sein soll: http://premium-led-design.de/led%20b%C3%A4nder.html Die 14,4W und 19,2W hab ich im Einsatz und bin sehr zufrieden. Christian_RX7
schon Typangaben oder bezieht sich dass nur auf die Größe der LED-Chips (5050 = 5 x 5mm; 7020 = 7 x 2mm). Das würde mich echt interessieren, ob z.b. die 5050 LEDs alle von einem Markenhersteller kommen, oder ob es verschiedene Firmen gibt, die LED Chips in der Baumform herstellen. Bei ersterem würde
-
Thread
USART TX geht, RX nicht
Max M. schrieb im Beitrag #5291755: > 0 = +3 V bis 15 V, hier geht es nur auf knapp unter 2 V. Hast Du auch ohne angeschlossenen STK600 mal gemessen? Und dann mit Lastwiderststand, z.B. 2,7kΩ? Wenn dabei die Spannung zu klein ist (nach Norm sollte der Sender bei min. Lastwiderstand von
in dem Fall. Jetzt gerade noch zum Testen TX -> 2k7 -> RX, schaut identisch aus. KS ist auszuschließen, da ich gerade mit dem STK600 teste und nicht mit meiner eigenen Platine.
-
Thread
UART Kommunikationsproblem
tx/rx beschrifteten Anschlüsse wirklich entsprechend verbunden sind (falls überhaupt ersichtlich) irgendwie liest es sich mittlerweile so als wenn rx einen Taster(???) erwartet und tx evtl. ein 'enable'-Anschluss
.... vielleicht vorher zum testen tx/rx beim Ansprechen über den internen usb-wandler messen
-
Thread
Stringauswertung Problem
buffer overflow */ lastRxError = UART_BUFFER_OVERFLOW >> 8; }else{ /* store new index */ UART_RxHead = tmphead; /* store received data in buffer */ UART_RxBuf[tmphead] = data; } UART_LastRxError = lastRxError; } [/c]
-
Thread
Verständnisfrage zum UDS-Protokoll
D2 D3 D4 D5 D6 D7 ---------------------------------- 73E 8 10 1B 62 F1 91 36 47 39 [/code] Auch die verstehe ich noch so wie in UDS definiert. In D0 enthält das obere Nibble (0b0001) dem Frame-Type
00 00 00 00 Rx: 77A - 8: 21 54 2D 31 34 43 33 35 Rx: 77A - 8: 22 30 2D 43 4E 00 00 00 Rx: 77A - 8: 23 00 00 00 00 00 00 00 [/pre] Das ist alles "manuell" erzeugt, der Flow-Control Frame wurde über den vorausgehenden
-
Thread
ESP8266 : LED an RX statt Spannungsteiler :-)
_10184_10314_10315_10078_10079_10073_10186,searchweb201603_19,ppcSwitch_3&btsid=bc693af3-6cff-4bdb-b6f6-606c07993ca5&algo_expid=45aa2f70-294d-449f-88c0-7f6b7bd4f2da-1&algo_pvid=45aa2f70-294d-449f-88c0-7f6b7bd4f2da&transAbTest=ae803_3 https://de.aliexpress.com/item/ESP8266-CH340G-CH340-G-NodeMcu-V3-
_10184_10314_10315_10078_10079_10073_10186,searchweb201603_19,ppcSwitch_3&btsid=bc693af3-6cff-4bdb-b6f6-606c07993ca5&algo_expid=45aa2f70-294d-449f-88c0-7f6b7bd4f2da-14&algo_pvid=45aa2f70-294d-449f-88c0-7f6b7bd4f2da&transAbTest=ae803_3
-
Thread
Neue Library: RFID Desfire EV1 Karten mit Arduino programmieren
command ausführst und der alte Key hat 24 Byte Länge und der Neue hat 16 Byte Länge - oder umgekehrt? (Z.B 3K3DES -> AES oder 2K3DES -> 3K3DES) Beide Keys werden in einem Cryptogram ver-exclusiv-odert (XOR). Aber welche Länge wird in diesem Fall geXORt? 1. Immer die Länge des neuen Schlüssels? 2. Immer
2 Widerstände Rx oder einen Widerstand Rx und eine Brücke einsetzen kann, die beide Türöffner an den selben Widerstand hängt. 5.) Auch den 0,22 Ohm habe ich aus purer Absicht nicht als Sicherung ausgeführt
-
Thread
Ersatzchip für Arduino
Oder du kaufst dir einen 2. Uno. Ersatz ist immer gut. Und flashst damit den Bootloader des defekten Uno.
Es gibt also min. 3 *.hex Dateien. 1. Anwendung 2. Bootloader 3. Anwendung mit Bootloader
-
Thread
Arduino Uno R4: Besonderheiten und Abhilfen
alleine ja sowieso nicht > in-circuit debuggen kann, Das ist nicht mehr richtig! Die Arduino IDE 2.X kann das, zumindest für einige µC z.B. STM32
globalen Variablen weg optimiert hat. Für sie wird kein RAM belegt, sondern CPU Register. [pre] 1 kB für Wire 1 kB für Wire1 1.2 kB für _UART1_ 1.2 kB für _UART2_ 1.2 kB für _UART3_ 1.3 kB für USB 258 Bytes für ADC 104 Bytes für PWM [/pre] Das sind schon 7 kB. Wenn du Programme mit der STM32
-
Thread
Mehrere Geräte über uC ansteuern unter Verwendung von RS232
. Am ende wäre eine Checksumme noch gut um Fehler auszuschließen. z.B. wie beim NMEA-Protokoll, einfach ein XOR über alle übertragene Bytes, dass dann mitgesendet wird, z.B. SM1,SW,ON*4A
Du könntest die "clients" auch durchschleifen. Sprich: TX vom Host auf RX von client1 TX von client1 auf RX von client2 TX von client2 auf RX von client3 TX von client3 auf RX von Host (natürlich beliebig erweiterbar) Jetzt musst du dir nur noch nen Protokoll ausdenken
-
Thread
SW ATTiny85 Mag bitte jemand helfen?
include <util/delay.h> #include <avr/sleep.h> #include <avr/interrupt.h> #include "sbit.h" #define RX_INT PCINT1 #define RX_in PIN_B1 #define TX_out PORT_B2 #define TX_oe DDR_B2 int main(void) { set_sleep_mode(SLEEP_MODE_PWR_DOWN); sleep_enable(); sei();
for (uint8_t i = 0; i < 50; i++) // until 50ms high { _delay_ms(1); if (RX_in == 0 ) { sleep_cpu(); i = 0; } } _delay_ms(2000); // wait 2s TX_out = 1; _delay_ms(2000); // duration 2s
-
Thread
RX4045 RTC von Epson macht Probleme
PORTB5)|(1<<PORTB7); DDRB &= ~(1<<PORTB6); SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR1)|(1<<SPI2X); _delay_ms(3000); uart_init(); sei(); // Echtzeituhr: rx4045_init(); [/c] ... [c] void rx4045_init(void) { // Echtzeituhr Chanelselect: RX4045
SPI2X); val.w = wert; cbi(RF_PORT, CS); SPDR = val.b[1]; while(!(SPSR & (1<<SPIF))); val.b[1]=SPDR; SPDR = val.b[0]; while(!(SPSR & (1<<SPIF))); val.b[0]=SPDR; sbi(RF_PORT
-
Thread
elektrischer Ofen -Heizungswiderstände Aufgabe
Da kommste nicht hin. R1 und R2 parallel =1,3R. Dazu R3 in Reihe: 9,3R. Jeder Wert für Rx < unendlich verkleinert den Gesamtwiderstand.
Wenn der Schalter geschlossen ist hast du (R1 parallel R2) Reihe (R3 parallel Rx) so wie smashIt es auch gezeichnet hat. Wenn du die Gleichung für den Ersatzwiderstand aus diesen vier aufstellst, dann gleich Ri setzt und nach Rx umformst kommst du auf die 4
-
Thread
AVR Assembler: add adc auf 0 prüfen
remain unchanged. findet sich auf Seite 186. Bernd B. schrieb im Beitrag #5558667: > Example: > ; Add R1:R0 to R3:R2 > add r2,r0 ; Add low byte > adc r3,r1 ; Add with carry high byte findet sich auf Seite 30. Bernd B. schrieb im Beitrag #5558667
=160&tbnw=155&usg=AFrqEzcYNLaLiW-qVtiJJCGJwZ3N0xRJCQ&vet=12ahUKEwiJiomoi8fdAhXOlIsKHXiuDEYQ_B0wH3oECAYQEw..i&docid=v0MwL8-QpwHm_M&itg=1&sa=X&ved=2ahUKEwiJiomoi8fdAhXOlIsKHXiuDEYQ_B0wH3oECAYQEw Mehrere dieser Tripel, also Aminosäuren bilden den Strang und dieser die Gene. ... usw. Jetzt
-
Thread
Wie muss man die Pins uC und MAX232 Baustein verbinden?
vom µC und MAX232 Baustein verbindet, ist es nun Variante 1: µC MAX232 RXD TX TXD RX oder Variante 2: µC MAX232 RXD RX TXD TX ich hab beide Varianten schon ausprobiert, es tut sich aber nix (was natürlich auch mit der Software zusammenhängen kann). DTR und
die Verbindung folgendermaßen: TXD -> T1IN RXD -> R1OUT Bei der Entwicklungsplatine AVR-P40B-8535 siehe http://www.olimex.com/dev/images/avr-p40b-8535-sch.gif ist die Belegung: T2IN -> RX R1OUT -> TX es steht halt leider nur TX und RX da. Ich glaube fast das T2IN über RX mit
-
Thread
Schnelles Monoflop gesucht
Prblem am 74VHC123 und konsorten: die output pulse width variiert extrem stark. Bei Cx = 28pF und Rx=2k von typ. 133 bis max 200 ns, das ist arg viel, und ich kann auch nirgends finden, wie gross C und R sein müssen um unter 100ns zu kommen, die Graphen enden alle zu früh... Die Delay Lines sind
sag ich nicht schrieb im Beitrag #2969164: > Bei Cx = 28pF und Rx=2k von typ. 133 bis max 200 ns, das > ist arg viel, und ich kann auch nirgends finden, wie gross C und R sein > müssen um unter 100ns zu kommen, die Graphen enden alle zu früh... Da ich bürgerlich
-
Thread
IR-Schalter mit tiny 13
frohes Basteln. Denk dran wenn du dein Protokoll nicht kennst brauchst du noch ein IR-Empfänger wie z.B. TSOP31236 auch ein grösserer Controller mit USART ist dann ganz praktisch. Ich benutze zum finden des FB Codes einen Arduino Nano weil da an Hardware (Mega328 + Usb2Uart) alles drauf ist was man braucht
gerade dann, wenns am interessantesten wird. Du erhältst also den einen Frame als zwei Frames - also 2 Tastendrücke. Nehme ich dann eine zweite Fernbedienung desselben Herstellers, aber mit einer abweichenden Adressierung (z.B. eine für CD und ein für DVD-Player, Fernseher etc), kann Dein Programm die
-
Thread
RFM12 868MHz
, tx-power -21 dB, !mp v_Write_rfm12(0xE000); v_Write_rfm12(0xC800); v_Write_rfm12(0xC000); // 1 MHz , 2.2V } // Einen 16Bit Wert senden void v_Write_rfm12(unsigned int uiDaten) { // Slave aktivieren
+ (0,0025 * 0x620) -> 433,92MHz rfm02_send_cmd(0xB200); // Power 2 * -3dBm -> -6dBm rfm02_send_cmd(0xD2C0); // Set PLL: set 33% rfm02_send_cmd(0xC810); // Baudrate: 344827 / 19200 = 17 - 1 -> 0x10 [/c] Gruß aus Berlin Michael
-
Thread
Array Probleme
Werte addiert werden und nicht nebeneinander gespeichert werden. Übersicht: array[1] = 1 array[2] = 2 array[3] = 3 Struktur: [var1 = array[1]array[2]array[3]] Ausgabe: var1 soll dann "123" sein. Absicht: Später sollen die empfangenen Zeichen komplett an eine Funktion übergben werden
Ansonsten: Wenn aus "{1, 2, 3}" die Zahl 123 werden soll, dann musst Du einfach die jeweilige Ziffer mit dem Wert der entsprechenden Dezimalstelle multiplizieren, also z.B. [C] var1 = array[3]; var1 += array[2] * 10; var1
-
Thread
MSP430F1611 TimerA Interrupt Problem
0 Transmit RETI USART0RX_VECTOR_ISR: BIS #0x40,R14 ; 0xFFF2 USART 0 Receive I2C tx/rx RETI WDT_VECTOR_ISR: BIS #0x20,R14 ; 0xFFF4 Watchdog Timer RETI COMPARATORA_VECTOR_ISR: BIS #0x10,R14 ; 0xFFF6
USART0TX_VECTOR,0xFF .word USART0TX_VECTOR_ISR ; 0xFFF0 USART 0 Transmit .org USART0RX_VECTOR,0xFF .word USART0RX_VECTOR_ISR ; 0xFFF2 USART 0 Receive I2C tx/rx .org WDT_VECTOR,0xFF .word WDT_VECTOR_ISR ; 0xFFF4 Watchdog Timer .org COMPARATORA_VECTOR,0xFF
-
Thread
dsPIC33E mit ECAN - Geht es auch ohne DMA?
DMA0STAL = (unsigned int) &CAN1_txMsgBox; DMA0CONbits.CHEN = 1; //Channel 0 Enabled DMA2CON = 0x0000; //DIR: Peripheral adress -> DMA RAM 0x0440 DMA2PAD = (volatile unsigned int) &C1RXD; //Adress of C1RX DMA2CNT = 7; DMA2REQ = 0x0022; //C1RX - ECAN1 Receive Data Request DMA2STAL = (unsigned int) &CAN1_rxMsgBox; //Primary DMA read Start Adress DMA2STAH = 0x0000; DMA2CONbits.CHEN = 1; //Channel 2 Enabled [/c]
-
Thread
Funksteckdose "in richtig"
Prinzip her sieht die Sache so aus, das du mit dem Wakeup-Timer die Zeit einstellst, so das das Modul z.B. alle 1000ms aufwacht. Mit dem LDC-Command stellst du dann ein wie lange das Modul dann in Empfangsbereitschaft ist. Die Zeit muss 1.5 bis 2x so lang sein wie die Übermittlung eines Datenpakets das du
Hallo Alexander, Alexander Meyer schrieb im Beitrag #2668920: > vorstehende Rechnung = Bei Z = 2,2k +j5,6k ergibt sich Z = 6kOhm? > oben aufgeführte Simulation = mein Screenshot? Der Wert für Z, nähmlich 2,2k +j5,6k entstammt der folgenden Nachricht, Alexander Meyer schrieb im Beitrag #2666863
-
Thread
STM32F4 CoOS
Entspricht im Prinzip den Beispielen, die ich gefunden habe. Gibt es nix pfannenfertiges mit schöner RX- und TX-ISR? Wo z.B. jedes RX-Char wieder TX-seitig als "Echo" ausgegeben wird. >stdio muss "exclude from build" Wie? Was? Warum?
definiere ich für die USART3, TX auf GPIO_D8 statt GPIO_C10 (da Konflikt mit SCLK zu CS43L22) RX auf GPIO_D9 atatt GPIO_C11 Ist aber nicht relevant, da ohnehin die USART2 verwendet wird! - Im "uart.c" habe ich /* Use no semihosting */ auskommentiert (#if 0) da "#pragma import(__use_no_semihosting
-
Thread
Fehlersuche in Datenübertragung
Hausautomatisierung per USB alle paar Sekunden abfrage. Der Status wird mir mit einer 16stelligen Hex beantwortet z.B. "0000000000050207". Ändert sich ein Reed-Kontakt bekomme ich z.B. "0100800000050286". Zum Verständniss es sind immer 2er Pakete, siehe haa_bus.h ab Zeile 23: Erstes Paar 01 = Bit 1 von Byte 1 ist
Heinz schrieb im Beitrag #6225599: > In ISR (USART_RX_vect) liest du eine gewisse Menge Bytes in das Array > _rxd_string und setzt _rxd_komplett = true wenn du die erwartete Anzahl > von Bytes empfangen hast. In der Funktion RxD_Auswerten() greifst du
-
Thread
HM-11 logic level shifter für arduino
?curr=EUR&gclid=CjwKCAiAqOriBRAfEiwAEb9oXbd7Yr272KMVYUrKPcRes4tKdI2MXO8xmkyUP6vF0FIYZm2S3FC9wBoCPnMQAvD_BwE
Joachim B. schrieb im Beitrag #5726290: > ich komme prima mit 2 MOSFETs zurecht Das riecht mir nach der Applikation Note von Philips - Anhang?
-
Thread
LIN-Bus AppNotes
else { LIN_Rx_Error = LIN_BREAK_ERR; } } else if(SSR2_RDRF) /* reception Data reg full? */ { LIN_Rx_Data=RDR2; /* get Reception
Frage: Gute Code, leider verstehe ich nicht wie Du die Variablen z.B. "LIN_Rx_Error" definieren kann.
-
Thread
LT-Spice Signallaufzeit über Frequenz auftragen.
Hallo Ralph, Könnte man da nicht annehmen, dass Rx wie folgt berechenbar ist. Rx = 1kOm/Tastverhälnis Beispiel Tastverhälnis = 0,25 (25%) Rx = 1kOhm/0,25 = 4kOhm Diesen Wert dann in .AC Analyse nehmen. Rx im Schaltplan statt 1k -> {1k/(Ton
schonmal gehört. Stellt das die Welt auf den Kopf? Alles unlinear... Ich habe etwas rumgesucht. z.B. http://www.eevblog.com/forum/projects/voltage-to-resistance-converter/msg447887/?PHPSESSID=57f78c215e30bcd681dddd6632a45fbf#msg447887 Also 1. voltage to resistance 2. voltage-controlled resistance
-
Thread
Wie speichere ich große Arrays in STM32?
: ORIGIN = 0x20000000, LENGTH = 128K RAM_D1 (xrw) : ORIGIN = 0x24000000, LENGTH = 512K RAM_D2 (xrw) : ORIGIN = 0x30000000, LENGTH = 288K RAM_D3 (xrw) : ORIGIN = 0x38000000, LENGTH = 64K ITCMRAM (xrw) : ORIGIN = 0x00000000, LENGTH = 64K FLASH (rx) : ORIGIN = 0x8000000, LENGTH
: ORIGIN = 0x20000000, LENGTH = 128K RAM_D1 (xrw) : ORIGIN = 0x24000000, LENGTH = 768K RAM_D2 (xrw) : ORIGIN = 0x35000000, LENGTH = 64K RAM_D3 (xrw) : ORIGIN = 0x38000000, LENGTH = 32K ITCMRAM (xrw) : ORIGIN = 0x00000000, LENGTH = 64K FLASH (rx) : ORIGIN = 0x8000000, LENGTH
-
Thread
ESP8266-01 - Keine Reaktion
01 aus dem Internet versuche ich mit meinem Laptop (Windows 10) zu verbinden. Dazu habe ich bereits 2 Varianten versuchst. Variante 1: Einen USB-Serial Wandler (PL2303) mit einem MAX232 zu verbinden, dessen Betriebsspannung 3,3V ist. Dann habe ich RX-TX, TX-RX, CH_PD-VCC, VCC-VCC und die Massen
- RxD (Pin2), TxD (Pin3) und GND (Pin5). Den Rest lässt Du unbeschaltet. RxD ist aus Sicht des PCs ein /Eingang/, der mit einem /Ausgang/ des MAX3232 zu verbinden ist, und korrespondierend ist TxD aus
-
Thread
Probleme mit der seriellen Schnittstelle
ein Körnchen Wahrheit ist schon drin. Ursprünglich hatten die COM-Port-Stecker 25 Pins mit TXD auf 2 und RXD auf 3. IBM hat dann die 9-poligen eingeführt und (u.a.) Pin 2 und 3 vertauscht. Dazu kommt noch die Verwirrung durch die Stecker am Modem. Da ist die Belegung genau umgekehrt wie am PC, damit
Körnchen Wahrheit ist schon drin. Ursprünglich hatten die > COM-Port-Stecker 25 Pins mit TXD auf 2 und RXD auf 3. IBM hat dann die > 9-poligen eingeführt und (u.a.) Pin 2 und 3 vertauscht. Auf dem 9-poligen Anschluss ist aber noch mehr "vertauscht" gegenüber dem 25-poligen. Auch GND ist woanders
-
Thread
Ansi C - UDP Case switch
sicher ob das so compiliert Callback callback; } MyDummyStruct; MyDummyStruct myDummyStruct[2] = { {"tasklist_start", &task_monitor}, {"km", &callback_2}, }; for (int x = 0; x < (sizeof(myDummyStruct) / sizeof(*myDummyStruct)); x++) { if(strstr(rx_buffer, myDummyStruct[x].findString) != NULL) { char *d = strstr(rx_buffer, myDummyStruct[x].findString); if (myDummyStruct[x].callback != NULL) { myDummyStruct[x].callback(); } } } void task_monitor(void) { } void callback_2(void) { }
-
Thread
MCP2515 Interrupt beim Empfang löschen
' Transmit Buffer 2 Data Byte 3 Const Txb2d4 = &H5A ' Transmit Buffer 2 Data Byte 4 Const Txb2d5 = &H5B ' Transmit Buffer 2 Data Byte 5
' Transmit Buffer 2 Data Byte 3 Const Txb2d4 = &H5A ' Transmit Buffer 2 Data Byte 4 Const Txb2d5 = &H5B ' Transmit Buffer 2 Data Byte 5
-
Thread
Attiny 441 UART
Edit A7,B2. Stefan
enables the USART Receiver. When enabled, the > receiver will override normal port operation for > the RxDn pin. Hallo spess53, ich habe aber damit gerechnet das er mir dann nur den PB2 überschreibt denn das ist ja der RX. Und (PA1.PUOE = TXEN0 • !U0MAP) deutet ja irgendwie darauf hin das Atmel das wohl
-
Thread
Laser/POV Ethernet Übertragung durch Glas
hatte ich dabei an einen POF Ethernet Link, nur halt ohne Faser.... Siehe Bild. 1. Glashülle 2.Innenliegende Induktionsspule 3.Außenliegende Induktionspule 4.5. POV TxRx 650nm -2dBm Ausgangsleistung 6.Ölfüllung 7.Raspberry Pi o.ä. 8. Ethernet Port Was haltet ihr davon? Machbar wenn auch
Frank B. schrieb im Beitrag #4638428: > Denn die Reflektionen des gesendeten Signals werden wohl in beide > Empfänger einstreuen. Ich lasse einige cm Faser an beiden RxTx und führe sie räumlich mehrere
-
Thread
Wann reserviert der Compiler speicher für ein Array und wann nicht?
die Frage, wie der Compiler eigentlich mit Sende- und Empfangsbuffern umgeht. Wenn ich nun uart0RxBuf[127]; uart0TxBuf[127]; uart1RxBuf[127]; uart1TxBuf[127]; mache. Kann ich irgendwie dafür sorgen, dass kein halbes kB RAM verbraucht wird? Ich könnte z.B. uartTxBuf[127] machen und beide zu sendenden
> immer nur eine in Verwendung ist. Klar kannste beide an eine Adresse legen: [c]char uart0RxBuf[127]; char uart0TxBuf[127]; #define uart1RxBuf uart0RxBuf #define uart1TxBuf uart0TxBuf[/c] Und schon liegen jeweils beide RX-Buffer und beide TX-Buffer an einer Adresse.
-
Thread
RJ45 Ethernet Loopback Stecker, GBit Link
Falls Dein Crosskabel ok sein sollte, könnte z.B. auch der spezielle Treiber eine Ursache sein. Schau mal ob sich Giga überhaupt einstellen lässt.
Full oder Halfduplex ausgehandelt hat? Am eval.Board hab ich >ne LED dafür.), er bei 100BASE-TX nur 2 von 4 Adernpaare benutzt? Nein, er benutzt dann 4 Leitungen, zwei für TX und zwei für RX. Wenn nur TX oder RX vernunden sind, bekommt er keinen Link. Allerdings kann der Phy durchaus einen Link bekommen
-
Thread
Verständnisfrage zur Antennenlänge
size" Dipol. Nimm als Beispiel einen Hohlraumresonator als Bandfilter. Linke Seite TX, rechte Seite RX. Größe egal, Zustand eingeschwungen, angepasst, Verlust 0 dB.
#4425872: > Nimm als Beispiel einen Hohlraumresonator als Bandfilter. Linke Seite > TX, rechte Seite RX. Größe egal, Zustand eingeschwungen, angepasst, > Verlust 0 dB. Das leuchtet ein, aber... ... darf man ein resonantes geschlossenes System mit einem x-beliebigen vergleichen? Wie ist es, wenn
-
Thread
Mikrocontroller UART, RXD-Pin bei ausgeschalter Versorgungsspannung schützen
Dann mache das so: [code] 2,2k Ohm +---[===]---o VCC | Signal o----|<|----+-----------o RxD µC [/code]
Probleme. Du zeigst uns aber weder diese Schaltung, noch kannst Du das Problem schildern. Wenn das RX Dein Problem ist, dann kannst Du Rx auch einfach am MAX vorbei auf einen (Bipolar-NPN-) Transistor führen. Mit 2 Dioden und 3 Widerständen hättest Du eine perfekte Eingangsschaltung, die ganz sicher
-
Thread
wie I2C und SPI über 7 Kabel ?
Das R. schrieb im Beitrag #5858290: > Ideen immer zu mir :-) One-wire Port Expander statt I2C. Z.b. DS2408 - VCC - GND - one-wire - SCLK - MOSI - MISO - DC
HF Strömen von zig Ampere zum BLDC? Dann würde ich auf der Kabelstrecke auf was robustes setzen, z.B. RS485 und die I2C Verbindung auf der Platine im Lenker halten.
-
Thread
stm32 SPI NSS Signal Anfänger
SPI_SLAVE Rx request */ SPI_I2S_DMACmd(SPI_SLAVE, SPI_I2S_DMAReq_Rx, ENABLE); /* Enable SPI_SLAVE */ SPI_Cmd(SPI_SLAVE, ENABLE); /* Enable SPI_MASTER */ SPI_Cmd(SPI_MASTER, ENABLE); /* Enable DMA1 Channel4 */ DMA_Cmd(SPI_SLAVE_Rx_DMA_Channel, ENABLE); /* Transfer procedure */ while (TxIdx < BufferSize) { /* Wait for SPI_MASTER Tx buffer empty */ while (SPI_I2S_GetFlagStatus(SPI_MASTER, SPI_I2S_FLAG_TXE) =
-
Thread
STM32 SPI HAL extrem langsam
in HAL_SPI_Transmit genutzt. https://github.com/STMicroelectronics/STM32CubeH7/blob/0c3a06c18bd2a87b006a84f997f2b0b56d97a113/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_spi.c#L941
HAL_SPI_Transmit genutzt. > > https://github.com/STMicroelectronics/STM32CubeH7/blob/0c3a06c18bd2a87b006a84f997f2b0b56d97a113/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_spi.c#L941 Danke. Diese funktion scheint auch nicht blockierend (zumindest nicht wenn der SPI idle ist; im 8/16 bit modus