-
Thread
Routing CP2102N zu USB-C
angesehen. Sie haben es wie im Bild „routing2.png“ gemacht. Ich habe mich dagegen entschieden, weil A6 und B7 die gleiche Länge hatten wie B6 und A7. Der Schaltplan entspricht genau den Empfehlungen im Datenblatt, mit dem SP0503BAHTG zum Schutz
findet keine Kommunikation mehr statt. >Du solltest auf der Client-Seite vom USB-C nicht die USB2 Signale >brücken. Wo ist dort etwas gebrückt? Dp ist ausschließlich mit Dp verbunden und Dn mit Dn. Damit der USB-Stecker für A6 und A7 sowie B6 und B7 funktioniert, sprich der USB-Stecker beidseitig
-
Thread
Probleme mit Avrdude
, skipping Using Port : /dev/ttyS0 Using Programmer : stk500v2 avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14] avrdude: ser_recv(): programmer is not responding avrdude: stk500_2_ReceiveMessage(): timeout avrdude: Send: . [1b] . [01] . [00] .
skipping Using Port : /dev/ttyUSB0 Using Programmer : stk500v2 avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14] avrdude: ser_recv(): programmer is not responding avrdude: stk500_2_ReceiveMessage(): timeout avrdude: Send: . [1b] . [01] . [00]
-
Thread
PIN und PORT-Konstanten eigener Bibli übergeben
DDR_A4 #define LED_RD PORT_A5 #define LED_RD_oe DDR_A5 #define xADC0 PORT_B0 #define xADC0_oe DDR_B0 #define SCK PORT_B1 #define SCK_oe DDR_B1 #define MOSI PORT_B2 #define MOSI_oe DDR_B2 #define xDAC0 PORT_B4
weak)) /* * empty default hooks, * application can override these */ WEAK void uart_on_tx_begin(void) {} WEAK void uart_on_tx_end(void) {} // und weiter unten irgendwo im Interrupt (sinngemäß) if (fifo_get(tx_fifo, &b)) { if (state == RX) { uart_on_tx_begin
-
Thread
485 Verbinung Wechselrichter -> Überwachung
Adriges Kabel (kein Netzwerkkabel) Die Pins am RS485 Ausgang am Wechselrichter heissen Pin 1 = TX_RS486A Pin 2 = TX_RS485B Pin 5 = GND Beim Überwachungsgerät heissen die Pins Pin 10 Data+ Pin 11 24V Pin 12 GND Pin 13 Data- Ist dann folgende Verbindung richtig? TX_RS485A auf Data+ und TX_RS485B auf Data- GND würde ich nicht verklemmen. (Wenn es nicht geht einfach mal A/B tauschen?) Danke + MfG Wolfgang
-
Thread
UART RX Interrupt Problem
Ausgang (TXD) } void UART_Init (void) { UBRR0 = BAUD_Wert;//Baudrate setzen UCSR0B |= (1<<RXCIE0) | (1<<RXEN0) | (1<<TXEN0);// RX, TX und RX Interrupt aktivieren UCSR0C = (1<<UCSZ01) | (1<<UCSZ00);// 8 Bit Paketgröße einstellen } int main(void) { while(1)
UART_Daten = UDR0; } void UART_Init (void) { UBRR0 = BAUD_Wert;//Baudrate setzen UCSR0B |= (1<<RXCIE0) | (1<<RXEN0) | (1<<TXEN0);// RX, TX und RX Interrupt aktivieren UCSR0C = (1<<UCSZ01) | (1<<UCSZ00);// 8 Bit Paketgröße einstellen } int main(void) { DDRB |= (
-
Thread
CAN Gateway mit AVR möglich?
soll Menschen geben (mich) denen das völlig egal ist :) Also, einfacher Test, Kanal A und Kanal B an Tx angeschlossen und siehe da, absolut Asynchron :( Also ist das Oszilloskop schuld! Herbert
Gibt es eine Möglichkeit, dass ich zb. 2 MoBs verwende, bei denen ich bei beiden keinen Filter aktiviere, also alle IDs genommen werden, und das er automatisch, wenn 1 MoB noch nicht freigegeben ist, in den nächsten schreibt? Danke Herbert
-
Thread
Alternativen beim AVR-Vernetzten?
50cm ist nicht der absolute Grenzwert. Auch für TWI gibt es Treiberbausteine für lange Leitungen (z.B. P82B96). Falls Du aber Deine Slaves mit Soft-UARTs betreiben willst, da würde ich eher TWI über 2m riskieren oder alles mit einem Controller erledigen. Das Uboot soll ja auch wieder auftauchen ?
paar millisekunden ein strom von 5-10mA fliessen, das ist betriebssicher. die baudrate runter auf z.b. 2400 baud, 10nf kondensatoren gegen gnd, damit machst du die signalflanken etwas weicher, aber sehr unanfällig gegen störungen. 2. das protokoll kann doch so aussehen: ein proc. macht den master, die
-
Thread
XMega USART Probleme
//D2-TX als Ausgang definieren PORTD.OUTSET = PIN3_bm; //Ausgang auf High setzen PORTD.DIRCLR = PIN2_bm; //D-RX als Eingang definieren PORTD.DIRSET = PIN1
Hi >PORTD.DIRCLR = PIN2_bm; //D-RX als Eingang >PORTD.DIRSET = PIN3_bm; //D2-TX als Ausgang ist unnötig. Datenblatt: CTRLB – Control register B Bit 4 – RXEN: Receiver
-
Thread
[AVR] One-Wire UART
Wenn du TXD und RXD nicht über z.B. Dioden entkoppelst, bleibt dir nur der 2. Ansatz, denn des Freigeben des Sendeteil überschreibt die Portfunktion und macht TXD zwangsweise zu einem Ausgang. Zitat aus dem ATMega8 Datenblatt: > When
Matthias Sch. schrieb im Beitrag #3173254: > Wenn du TXD und RXD nicht über z.B. Dioden entkoppelst, bleibt dir nur > der 2. Ansatz, denn des Freigeben des Sendeteil überschreibt die > Portfunktion und macht TXD zwangsweise zu einem Ausgang. Zitat aus dem > ATMega8 Datenblatt
-
Thread
Peter Danneggers Bootloader (fastboot) für AVR-GCC-Toolchain
0b00111100000000 // (0x0F00) 2'nd boot block size is 256W #define THIRDBOOTSTART 0b00111000000000 // (0x0E00) third boot block size is 512W #define LARGEBOOTSTART 0b00110000000000 // (0x0C00) largest
Studio Libs\Fast Boot\fastboot-2.9-140709\fastboot-2.9" -f "Makefile" -B make: Entering directory `E:/Projekte/__Atmel Studio Libs/Fast Boot/fastboot-2.9-140709/fastboot-2.9' ./_conv.awk m128def.inc | gawk '/PAGESIZE|SIGNATURE
-
Thread
ATMega8 an Serieller SS sendet Müll
Hmm vll liegt es ja auch daran, wie ich das miteinander verkabelt habe?! Also µC -- PC TxD RxD RxD TxD GND GND VCC CD (Carrier Detect) sollte doch soweit richtig sein, vor allem da der PC ja auch was empfängt
Nur noch eine ganz peinliche Frage, wie hast du denn RX und TX verbunden?
-
Thread
Kleinste Signale schalten, welche Relais?
wie TX2 tabu. Wie gesagt, für kleine Ströme (und damit meine ich nicht nA) kenne ich auch nur Reed Relais. Da hat man normalerweise auch keine Probleme mit Offsetspannungen.
mV betragen was ungut für mich ist, führt beim umschalten zum knacken. Es gibt spezielle Typen, z.B. die BT Serie: https://standexelectronics.com/viewer/pdfjs/web/viewer.php?file=https%3A%2F%2Fstandexelectronics.com%2Fwp-content%2Fuploads%2Fdatasheet_reed_relay_BT.pdf Ich habe aber noch einen
-
Thread
FTDI 3,3v Probleme
und dann an den Pic. Die spannung stimmt. Jetzt möchte ich meine Werte von den angeschlossenen I2C modulen per Uart zum PC schicken und HIER kommt nur blödsinn an. FTDI Verbindung geprüft RX & TX zusammen gestecket und über den Wandler mit Putty signale geschickt. FUNKTIONIERT Die Baudraten
Zum ersten: Wenn die PIC Architektur eine andere Byte Order hat als der PC musst Du das Word (2 Bytes) vor dem Konvertieren noch umsortieren... z.B. : uint8_t feucht_h, feucht_l; feucht_l = feucht & 0x00ff; feucht_h = (feucht >> 8) & 0x00ff; // Das & ... kann weggelassen werden feucht
-
Thread
Wieso Herdanschluß mit 3 Sicherungsautomaten statt einem für 3 Phasen?
geschoben werden können. Referenz: https://www.elektropraktiker.de/ep-2007-05-378-379.pdf?eID=tx_nawsecuredl&falId=7848&hash=d71b2fced57b8263caf1c1ef5852a096
man das genaue Gegenteil publiziert: https://www.elektropraktiker.de/ep-2004-08-614-614.pdf?eID=tx_nawsecuredl&falId=6745&hash=1c6203c5a532183b213b9075293cd8c2 Mit Begründung unter Bezug auf DIN VDE 0100-460 und DIN VDE 0100-537: Wichtig ist die Festlegung im Abschnitt 537.2.4 in [5]. Danach sollte
-
Thread
Atmega328p in Sleep und mit Watchdog wecken
sekunden++; array[0]=sekunden; array[1]++; tx_length=2; rfm_transmit(array, tx_length); } int main( void ) { wdt_enable(WDTO_8S); rfm_init(); while(1) { todo(); sleep_now(); } } [/c]
array[1]++; tx_length=2; rfm_transmit(array, tx_length); } int main( void ) { // watchdog konfigurieren // zunaechst Schutz des Registers aufheben gemaess Datasheet WDTCSR = (1 << WDCE)|(1 << WDE
-
Thread
LIN to RGB - Hilfe gesucht
Bus-Signal TX und RX für die uC macht. Da gibts dann auch welche, die gleich noch den Spannungsregler drin haben, um aus den 12V dr Busspannung 5V oder 3.3V für den uC zu machen. Dahier ist z.B. so einer: https
Dann wirst Du den passenden LIN-Standard brauchen. Weißt Du, ob Dein Fahrzeug LIN 1.3 oder LIN 2.x benutzt? Danach richtet sich auch z.B. die Prüfsummenberechnung. Das mal so ganz kurz. fchk
-
Thread
RaspberryPi per UART zum AVR
1) Betreibe den AVR mit 3,3V und spar dir die Anpassung 2) AVR mit 5V: Raspi -> AVR direkt vom AVR Tx über 1kOhm Widerstand an Raspi Rx und von dort eine Z-Diode 3,3v gegen Gnd.
der Z-Diode nimmt du 5 Stück 1N4148 und schaltest die in Reihe, und in Leitrichtung (Anode an die TX Leitung nach dem R, Kathode an Masse). Allerdings ist das vermutlich gar nicht nötig, wenn der UART Eingang Schutzdioden hat und du mittels deines R für geringen Strom sorgst. 2k2 bis 4k7 sind da schon
-
Thread
Daten in mehrere Register schreiben
und bit 16-28 zum standard identifier. jetzt soll in bit 0-8 ein befehl stehen. Der Befehl ist z.B. 11110000 das ist Bit 0 und Bit 1 in C1TX0EID, sowie Bit 10-15 in C1TX0DLC dazu meine zwei Fragen möchte ich ein ganzes Register beschreiben, schreibe ich [code] C1TX0DLC = 0xC000; [/code
C1TX1PRIObits __attribute__((__sfr__)); extern volatile unsigned int C1TX2PRIO __attribute__((__sfr__)); extern volatile CxTXxPRIOBITS C1TX2PRIObits __attribute__((__sfr__)); [/code] jetzt kann ich
-
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
Hilfe bei VHDL-Modul für ADC128S022 im DE0-Nano Board
www.lothar-miller.de/s9y/categories/17-SPI Um die Sache zu vereinfachen, empfehle ich dir den Modus im Bild 2 auf Seite 8. Dort wird mit CS nach jedem Frame neu synchronisiert. > sowie dein SPI drauf wartet also "tx_done" z.B.? Mein SPI /generiert/ das tx_done für die Ansteuerung durch ein /übergeordnetes
Fehlerursache: du treibst tx_reg gleichzeitig aus 2 Prozessen.
-
Thread
RS232 - RS485 Schaltplan
invertiert ... ok dann ist der Umweg da klar Aber das senden selber hatte ich mir so erklärt. TX Low --> DE/Re inv Low --> A und B Hifh imp --> A High (5V) B Low ( 0V ) wegen R4 und R5 TX High --> DE/RE inv High und D Low-->A Low B High Somit wird zwar nicht elegant über den 75176 gesendet
den 75176 rein zw empfängt von ihm. Da beide Signale vom MAx232 invertiert werden muß man die A/B Leitung des RS485 Busses tauschen. Die Steuereingänge vom 75176 werden von einem NE555 als Monoflop bedient und 20 bit gehalten was dann bei 9,6 / 19,2 2 bzw 1 ms ist . Die Kommunikation läuft
-
Thread
KSZ8041 Ethernet Phy besitzt keinen TX_ER (transmit error) Eingang
Marc P. schrieb im Beitrag #3538626: > DP83848I und der hat auch kein TX-ER. Interessant. > Kannst Du vielleicht 2 KSZ8721BL brauchen? Die vergammeln bei mir. Der hat auf Pin 14 das TX-ER :-) Aber vielen Dank. Ich bin grad erst am Board entwerfen, bis das alles
Mit dem TX_ER kann man bewusst Fehlersignale auf der Leitung generieren, die der Empfänger dann als RX_ER an seinen MAC weitergibt. Man kann damit z. B. Übertragungen kontrolliert abbrechen. Normalerweise
-
Thread
2 Serial Port gleichzeitig
Griff hat (also 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!
-
Thread
1-Wire und non-blocking code (state machine)
blockierend" geschrieben ist, können einem irgendwelche ISRs derbe ins Timing spucken. Drum: Mit einem 2 Kerne µC mag das günstiger sein. Auch ein 2ter µC(Tiny?), welcher als Koppler zwischen z.B. I2C und OnWire dient, bekommt man das hin. Provokation Was ist mehr Wert, die Arbeit(Lebenswerk?) eines
Schutz. Nebenbei sorgt er selbständig für das korrekte Timing, auch mit Overdrive Speed. Und dank I2C braucht er ggf. keinen einzigen uC-Pin extra. Es gibt auch noch andere 1-Wire Master, z.B. den DS2480 für UART zu 1-Wire, jeder mit eigenen Vor- und Nachteilen: https://www.maximintegrated.com
-
Thread
µC reagiert auf falsche Antwort
ob der BTM einfach nur auf irgendwelche Zeichen reagiert oder wirklich vergleicht. Eine Abfrage z.B. nach dem Passwort (atp?) hat dieser auch nur wirklich dann reagiert, wenn im den Vergleich 'while (Empfangsdaten != '2')' auch die erste Ziffer des Passwortes stand. Also habt vielen Dank.
Kontrolle wieder > auszugeben oder auf ein LCD zu schreiben. Achso, das meinst Du. Könnte ich den TxD vom BTM über ein Pedelwandler auf einen COM-PORT des PC's legen und diesen über ein 2ten Hyperterminal auslesen ???
-
Thread
Atmel Studio kennt viele Befehle aus der io.h NICHT warum?
, das das Arduino UNO Board oder allgemein die Arduino Board nicht dazu in der Lage sind über denn TX/RX(digital pin 1 und 0) Signal zu empfangen und dann weiter zuleiten? Mfg Felix
gibt es zwei Möglichkeiten: 1. Was sagt das Handbuch? https://www.arduino.cc/en/Reference/Serial 2. Wie haben es denn Andere gemacht? https://www.google.de/search?q=arduino+uno+rx+tx Fazit 1: doch, es geht. Fazit 2: Fehlersuche besteht zuallererst aus der Fehleranalyse... > Immer noch kommen
-
Thread
PIC32MX795 und UART4: Kein Interrupt beim Empfang von Zeichen.
_4_VECTOR=49 _UART_5_VECTOR=51 _UART_6_VECTOR=50 _UART_1A_VECTOR=24 _UART_1B_VECTOR=49 _UART_2A_VECTOR=31 _UART_2B_VECTOR=50 _UART_3A_VECTOR=32 _UART_3B_VECTOR=51 Hier ist 1->1A,2->3A,3->2A,4->1B,5->3B,6->2B. Warum ist jetzt die UART4_VECTOR Nummer 49 aber UART_1B
schreiben müssen, denn: pic32-libs/peripheral/uart/legacy enthält nur die Funktionen für UART1 und UART2. >Hier ist 1->1A,2->3A,3->2A,4->1B,5->3B,6->2B. In pic32-libs/include/peripheral/uart/legacy/uart_legacy.h finden sich die Zuweisungen....habe aber das nicht weiterverfolgt
-
Thread
Erstes "richtiges" Projekt
bewegt man Gewehr unweigerlich und damit erhöht sich die Gefahr das das Messgerät bricht. Bilder 1 und 2 lassen m.M.n. erahnen: A. wie spröde das Material ist und B. wie "filigran" die Befestigungsmöglichkeit ist. Auch wenn man das geschmeidigste Silikonkabel verwendet besteht dann immer noch die Gefahr
erwarteten mindestens 3V. Versuche mal einen niedrigeren Pull-Up Widerstand, zum Beispiel 3,9kΩ oder 2,2kΩ.
-
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'
gibt es keinerlei Hinweise darauf, dass der Reader etwas 'verstanden' oder eine eigene Antwort auf tx gesendet hätte. Die Baudrate passt vermutlich wg. der Einstellung trotzdem, aber bislang gibt es messtechnisch keinerlei Schein dafür ;-) Philipp B. schrieb im Beitrag #5563922: > Mein Controller
-
Thread
STM32 lwip UDP Empfang fehlerhaft
,strlen((char*)data), PBUF_RAM); //ethTxBuffer_p = pbuf_alloc(PBUF_TRANSPORT, sizeof(clientMagicPacket_c), PBUF_RAM); if (ethTxBuffer_p == NULL){} memcpy(ethTxBuffer_p->payload, data, sizeof(data)); //memcpy(ethTxBuffer_p->payload
*/ MPU_InitStruct.Enable = MPU_REGION_ENABLE; MPU_InitStruct.Number = MPU_REGION_NUMBER2; MPU_InitStruct.BaseAddress = 0x30040000; MPU_InitStruct.Size = MPU_REGION_SIZE_256B; MPU_InitStruct.SubRegionDisable = 0x0; MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL0; MPU_InitStruct.AccessPermission
-
Thread
UART TX mit Interrupt?
welchen AVR Du benutzt, somit ist der Code jetzt etwas allgemeiner gefaßt. Gruß Marcus char tx_buffer[82]; char tx_send = 0; char tx_end = 0; void init_UART(void) { //Parameter entsprechend Datenblatt einstellen! } void init_transmission(void) { tx_send = 0; //Die Position, die gesendet werden soll, zum //start erstmal auf Null stellen tx_end = strlen(tx_buffer); // Länge des Buffers ermitteln sei(); //interrupts aktivieren } SIGNAL (SIG_UART_TRANS) { if (tx_send < tx_end) //tx_send ist innerhalb des Datenstrings
-
Thread
STM32 DMA Lookuptable etc.
{ 2, 1, 4, 7, &USART_TX_3_0 }; Peripheral UART_TX_4 = Peripheral{ 1, 1, 4, 4 }; Peripheral UART_TX_5 = Peripheral{ 1, 1, 7, 4 }; Peripheral USART_TX_6_0 = Peripheral{ 2, 2, 6, 5, &USART_TX
{ 2, Register::DMA2[7], Channel5, &USART_TX_6_0 }; Peripheral UART_TX_7 = Peripheral{ 1, Register::DMA1[1], Channel5, nullptr }; Peripheral UART_TX_8 = Peripheral{ 1, Register::DMA2[0],
-
Thread
Datenübertragung über USART0 und USART1
Hi >while(!(UCSR0A & (1<<RXC0)) ); .... > UDR0 = 'b'; >return UDR0; Das kann nicht gehen. UDR0 sind praktisch zwei Register. Beim Scheiben nach UDR0 greifst du auf das 'UDR0' für TX zu. Beim Lesen auf das 'UDR0' von RX. MfG Spess
>habe deine Tipps befolgt und habe versucht, ein Zeichen 'B' im UDRO zu Hast Du nicht. Ist die Zuweisung UDR0='b' überhaupt zulässig?
-
Thread
Modbus RTU Serial Sniffer
ob die Daten die kommen RTU oder ASCII sind. Ich habe zwei Leitungen die ich sniffe (wohl RX und TX). Dies mit einem einfachen CH340 also Serial to USB (COM) Wandler (also 2 Stück je für RX und TX, und diese am RX vom Wandler angeschlossen). Die Bautrate ist 115200, das weiss ich. Ich erhalte ja die
epika schrieb im Beitrag #6663004: > Ich habe zwei Leitungen die ich sniffe (wohl RX und TX). Dies mit einem > einfachen CH340 also Serial to USB (COM) Wandler (also 2 Stück je für RX > und TX, und diese am RX vom Wandler angeschlossen). Modbus RTU/ASCII wird in den meisten Fällen mit
-
Thread
Fumot Tornado 25000 mit LCD -Teardown
= LCD_HEIGHT - 1; LCD_send_CMD_byte(0x29); // Display ON // Column and Row Address Set (2A, 2B) LCD_send_CMD_byte(0x2A); LCD_send_DATA_byte(0x00); // Start high LCD_send_DATA_byte(u8_col_start); // Start low LCD_send_DATA_byte(0x00); // End high LCD_send_DATA_byte(u8_col_end); // End low LCD_send_CMD_byte(0x2B); LCD_send_DATA_byte(0x00); // Start high LCD_send_DATA_byte(u8_row_start); // Start low LCD_send_DATA_byte(0x00); // End high LCD_send_DATA_byte(u8_row_end); // End low // Memory Write
-
Thread
Verknüpfung der Sensordatenabfrage(LTC2498) mit der Funkverbindung(ATmega128RFA1)
; txfrm[0] = len + 3 + 2; txfrm[2] = tx_cnt; trx_frame_write (sizeof(txfrm), txfrm); tx_in_progress = true; TRX_SLPTR_HIGH(); TRX_SLPTR_LOW(); LED_SET
Sorry fuer die Verwirrung [code] txfrm[0] = len + 3 + 2; txfrm[2] = tx_cnt; trx_frame_write (sizeof(txfrm), txfrm); [/code] war totaler Unfug meinerseits, so wird es aber funktionieren: [code] txfrm[2] = tx_cnt; trx_frame_write (len + 3 + 2, txfrm
-
Thread
ATxmega128a1 und RFM70 Problem.
commands const uint8_t PROGMEM RFM70_bank1Init[][5] = { // address data { (0x20|0x00), 0x40, 0x4B, 0x01, 0xE2 }, { (0x20|0x01), 0xC0, 0x4B, 0x00, 0x00 }, { (0x20|0x02), 0xD0, 0xFC, 0x8C, 0x02 }, { (0x20|0x03), 0x99, 0x00, 0x39, 0x41 }, { (0x20|0x04), 0xb9, 0x9E, 0x86, 0x0B }, // b9? f9
commands const uint8_t PROGMEM RFM70_bank1Init[][5] = { // address data { (0x20|0x00), 0x40, 0x4B, 0x01, 0xE2 }, { (0x20|0x01), 0xC0, 0x4B, 0x00, 0x00 }, { (0x20|0x02), 0xD0, 0xFC, 0x8C, 0x02 }, { (0x20|0x03), 0x99, 0x00, 0x39, 0x41 }, { (0x20|0x04), 0xb9, 0x9E, 0x86, 0x0B }, // b9? f9
-
Thread
PIC18f46j50 USART will nicht wie Ich
aber ich versuch das mal auf Blocking umzuschreiben: [c] void UART1Init(void) { BAUDCON1 = 0b00001000; // BRG16 = 1, TX idle low, RX active high SPBRGH1 = 0x00; SPBRG1 = 0xCE; // 76543210 TXSTA1 = 0b00000100; RCSTA1 = 0b00010000; RCSTA1bits.SPEN = 1; Nop
> #pragma code int i=100; void main() { TRISBbits.TRISB2 = 1; // RB2 als Eingang INTCON2bits.RBPU = 1; // Interne PULL UP Disable Open1USART (USART_TX_INT_OFF & USART_RX_INT_OFF & USART_BRGH_LOW & USART_CONT_RX &
-
Thread
Serial Bridge
Zur Erkärung. Es sind zwei RS485 Busteilnehmer. Kein RX und TX sondern A und B bei denen eine ständige Kommunikation läuft. Mal eben sehen wer da sendet ist nicht möglich! Andreas B. schrieb im Beitrag #6460540: > Windows: https://freevirtualserialports.com
Michael schrieb im Beitrag #6463385: > Kein RX und TX sondern A > und B > bei denen eine ständige Kommunikation läuft. Mal eben sehen wer da > sendet ist nicht möglich! Aha - dann willst du also mit deiner Bridge alles was auf A/B erscheint, weiterleiten
-
Thread
Frage zur Betriebsspannung messen
Wire #include <VirtualWire.h> void setup () { vw_setup(1000); // Bits per sec vw_set_tx_pin(3);// ADMUX |= (1<<REFS0); //VCC als Referenzspannung für den AD-Wandler ADMUX |= (1<<MUX3) | (1<<MUX2) | (1<<MUX1); //1.1V Referenzspannung als Eingang für ADC delay(10); //warten
einen Fehler im Code? [Code] void setup () { vw_setup(1000); // Bits per sec vw_set_tx_pin(3);// ADMUX |= (1<<REFS0); //VCC als Referenzspannung für den AD-Wandler ADMUX |= (1<<MUX3) | (1<<MUX2) | (1<<MUX1); //1.1V Referenzspannung als Eingang für ADC delay(10); //warten
-
Thread
ATMEGA32 USART sendet ein Zeichen zuviel
= &ms; //Globalen Pointer auf die ms Variable erstellen //Timer initialisieren OCR2 = cycles_10ms; //Zyklen, die gewartet werden müssen ins Compare Register schreiben TIMSK |= 0b10000000; //Interrupt für Timer2 setzen (bei Compare Match) TCCR2 = 0b00001111; //Timer
Compare Match 1 while(*pt_1 > 0); //Warten bis Zeit abgelaufen //Achtung: TX und RX lösen immernoch Interrupts aus TCCR2 = 0b00000000; //Timer stoppen } //------------------------------------------ //Sendet Daten via USART //Rückgabewerte bedeuten
-
Thread
Atmega 328 RX/TX VCC Unterbrechung /Ärger?
loslaufen würden. Wenn jetzt aber Strom fließt, dann fällt am Bahnwiderstand des P-Kanal-Fets im TX-Pin Spannung ab und die Spannung am TX-Pin bricht ein. Dadurch wird auch die Vcc auf der unversorgten Seite kleiner. DAVID B. schrieb im Beitrag #6872217: > B Der 1Kohm widerstand: > In die TX -
quick & dirty: 1) In die Datenleitung ein Serienwiderstand z.B. 5k 2) Wenn der Stromverbrauch des Empfängersystems zu gering ist und daher noch zuviel Betriebsspannung anliegt: Stromverbrauch durch Widerstand erhöhen: z.B. 1k von + zu - der Controllerversorgung
-
Thread
Arduino Code Upload RX/TX
einen Arduino Uno R3 und habe festgestellt, das ein Uploaden des Codes nicht möglich ist, wenn am RX/TX Port was angeschlossen ist. Ist das normal?
Arduino Uno R3 und habe festgestellt, das ein Uploaden > des Codes nicht möglich ist, wenn am RX/TX Port was angeschlossen ist. > Ist das normal? Welcher Port wird denn für den Upload beim Arduino verwendet? Richtig: der RX/TX-Port. Und dann ist die Frage: was hast du da wie angeschlossen?
-
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
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
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 des UART auf denselben
-
Thread
UART ISR Problem STM32F1
huart5.Instance = UART5; huart5.Init.BaudRate = 115200; huart5.Init.WordLength = UART_WORDLENGTH_8B; huart5.Init.StopBits = UART_STOPBITS_1; huart5.Init.Parity = UART_PARITY_NONE; huart5.Init.Mode = UART_MODE_TX_RX; huart5.Init.HwFlowCtl = UART_HWCONTROL_NONE; huart5.Init.OverSampling
HAL_UART_Init(&huart5) != HAL_OK) { Error_Handler(); } /* USER CODE BEGIN UART5_Init 2 */ /* USER CODE END UART5_Init 2 */ }[/code]
-
Thread
0.5V auf 5V Coaxial Digital zu Toslink
vermutlich etwas robuster, aber mit mehr Stromverbrauch) könnte man auch was mit "echten" Receivern, zB. SN75176A/B nehmen. Aber bei SPDIF wäre das eher Perlen vor die Säue.
Falk B. schrieb im Beitrag #5556090: > Hauptsache geschwätzt die Kernaussage dieses Beitrages
-
Thread
mehrer bits in #define
ich glaube, es ist falsch verstanden worden. ich möchte z.B. der variable PRIO C1TX0SIDbits.SID10_6 und C1TX0SIDbits.SID5 zuweisen. Wie schreibe ich das denn? [code] #define PRIO C1TX0SIDbits.SID10_6 C1TX0SIDbits.SID5 [/code] das ergibt einen error. zusammengesetzt
Johannes schrieb im Beitrag #4119798: > ich glaube, es ist falsch verstanden worden. > ich möchte z.B. der variable PRIO > C1TX0SIDbits.SID10_6 und C1TX0SIDbits.SID5 > zuweisen. Wie schreibe ich das denn? > #define PRIO C1TX0SIDbits.SID10_6 C1TX0SIDbits.SID5 > das ergibt einen error. Es wurde
-
Thread
1.8V zwischen GND und VCC nach anschluss von FT232
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 leuchtet
@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
SD-Karte wird nicht erkannt NetIO
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-6 = SD-Karte Pin 7 - SPI_DO
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-6 = SD-Karte Pin 7 - SPI_DO