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.

Parallel port address in IAR kickstart

Other Parts Discussed in Thread: MSP430F149

I am trying to use the IAR kickstart software to program a FET430P140 tool using the parallel interface adapter, however, the settings in IAR Workbench support LPT 1, 2, or 3 at the standard ISA addresses of 0x378, 0x278, or 0x3bc respectively. Device manager shows that my parallel port is addressed at 9800 - 9807. Is there a way to either change the IAR settings to seek the parallel port at 9800 or change the I/O range of the parallel port to one of the standard ISA addresses? My configuration is below. Due to ACPI, Windows does not allow me to make any changes under the Resources tab in Device Manager for the address settings. If I am better off using a different software instead of IAR that isn't limited to the standard ISA addresses, I could also try that. I have found that the PCI Bus under System Devices seems to be occupying those ISA addresses in the I/O Range of 0000 - 0CF7 (hexadecimal).

Software: IAR Kickstart Embedded Workbench 5.40.3

TI Hardware: MSP-FET430P140 w/ MSP430F149 and TI FET Parallel Interface Adapter

Computer Hardware: Siig Parallel PCI card model JJ-P11012-S6

OS: Windows 7 Professional 64-bit

Regards,

Anthony

  • Anthony:

    I've never seen such a parallel port  address, and am really surprised.   Did you ever figure out what was going on?

    If you can, it might help to borrow (or buy, for a few dollars) a USB-to-Parallel Port adapter.  Plug it into one of your USB ports and then look at device manager to see what it thinks its address is.

    There is a LOT of software that won't know what to do with a parallel port at 9800 -- very strange.

  • Curt Carpenter said:
    it might help to borrow (or buy, for a few dollars) a USB-to-Parallel Port adapter

    Note that the vast majority of these are purely and simply USB-to-Printer adaptors - they will be no use whatsoever for this purpose!

    You would need to check very carefully that the unit explicitly states that it is specifically designed for this type of application - if it doesn't say that, then it (almost) certainly isn't.

  • Andy Neil said:

    it might help to borrow (or buy, for a few dollars) a USB-to-Parallel Port adapter

    Note that the vast majority of these are purely and simply USB-to-Printer adaptors - they will be no use whatsoever for this purpose!

    You would need to check very carefully that the unit explicitly states that it is specifically designed for this type of application - if it doesn't say that, then it (almost) certainly isn't.

    [/quote]

    I'd try the USB-to-printer adapter more for the purpose of seeing if he could get his system to recognize a printer port of any kind at one of the more conventional addresses Andy. 

    Another step to take first though might be to make sure that he has selected a printer port like LPT1 in his Windows device manager "Ports" section (if that still exists in Wndows 64-bit).

  • I already tried the USB parallel dongle to no avail. As Andy said, it only  works as a printer port and is recognized as a USB device and not a parallel port device. So I figured I'd install a parallel/serial combo PCI card, but Windows decided to assign it to an odd I/O address. Windows 7 doesn't allow you to manually change the address settings in device manager like you could with earlier versions of windows. It instead relies on ACPI to automatically assign addresses. I tried disabling ACPI in BIOS, but Windows almost blew up and would not boot. Now I tried using XP Mode Virtual Machine in Windows 7 and it provided an LPT1 port to 0x378 and IAR Workbench seemed to be going smooth until I tried downloading and debugging and the error "Failed to initialize device."

    Anthony

  • OK Anthony -- that is pretty amazing.   Maybe you will have to search for a solution to the printer port problem on a Windows7 forum.   There must surely be a way to configure it to give you a "normal" LPT1, LPT2, ...

    Meanwhile, using your virtual XP Mode, are you sure you've set the device type correctly in IAR?  Go to Project>Options>General Options (should be the first page) and make sure the "Device" item is set correctly.  I had the "Failed to initialize" issue recently, and believe that was my trouble. 

  • Curt,

    You are probably right, I will try the Windows 7 forums as this seems more appropriate. As for the XP Mode, IAR can rebuild all successfully, but it still cannot download to the device. I think the device manager in XP mode is just listing some arbitrary COM and Parallel ports instead of my Siig PCI card. Thank you for that idea though. I'm sure it would be easier to just use the TI USB FET interface instead, but I do not have one unfortunately.

    Cheers,

    Anthony

  • In case anyone is interested on any follow-ups on the Windows 7 forum, here is my post:

    http://answers.microsoft.com/en-us/windows/forum/windows_7-hardware/parallel-port-io-addressing-and-mapping/b340e85b-cbec-4051-a90e-0510ac2ede54

    Anthony

  • Is there a way to develop an interface in IAR to allow communication to my address of 9800-9807 but make the software think it's sending/receiving to the standard address 0x378? I'm not too familiar with the coding for that, but I'm willing to try it.

    Anthony

  • It's possible that the PCI parallel card simply requires this address (because of an ultra-cheap address decoder). Or the provided INF file contains address information that causes windows to use this strange address.

    If I go into device manager and open the properties tab of my COM port (I don't have a parallel one), I can change between 5 base configurations and alter the interrupt for each configuraiton manually. of course admin rights are required. And if the INF file for the card didn't provide different base configurations, maybe you're hosed.

    Or maybe you can simply go into the registry and hack the desired address in (look for all occurrences of '9800' and pick the ones that are related to your card). Worst thing that can happen is that the card won't work or windows reports a resource conflict. If so, change it back.

    You should also take a look at the .inf file that came with the card. It might give you some hints.

    The last option is to turn your machin from an ACPI enabled system in to a standard PC in teh device manager. It will, however, disable standby mode. And if you want to go back, it will be necessary to run the windows setup again. But on a standard PC (non-ACPI), windows will allow you to change all resources.
    It's not guaranteed that your card will then work with the changed settings, though.

  • Hooo Boy, THAT sounds painful Jens-Michael! 

    Before I did that, I think I'd go to eBay and buy a used desktop that didn't run Win7.  Seems to me that would be a cheaper approach if you value your time at anything less than about $0.20 per hour :)   And less frustrating too!

  • Curt Carpenter said:
    I think I'd go to eBay and buy a used desktop that didn't run Win7.  Seems to me that would be a cheaper approach if you value your time at anything less than about $0.20 per hour

    I agree. I never tried running the FET from withing the virtual XP machine in Win7 XP mode, Maybe that's an alternative solution, but I doubt it. :)

    The big advantage of a second PC is that you can run editor/debugger on one machine and open the docuemnts on your Win7 machine. Makes adding a third and fourth monitor easier than on one single machine. (I'm working with two monitors for years and if I ever complete the switch to the new PC - painful, to transfer all the stuff and installed tools and make them semalessly work together again -  I will add a third one for sure)

**Attention** This is a public forum