Jump to content

ts555

Members
  • Gesamte Inhalte

    27
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von ts555

  1. Hallo, kann es sein, dass in der FW-Version 2.0.1 der OSR-Wert immer auf 4096 stehen bleibt? In "mcp3911.c" werden neue Werte nur ODER-verknüpft: case S_SET_RATE_R: spi_fifo_read_fifo(&mcp3911.spi_fifo, &mcp3911.spi_fifo_buf[0], 3); mcp3911.config = (uint16_t)(mcp3911.spi_fifo_buf[1] << | mcp3911.spi_fifo_buf[2]; switch(mcp3911.rate) { case SAMPLE_RATE_976_SPS: mcp3911.config |= MSK_CONFIG_OSR_1024; break; case SAMPLE_RATE_488_SPS: mcp3911.config |= MSK_CONFIG_OSR_2048; break; case SAMPLE_RATE_244_SPS: default: mcp3911.config |= MSK_CONFIG_OSR_4096; break; } Nach "mcp3911.config = ..." habe ich testweise diesen Ausdruck eingefügt: mcp3911.config &=~MSK_CONFIG_OSR_4096; Ansonsten ist die maximale Abstastrate wohl auf kleiner 610sps begrenzt, bzw. "S_GET_ADC" wird höchstens ca. alle 1,65ms aufgerufen (gemessen per Oszi). Wenn man sich per Oszi ansieht, wie oft der ADC ausgelesen wird, fällt auch ein relativ starker Jitter der Abtastzeitpunkte auf. Dies lässt sich durch eine Erhöhung der SPI Baudrate des MCP3911 verbessern. Die Baudrate ist per Default auf 100kBd eingestellt. Kann diese problemlos erhöht werden? Bei meinen Tests funktionierte es mit z.B. 4Mbd noch ohne erkennbare Fehler.
×
×
  • Neu erstellen...