| CMS Home |
||||||||||||||||||||||||||
|
|
Common Crossware C Questions The Crossware C Compiler is available for the following controller cards - Micro-Module, Micro-Midget, 307-Module and FlashModule. The latest version of this package available is Version 2.0. It can be used with DOS, Windows 3.1, Windows 95 and Windows 98. For later versions of Windows an alternative C Compiler will be required.
I can not read or write to either the System Control Register or the Module Base Address Register from my program. These two registers are supervisor mode registers. There are two functions in the minos library to read and write bytes to these registers, _readsys and _writesys. See your manuals for details. I want to change the baud rate/parity/stop bits etc for a serial port. How can I do this? Use the functions for baud, parity etc. See the Crossware C support manual (libraries section) for full details. I get error messages about undefined externals when I compile and link my program. Make sure that you have got the INCLUDE and LIB system variables set to the correct library files on your PC. These can be modified if you are using more than one C compiler on your PC. If so it is best to check that they are correct each time or create a file in your application directory called CWE.BAT. This file should contain the following lines SET INCLUDE=C:\H307M REM directory is example only SET LIB=C:\H307M CWE.EXE /I %1 This will run the Crossware editor with a given input file name using the correct setup for a particular application. When I run merge to generate an EPROM it bombs with the error message "Can not create ..." "error from command...". You may not have enough file buffers declared for your PC. Check the FILES parameter in CONFIG.SYS. This should be greater than 40 for most systems. I get error messages when I try to use floating point numbers in my program. As the floating point functions are large and slower than the integer functions, by default the floating point libraries are turned off. To enable them temporarily you can remove the option /NOF from the compile Options (under Tools menu). This will enable floating point numbers in the current editor window. To enable in on a more permanent basis, edit the Compile Options line in the text file CWE.INI to remove the argument /NOF. I am unable to print floating point numbers on the screen using printf. When I try I get the wrong data. The printf function using the conversion character %f expects to be passed a "double" and not a "float". To enable "float"s to be printed using printf you will need to type cast it to a double ie printf("Value =%02.02f \n",(double)value); When I run the C Compiler no code is generated. This may be because the PC has run out of available memory. To allow the editor to use swap files to free up extra memory go to the 'Tools' menu and select the option 'Swap'. This will place a radio button by the option 'Swap'. To do this on a more permanent basis edit the file 'CWE.INI' in the support directory and remove the line 'toggle-swap' from the file. How do I Change the setting for the Terminal Program Please refer to the Crossware C Support Manual section on the Terminal Program Target. No code is generated when using Windows 2000 or NT The Crossware ProLite package supplied in many Development and Starter Packs before December 2000 will not work in either of these two operating systems. If you are upgrading to one of these operating systems please contact our sales department for details on the options available. Contact Details Using with Windows 98 The Crossware ProLite package supplied with version numbers less that Version 2.0 may not install correctly on computer systems running Windows 98. We can upgrade customers to version 2.0 or greater, please contact our sales department for details. Contact Details Although Cambridge Microprocessor Systems Ltd is committed to supplying its customers with a standard well tested product, errors and bugs can always be found in even the most widely used software packages. If you find any errors or bugs please let us know by sending an email to support@cms.uk.com. All reported errors will receive a response from one of our engineers. |
|||||||||||||||||||||||||