-
Thread
Multichannel DAC mit SPi-DMA beschreiben
kanal DAC mit SPI-DMA ansteuern. Das besondere ist, dass die SPI ALLE Kanäle nacheinander mit einem Transfer beschreiben soll. Nun finde ich keinen DAC, der das mitmacht. Alle DACs wollen nach jedem Frame einen SYNC haben, der die Daten aus dem Input-Register in das entsprechende DAC Register schreibt. Die
hier DMA einzusetzen. Aber eben nicht um nur einen Frame zu senden, sondern alle mit einem DMA Transfer so wie in unzähligen anderen Projekten, in denen jedoch noch kein Multichannel SPI-DAC das Ziel war. Die Frage hier bezog sich darauf, ob es einen DAC gibt, der 8 Frames _in_nur_einem_Sync_Zyklus
-
Thread
"Bierdeckelprogrammer" tut nicht so recht.
request from Device Request 04h Value 1518h Index 0000h Length 00C8h ---------- URB Control Transfer succeeded Device Object USBPDO-6 Driver Object usbhub URB Function URB_FUNCTION_CONTROL_TRANSFER URB Status USBD_STATUS_SUCCESS Endpoint 0 Default Control Request Type Vendor request
-
Thread
Webseite zum Download von Dateien ohne Endung gesucht
entweder verschlüsselt, so dass der Scanner gar nicht erst reinschauen kann. Oder halt gleich über WeTransfer. Wenn die Helden dann WeTransfer blocken, dann wird ein anderer Dienst benutzt. Wenn man sich dabei geil fühlt, den Usern das Leben möglichst schwer zu machen ohne dabei irgendwas zu erklären,
-
Thread
SDIO Device mit Standard SPI realisierbar
SPI ist einer der Modi von SD/SDIO ist, aber gemäß Standard muß wohl immer auch der 1-bit SD Data Transfer Mode unterstützt werden, somit würde SPI alleine ja nie ausreichen? - was ich nicht finden kann, wo findet die Entscheidung statt, ob nun SPI Mode oder 1-bit SD Data Transfer Mode am interface eingestellt
ich nicht finden kann, wo findet die Entscheidung statt, ob nun > SPI Mode oder 1-bit SD Data Transfer Mode am interface eingestellt wird? Das wird der Host festlegen, der die SD-Karte bzw. SDIO-Karte ansteuert. Darauf kann AFAIK die Karte keinen Einfluss nehmen, daher muss sie ja auch beide Modi
-
Thread
STM32F4 USB CDC/VCP mit DMA?
zweitens: dein CDC-Treiber muß die Umsetzung von asynchroner Zufuhr von Zeichen zum blockweisen Transfer via USB organisieren - und das OHNE das aufrufende Programm mit Innereien zu belästigen. Der korrespondierende CDC-Treiber auf dem PC macht das ja ebenfalls, so daß man von der Applikation aus ein
zweitens: dein CDC-Treiber muß die Umsetzung von asynchroner Zufuhr von > Zeichen zum blockweisen Transfer via USB organisieren Nein, das muss er nicht unbedingt. Dem µC Programm ist normalerweise bekannt, wieviel Daten versendet oder empfangen werden sollen. Das hier ist IMHO grade nicht der Fall der
-
Thread
variable Bitbreite für SPI-Bus
Simplex synchronous transfers on two lines with or without a bidirectional data line • 8- or 16-bit transfer frame format selection Libaries sind aber meistens generisch geschrieben, damit sie auch andere SPI-Controller unterstützen können. Ich kann Peter Danneger's Antwort nur unterstreichen. Es sollte kein Problem darstellen, die 12 Bit mit einem 16Bit Transfer auszulesen. 2x 8Bit wird vermtl. nicht funktionieren, da dazwischen der SPI Controller den Slaveselect deaktiviert und der Slavecontroller beim nächsten aktvien Slaveselect wieder von vorne zu übertragen
-
Thread
Register mit C ansprechen, Schreib/Lesezyklen
0x0; s0_WE_0=1; // I2CM_W prepares to receive data in register //Host begins transfer s0_STB_O= ~(s0_STB_O); s0_CYC_O= ~(s0_CYC_O); // I2CM_W while ((s0_STB_O = 1)&( s0_CYC_O = 1)) { // latch data von DAT_I ins Register s0_ACK_I =~ (s0_ACK_I); } /
STB_O); s0_CYC_O=~(s0_CYC_O); s0_ACK_I=~(s0_ACK_I); // Data transfer terminated } } } Es zird fehlerlos kompiliert, allerdings hab ich es nocht nicht aufs Board hochgeladen.
-
Thread
STM32F4 USART DMA - Kein Restart
Das funktioniert auch teilweise, dass einmalig die Daten übertragen werden. Danach stoppt der DMA Transfer wie gewünscht (Mode: normal, nicht circular), aber er lässt sich nicht erneut starten. Das Problem ist also, dass der DMA Transfer nur einmal startet, aber ein erneuter Start nicht wie gewollt ausgeführt
USART_DMAReq_Tx, ENABLE); // Enable USART DMA TX Requsts // Enable TX DMA transfer complete interrupt //DMA_ITConfig(USARTy_TX_DMA_STREAM, DMA_IT_TC, ENABLE); } [/c] und letztlich noch die Main: [c] int main(void) { // Locals // -------------------------------
-
Thread
Reihenschaltung von 3 Bleigel-Akkus überwachen
sicher auf? Der Begriff ist mir neu. Wieder was gelernt. Ist das im Datenblatt als "Current Transfer Ratio" beschrieben? Also das Verhältnis aus Kollektorstrom und OK-LED Strom? Kollektorstrom sollte ja ca. 0,25 mA betragen und der OK-LED Strom 3,4 mA. Wären also ungefähr 7 %. Ich kann diesen Wert
auf? > > Der Begriff ist mir neu. Wieder was gelernt. Ist das im Datenblatt als > "Current Transfer Ratio" beschrieben? Also das Verhältnis aus > Kollektorstrom und OK-LED Strom? Kollektorstrom sollte ja ca. 0,25 mA > betragen und der OK-LED Strom 3,4 mA. Wären also ungefähr 7 %. Ich kann > diesen
-
Thread
SBC TLE9471-3ES Status Information
SBC_Val, uint16_t * returnval) { SBC_ErrorCode errCode; uint16_t returndata = SBC_SPI_TRANSFER16(SBC_Write_Bit | SBC_Reg, SBC_Val); if(returnval != NULL) { *returnval = returndata; } errCode.SBC_Register = SBC_Reg; errCode.flippedBitsMask = ((uint8_t)SBC_Read_Command
return data - Bit[15:8] = Status Information Field - Bit [7:0] Register data */ return SBC_SPI_TRANSFER16(SBC_Read_Mask & SBC_Reg, 0x00U); } uint16_t SBC_SPI_TRANSFER16(uint8_t Upper, uint8_t Lower) { uint16_t LPSPI1_16bits_read = 0; //uint16_t tx_16bits = ((uint16_t)Upper<<8 | (uint16
-
Thread
70er Jahre Hochspannungsgerät - wurde da PCB-Öl verwendet?
products-and-services/products/coolanol-25r "Mobil COOLANOL™ silicate ester synthetic dielectric heat transfer fluids are designed to meet the special needs of sensitive electronic components" NSN Reference 9160-12-326-6525, US Military MIL-C-47220 Type IV https://www.silmid.com/specialties/specialty-chemicals/Exxon-Coolanol-25R-Heat-Transfer-Fluid-in-various-sizes/ Oha, £1832.28 (Inc VAT) pro Gallone. Derzeit 1 GBP = 1,176 EUR Es gibt aber auch eine (wesentlich billigere) Auto-Kühlflüssigkeit gleichen Namens und Collagen-Kapseln
-
Thread
AVR TWI Master und Slave Funtionen in C
Flag is not set. This occurs between other states, and when the TWI is not involved in a serial transfer. Status 0x00 indicates that a bus error has occurred during a Two-wire Serial Bus transfer. A bus error occurs when a START or STOP condition occurs at an illegal position in the format frame. Examples of such illegal positions are during the serial transfer of an address byte, a data byte, or an acknowledge bit. When a bus error occurs, TWINT is set. To recover from a bus error, the TWSTO Flag must set and TWINT must be cleared by writing a logic one
-
Thread
Wechselrichter Hoymiles HM-xxxx 2,4 GhZ Nordic Protokoll?
mit einem eigenen NRF hat es bisher noch keiner hier geschafft. Ich hatte mir die DTU ("Data Transfer Unit"?) vom Hersteller gekauft, um damit das Protokoll abzufangen und analysieren zu können. Darin werkelt ebenfalls ein NRF auf den ich mich in meinen bisherigen Texten bezogen habe.
Channel: 00. Channel 0 Bit Rate (Bits/s): 125000 Bits per Frame: 8 Bits per Transfer (Standard) Stop Bits: 1 Stop Bit (Standard) Parity Bit: No Parity Bit (Standard) Significant Bit: Least Significant Bit Sent First (Standard) Signal
-
Thread
3D Druck Service
www.pro.sculpteo.com, ask for a quote, send us the reference of the quote and make the equivalent bank transfer. Once we received the money, we transfer your quote into an order."
-
Thread
MOSFET-Schaltung so machbar?
Wenn du den FET nicht gut kühlst, wird das gar nicht gehen. Guck dir mal die Transfer Charakteristik im Datenblatt an. Mit 5V Ansteuerung ist der FET kaum richtig aufzukriegen. mfg Rainer
> Wenn du den FET nicht gut kühlst, wird das gar nicht gehen. Guck dir mal > die Transfer Charakteristik im Datenblatt an. Mit 5V Ansteuerung ist der > FET kaum richtig aufzukriegen. > Doch das geht schon. Aber so ein MOSFET für 200mA? hast du keine bessere Idee? Ausserdem soll der
-
Thread
Kontinuierliches Signal in Matlab filtern
Guckst du in der Simulink Library nach "Transfer" Function.
Max wrote: > Guckst du in der Simulink Library nach "Transfer" Function. Ich will es aber nicht in Simulink machen.
-
Thread
OHP Folien für Toner Transfer & Kyocera FS 1020D
Kyocera FS-1020D oder FS-3900DN. Die Folien sollen bedruckt werden und dann mittels Direkt-Toner-Transfer Methode, also mim Bügeleisen bearbeitet werden. Dazu suche ich nun die passenden Folien. Ich weiß das Reichelt Papier und so auch geht aber mit Folien spar ich mir das abkratzen und vor allem,
Laser Folien und Toner Transfer? Wenn nein, wer kann mir einen Tip geben bei welchen Folien ich mir auf jedenfall nicht meinen Drucker zerschieße!
-
Thread
AS5048a Daten mit DMA auslesen SPI
Ich würde nur den RX Handler implementieren, denn wenn er da reinkommt ist der Transfer auch wirklich zu Ende. Dort macht man dann den CS High, wartet die >=350ns laut Datenblatt mit einigen NOPs und macht CS wieder LOW. Nachfolgend startet man den nächsten DMA Transfer. Allerdings
Ich habe das mal probiert mit jedem DMA transfer einzeln, doch der Overhead ist so groß, dass bei angemessener Geschwindigkeit für den Regler, die Interrupts den Rest stark bremsen.
-
Thread
zwei Fragen zu MAtrix mit LED-Streifen; Spannungsversorgung, Datenleitung
werden über SPI erzeugt. 8 SPI Bits = 2 WS Bits 800kHz * 4 SPI Bits = 3,2 MHz SPI Takt Ein DMA Transfer umfasst 12 Bytes = 3 WS Bytes (GRB eine LED) Sobald als möglich werden die nächste 12 Bytes berechnet und die Daten für die nächste LED über DMA ausgegeben. Das ganze funktioniert ohne Verzug. Es wird dafür ca. 20% CPU Leistung benötigt dafür kaum Speicher. Ein kompletter Transfer umfasst 240 LEDs.
-
Thread
Microcontrollerboard mit 16Bit-Controller
Deine 16MB Daten per DMA abzulegen, wenn diese parallel zum Zugriff zur Verfügung stehen: block transfer mode. Die Daten müssen dabei memory-mapped vorliegen. Unter Umständen kann der DTC (data transfer controller) den DMAC entsprechend konfigurieren und nachladen. Dies erfordert aber ein bißchen Planung
-
Thread
USB VUSB Viruel COM Port
Datenmengen gering sind und in die Beschränkungen passen, die der zugrunde liegende "Interrupt-Transfer" ihnen auferlegt. Für größere Datenmengen braucht man aber andere Transfertypen, z.B. den "Bulk-Transfer", den halt auch USB-CDC benutzt. Das Blöde ist halt nur: Bulk-Transfers sind nicht allen
-
Thread
Parallele Schnittstelle zwischen zwei FPGAs implementieren
100Mbps, die du anstrebst. Wenn du es parallel implementieren willst: du verschenkst bei jedem Transfer die Hälfte der Bits. Nutze halb so viel Leitungen und transportiere nicht so viele X ;-) Außerdem sehe ich keinen Takt, der den Datentransfer synchronisiert. Woher weiß denn das rechte FPGA, wann
im Beitrag #4147186: > Wenn du es parallel implementieren willst: du verschenkst bei jedem > Transfer die Hälfte der Bits. Ja das stimmt. Es könnte evtl. eine weitere Möglichkeit bestehen, in dem ich das Strobe-Signal über eine separate Leitung führe. Dann könnte man pro Strobe 16 Bit Nutzdaten
-
Thread
VDSL2 Uplink instabil
Keller weil die Quittungen ja irgendwie in den Upstream mit rein müssen. Mehr als 90% sollte ein Transfer den upstream nie auslasten, daß muß im Notfall das sendende Programm oder eine geeignete QoS-Software machen. PS: das war ein Dauerproblem als P2P aufkam und DSL noch 768/128kBit hatte... Bei
weil die Quittungen ja irgendwie in den Upstream mit rein > müssen. > Mehr als 90% sollte ein Transfer den upstream nie auslasten, daß muß im > Notfall das sendende Programm oder eine geeignete QoS-Software machen. > > PS: das war ein Dauerproblem als P2P aufkam und DSL noch 768/128kBit > hatte
-
Thread
Sprung zum falschen Interrupt?
Handler reti ; Timer1 Overflow Handler rjmp T0overflow ; Timer0 Overflow Handler reti ; SPI Transfer Complete Handler reti ; USART RX Complete Handler reti ; UDR Empty Handler reti ; USART TX Complete Handler reti ; ADC Conversion Complete Handler reti ; EEPROM Ready Handler reti
jmp falsch ; Timer0 Overflow Handler jmp falsch ; SPI Transfer Complete Handler jmp falsch ; USART RX Complete Handler jmp falsch ; UDR Empty Handler jmp falsch ; USART TX Complete Handler
-
Thread
Unifi Nanostation loco M5 spinnt (un)regelmäßig
relativ konstanten 100MBit (durch das LAN-Interface ja begrenzt, gehen aber auch etwas mehr im Duplex-Transfer).
konstanten 100MBit (durch das LAN-Interface ja begrenzt, gehen > aber auch etwas mehr im Duplex-Transfer). Ich kenne und schätze die Dinger ja auch. Um so ärgerlicher jetzt die Mucken ... Idee?
-
Thread
Messwerte per RS232 übertragen
einstellst, hast du immer 50 Werte bzw. 100 Byte Nutzdaten. Wenn du ASCII überträgst, kannst du den Transfer einleiten, wenn eine Änderung eintritt. Ich weiß nicht, wie dynamisch deine Werte sind, aberes ist alles eine Frage der Anwendung. Natürlich sind 100 Byte weniger wie 250, aberes kann genau so sein
dann mehrere Packete verschickt. Benutzt du nun ein Gerät mit einer Packetlänge von 32-Byte zum Transfer von 33-Byte, werden zwei Packete geschnürt. Im ersten Packet liegen 32-Datenbyte, im zweiten Packet liegt 1-Datenbyte und 31-Füllbytes. Ob dies bei CDC auch so ist, habe ich nicht überprüft, gehe
-
Thread
Suche Pulse Train oder Pulse Pattern Generator
Andere Möglichkeit: PIC32 (oder STM oder oder oder) über 32Bit SPI Transfer raus mit 40MHz. Pro Puls 15kByte. 128k hat z.B. Pic32MX370. Wäre zumindest recht einfach. Es gibt auch die MZ Typen mit 512kByte Ram.
schrieb im Beitrag #3736307: > Andere Möglichkeit: PIC32 (oder STM oder oder oder) über 32Bit SPI > Transfer raus mit 40MHz. Pro Puls 15kByte. 128k hat z.B. Pic32MX370. > Wäre zumindest recht einfach. Es gibt auch die MZ Typen mit 512kByte > Ram. 15*15kByte = 225kByte > 128kByte. Auch hier könnte man
-
Thread
DMA am AVR
in einem AVR-System werden ja z.B. über SPI angeschlossen, wobei der Prozessor die Arbeit beim Transfer erledigt. Gibt es Bausteine die auch DMA beherrschen, also direkt in den (externen) Speicher schreiben können?
Wenn das Programm die volle Kontrolle über den Transfer hat, dann ist die Version im Link sinnvoll. Liefert das Device seine Daten jedoch kontinuierlich oder ereignisgesteuert unregelmässig ab, dann taugt das weniger. Wär also nützlich zu wissen, was
-
Thread
senden mir SPI
Ich habe mal SPI.transfer() gemacht. Das hat funktioniert. Ach ja, was machen die Clock und Slave-Select Leitungen? Auch nur Rauschen? Vielleicht sind die gar nicht angeschlossen, denn die Leitungen sollten ja einen definierten
4DGL-Internal-Functions-REV6-2 Schön. Damit ist klar wer der Empfänger ist. Aber wer ist der Sender? Beim SPI Transfer ist ja der µC der aktive Part. Wenn da was nicht funktioniert muss man daher beim µC zu suchen anfangen. Wer am anderen Ende der Leitung sitzt, ist hingegen eher uninteressant. Dein µC sendet nicht
-
Thread
Frage zu ATTiny20 und TPI mit mkII
endpoint 130 failed: HC status: The host controller has set the Transaction Error (XactErr) bit in the transfer descriptor's status field (0xc0000011)., ModuleName: TCF (TCF command: Device:startSession failed.) dann bin ich mir da nich sicher ...
failed: HC status: The > host controller has set the Transaction Error (XactErr) bit in the > transfer descriptor's status field (0xc0000011)., ModuleName: TCF (TCF > command: Device:startSession failed.) > > dann bin ich mir da nich sicher ... Zur Info: Ich hatte noch bei AVR Studio 5 das Problem
-
Thread
Variabler Pulsgenerator, CPLD oder FPGA
ziemlich viel Arbeit! Klar. Der hat aber sonst nicht viel zu tun. Bottleneck ist jedoch eher der USB Transfer. Schaff aber mit dem FT245R locker 400 kbyte/s. Werd mir jetzt erstmal webpack anschaun. gruß christian
viel Arbeit! >Klar. Der hat aber sonst nicht viel zu tun. Bottleneck ist jedoch eher >der USB Transfer. Schaff aber mit dem FT245R locker 400 kbyte/s. Na wenn das so ist, kannst du gleich die ADC-Ansteurung mit in den CPLD packen. Dann ist das ne runde Sache. MFg Falk
-
Thread
USB mit AT91? Effizient !
wissen, glaube ich , ob Du bei UART bleibst oder nicht. Es gibt so zu sagen verschiedene Modi (Transfer Types), Du musst dich fuer einen entscheiden. Dann gibt Standard-Device Classes (da kannst Du Transfer Types nicht waehlen, dafuer gibt es Treiber, die Du nicht mehr schreiben musst.) Dann gibt es
-
Thread
ATTiny2313 - USI - USISR lässt sich nicht setzten
Schieberegister und // den 4bit Timer. Der Takt wird am USCK-Pin (PA4) ausgegeben. } void SPI_transfer(int data) { USIDR = data; //Daten in Data Register laden USISR = (1<<USIOIF); //Überlaufflag löschen while (!(USISR & (1<<USIOIF))) //solange kein Timerüberlauf... { USICR |= (
USICR |= (1<<USITC); } } int main (void) { SPI_init(); while(1) { SPI_transfer(0x41); // Daten (A) senden PORTA |= (1<<PD5); // Led on _delay_ms(100); PORTA &= !(1<<PD5); // Led off _delay_ms(100); } } Hat jemand eine Idee wo der Fehler sein
-
Thread
Probleme mit SPI bei AVR-µC
Und auch hier hatte Joe schon angemerkt, dass im Slave das Laden von SPDR natürlich *vor* dem Transfer stattfinden muss, also [c] SPDR= probe[i]; while ((SPSR & (1 << SPIF))==0); data_in= SPDR; [/c]
>Und auch hier hatte Joe schon angemerkt, dass im Slave das Laden von >SPDR natürlich vor dem Transfer stattfinden muss, also ... Das ist natürlich richtig. Wenn es aber nur das wäre, dann hätte der Master ja folgendes protokollieren müssen: ,x,1,3,7,15 ,31,1,3,7,15 ,31,1,3,7,15 usw.
-
Thread
STM32F4: SPI TX DMA (ohne HAL) Problem
schreibe. Aber der DMA deaktiviert sich nach dem aktivieren sofort wieder und setzt im LISR einen Transfer Error (TEIF) und Fifo Error (FEIF) für Stream 3. Dabei ist der DMA FIFO garnicht aktiviert (DMDIS im S3FCR ist 0). Irgendeine Idee? Ja ich weiß, CubeMX und HAL (_LL) existieren, aber eigentlich
DMA_LIFCR_CTCIF3_Msk [/c] Habe inzwischen wohl die Ursache für mein Problem, den DMA Transfer-bzw. Bus-Error gefunden: "CCM (core coupled memory) mapped at address 0x1000 0000 and accessible only by the CPU through the D-bus." In der Tat liegen meine (DMA-) Daten in diesem Bereich. Ich
-
Thread
Daten und CRC in Einklang bringen
folgendes zur CRC an: • This CRC is according to the J1850 Bus Specification. • Every new transfer restarts the CRC generation. • Every Byte of a transfer will be taken into account to generate the CRC (also the sent command(s)). • Generator polynomial: X8+X4+X3+X2+1, but for the CRC generation
-
Thread
STM32 und SPI - DMA Handling
Hallo Markus, ich habe das "DMA1 Channel2 transfer complete flag" mit eingebaut und es ist scheinbar Besserung in Sicht! Am Montag werde ich es nochmal genauer unter die Lupe nehmen ;-)
Wenn man mit SPI per DMA arbeitet, dann muss man darauf achten, dass der Transfer erst beendet ist, wenn das letzte Byte/Wort davon /empfangen/ wurde. Wenn man CS deaktiviert sobald Tx-DMA durch ist, dann hat man verloren, weil noch Daten im SPI Puffer sein können. NB: Das bedeutet
-
Thread
USB-Oszi:Wie kommen die riesigen Datenmengen auf den PC?
Scope-Speicher schneller voll ist als der USB die Daten übertragen kann. Dann findet ein verzögerter Transfer zum PC statt. Wenn der Hersteller hier einen Ringpuffer des internen Scope-Speichers implementiert hat, dann sollte theoretisch nur wenig verloren gehen, da bereits vom USB übertragenen Samples freien
Spätestens, wenn der schreibende Pufferindexzeiger den lesenden erreicht, muss auf den nächsten USB-Transfer gewartet werden. Wenn genau an dieser Stelle dein Fall des Fehleranteils im Signal auftritt und dieser so kurz ist, dass er nur von wenigen Samples erfasst werden kann, sollte der Signalverlust da