02-27-2012 12:42 PM
We have an instrument control Qbasic program that can run only on DOS. I have installed DOS 6.2 on IBM thinkpad 760XL which has socket for PCMCIA-GPIB card. I have also installed card services from IBM (i.e. EZPlay) which provide driver support for the GPIB card. EZPlay can see this card intserted on socket.
When I run PCMCDIAG.exe i see following:
1. under card sevices clients: it shows IBM card sevice software (so no problem).
2.
PCMCIA MEMORY WINDOW USAGE
-----------------------------------------------
Base address 0xD0000, Size 0x01000, NOT IN USE
3.
PCMCIA I/O WINDOW USAGE
-----------------------------------------------
list out many base addresses, with 'NOT IN USE' message.
4.
PCMCIA INTERRUPT REQUEST LEVEL (IRQ) USAGE
-----------------------------------------------
Interrupt request level 0x3, NOT IN USE
Interrupt request level 0x5, NOT IN USE
Interrupt request level 0x9, NOT IN USE
5.
ALLOCATION OF RESOURCES TO PCMCIA SOCKETS
-----------------------------------------------
Socket 0
--------
CARD EXISTS BUT NOT IN USE
Socket 1
--------
CARD DOES NOT EXIST IN SOCKET
Socket 2
--------
CARD DOES NOT EXIST IN SOCKET
Socket 3
--------
CARD DOES NOT EXIST IN SOCKET
Note: On thinkpad 760XL, i can see only two sockets, but PCMCDIAG and EZPlay both shows four sockets! I dont know why?
IBDIAG freezes after showing 'REMOVE GPIB CABLES'
Following is the config.sys file:
BUFFERS=20
FILES=30
STACKS=9,256
DOS=HIGH,UMB
SHELL=A:\COMMAND.COM /P /E:512
DEVICE=A:\DOS\HIMEM.SYS
DEVICE=A:\DOS\EMM386.EXE NOEMS X=D000-D7FF
DEVICEHIGH=C:\THINKPAD\IBMDSS14.SYS /D
DEVICEHIGH=C:\THINKPAD\IBMDSS04.SYS
DEVICEHIGH=C:\THINKPAD\IBMDOSCS.SYS
DEVICEHIGH=C:\THINKPAD\DICRMU01.SYS /SH=1 /IX=5,10,11,15 /MA=D000-D7FF
DEVICEHIGH=C:\THINKPAD\$ICPMDOS.EXE
rem --- PCMCIA Clients Top --------
DEVICEHIGH=C:\THINKPAD\PAWATAS.SYS /NOBEEP
rem --- PCMCIA Clients Bottom -----
LASTDRIVE=P
device = c:\pcmgpib\gpib.com
----------------------------------------------------------------------------------------------------------------------------------
on this card, two instruments are connect. Under IBCONFIG, i cannot run auto configuration using F3 command, it freezes and does nothing.
How to get this set up working?
02-28-2012 09:20 AM
Hello Jpdas06,
Have you taken a look at this article? It has a link to the Getting Started Manual for PCMCIA-GPIB.
Regards,
Applications Engineer
National Instruments
02-28-2012 10:34 AM
Hi JL@NI
I have gone through both the links, unfortunately those didn't help me to fix the problem.
To check the hardware, the PCMCIA-GPIB manual mention that; use ibdiag, however when i run it, the message comes "Remove the GPIB cables" eventhough there is no cable connected, and then the screen freezes (I mentioned tihs in in my question)
I think another important clue is the message: CARD EXISTS BUT NOT IN USE, when I run PCMCDIAG.exe. As mentioned in one of the manuals, if the drivers are not active, this message comes up.
Thank you very much.
02-28-2012 02:47 PM - edited 02-28-2012 02:47 PM
Hello Jpdas06,
Do you have the NI 488.2 drivers installed on your machine?
Regards,
02-28-2012 04:56 PM
Hi JL@NI
What do you mean by NI 488.2 Drivers?
I am doing this:
1. There is a program from IBM, called PC card director (EZPLay) for DOS and for Thinkpad 760XL machine. This is suppose to have drivers for the PCMCIA card adaptor. I am instaling this program first.
2. After that, I am installing PCMCIA-GPIB and NI-488.2 software for DOS (I think you mean this software).
I don't think ideally I need anything else to get this working.
02-29-2012 11:08 AM - edited 02-29-2012 11:09 AM
Hello Jpdas06,
Have you performed the following steps from the manual?
To verify and test the hardware installation, run the ibdiag hardware diagnostic program that came with your NI-488.2 software. ibdiag verifies that your hardware is functioning properly and that the PCMCIA system software is functioning properly.
Follow these steps to run ibdiag:
1. Remove all PCMCIA-GPIB cards from the system.
2. With the system powered on, insert the PCMCIA-GPIB card that you want to test. You must remove the card and then re-insert it so that Card Services will recognize the card correctly.
3. Disconnect the PCMCIA-GPIB cable, shown in Figure 2-2.
4. Go to the directory where the NI-488.2 software is installed (the default directory is c:\pcmgpib) and enter the following command: ibdiag
ibdiag asks if you want to test the card listed or another card. If you have more than one card, ibdiag asks you if you want to test all PCMCIA-GPIB cards in the system or if you want to test each PCMCIA-GPIB card individually. With the individual PCMCIA-GPIB test, you can test specific I/O addresses and a specific interrupt level. ibdiag also gives you a chance to change the resources before you start the test.
If the following message appears:
Board passed the hardware diagnostics
then ibdiag completed with no errors; your hardware and PCMCIA system software are both functioning properly.
Regards,
02-29-2012 11:36 AM
As I mentioned earlier, When I try to run ibdiag, it says: REMOVE ALL THE GPIB CABLES
this is asked even when there is no GPIB cable connected and only the card insterted in one of the sockets.
and after this message, the screen freezes. It doen't do anything.
I have to reboot the system.
somewhere in the manual I read that, ibdiag may freezes suggeting that there is conflict for interupt levels (IRQ) between GPIB software and card services.
02-29-2012 11:54 AM
Hello Jpdas06,
To check the interrupt level that Card Services uses to detect PCMCIA card insertions, follow these steps:
1. Reboot the system with the PCMCIA-GPIB card inserted, and run ibdiag again. The PCMCIA-GPIB card is then detected when Card Services first loads and not by way of an interrupt. If ibdiag succeeds after rebooting, Card Services is using an invalid interrupt level. Proceed to the next step in this list. If ibdiag fails again, the interrupt setting is valid; proceed to the section in the maunal, Checking the Card Service Memory.
2. Determine which interrupt setting Card Services is using. If you have Card Services version 2.1 or higher, you can determine the interrupt level Card Services is using by running the pcmcdiag utility. Refer to the section Troubleshooting with the PCMCIA Software Diagnostic Program, in the appendix for information on pcmcdiag. You can often determine the interrupt level Card Services is using by examining the device= lines in your config.sys file. Refer to the documentation that came with your PCMCIA software for more information.
3. Change the invalid interrupt level to an available setting.
Refer to the documentation that came with your PCMCIA software for information on changing interrupt levels.
Regards,