-
Thread
I2C mit 2 PCA9600
Falk B. schrieb im Beitrag #4410595: > Ausserdem braucht man nicht nur die PCA9600, sondern auch differentielle > Tranceiver. Die PCA9600 machen nur aus den bidirektionalen I2C Signalen > getrennte, unidirektionale
Falk B. schrieb im Beitrag #4410670: > Da kann man den PCA9600 auch gleich weglassen! NXP schreibt dazu: > Bidirectional data transfer of I2C-bus signals > Isolates capacitance allowing 400 pF on SX
-
Thread
ASCII über UART senden
= -(SYSCLK/BAUDRATE/2); CKCON &= ~0x0B; // T1M = 1; SCA1:0 = xx CKCON |= 0x08; } else if (SYSCLK/BAUDRATE/2/256 < 4) { TH1 = -(SYSCLK/BAUDRATE/2/4); CKCON &= ~0x0B; // T1M = 0; SCA1:0 = 01 CKCON |= 0x01; } else if (SYSCLK/BAUDRATE/2/256 < 12) { TH1 = -(SYSCLK/BAUDRATE/2/12); CKCON &= ~0x0B; // T1M = 0; SCA1:0 = 00 } else { TH1 = -(SYSCLK/BAUDRATE/2/48); CKCON &= ~0x0B;
-
Thread
CRC berechnen - Wo ist der Fehler?
0; /* */ uint16_t Tmp = 0; /* 2 */ for (uint8_t i = 0; i < len; i++) { New[i] ^= Bcc_Lo; /* a */ Tmp = New[i] << 4; /* b */ New[i] ^= Tmp; /* c */ Tmp = New[
DIGITUS-DA-70157/3/index.html?ACTION=3&LA=446&ARTICLE=122187&GROUPID=6105&artnr=DIGITUS+DA-70157&SEARCH=usb%2Brs%2B485 Da gibt es tatsächlich einige Threads zu hier im Forum. Bert3 schrieb im Beitrag #4823347: > ich habe z.B. nach wenig hilfreicher Doku schon mal einen > CRC-Algorithmus direkt aus dem
-
Thread
c#: SerialPort kommt beim Empfang durcheinander
flag zurück int i = serialPort.BytesToRead; WriteLogFenster(i.ToString()); byte[] rx = new byte[10]; serialPort.Read(rx, 0, 10); string RxData = ""; for (int z = 5; z <= 9; z++) { RxData += " " + rx[z]; } serialPort.DiscardInBuffer(); WriteLogFenster(RxData); } [/
andere UART unter jedem anderen BS) wissen, welche 5 Bytes eine Message bilden? Dafür gibt es nur 2 Möglichkeiten: A es gibt ein eindeutiges Message-End-Zeichen, z.B. CR. B die Pause zwischen Messages ist so gross, dass man einen entsprechenden Timeout-Wert setzen kann. Sonst ist alles bloss
-
Thread
STM32F411 Callback wird nicht aufgerufen
(&huart1, pst_modbus->mb_rx_buffer, 100); [/c] Im UART Callback möchte ich mir ein Flag setzten um im Code die Daten aus dem Buffer zu holen: [c] void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { st_modbus *pst_modbus
der DMA kann nicht in alle Speicher schreiben, z.B hat der F4 CCM wo der DMA keinen Zugriff hat, liegt der RxBuffer evtl. im CCM?
-
Thread
Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?
überhaupt keine Gedanken zu machen. bin ja dabei, Platinen mit Arduino kompatiblen m1284p 128kB flash 216 kB RAM sind bestellt Muster im Ribba 25 x 25 cm mit WS2811/12/b Stripes läuft Flächenplatine WS2811/12/b mit 16 x 8 LED 2Stk Raster 2cm sind auch bestellt WS2811/12/b Stripes im 3,2cm
| GPIO: PC11 | | MCURSES terminal (USB) | USB: OTG | USART2: TX=PA2 RX=PA3 | | ESP8266 | USART2: TX=PA2 RX=PA3 | USART6: TX=PA11 RX=PA12 | | I2C DS3231 & EEPROM | I2C3: SCL=PA8 SDA=PC9 | I2C3: SCL=PA8 SDA=PC9 | | WS2812
-
Thread
RS485 Empfang fehlerhaft
= 0; // Sync break transmission completed TXSTA2bits.SYNC = 0; // Asynchronous mode TXSTA2bits.TXEN = 1; // Transmit Enabled if(bLaenge == 9) { TXSTA2bits.TX9 = 1; // Selects 9 bit transmission RCSTA2bits.RX9 = 1; // reception
= 1; // Serial port enabled IPR3bits.RC2IP = 0; // Receive high priority interrupt PIE3bits.RC2IE = 1; // Interrupt enable TRISGbits.TRISG1 = 0; // TX Port as output TRISGbits.TRISG2 = 1; // RX as input bReadPtr2 = 0;
-
Thread
[LPC] Fragen zum CAN-Bus und der CAN_API
und in ein Buffer geschrieben werden. Mit Hilfe der Maske lässt sich der ID-Bereich eingrenzen (z.B. nur ID mit 0x100 empfangen). Ist es soweit richtig? 2) Falls eine Nachricht mit der anzunehmenden ID empfangen wird, wird ein callback (CAN_RX) aufgerufen. Dieser hat, gemäß Datenblatt, die Form
Logisch. Wenn rxFlag wegen nicht ausgeführter isr nicht == 2 wird...
-
Thread
wavecom wismo218 guthaben auslesen
bekomme dieses als antwort zurück 01.11.2009 11:47:15.050 [RX] - at+cusd=?<CR> <CR><LF> +CUSD: (0,1,2)<CR><LF> <CR><LF> OK<CR><LF> hilft dir das weiter??
12:01:04.074 [RX] - <CR><LF> OK<CR><LF> 01.11.2009 12:01:05.110 [TX] - at+cusd=1,"*100#",1<CR> 01.11.2009 12:01:05.130 [RX] - <CR><LF> OK<CR><LF> <CR><LF> +CUSD: 0,"6B7475656C6C657320477574686162656E3A2031302E3030204555522E00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-
Thread
KW SSB-Modulation per DDS möglich?
http://www.mikrocontroller.net/topic/283338 habe ich mal zusammengemalt, wie ich die hardware des RX machen würde. Ganz einfach den http://www.b-kainka.de/iqrx2.htm nachgebaut, aber mit einem LC-Filter und "differenziellem" Haltekondensator. Es handelt sich übrigens hier nicht um ein re-engineering
entfällt weil es zu aufwändig wird, die einfache Version des Si570 kann auch nur 160 MHz -> 40 MHz RX - ebenso entfällt der Duplexbetrieb, also keine Relaisfunktion - in Hardware soll nicht enger als 2x5 kHz (-3db) gefiltert werden, damit z.B. ein Bandbereich für schmalbandige Betriebsarten gescannt
-
Thread
RFM22B Beispiel Projekt gesucht.
Register überfordert ;-) Für mein Projekt sollte ich Daten die ich an einen Atmega 328 schicke (I2C) über das RFM22B Modul an ein anderes RFM22B Modul welches am PC hängt senden. Das ganze bidirektional. Leider programmiere ich erst seit ca 8 Monaten. Und aus den Datenblättern werde ich einfach
angeschaut und die Werte übernommen. Folgende Einstellungen Rb 40 Deviation 100 Modulation FSK RX/TX Carrier 869 Die Senderoutine wird alle 100ms aufgerufen. Also nicht schnell. Trotzdem verliehre ich von 200 Paketen 1-2.
-
Thread
PIC16F18426 UART-Pins invertieren
2 Pins für den RX-Trakt, weil im BAUDxCON das Bit 5, was für die RX-Invertierung in anderen PICs verwendet wird, nicht benutzt ist. MfG Wuff_W
Bit time -> Stop Bit time -> (Idle) Jede time lässt sich beliebig oversamplen. So dass man z.B. bei Jitter auf der RxD das ganze auch verwerfen kann.
-
Thread
Probleme mit RS232-Sniffer
Max schrieb im Beitrag #7731930: > Ich versuche mit 2 Prolific USB-to-COM Adaptern die RS-232 > Kommunikation(Rx und Tx, daher 2 USB-to-COM´s) zwischen Host und Target > zu sniffen. Host und Target sind auch mit einem USB-to-COM Kabel > verbunden. du bist sicher bei beiden Sniffer Adaptern jeweils die RX Leitung(Pin2) und nicht TX angeschlossen zu haben?
-
Thread
UART @ 1MBit -> over-/undershoots beseitigen
Auffälligkeit waren Over-/Undershoots. Ich frag mich nun wie ich die wegbekomme. Ich habe 27R in Rx/Tx gesetzt, ohne Wirkung. Ebenfalls wirkungslos blieb die Terminierung von Rx/Tx mit jeweils 2k2 nach VCC & GND. Ein Versuch mit einem FT230X brachte das gleiche zutage :/ Würden Kondensatoren etwas
den 5V aus USB versorgt, ein LDO knüppelt auf 3.3V runter. Der Controller verträgt auch 5V-Pegel am Rx, also habe ich VIO vom FTDI in allen drei Varianten probiert: 1) VIO = 5V-USB 2) VIO = 3.3V-LDO 3) VIO = 3.3V-FT232 > Jeweils die TX könnten mit R = 27R in Reihe und dann C = ca. 33pF nach >
-
Thread
Wer hat Erfahrung mit HAP?
hap-configserver/lib/hapConfig.pm line 134 on managescheduler/setSchedules [debug] Found sessionid "30b2b707453d99aafc2707d66d95f821ad1ef837" in cookie [debug] Restored session "30b2b707453d99aafc2707d66d95f821ad1ef837" [debug] Role granted: Add_Schedules [error] DBIx::Class::ResultSet::create(): DBI
/hapConfig.pm line 134 on managescheduler/setSchedules [debug] Found sessionid "30b2b707453d99aafc2707d66d95f821ad1ef837" in cookie [debug] Restored session "30b2b707453d99aafc2707d66d95f821ad1ef837" [debug] Role granted: Add_Schedules [error] DBIx::Class::ResultSet::create(): DBI
-
Thread
CQ SAQ -.-. --.-.- --.- Grimeton wieder auf Sendung
Wellen einige Meter tief ins Salzwasser eindringen). Das war in den 20er Jahren High-Tech. Z.B. Luftspalt Rotor Stator 0,4 mm. Und das bei 35,245 U/sec. Der Rotor läuft außen mit etwa 2/3 Schallgeschwindigkeit! Imposante Sendeantenne: eine Alexanderson-Antenne, zwölf 2,2 km lange Cu-Drähte,
Durchweg schönes Signal in Berliner Citylage, 10...20 dB über local noise, sowohl mit der Aktivantenne nach DB1NV als auch einer anderen geschirmten Loop aus Coax (etwa 3 dB weniger Störungen). RX leider wenig standesgmäß 2 x SDR nach N2ADR, aber wenigstens
-
Thread
Pic18f4580 OBD Canbus kommunikation
CAN_BRG_WAKE_FILTER #define CAN_BRG_WAKE_FILTER FALSE #endif #ifndef CAN_BRG_PHASE_SEGMENT_2 #define CAN_BRG_PHASE_SEGMENT_2 8 #endif #ifndef CAN_USE_RX_DOUBLE_BUFFER #define CAN_USE_RX_DOUBLE_BUFFER TRUE #endif #ifndef CAN_ENABLE_DRIVE_HIGH #define CAN_ENABLE_DRIVE_HIGH
BRGCON2.sam=CAN_BRG_SAM; BRGCON2.seg2phts=CAN_BRG_SEG_2_PHASE_TS; BRGCON3.seg2ph=CAN_BRG_PHASE_SEGMENT_2; BRGCON3.wakfil=CAN_BRG_WAKE_FILTER; */ } Es hat wieder nicht funktioniert. Ich
-
Thread
2 Serial Port gleichzeitig
das Protokoll selbst festlegen kann), könnte man auch einen Ring aufbauen... Also TX von der SPS an RX von PC1, TX von PC1 an RX von PC2 und TX von PC2 an RX von der SPS... Aber wie gesagt, da muss das Protokoll dann für ausgelegt sein - dann funktioniert das aber sehr gut!
festlegen kann), könnte man auch einen Ring aufbauen... Also TX > von der SPS an RX von PC1, TX von PC1 an RX von PC2 und TX von PC2 an RX > von der SPS... Aber wie gesagt, da muss das Protokoll dann für ausgelegt > sein - dann funktioniert das aber sehr gut! Wie und womit kann
-
Thread
Motorola 68000 bzw. 68332: SCI Initialisierung (RS232/Uart)
* The following updates A2 to point to the next Tx BD BTST.B #$05,(A2) ; test Wrap bit BNE.B REINIT2 ; If set, reinit A2 to 700640 ADDA.W #$08,A2 ; else inc A2 by 8 to next Tx
******* * SCC3 interrupt routine: ORG $30500 CLR.L D1 ; clear D1 MOVE.B SCCE3,D1 ; Move SCCE3 status to D1 MOVE.B #$15,SCCE3 ; Clear only BRK, BSY and RX in SCCE3. BTST.B #$2,D1 ; Is BSY set? BNE.B BUSY ; Jump
-
Thread
Gibt es irgendwo brauchbare Infos zu SMI ?
SMI-Antrieb kaufen. Mit zwei Antrieben kann man auch die Konfliktlösung beobachten. Ein Konflikt wäre z.B. wenn zwei Motoren mit der SlaveAdresse 0 vorhanden sind... Dazu habe ich ein TTL-USB-Kabel an der Platine angeschlossen. Ein zweites USB-TTL-Kabel habe ich dann mit dem RX-pin parallel zum RX-Pin
empfangen" wird klappt das so problemlos. Den COM-Port am SMI-Programm einstellen der mit TX und RX-Pin angeschlossen ist. Am Terminalprogramm mit Hexadezimaldarstellung wie z.B. HTerm 2400 8N1 einstellen und sehen was gesendet und empfangen wird... Gruß Ingo
-
Thread
Festspannungsnetzteil 13,8V 10-12 A schwingt breitbandig
Jörg W. schrieb im Beitrag #7515667: > drei 2n3055 als Längsregler ... Den alten 3055er mit den größeren Chips (höhere B-E-Durchbruchspannung) auf einen Kühlkörper thermisch gekoppelt, machte das nicht so viel aus. Richard postete das Innenleben
) eine erfolgreiche Lösung nennen: - ein 4,7nF Folienkondensator zwischen B und C der Gruppe VX2. - und zusätzlich eine Ferritperle auf die Basiszuleitung von V26. Seitdem läuft mein NT ohne "Mucken". Was den Rest der obigen Beschreibungen angeht zur Klarstellung: Die
-
Thread
DMX - kein Empfang
1<<UCSZ10); UCSR1B = (1<<RXEN1)|(1<<RXCIE1); gDmxState= IDLE; uint16_t i; for (i=0; i<sizeof(DmxRxField); i++) { DmxRxField[i]= 0; } DmxAddress = 1; } ISR (USART1_RX_vect) { uint8_
Ich habe A-B getauscht und zusammen mit dem Softwarefehler in der Break Erkennung funktioniert das System nun endlich. Eine Frage ist mir aber noch geblieben: Wieso: Monk schrieb im Beitrag #7680985: > Rx und
-
Thread
PIC16f876A UART Puffer
Byte von SIO wurde empfangen BCF RCIF MOVF RCSTA,W ; Test auf Rx Fehler ANDLW B'00000110' SKIP NZ GOTO i_rxb BCF CREN NOP BSF CREN GOTO i1 i_rxb: MOVF rx_ip
rx_ip,W XORWF rx_op,W RETURN ; liefert empfangenes Zeichen GetChar: MOVF rx_ip,W XORWF rx_op,W SKIP NZ GOTO GetChar ; wartet
-
Thread
Kennt sich jemand mit RS232 aus?
externes Gerät sendet die Daten sofort zurück. Doch, doch, es ist möglich. Ein ISO-9141-Baustein (wie z.B. L9637) beschreibt gleichzeitig auch RxD wenn er auf TxD schreibt. Es gibt keinen Verdrahtungsfehler, denn die Daten die dann vom externen Gerät zurückommen erscheinen NUR auf RxD. Ich habe bereits dass
Gästchen schrieb im Beitrag #2429656: > Doch, doch, es ist möglich. Ein ISO-9141-Baustein (wie z.B. L9637) > beschreibt gleichzeitig auch RxD wenn er auf TxD schreibt. Es gibt > keinen Verdrahtungsfehler, denn die Daten die dann vom externen Gerät > zurückommen erscheinen NUR auf RxD. Ich habe
-
Thread
STM32: SPI - HAL durch eigenen code ersetzen
SPI_CR1_MSTR | SPI_CR1_SPE | SPI_BAUDRATEPRESCALER_64 | SPI_CR1_SSM | SPI_CR1_SSI; g_spi->CR2 = SPI_CR2_DS_0 | SPI_CR2_DS_1 | SPI_CR2_DS_2| SPI_CR2_FRXTH; //8Bit, 8Bit RX threshold [/c] Der Chip ist ein STM32L452. [c] SPI_TypeDef * g_spi = (SPI_TypeDef *)SPI2_BASE; void PerPrint
dataOut, size_t len) { LcdCsOn(); LcdWaitDmaDone(); if (len <= 4) { HAL_SPI_Transmit(&hspi2, (uint8_t*)dataOut, len, 100); } else { printf("A\r\n"); HAL_SPI_Transmit_DMA(&hspi2, (uint8_t*)dataOut, len); printf("B\r\n"); } LcdCsOff(); //TODO: Should be done after DMA
-
Thread
cp2102 usb to uart bridge controller - Pins Belegung
wurde, versuche ich die Pins Belegungen zu verstehen. Sie sehen nämlich so aus: (1) (2) DTR RST RxI 3v3 TxO 5V VCC TxD CTS RxD GND GND ich vermute: RxI <=> RxD TxO <=> TxD VCC <=> 5V GND <=> GND aber was ist mit
sicher sein bevor ich noch einen 2. kapputt mache :). @g457: meinen Sie, es wäre so: RxI <=> TxD TxO <=> RxD ??? Danke Christian
-
Thread
Portieren von Beispielsources
// Enable USART0 TXD/RXD IE1 |= URXIE0; // Enable USART0 RX interrupt P2SEL |= 0x30; // P2.4,5 = USART0 TXD/RXD P2DIR |= 0x10; // P2.4 output direction _EINT(); // Enable interrupts
// Enable USART0 TXD/RXD IE1 |= URXIE0; // Enable USART0 RX interrupt P2SEL |= 0x30; // P2.4,5 = USART0 TXD/RXD P2DIR |= 0x10; // P2.4 output direction // _EINT(); // Enable interrupts
-
Thread
Bascom CRC16 - Ich krieg die Krise.
0" herauskommen. Tut es aber nicht.... Der Programm-Code sieht so aus: [code] Cks = Crc16(rx_telegram(1) , 10) Cks_tx = Rx_telegram(1) Cks_rx = Crc16(rx_telegram(2) , 8) [/code] Der Empfänger gibt z.B. folgendes per Terminal aus: [code] Cks = 5746 Cks_tx = 33491 Cks_rx = 33491 [/code
WordVar > Cks_rx = Crc16(rx_telegram(2) , 4) heissen. Hm. Ich verstehe die Bascom-Hilfe anders. Sei a = Crc16(b , c), dann ist "b" das erste _Element_ zur CRC-berechnung (also ne Word, genauer rx_telegram(1
-
Thread
Antenne für XHDATA D-808
Content B. schrieb im Beitrag #7089384: > Das ist doch eine Amateurfunk-Funzel? Auf jeden... 😎 https://www.amazon.de/XHDATA-UKW-Stereo-Multi-Band-Radio-Lautsprecher-LCD-Anzeige/dp/B077Z2P28F/
mehr als 5/8 der Wellenlänge lang ist, dann hat die Antenne einen höheren Gewinn, als bei 1/4. Der 2 x 1/4 WL lange Dipol ist ein theoretisches Schulbuchbeispiel, ist aber in der Praxiss nicht optimal. Jens B. schrieb im Beitrag #7090407: > Resonanz ist besser Der Dipol mit 2 x 1/4 WL (Verkürzungsfaktor
-
Thread
Beschaltung eines Relais mit Transistor und Kondensator
> Martin Ok. Also, wenn ich den Taster drücke, dann lade ich den Kondensator C auf. Rx ist dazwischen, damit ich beim Tastendruck von 10V nach Masse die Schaltung nicht kurzschließw, wenn der Kondensator voll ist. Und über R_B entlädt sich dann der Kondensator. Den Verbraucher (egal
und nach evtl. über abbrennende Kontakte freuen, wenn er eher ein schwächlicher Typ ist. Von daher Rx mit reinbauen, der Strom auf rel. ungefährliche Werte begrenzt. z.B 100Ohm, was nur max. 100mA zuläßt. Die Zeitkonstante zum Aufladen ist dabei noch immer ziemlich niedrig.
-
Thread
1xTX auf 2xRX ATMEGA162
Ich habe einen ATMEGA162 mit 2 UARTS und dazu ein LIN-CHIP der mir vom BUS Daten liefert. Der Sender vom LIN-Chip also TX wollte ich die RX von UART0 und an RX von UART1 zusammen legen, sodas ich über beide die gleichen Daten empfangen
Eigentlich ist es ja so ich habe einen ATMEGA162 mit 2UARTS. An einen UART schliesse ich den LIN-Chip an (UART0 RX->TX und TX->RX), an den anderen kommt ein CP2102 als Virtueller COM-Port (UART1 RX->TX und TX->RX). Damit ich nicht ich nicht intern die das
-
Thread
1.8V zwischen GND und VCC nach anschluss von FT232
? Folgende Zustände: AVRISP angeschlossen, RX und TX verbunden: led leuchtet. AVRISP nicht angeschlossen, RX und TX verbunden: led leuchtet nicht. AVRISP nicht angeschlossen, RX und TX verbunden und zusätzlich GND vom FT232 an GND vom tiny: led
@Yalu: Yap, hatte schon einige Boards die über RX/TX von einem Max232 ab und an mal kurz anliefen. Ähnliches kann auch bei 2 per SPI/I²C verbundenen Boards passieren. Deshalb auch die Frage nach dem Schaltplan, gibt immer mal wieder ein paar Verkabelungsfehler
-
Thread
Mega8 funktioniert ohne Versorgungsspannung :)
Stecknetzteil rausziehe, funktioniert es auch. Ich bekomme Daten an den PC über das USB Kabel. Ich habe 2.3V zwischen VCC und GND gemessen, es ist genug damit Mega8 läuft. Die Spannung kommt vom USB, über TX und RX pins, zum VCC. Ich kann auch LED über Widerstand zwischen VCC und GND leuchten lassen
Problem gelöst, für alle die den UB232r von z.B. RS nutzen möchten, die PIN-Belegung ist nicht entsprechend den Anschlüssen, sondern die Bezeichnung beschreibt den PIN vom FD232rq der auf die Anschlüsse gelegt ist. Will sagen: RX vom MC muss an TX
-
Thread
WLAN mit mehr als 100mW Sendeleistung?
Punkt-zu-Punkt-Verbindungen mit Anmeldung bei der BNetzA auch höhere Leistungen verwenden, aber im 2,4-GHz-Bereich wär mir das noch neu.
benutzen und einen guten Standort zu suchen Richtig. Man kann extrem viel gewinnen wenn man nur an den RX-Zweig high-gain Antennen anschliesst. Und das dann auf beiden Seiten der Repeaterstrecke. 18dBi Yagis oder gleich nen Reflektorspiegel. Geht zB. bei einer Fritzbox super einfach. Den RX-TX Switch bypassen
-
Thread
PCB Schaltplan
. 2. Schutzbeschaltung und Peripherie, Kondensatoren, Schutzdioden, Drosseln,... Und 2. ist in der Regel aufwändiger wie 1., spätestens dann wenn die Signale nach extern gehen. Ja, ich weiß, das sieht
mehrdeutig oder verwirrend. Es hilft da auch Signalrichtung anzugeben, also nicht einfach nur RX oder TX, sondern RX-In und TX-out, weil das erst beim Studieren des uC wirklich klar ist. Was den uC betrifft, ist es zweckmässig das Schaltbild-Symbol so zu organisieren und Pins anordnen, daß man
-
Thread
if else wird beides gleichzeitig ausgeführt
(1<<PB2); // <---- Toggle LED 3 // } } else { RX_CRC_SUM += RX_Byte; } RX_Frame_len--; } } [/c] Nun ist es so dass LED 1 und LED 3 öfters gleichzeit
(1<<PB2); // <---- Toggle LED 3 // } } else { RX_CRC_SUM += RX_Byte; } RX_Frame_len--; } flag = 1; } [/c]
-
Thread
Planung eines RC Cars
doch bitte nur für dich. Nicht jeder hier ist zu blöd, aus der > Skizze etwas zu entnehmen. Z.B., dass der Uno/Nano direkt aus 2s versorgt wird?
Ralf X. schrieb im Beitrag #8025273: > Z.B., dass der Uno/Nano direkt aus 2s versorgt wird? Und? Wäre es plötzlich korrekt ihn direkt aus 2s zu versorgen, wenn man es in nem normgerechten Schaltplan zeigen würde?
-
Thread
Ecan am dspic33E will nicht
DMA1STAL = adMsgBuf & 0xFFFF; DMA1STAH = adMsgBuf >> 16; DMA1CONbits.CHEN = 0x1; /* RX Filter */ /* Select Acceptance Filter Mask 0 for Acceptance Filter 0 */ C1FMSKSEL1bits.F0MSK = 0x0; /* Configure Acceptance Filter Mask 0 register to mask SID<2:0> * Mask Bits (11
register in RAM */ C1CTRL1bits.WIN = 1; /* RX Filter */ /* Select Acceptance Filter Mask 0 for Acceptance Filter 0 */ C1FMSKSEL1bits.F0MSK = 0x0; /* Configure Acceptance Filter Mask 0 register to mask SID<2:0> * Mask Bits (11
-
Thread
Option B41 bei einer CMU200 nachrüsten.
READ EEPROMs TO DISK * ;******************************************** eep_e2b RXTX -idx0 eep_rxtx.bin eep_e2b RXTX -idx1 eep_rxt2.bin eep_e2b COR -idx0 eep_cor.bin eep_e2b COR -idx1 eep_cor2.bin eep_e2b RXIF3 -idx0 eep_rxif.bin eep_e2b RXIF3 -idx1 eep_rxi2.bin eep_e2b AUC -idx0 eep_auc.bin eep_e2b AUC -idx1 eep_auc2.bin eep_e2b ADC -idx0 eep_adc.bin eep_e2b ADC -idx1 eep_adc2.bin eep_e2b FE eep_fe.bin eep_e2b AUXTX eep_auxt.bin eep_e2b IQIF eep_iqif.bin eep_e2b
-
Thread
2. Serielle am ATmega328P mit 115200
Atmega328PB hat zwei serielle Schnittstellen. Dann braucht man aber ein Baudratenquarz für die 115,2k, z.B. 7,3728MHz.
Atmega328PB hat zwei serielle Schnittstellen. > > Dann braucht man aber ein Baudratenquarz für die 115,2k, z.B. 7,3728MHz. Genau. 115Kb mit 8MHz und Hard-Uart ist sowieso ein ganz schlechter Ansatz - Fehler liegt zwischen +8,5% beim U2x=0 und -3.5% beim U2x=1. Das funktioniert nie und nimmer
-
Thread
SD-Karte wird nicht erkannt NetIO
ich in der config.h folgende Portinitialisierung (Port D) vorgenommen: [c] // Port D-0 = USART 1 RxD // Port D-1 = USART 1 TxD // Port D-2 = USART 2 RxD // Port D-3 = USART 2 TxD // Port D-4 = SD-Karte Pin 2 - SPI_DI Input // Port D-5 = SD-Karte Pin 5 - SPI_Clock Output // Port D
SD und Transcend SD, alle 1GB groß) Das ist jetzt meine Config: [c] // Port D-0 = USART 1 RxD // Port D-1 = USART 1 TxD // Port D-2 = USART 2 RxD // Port D-3 = USART 2 TxD // Port D-4 = SD-Karte Pin 2 - SPI_DI Input // Port D-5 = SD-Karte Pin 5 - SPI_Clock Output // Port D
-
Thread
Probleme beim Debuggen mit SW4STM32 und und F7Disco
Pin GPIO_PIN_5 #define LCD_B6_GPIO_Port GPIOK #define LCD_B4_Pin GPIO_PIN_12 #define LCD_B4_GPIO_Port GPIOG #define SAI2_SDB_Pin GPIO_PIN_10 #define SAI2_SDB_GPIO_Port GPIOG #define LCD_B2_Pin GPIO_PIN_14 #define LCD_B2_GPIO_Port
SAI2_SDA_Pin GPIO_PIN_6 #define SAI2_SDA_GPIO_Port GPIOI #define LCD_B5_Pin GPIO_PIN_4 #define LCD_B5_GPIO_Port GPIOK #define LCD_BL_CTRL_Pin GPIO_PIN_3 #define LCD_BL_CTRL_GPIO_Port GPIOK #define DCMI_VSYNC_Pin
-
Thread
Bootloader auf Atmega328 PCB
Contents/Java/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -P/dev/cu.usbmodem141101 -b19200 -Uflash:w:/private/var/folders/x1/01k3w63s0bx567bd7zl218280000gq/T/AppTranslocation/50355F96-98A2-4588-8629-A863A14A26AA/d/Arduino.app/Contents/Java/hardware/arduino/avr/bootloaders/atmega/ATmegaBOOT
, Hat es einen bestimmten Grund, warum am Schaltplan bei JP1 die Pin Reihenfolge GND-GND-VCC-TX-RX-DTR ist, aber auf deiner Platine GND-GND-VCC-RX-TX-DTR beschriftet ist? Kann es sein, dass du einfach RX und TX vertauscht hast? Würde auch zur Fehlermeldung "Programmer ist not responding" passen.
-
Thread
10mA Konstantstromquelle 3,3V
Also einen 330 Ohm Widerstand in Reihe. Damit wäre der Strom auf max. 10 mA begrenzt und dann R2 berechnen: R2 = R1 * U2 / (Ub - U2) Hört sich gut an. Mit nem 0,1% Widerstand sollte ich doch ne gute Genauigkeit hinbekommen, oder?
#3181520: > Das bedeutet ich messe einmal die Spannung über beide Widerstände und > einmal über den Rx und berechne dann den Wert des Widerstandes? > Oder jeweils die Spannung über Rref und Rx und setze diese dann ins > Verhältnis? Das ist egal. Du kannst die Spannungen über Rx und Rref mit 2 Differentialeingängen
-
Thread
RS485 ohne Treiber-IC unmöglich?
die Differenz zwischen D+ und D-. Er vergleicht quasi D+ und D-. Ist D+ HIGH und D- LOW hatst du z.B. 5V - das wäre bei 5V Versorgungsspannung der Fall. Beim Umgekehrten Fall -5V. Der Sender muss mindestens +-2V heraustreiben. Der Empfänger muss +-0,2V erkennen, d.h. >-0,2V = LOW, <+0,2V = High
Timings stimmen. Meine Schaltung sieht so aus: Attiny13A-Seite DMX-Empfänger-Seite PORT B2 am AVR --------------- 485+ GND --------------- 485- GND --------------- GND Danach lege ich folgende Pegel an B2 an: (Sequenz) HIGH (Idling...) Transfer Start: 120us
-
Thread
Frage zu MAX3485 Modul
Pin2+3+EN sind verbunden, habe ich auf GND gelegt. 120 Ohm zwischen A und B, A mit 4k7 pullup, B mit 4k7 pulldown. VCC sind 3V3. Funktioniert leider nicht. A und B habe ich getauscht und auch RX/TX
Richtung des Treibers mit einem Ausgangspin am uC umschaltet, kann man auch einen anderen Pin am uC von Rx Eingang auf Tx Ausgang umschalten an den dann beide (R und D) Anschlüsse des Treibers kommmen, und kommt auch mit 2 Pins aus - ohne Zusatzhardware. Ja, ich weiss, nur wenige uC erlauben Tx und Rx
-
Thread
STM32L1 Bootloader (USART)
ist 57600 baud, 8E1, LSB first, Polarität wie im Anhang. Flashloader macht das aber mit 115200B. Anbei 2 Bilder. P.S. Und die Zeit zwischen Antwort und 2-tem Req.
Laut AN2606 sind pullups an RX und TX empfohlen. GND auch verbunden? Mal schreibst Du USART1, mal USART2. Was denn nun? Hast Du auch die richtigen Pins erwischt?
-
Thread
Mikrocontroller: Funktion strstr
TO sucht nur das Vorkommen, nicht die Gleichheit. pseudo-code: [if (vorhanden)] != [str1 == str2]
nehme ich das nicht übel. Sinn des Ganzen ist eine geordnete Verarbeitung von Kommandozeilen, wo z.B. auch stehen könnte: [c] if (match("Ottokar",&Cpt)) { x = GetLong(&Cpt); b = match("ein",&Cpt); DoOttokar(x, b); return; } [/c] Und auch dieses Beispiel ist nur ein Beispiel
-
Thread
PIC32MX795F512L UART-Nummern
bezeichnet, erstens einmal gibt es beim oben angegebenen PIC keine Uart0, sondern diese heißen U1A,U1B,U2A,U2B,U3A,U3B. Durch die Port-Einstellungen konnte ich jedoch herausfinden dass es sich um die RF4 (RX) und RF5 (TX) handelt. Nun möcht ich ein weiteres Beispiel testen und hier wird der UART1 verwendet
bezeichnet, erstens einmal gibt es beim oben angegebenen PIC keine > Uart0, sondern diese heißen U1A,U1B,U2A,U2B,U3A,U3B. Durch die > Port-Einstellungen konnte ich jedoch herausfinden dass es sich um die > RF4 (RX) und RF5 (TX) handelt. Also UART0 finde ich tatsächlich sehr merkwürdig, denn normalerweise
-
Thread
DS18B20 gibt keine Daten her
Tx_one_wire_bus; // TRIS is output(0) Port_one_wire_bus = 0; // genarate low pluse for 2us delay_us(2); Rx_one_wire_bus; // TRIS is input(1) release the bus Nop(); if (Port_one_wire_bus != 0) result |= 1 << i; delay_us(60); // wait
Man könnte auch mittels I2C über einen DS2482 den DS18B20 betreiben. Damit braucht man sich nicht um die Einhaltung von Zeiten kümmern (außer 750ms)