Forum: Mikrocontroller und Digitale Elektronik DAC8552 zeigt keine Reaktion


von Si (Gast)


Lesenswert?

Hallo Zusammen,

momentan versuche ich mit meinem STM32F4 einen DAC8552 DAC via SPI 
anzusteuern. Leider ziemlich erfolglos. Daher wollte ich fragen, ob 
jemand von euch schonmal vor dem selben Problem stand.
Soweit ich es am Oszi sehe läuft die Übertragung korrekt. Nur der DAC 
zeigt keine Reaktion. Vielleicht wisst ihr, ob ich was übersehen habe.
Die Verkabelung stimmt und er wird mit 3,3V versorgt.
Selbst bei dem einfachen Codeschnipsel unten passiert nichts, obwohl der 
DAC die volle Spannung ausgeben soll...

//SPI Init
  hspi3.Instance = SPI3;
  hspi3.Init.Mode = SPI_MODE_MASTER;
  hspi3.Init.Direction = SPI_DIRECTION_2LINES;
  hspi3.Init.DataSize = SPI_DATASIZE_8BIT;
  hspi3.Init.CLKPolarity = SPI_POLARITY_LOW;
  hspi3.Init.CLKPhase = SPI_PHASE_1EDGE;
  hspi3.Init.NSS = SPI_NSS_SOFT;
  hspi3.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_4;
  hspi3.Init.FirstBit = SPI_FIRSTBIT_MSB;
  hspi3.Init.TIMode = SPI_TIMODE_DISABLE;
  hspi3.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
  hspi3.Init.CRCPolynomial = 10;


  bytes[3];
//instruction byte
  bytes[0] = 0x10; // load new data to DAC A
//data byte
  bytes[1] = 0xFF;
  bytes[2] = 0xFF;
//send spi data
  HAL_GPIO_WritePin(SPI_CS1_GPIO_Port, SPI_CS1_Pin, GPIO_PIN_RESET);
  HAL_SPI_Transmit(&hspi3, (uint8_t *)&bytes, 3, 100);
  HAL_GPIO_WritePin(SPI_CS1_GPIO_Port, SPI_CS1_Pin, GPIO_PIN_SET);

von Rolf D. (rolfdegen)


Lesenswert?

Hallöchen..

Teste gerade einen DAC8552 an einem STM32F103C8T6 und habe festgestellt, 
dass die Polarität vom Clock-Signal high sein muss. Dann sollte es 
funktionieren.
1
hspi1.Init.CLKPolarity = SPI_POLARITY_HIGH;

Gruß Rolf

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.