modified on 4 January 2013 at 16:28 ••• 109,208 views

Lincoln FAQ

From Manuals

Jump to: navigation, search


Frequently Asked Questions - Hardware

Are digital inputs compatible with 5V logic?

Yes. On the LPC1769 microcontroller the high-level input voltage (VIH) has a minimum of 2.3V (70% of VCC) and a maximum of 5.0V. The low-level input voltage (VIL) has a minimum of 0V and a maximum of 1V (30% of VCC).

What are the maximum data rates for on-board ADCs and DACs?

The Micromint Lincoln can sample the ADC at 200 kHz when configured to read with 12-bit resolution and 500 kHz when configured to read with 10-bit resolution. The 10-bit DAC can be updated in 1 µS. The optional 12-bit DAC can be updated at a maximum of 150 kHz for 1 channel. The data transfer is 16-bits at 50 MHz which is a total of 320 nS per data transfer but the optional 12-bit DAC has a settling time of 6 µS so the total time needed is 6.32 µS. All 4 channels of the DAC can be updated at a maximum of 137 kHz. This is accomplished by sending the data for all 4 channels and updating all of the outputs on the last data transfer.

What character LCD is recommended for use with the Lincoln's LCD connector?

AZ Displays ACM2004D series is recommended for use with the Lincoln.

What keypad is recommended for use with the Lincoln's keypad connector?

A Grayhill 4x4 matrix keypad or equivalent keypad will work with the Lincoln. For example Grayhill’s part number 96BB2-006-F.

Frequently Asked Questions - Software

Why does CoFlash issue a USB communication failed error while using CoFlash?

Check to see if another FTDI device is plugged into the computer. If it is unplug it and try to use CoFlash again.

How do I install the USB Debug Ports driver on Windows 8?

Windows 8 implements a Driver Signature Enforcer that does not allow you easily install unsigned drivers. Please follow the procedure below to install the drivers for the Lincoln 60 USB debug port.

  • 1. Download and unzip the Lincoln 60/60E USB Debugger Drivers
  • 2. Move your mouse to the top right hand corner of your screen to bring out the sidebar
  • 3. Click on the “Settings” icon
  • 4. Click on “Change PC Settings” in the lower right hand corner of the “Settings” bar
  • 5. Click on “General” in the PC Settings App
  • 6. Scroll down on the right hand side of the screen and select “Restart now” under the “Advanced startup” section
  • 7. After the computer restarts click on “Advanced options”
  • 8. Click on “Startup settings”
  • 9. Click on “Restart”
  • 10. When prompted press the number 7 to select “Disable driver signature enforcement”
  • 11. Plug in the Lincoln 60 to the computers USB port
  • 12. Open Windows 8’s “Device Manager”
  • 13. Double click on “Micromint USB JTAG” under “Other Devices” in “Device Manager”
  • 14. Click “Update Driver”
  • 15. Click “Browse My Computer for Driver”
  • 16. Click the “Browse” button and find where the driver was unzipped on your computer
  • 17. Click “Next”
  • 18. When Windows 8 warns you that the driver is not signed click “Install driver software anyway”
  • 19. In “Device Manager” double click the second instance of “Micromint USB JTAG” under “Other Devices”
  • 20. Perform steps 14 through 18 for the second instance
  • 21. In “Device Manager” double click “USB Serial Port” under “Other Devices”
  • 22. Perform steps 14 through 18 for the USB Serial Port

Can I develop and debug code for my Micromint ARM Cortex-M3 controller using a Linux PC? a Mac OS X workstation?

Yes. CodeBlocks, Eclipse, OpenOCD and GNU cross compilers for ARM are available for Windows, Linux and Mac OS X. EWARM is only available for Microsoft Windows.

What filesystem types, volume size and filename formats are supported on microSD cards?

The code examples use the FatFS 0.04b library which supports FAT12, FAT16 and FAT32 filesystems. We have tested 4GB microSD cards but the library supports larger volumes. The filename format is 8.3. Long file names are implemented in FatFS 0.07 or above.

How can I detect if the application is compiled with IAR or GCC?

You can use compiler predefined macros as in the example below.

#if defined(__IAR_SYSTEMS_ICC__)
  /* Code to use with IAR compiler */
#elif defined(__GNUC__)
  /* Code to use with GCC compiler */
  #warning Compiler is not supported

For more details on predefined macros, consult the C preprocessor manuals.

GNU C Preprocessor

Why are some source code statements skipped and some variables unavailable when debugging?

When you enable code optimization, the object code does not necessarily follow the same sequence as the source code. Optimizing compilers like IAR or GCC use loop unrolling, loop collapsing, branch elimination and other techniques that rearrange code to increase execution speed and/or reduce code size. These changes could also eliminate the need for some variables. A common practice during development is to disable compiler optimizations when debugging. The desired optimizations should normally be enabled after most of the debugging is done and the code is stable. For a more consistent debugging environment, any libraries used by the project should be compiled with the same options and compiler version as the application.