This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LM98714: Problems with CMOS-mode

Part Number: LM98714

Hi,

I'm trying to use the LM98714 in 1 channel mode to read out a TCD1209 CCD-sensor. The clock generator is working well, but I have trouble with getting the CLKOUT signal in CMOS-mode. In main configuration register 1 I selected CMOS-mode. I think that I'm able to set the IC to CMOS-mode, because the signals on pins 30 and 31 don't look like clock signals. They look more like irregular data signals. I also set register 30 on page 2 to 0b00100000, but I don't see a signal on pin 40. I've also tried setting the register to 0b00111111 in order to see the control bits, this had no effect either. Checking these signals I saw that for some reason pin 44 is always high. Pin 29 is grounded.

Also I could not get an SH signal in slave mode, but this is not really a problem for my project.

For your reference, here is my register configuration:

typedef struct LM98714_RegisterStruct {
	uint8_t page;
	uint8_t address;
	uint8_t value;
} LM98714_Register;

static const int PIX_ON_GUARDBAND = 10;
static const int PIX_OFF_GUARDBAND = 10;
static LM98714_Register LM98714_TCD1209_Config[] = {
	/* TODO: problems
	 * No CLKOUT
	 * SH works only in master mode
	 */
	{0, 0, 0b01000001}, // Main Configuration 0
	{0, 1, 0b01011001}, // Main Configuration 1
	//{0, 8, 0b00100001}, // Black Level Clamp Control
	//{0, 9, 13}, // Auto Black Level Clamp Position
	//{0, 10, 0b00100000}, // Target Black Level MSB
	//{0, 11, 0b00000000}, // Target Black Level LSB
	{2, 0, 0b01000000}, // SH Mode
	{2, 8, 7}, // PIX1 End (phi1)
	{2, 11, 7}, // PIX2 End (phi2)
	{2, 13, 0}, // PIX3 Start (RS)
	{2, 14, 3}, // PIX3 End
	{2, 16, 3}, // PIX4 Start (CP)
	{2, 17, 6}, // PIX4 End
	{2, 30, 0b00100000}, // CMOS Data Mode Status Bit Enable
	{3, 0, 0b00010010}, // Output Mapping CLK1/CLK2
	{3, 1, 0b00110100}, // Output Mapping CLK3/CLK4
	{4, 4, PIX_ON_GUARDBAND+13}, // Optical Black Pixels Start
	{4, 5, PIX_ON_GUARDBAND+13+16}, // Optical Black Pixels End
	{4, 6, (PIX_ON_GUARDBAND+13+16+3) >> 8}, // Start of Valid Pixels - MSB
	{4, 7, (PIX_ON_GUARDBAND+13+16+3) & 0b11111111}, // Start of Valid Pixels - LSB
	{4, 8, (PIX_ON_GUARDBAND+13+16+3+2048) >> 8}, // End of Valid Pixels - MSB
	{4, 9, (PIX_ON_GUARDBAND+13+16+3+2048) & 0b11111111}, // End of Valid Pixels - LSB
	{4, 10, (PIX_ON_GUARDBAND+2088+PIX_OFF_GUARDBAND) >> 8}, // Line End - MSB
	{4, 11, (PIX_ON_GUARDBAND+2088+PIX_OFF_GUARDBAND) & 0b11111111}, // Line End - LSB
	{5, 0, PIX_ON_GUARDBAND+1}, // PIX1/SH On Guardbands (phi1)
	{5, 1, PIX_OFF_GUARDBAND+1}, // PIX1/SH Off Guardbands
	{5, 1, PIX_OFF_GUARDBAND+1}, // PIX1/SH Off Guardbands
	{5, 2, PIX_ON_GUARDBAND+1}, // PIX2/SH On Guardbands (phi2)
	{5, 3, PIX_OFF_GUARDBAND+1}, // PIX2/SH Off Guardbands
	{5, 4, PIX_ON_GUARDBAND}, // PIX3/SH On Guardbands (RS)
	{5, 5, PIX_OFF_GUARDBAND}, // PIX3/SH Off Guardbands
	{5, 6, PIX_ON_GUARDBAND}, // PIX4/SH On Guardbands (CP)
	{5, 7, PIX_OFF_GUARDBAND} // PIX4/SH Off Guardbands
};

Regards,

Andre Langhammer