-
Thread
LCD Controller für 640x480 LCD mit mega8515
64kB relativ selten sind, und ich daher meist 2x 32kB verwende.
Also die Chips sind:4;OKI m5299b 11300, 4;OKI m5299b 1152, 8; OKI m5299b 1163,2; OKI m5298a 1401, 2; 2; OKI m5298a 1341 das sind die 80poligen smd’s noch sieben andere ich denke das die 4 mittleren die Display Treiber sind
-
Thread
Diskrete Impulsverlängerung am schlauestens aufbauen?
können) Der Rx-Widerstand (CxRx-Glied) hat die nach Datenblatt (Power-Down-Mode) empfohlene Diode zu Vdd hin. Der Kondensator ist direkt an die Masse und nicht an Pin1 des IC angeschlossen. Cx sind 2,2µF. Rx sind
ist. Der Motor hat ne Freilauf-Diode auf der Platine (10A). Die nicht genutzten Anschlüsse des 2. Monoflop hab ich nach dem Datenblatt des CD4538B beschaltet (Reset auf Vdd, TR+ auf Vss, TR- auf Vdd, Cx auf Vss). Das macht die Schaltung: Mal schaltet sie den Motor in der etwa eingestellten Zeit
-
Thread
MAX485 wird sehr heiß
Pegel an A und B: rs485_1: 120 Ohm am Ausgang, mit Ansteuerung rs485_2: 120 Ohm am Ausgang, ohne Ansteuerung rs485_3: Ausgang ohne Last, mit Ansteuerung rs485_4: Ausgang ohne Last, ohne Ansteuerung Man sieht hier
Wenn die ganze Baugruppe passiv ist - also Dein Protokoll nicht "versteht" - könntest Du das DE z.B. mit einem flankengetriggerten retriggerbaren Monoflop an Receiver Output (Pin 1 von K2) anmachen. Du musst dann evtl. nur Dein Protokoll ein wenig anpassen so daß Du am Anfang nen Startbit extra sendest
-
Thread
AVR Webserver und DMX
//250kBaud, 2 Stopbits UCSR0B = (1<<RXEN0)|(1<<RXCIE0); //Empfang und IRQ aktivieren DMX_State_RX = 0; //DMX Empfang startet mit "Leerlauf" } ISR (USART0_RX_vect) { uint8
"Startbyte Empfangen" (2) else {DMX_State_RX = 0;} //ansonnsten DMX Status "Leerlauf" (0) (und wieder alles von vorne) } //Prüfung auf Startadresse erreicht else if (DMX_State_RX == 2)
-
Thread
USB zu Seriell Adapter
Das Problem ist bekannt. Einige Treiber-Versionen werfen den Fehler 10 und gut ist. Mit der Version 2.0.2.1 vom 25.7.2005 läuft es. Bei meinem Bruder haben wir den Marathon erst letztens durch, der Schrott wollte einfach nicht... Edit: Ich glaube, der war das: http://netload.in/dateiB3Bg52O3zI/windowsprolificdrivers.zip.htm
[..] besorge dir einen vernünftigen Adapter mit FTDI Chip, z.B. > DELOCK 61460 bei Reichelt. Dafür macht ebendieser hierzuworkstation in bestimmten Situationen Probleme, namentlich beim 'Bitbanging' [2]. Im 'Normaloszenario' läuft aber auch der problemlos.
-
Thread
uC-OS 2 Port ATmega128 Probleme
. unsigned char uart_getchar( void ) { uint8_t tmptail, err; if (UART_RxHead == UART_RxTail) { // no data available, suspend Task data_cnt = 0; OSSemPend(Uart0_RxSem, 0, &err); } // Calculate buffer index tmptail = (UART_RxTail+1) & UART_RX_BUFFER_MASK; UART_RxTail = tmptail; // Store new index return UART_RxBuf[tmptail]; // Return data } und hier die zugehörige Interrupt Routine #if defined(__AVR_ATmega128__) UCOSISR (USART0_RX_vect
-
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
UART Schutzbeschaltung
Tim wrote: > 1k ist nicht schlecht. > Bei geringen Baudraten auch gerne 2K. Die 1k habe ich jetzt bei ein paar Exemplaren eingebaut. Ach so, meinst du eigentlich jeweils in RX und TX jeweils 1k? Wären dann zusammen ja auch wieder 2k. Im korrekt gesteckten Zustand würde ein R z.B. in der Empfangsleitung ja reichen. Nur wenn man sich mal verstöpselt könnte der dann der TX Port ungeschützt sein. > Zusätzlich solltest du das VCC und TX/RX Pin am Stecker > so kürzen das erst
-
Thread
Schutzwiderstände für RX/TX beim Atmega88?
zu viel Strom zieht. Jedenfalls sind mir schon 2 MCs dabei draufgegangen. Die RX und TX Pins des Atmega sind danach permanent auf high und der Chip verbraucht plötzlich 130mA. Kann man bedenkenlos Schutzwiderstände in die RX und TX-Leitungen hängen
"im laufenden Betrieb" das USB-Kabel an >den FT kann es scheinbar passieren, dass der Atmega88 am RX-Pin zu viel >Strom zieht. Dann stimmt deine Schaltung nicht. > Jedenfalls sind mir schon 2 MCs dabei draufgegangen. Die RX >und TX Pins des Atmega sind danach permanent auf high und der Chip
-
Thread
Probleme mit MSP430 und MMC
unsigned char spiSendByte(const unsigned char data) { while ((IFG2&UTXIFG1) ==0); // wait while not ready / for RX TXBUF1 = data; // write while ((IFG2 & URXIFG1)==0); // wait for RX buffer
Original waren da 2 kB RAM, wobei 1 kB vom MMC-Treiber belegt wird. Der Durchsatz war um 30 kB/s, trotz 8 MHz Quarz, aber viele Messungen wurden nicht gemacht.
-
Thread
Flowcontrol und UART
ich ein Programm das die Leitung abhört. Das erreichte ich indem ich zwei FTDI/USB-UART)-Adapter mit Rx an TX (Adapter1)und RX an RX(Adapter2) verband. Das ist zwar nicht richtig, aber so habe ich es herausgekriegt. 1. Problem Merkwürdigerweise kann ich keinen (hochwertigen) Logic-Analyzer, noch
Andreas V. schrieb im Beitrag #6125917: > Statt 08-0D-84-B7-84-CA-08-01 kommt dann > 07-0D-84-B7-84-CA-08-01 Ack. also (nach Startbit) nur die ersten 4 Bit falsch herum? Mit oder ohne Parity? 0111000001 statt 0000100001 und der Rest perfekt?
-
Thread
2 Bytes tauschen
Mario schrieb im Beitrag #4907217: > wie kann ich in C 2 Bytes untereinander tauschen? Das einfachste ist doch wohl [c] uint8_t tmp = a; a = b; b = tmp; [/c] > Der Hintergrund ist das die Funktion eeprom_read_word aus der #include > <avr/eeprom.h
schrieb im Beitrag #4907244: > so schreibe ich es rein: > eeprom_write_word(EE_ADR_SERIAL_NUM, ucRxBuffer[6] | 256 * ucRxBuffer > [7]); dann dreht es doch dort gleich richtig. [c] uint16_t tmp = ucRxBuffer[6] << 8 | ucRxBuffer[7]; eeprom_write_word(EE_ADR_SERIAL_NUM, tmp); [/c]
-
Thread
Störungen auf einer RS485 Übertragung
Schema beidseitig mit 120 Ohm abgeschlossen (auch schon verschiedenes probiert) - Leitungen kürzer als 2 Meter Was ich schon gesehen habe, dass zwischen VCC und A und B und GND je ein 560 Ohm Widerstand drin ist. Macht das Sinn? Habe ich auch probiert, hat mal bisschen besser funktioniert aber nicht
USARTC0 // USART PORT number #define USART_IO_PORT PORTC // USART PORT #define USART_RxD_PIN_m PIN2_bm // USART RxD PIN mask #define USART_TxD_PIN_m PIN3_bm // USART TxD PIN mask void usart_init(void); void usart_enab(void); void usart_disab(void); void usart_send_byte
-
Thread
STM32 CAN Problem Remap Problem
to PB8 and PB9 AFIO->MAPR &= ~(AFIO_MAPR_CAN_REMAP); AFIO->MAPR |= AFIO_MAPR_CAN_REMAP_REMAP2; retVal = CAN_Init(CAN1,&CAN_InitStructure); return retVal; } Senderoutine: void Test_CAN(void) { CanTxMsg TxMessage; CanRxMsg RxMessage; uint32_t i = 0; uint8_t TransmitMailbox
CAN_FilterInitTypeDef CAN_FilterInitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); // GPIO B Takt // CAN RX GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; // PB8=CANRX GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
-
Thread
ST24c04 - Nur erster Block lässt sich beschreiben
nicht, daß es nicht funktioniert. Du hast ne Menge zusätzlicher Fehlermöglichkeiten (Interrupt, HW-I2C). Machs erstmal zu Fuß (SW-I2C, keine Interrupts). Außerdem fehlen Funktionen, z.B. EEPROM_Select. Quelltexte als Anhang mit allem zum Compilieren nötigem! Peter
Mein EEPROM_Select setzt die Adresse des EEPROMS zusammen. Also 0b1010 und dann eben 0b00hintendran für die hardwired Adresse sowie eine 0 für Block 0 bzw. eine 1 für Block 1 hinten dran. Ergo: Block 0 = 0b1010000 Block 1 = 0b1010001 Das kommt ja auch raus
-
Thread
[S] 1Tera Ohm (1000Gig) Widerstand
könnte man auch Wasser im dünnen Schlauch nehmen: lt. Wikipedia: Wasser (reinst) 10^12 Ω·mm2·m^−1 ;)
newproducts=0&ColumnSort=0&page=1&quantity=0&ptm=0&fid=0&pageSize=25 http://www.ohmite.com/cat/res_rx1m.pdf Gehen sogar bis 10T
-
Thread
Ethernet Preamble
Es sollte doch 0x55 55 55 55 und dann 0x55 55 55 D5 gesendet werden [c] // send preamble rx_stimulus_send_column(32'h555555FB, 4'b0001); rx_stimulus_send_column(32'hD5555555, 4'b0000);[/c]
pietro_lockvogel schrieb im Beitrag #6918064: > // send preamble > rx_stimulus_send_column(32'h555555FB, 4'b0001); > rx_stimulus_send_column(32'hD5555555, 4'b0000); > warum wird in der testbench 0x55 55 55 55 FB und dann 0x D5 55 55 55 > gesendet. Du solltest
-
Thread
UART Daten nicht wie erwartet
TTL/USB(1): Liest die Eingangsdaten des Slave nach dem MAX487, also auf Mikrocontroller Seite UART1 RX (s. Anhang UART_to_USB_KORREKTUR.png, das rechte Fenster) aus. 2) TTL/USB(2): Liest die "Ausgangsdaten" welche vom Master per UART1 TX verfälscht, bzw. nicht wie erwartet ausgegeben werden (s. Anhang
schrieb im Beitrag #7300787: > aber für mich sieht das > irgendwie auf ganz unterer Ebene (Baudrate zB) falsch aus. > zB wird eine 9dez. = 00001001 zu einer 130dez = 10001000. Das ist mir auch aufgefallen, dass die Darstellung der Bits in Logic 2 umgekehrter Reihenfolge zu sein scheint, jedoch vom
-
Thread
Ausgabe der AD-Wandlung
aller geforderten daten will ich das ergebnis sehen. leider ist die ausgabe nicht gleichbleibend - z.b. lese ich zwei sensoren ein ist s1 an der 1. und s2 an der 2. stelle im array; lese ich nur s1 ein, dann ist das ergebnis an der 2. stelle. was mache ich falsch? codeauszüge: // die variablen
stdout = &mystdout; printf(" Werte: %u, %u, %u, %u, %u, %u, %u, %u \n",Werte[0],Werte[1],Werte[2],Werte[3],Werte[4],Werte[5],Werte[6],Werte[7]); // Ende vom while } // Ende der main } [/c] die eingabe sieht so aus: sensor 1 -> ";1#_" sensor 2 -> ";2#_" sensor 1 u. 2
-
Thread
CAN Controller MCP2515: Schreiben in CANCTRL
Weiß jemand wofür das 'x' (Higher Nibble) auf Seite 63 des Datanblattes > für den MCP2515/ Table 11-2 steht? x = unknown Das kann der Resetcontroller ja auch nicht wissen, weil er nicht weiß, welchen Pegel z.B. der TX2RTS-Pin hat...
die eben genannten 1111! Und X? Unterprogramm SPI_Write: SPI_WRITE: push r18 ldi r18,0b00000010 cbi PORTB,2 ;SS low! out SPDR,r18 SPIW1: in r16,SPSR sbrs r16,7 jmp SPIW1 out SPDR,r16 SPIW2: in r16,SPSR sbrs r16,7 jmp SPIW2 out SPDR,r17
-
Thread
Fehler zum nachbauen :-)
https://www.google.de/search?q=kraftstromstecker+ddr&client=firefox-b&dcr=0&tbm=isch&source=iu&ictx=1&fir=Z8N789gBR2KCUM%253A%252CniYpKxRdFVK3AM%252C_&usg=__RkAi5YCo7k8s7kt7o9nuLels-OI%3D&sa=X&ved=0ahUKEwiutdrjvavaAhXN2KQKHSUrBG8Q9QEINTAB#imgrc=Z8N789gBR2KCUM: Habe
Kabel verlaufen 2m weit die Powerleitungen der LED und die des DS18B20. Mittels PWM Dimmung habe ich durch Übersprechen der Adern untereinander nach ca 1h den DS18B20 auf dem KK der LED geext! Vorne und hinten habe ich
-
Thread
Verschiedene UART Schnittstellen kombinieren ?
Ich mache das so, falls ein Umschalten nicht nötig ist: [code] 1 bis 2kΩ Tx o-----|<|------+---[===]----o VCC | Tx o-----|<|------+------------o AVR Rx | Tx o-----|<|------+ 1N4148 Rx o--------------+
sendet, empfangen die drei seriellen Geräte gleichzeitig. Bei 1 bis 2kΩ sind Baudraten bis 115200 problemlos machbar. Alle Rx und Tx Signale müssen im Bereich zwischen 3,3V und 5V liegen.
-
Thread
Mehrere Signale über eine Leitung
Für 8 Taster können die De-/Multiplexbausteine U6050B/U6052B verwendet werden.
alles im Lot sein. Wenn das Poti eh keine volle Umdrehung kann, warum schickt ihr dann nicht (zB mit 10Hz) Absolutwerte? Also zB 0..255 für 0..270Grad.
-
Thread
Kleiner NF-Verstärker mit TDA2003 o.ä. mit regelbarer Lautstärke
Datenblatt gelesen? Seite 8 Cx bzw. Rx upper frequenzy cutoff Erechnet sich unter anderem aus R2 Deshalb lieber Poti vor Schaltung.
Ich hatte nach der Formel im ersten Bild gerechnet. Dort steht Cx = 1/(2*pi*B*R1). Mist, schon wieder falsch geschaut. Es steht da R1 und nicht Rx. Dann wären es nur 18kHz mit der Herstellerdimensionierung. Somit kann ich meine innere Verwunderung über die 110kHz auch wieder
-
Thread
Frage an die Arduino-Nutzer
Wenn du was gutes bauen willst muss sowohl der bootloader wie auch eine lötleiste zu vcc, gnd, reset, rx & tx auf's board.
Schaltungen zu bauen und den Namen als Synonym beibehalten. siehe: https://www.strippenstrolch.de/1-1-2-die-brettschaltung.html
-
Thread
Max. 200 Meter Bussystem
Rs422 ist ja, so wie ich es verstanden habe, lediglich eine Erweiterung der RS485. Im letzteren liegt Rx und Tx auf dem selben verdrillten Aderpaar, bei RS422 sind es 4 Leitungen statt 2. Ich schwanke gerade zwischen folgenden ICs: SN65HVD24D ADM2582E Wobei ich sogar eher zum ADM2582E/ADM2587E
3.3V auf dem Board). Nehme ich dem Kabel eigentlich ein Aderpaar für V_isoout / V_isoin und GND_2? Lege ich diese also auch mit auf die Leitung? (neben A/B, X/Y)?
-
Thread
RX62 - "gescheite" resourcen
Hallo Uli, wo hast du denn die RX62x gekauft? Frag doch deinen Distri, der sollte dir auch weiterhelfen können. Grüße Carsten
auch für einen Weg entscheiden. Aber klar. Aber wenn ich IDE 1 nehmen muss und ein Sample nur in IDE 2 verfügbar, dann ist es eben Mist. (IAR-Keil zB sind wesentlich portabler) IAR drückt sich hier im konkreten Fall selber ganz "elegant" und bietet nur Programmier-Code an für das im Chip enthaltene
-
Thread
fehlerfreie UART-Übertragung?
.255 sendest, kann es etwas heikel sein, da das erste byte zufällig auch diesen wert haben kann. 2.) ich würde jeweils eine sequenz (paket) von z.b. 32 zeichen senden, mit startzeichen und einer angehängten prüfsumme. (8 bit quersummee ist nicht optimal, aber ganz brauchbar - es gibt bessere verfahren
genügend Leitungskapazität vorhanden ist, kann man einfach die Daten dreimal schicken und dann die 2-von-3-Funktion bilden, die jedes einzelne gekippte Bit korrigiert: #define mc_two_of_three(a, b, c) (((a) bitand (b)) bitor ((a) bitand (c)) bitor ((b) bitand (c))) Das Makro hat den Vorteil daß
-
Thread
Makros in C und ASM nutzen
Teilen gibt es Makro-Definitionen, oft für das Selbe: Assembler: #set DEVICE MB96346RxA; #set CLOCK_SPEED CPU_24MHZ_CLKP2_12MHZ C: #define PROZESSORTYP 96348 #define F_SYSTEM 24000000 // CPU-Takt in Hz Die Beispiele sind
Debugmodus definiert werden, und sowohl ASM als auch C-Files includen das und benutzen den Inhalt, z.B. im ASM: #if PROZESSORTYP == 96348 #if PROZESSORVARIANTE == A #set DEVICE MB96348RxA ; <<< select device #else #set DEVICE MB96348RxB ; <<< select device #endif #endif
-
Thread
Sammelbestellung OLED 0.96 I2C für den ESP8266
gar nicht enthalten ist, oder? btw was ist heutzutage noch normal? Spass beiseite. ESP8266 z.B.I²C mit den ESP-12 Beispiel: SDA : GPIO2 SCL : MTMS (GPIO14 ) SSD1306 lib einbinden vom Hersteller/Vertreiber Den SoC wie jeden anderen auch üblichen I²C Procederas beibbringen. mit dem ESP
testen. Später kann man immer noch neue FW mit einem verschlüsselten Nicht-AT-Protokoll erstellen (z.B. JSON per HTTPS + Login-Passwort). Ich brauche aber weder 999 noch 1000 Stück davon. ;-) Und _das_ passt dann auch wieder zum Thread-Titel: "OLED 0.96 I2C für den ESP8266"
-
Thread
RS-232 Schnittstelle
nur die > richtigen Signale miteinander verbinden und dann geht das schon. Meist > reichen dazu RX und TX. Und GND Hi, mittlerweile wird zu fast jedem Internetzugangsgerät serienmäßig auch gleich ein Satz Übergangsstecker mitgeliefert, z:B. DB25 auf DB9. Oder wie im Link frei nach Kundenwunsch
Karl B. schrieb im Beitrag #7196575: > Hi, > mittlerweile wird zu fast jedem Internetzugangsgerät serienmäßig auch > gleich ein Satz Übergangsstecker mitgeliefert, z:B. DB25 auf DB9. Bist du sicher,
-
Thread
Arduino-Kummunication
zum Ernst der Sache: Wir benutzen für 'auf die schnelle Projekte' auschliesslich Teensy Module ( 3.2 / 3.6) die sind sau schnell und besitzen Peripherie im Überfluss ( z.b. bis zu 4 USART) Und sind obendrein voll Arduino kompatible ! - Herz was willst du mehr.
; Serial_ SerialB; void setup() { SerialA.begin(9600); SerialA.println("Start"); SerialB.begin(9600); SerialB.println("Start"); } void loop() { SerialA.println("A"); SerialB.println("B");
-
Thread
Identifikation Modbus-Controller-IC auf Platine
Phil schrieb im Beitrag #8084941: > um allerdings direkt die Modbus-Leitungen A-, B+ und GND Modbus über RS485: A+/A- B+/B- GND Bei 4-Draht-RS485! Modbus über RS232: Rx Tx GND
Nick schrieb im Beitrag #8085416: > Die eigentümliche, widersprüchliche Bezeichnung A+ / B- und die 4 > Schraubklemmen die weder für 4-Draht (dann müssten es 5 sein) noch > 2-Draht (dann müssten es 3 sein) sinnvoll sind. Das eine der vier Schraubklemmen Gnd ist, wurde bereits oben
-
Thread
Wie ein 128s BMS für 4 kWh Hochvoltbatterie ?
Ich würde gerne aus diesen 5 Ah B-Grades eine 128s2p Hochvoltpufferbatterie bauen: https://m.alibaba.com/product/62517038510/32650-lifepo4-cheap-price-battery-cell.html Dachte eigentlich, dass ich schon irgendwie mit diesen 40
die Zelle auf ungesunder Maximalspannung ist. Drum gebe ich lieber 16€ für einen 17s aktiven 1.2 A Balancer mit 1s Überlappung aus und mach die Protection über die Gesamtspannung. Die steckbare 16s Batterie hätte dann zwei großflächige Kontakte für B0 und B15 sowie einen 1.2A Kontakt für B1
-
Thread
Was ist 32 Bit und nicht ARM?
- Xtensa (z.B. als LX106 im ESP8266 oder LX6 im ESP32) - einige DSPs (z.B. C2000 von TI, Blackfin von AD)
eine ganze Reihe von 32-Bit Controllern, die nicht auf ARM basieren: SuperH (ursprünglich Hitach), RX (Renesas), V850 (ursprünglich NEC), M32R (ursprünglich Mitsubishi) FTDI hat FT32 in bspw. den FT900ern Fujitsu hat noch FR50, FR60 und FRlite im Angebot Noch unbekannter ist hier z.B. Andes
-
Thread
max3232 funktioniert nicht
Die SW koennest du auch wie folgt prüfen. 1. Jumper JP2 (Pin 1 - 2 u. Pin 3 - 4) entfernen. 2. Jumper JP2 Pin 2 und 4 brücken 3. Gesendete Zeichen und Empfangende Zeichen auf gleichheit prüfen und dann eine LED einschalten.
Dann fällt mir auch nur ein Fehler in der Schaltung ein (z.B. Kurzschuss) oder -wie Du schon sagtest- IC kaputt. Du kannst ja mal testweise ohne PC-Anschluss das Signal TX (TTL) auf 0 und 1 legen und dann TX (RS232) messen - gleichzeitig auch RX (RS232) (falls
-
Thread
LPC2468, Ethernet MAC und Interrupts
VICIntEnable |= BIT_15; /* enable the link up/down interrupt */ SA0 = (MAC_ADDRESS1 << 8) | MAC_ADDRESS2; /* set up the station address */ SA1 = (MAC_ADDRESS3 << 8) | MAC_ADDRESS4; SA2 = (MAC_ADDRESS5 << 8) | MAC_ADDRESS6; RxFilterCtrl = (BIT_02 | BIT_05); /* allow broadcast and perfect */
(INT32U)rx_status_desc; /* status descriptor base */ RxDescriptorNumber = MAC_RX_FRAGMENTS - 1; /* number of rx descriptors */ RxConsumeIndex = 0; /* begin at the first rx descriptor */ } static void
-
Thread
KSQ mit Diode oder Transistor temperaturkompensieren?
100k-Widerstand, sondern vom TK der Basis-Emitter-Strecke der Transistoren. Da die Ube einen TK von -2mV/K hat erhöht sich die Spannung über den in Reihe liegenden R1 und R2 um diesen Betrag, und daher auch der Strom durch R1/R2 und somit auch der Strom durch R3/Rx. Die Temperaturkompensation der Zweige
Elliot schrieb im Beitrag #6605155: > Da die Ube einen TK von -2mV/K hat erhöht sich die Spannung über den in > Reihe liegenden R1 und R2 um diesen Betrag, und daher auch der Strom > durch R1/R2 und somit auch der Strom durch R3/Rx. Achso ist das gemeint. Gut
-
Thread
PIC16C: USART will nicht senden
PIR1 btfss PIR1, TXIF ; warten, bis TXREG leer (TXIF = 1) goto $-1 banksel BUFFER2 movfw BUFFER2 ; drittes Byte laden banksel TXREG movwf TXREG ; Byte (BUFFER2) abschicken nop nop nop banksel PIR1 btfss PIR1, TXIF ; warten, bis TXREG leer (TXIF
mit Setzen nicht die Wertigkeit 1 gemeint, sondern die korrekte Definition der Richtung. Also TRIS:=b10xxxxxx
-
Thread
flashfile über rs232 weiter mittels i2c ins endgerät, wie?
(RS232) -> RS232 -> Display Da braucht man nur eine kleine Umlenkung schreiben. Alles was bei RX0 reinkommt sofort in TX1 schreiben. Was bei RX1 reinkommt in TX0 schreiben. Einfacher gehts kaum noch. Für I2C wird es wohl schwer was fertiges zu finden.
habe, an die 7 und 8 der sub >buchse beschaltet habe. war so auf dem schaltplan den ich hatte. Rx und Tx liegen aber auf 2 und 3 der Sub-D Buchse. Auf 7 und 8 liegen die Handshake Leitungen RTS und CTS. Da liegst du völlig falsch. Und Ground Pin 5 muss man auch anschliessen. Ich gebs jetzt
-
Thread
Can't infer registers
end if; else iCounter2 <=RX_COUNTER; end if; RX_COUNTER<=iCounter2; end process Lesen_Pro; [/CODE] Vielen Dank
-- (3) iCounter2 <=RX_COUNTER; end if; RX_COUNTER <= iCounter2; -- (4) end process Lesen_Pro; [/vhdl] (1) Naja, das kann arg ins Auge gehen: ein Asynchroner Reset... (2) Jetzt kommt
-
Thread
Probleme mit GY-271 (HMC5883) Compass
tx_load_pos>=tx_buffer_size) { tx_load_pos=0; } return 0; } void compass_init() { i2c_start(compass_write); i2c_write(0x00); i2c_write(0b0001000); i2c_stop(); i2c_start(compass_write); i2c_write(0x01); i2c_write(0b00100000); i2c_stop(); i2c_start(compass_write); i2c_write(0x02); i2c_write(0x00); i2c_stop(); } ISR(USART_RX_vect) { rx_buffer[rx_read_pos]=UDR0; rx_read_pos++; if(rx_read_pos>=rx_buffer_size) { rx_read_pos=0; }
-
Thread
SPI-Kommunikation mit STM32F2xx
gespeichert sein. ReceiveBuffer[0] <-- 0x0000005E ReceiveBuffer[1] <-- 0x00004000 Nachdem der RxDMA aktiviert wird, ist der erste empfangen 16bit Wert nicht 0x0000005E sondern 0x00000000. [c]SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Rx, ENABLE);[/c] Wie kann ich dieses Problem lösen ?
; } SPI_MASTER_Buffer_Tx[0] = 0; SPI_MASTER_Buffer_Tx[1] = 0; SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Tx, DISABLE); SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Rx, DISABLE); DMA_Config(); SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Tx, ENABLE); SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Rx
-
Thread
Suche Datenblatt/Quelle für Motorola 171-10245 Spannungsregler (?)
Vergleichsmessung mit einem 2N3055 ergibt bei +/- an B-E und B-C jeweils Durchgang hat und im Gegensatz zum 2N3055, der bei -/+ jeweils sperrt, die Strecken B-E und B-C jeweils einen Durchgangswiderstand von ca. 20KOhm anzeigen.
funktioniert - ebenso ca 3.5V sein muessen. Die Berechnung fuer 5V-Ausgangsspsnnung=> 3.5V/R9 = 1.5V/Rx => 3.5V/2k = 1.5V/Rx => Rx = 1.5V/(3.5V/2k)= 850 Ohm Wenn man genauere Werte einsetzt komt man auf ca.820 Ohm. Eventuell hast du uns/mir falsche Werte fuer denSpannungsteiler R6/R7 (jeweils 2k2)
-
Thread
Mit STM32 Byte-Sequenz aus UART-Strom herausfischen?
feste Länge hat, hole ich nacheinander Bytes und schaue, ob das Ende aus der gesuchten Sequenz (z.B. "OK") besteht: [c] uint8_t *p = buffer; int found = 0, count = 0; while (1) { if (HAL_UART_Receive(&huart7, p++, 1, 1000)) break; if (++count >= 2 && !strncmp(p - 2, "OK", 2)) {
Bülent C. schrieb im Beitrag #5426083: > im RX interrupt immer byteweise in ein buffer schreiben und schauen ob > der aktuelle und der letzte byte ein 0Dh und ein 0Ah ist. > Achtung: Du benutzt diese s...ß HAL Treiber, ein RX interrupt wird hier
-
Thread
UART Probleme
der Fehler? Das Kabel zu einem PC o.ä. ,muss doch unbedingt gekreutzt sein, oder? TX vom Atmel in RX des PC und RX vom Atmel in TX des PC... bei zusammengeschalteten Sende- und beide Empfangsleitungen können die sich doch nicht unterhalten... greetz Danny
Nullmodemkabel nehmen! Hier im Tut nicht. Schau die mal die Belegung des 9pol D-Sub an. Bei Rowalt geht RxD auf 2 und TxD auf 3. Hier im Tut genau umgekehrt! Ich habe das Board von Rowalt nachgebaut, mit dem ATMega8 (aus dem neuen Buch). Bei mir funzt die UART, aber mit einem krummen Quarz! werde es am
-
Thread
Mehrere UARTs mit Interrupts
registers */ GPIO_InitTypeDef GPIO_InitStruct; // this is for the GPIO pins used as TX and RX USART_InitTypeDef USART_InitStruct; // this is for the USART2 initilization NVIC_InitTypeDef NVIC_InitStructure; // this is used to configure the NVIC (nested vector interrupt controller)
now all the values are passed to the GPIO_Init() function which sets the GPIO registers /* The RX and TX pins are now connected to their AF * so that the USART2 can take over control of the * pins */ GPIO_PinAFConfig(GPIOD, GPIO_PinSource5, GPIO_AF_USART2); // GPIO_PinAFConfig(GPIOD
-
Thread
PIC18Fxxx8 CAN Protokoll Frage
>kann ich die 2 PICs auf direkt zusammenhängen >TXCAN1->RXCAN2 und RXCAN1<-TXCAN2? So nicht, aber anders: mit wired or, denn alle Rx müssen alle Tx hören, und dominant (low) soll recessiv (high) übertönen: +5V PullUp | Rx1 ------*------ Rx2 | Tx1 --|<|-*-|>|-- Tx2 (sollen 2 schnelle Dioden sein) geht auch mit mehr als 2 Teilnehmern, wenn die Leitungen relativ kurz sind.
-
Thread
Pi Pico PWM mit Totzeit
manifestiert sich das Problem sofort. Das ist das Problem mit IRQs, wenn noch andere Mitspieler (zB. USB) im System sind. Also NVIC massieren und diesem PIO-IRQ die höchste Prio verpassen, oder besser: DMA mit Buffergröße 8Bytes (2WORDS) im DMA-Loop laufen lassen. Dann muss man sich gar nicht mehr
zwei Werte in den Fifo stecke. Mir war nicht klar, dass dann DMA_C ständig den leeren RX-Fifo von SM0 liest und den vollen TX-Fifo von SM1 überschreibt. - 2. damit verbunden ein Logikfehler von irq wait / irq set, so dass die ganze Kette nach einem Durchlauf stand. - klar, war noch total
-
Thread
STM32 RF24 Kommunikation
Mein Code: [c] #include "mbed.h" #include "nRF24L01P.h" Serial pc(USBTX, USBRX,9600); // tx, rx nRF24L01P my_nrf24l01p(D11, D12, D13, D10, D9, D7); // mosi, miso, sck, csn, ce, irq DigitalOut myled1(LED1); DigitalOut myled2(LED2); int main() { // The nRF24L01+ supports transfers
rxDataCnt--, i++ ) { pc.putc( rxData[i] ); } // Toggle LED2 (to help debug nRF24L01+ -> Host communication) myled2 = !myled2; }