04-09-2003 08:08 AM
04-11-2003 07:20 AM
08-05-2004 11:27 AM
03-21-2005 08:40 PM
05-21-2007 06:19 AM
05-22-2007 09:58 PM
05-23-2007 10:49 PM
09-21-2015 11:22 AM
I'm trying to use Robert's code to query the EEPROM, and write to the CALDACs on the NI-6036E board. I have a few questions about the following line of code:
thisbit = ((writevalue >> index) & 0x01) * 0x02;
I can understand the reason for the right-shift by the index. Can someone explain the reason for the mask with 0x01 and the multiplication by 0x02?
Also, the EEPROM read diagram in the PCI E Series Register-Level Programmer Manual here - http://shark.sssup.it/contrib/pci6025e/national/ni_prog.pdf
and NI's knowledgebase document here - http://digital.ni.com/public.nsf/allkb/7923356B383F5ECA852563A7004A3B8B
mention that:
"During the first 4 clock pulses of the SerClk line, the SerData line needs to be 0. Then, you need to clock in the A8 address bit. Then clock in a 0, then a 1, and then a 1, and then A7-A0. These extra 0's and 1's around the address values are what the instruction refers to."
But Robert's code doesn't incorporate the special treatment for the A8 address bit. Does that timing need to be strictly adhered to?
Thanks.