Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Designing a GPIB Device Using the NAT9914

I'm designing a GPIB device and use the NAT9914-IC with the 75160/75162 - Transceivers.

 

For this I read the Application Note 110, the Reference Manual and the Product Manual. During the initalization I do following steps:

 

    gpib_write(R_AUXMR, 0x15);    //switch to 9914-Mode

    gpib_write(R_AUXCR, 0x1c);    //reset

    gpib_write(R_AUXCR, 0x80);    //reset-mode

    gpib_write(R_AUXCR, 0x9f);    //page-in ACCR
    gpib_write(R_ACCR, 0x28);    //ICR <- 16MHz

    gpib_write(R_AUXCR, 0x99);    //switch to 7210-Mode
    gpib_write(R_AUXMR, 0x50);    //page-in
    gpib_write(R_ICR2, 0x81);    //SET MICR-Bit
    gpib_write(R_AUXMR, 0x15);    //switch to 9914-Mode

    gpib_write(R_ADR, adr);        //Addresse setzen
    _delay_ms(10);

    gpib_write(R_SPMR, 0xaa);    //serial poll response
    
    gpib_write(R_PPR, 0x00);    //parallel poll rsponse

    gpib_write(R_AUXCR, 0x15);  //stdl
    gpib_write(R_AUXCR, 0x17);  //vstdl

    gpib_write(R_IMR0, 0x3f);   
    gpib_write(R_IMR1, 0xff);  

    gpib_write(R_AUXCR, 0x1e);     //page-in IMR2
    gpib_write(R_IMR2, 0x00);    //GLINT-BIT löschen

    gpib_write(R_AUXCR, 0x9e);    //page-in EOS
    gpib_write(R_EOSR, 0x0a);    //LF als letztes Zeichen

    gpib_write(R_AUXCR, 0x9f);    //Page-in ACCR
    gpib_write(R_ACCR, 0x8c);    //EOS-Art (EOI+EOS)


    gpib_write(R_AUXCR, 0x00);    //Clear Reset

 

I use the Tektronix Open Choice Instrument Manager as a GPIB-Scanner but my device isn't shown there and the NAT9914 doesn't react. The CPTR-Register shows the Bytes right that are sended by the InstrumentManager. The BSR-Register shows that ATN and NDAV are asserted and the ADSR has also the ATN-Bit active, but not the LA-Bit that signifies, that the Controller defines it as Listener (when I understand everything right).

 

The Sequence that is send by the Scanner is:

 

0x3f (UNL) - 0x40 (MTA0) - 0x20 (MLA0)

0x3f (UNL) - 0x40 (MTA0) - 0x20 (MLA0) - 0x60 (MSA0) ... 0x7e (MSA30)

0x3f (UNL) - 0x40 (MTA0) - 0x21 (MLA0)

0x3f (UNL) - 0x40 (MTA0) - 0x21 (MLA0) - 0x60 (MSA0) ... 0x7e (MSA30)

...

0x3f (UNL) - 0x40 (MTA0) - 0x3e (MLA0)

0x3f (UNL) - 0x40 (MTA0) - 0x3e (MLA0) - 0x60 (MSA0) ... 0x7e (MSA30)

 

Why doesn't the Nat9914 react in that way I want?

 

I need Help!

 

0 Kudos
Message 1 of 1
(3,464 Views)