Keil Logo

Target (Keil C166)

Clock (MHz)
Specifies the CPU clock of the device. In most cases, this value is identical with the XTAL frequency.
Memory Model
Specifies the C166 compiler memory model. The default SMALL is a good choice for starting new applications.
Operating System
A real-time operating system (RTOS) can be used in the application. Keil offers different versions:
  • Advanced RTX166 is a very efficient RTOS which supports preemptive task switching, message and signal passing, semaphores and much more. It includes a Flash File System and extensive TCP/IP support.
  • RTX166 Tiny is part of the PK166 Professional Developers Kit and runs on low memory (single-chip systems).
  • RTX166 Full has been replaced by Advanced RTX166 and should be not used for new designs. The selection is available for backwards compatibility reasons.
Data Threshold
Allows optimizing the memory model settings by locating small objects to better suited memory types. This is useful for the memory models LARGE, HLARGE, COMPACT, or HCOMPACT. The default is near, 6, locating all variables that require no more than 6 bytes to near memory. Examples for reasonable entries are:
  • sdata 10: locates variables with size < 10 Bytes to sdata space. Typically this is the XRAM space in a 166-device. Other variables without explicit memory space assignment are located in huge space.
  • near 6, idata 2, bdata 2: locate variables with size < 2 Bytes to idata, bit-field structs with single bit members to bdata, and variables with size < 6 Bytes to near. Other variables without memory type assignment are located in huge space.
Use On-chip ...
Specifies the use of on-chip components, which typically have been enabled in the CPU startup code. Ensure that the dialog settings are identical with the startup file settings.
Near Memory
Enlarges RAM and ROM space for fast variable access with 16-bit address. It resizes the C166 groups NDATA (RAM) and NCONST (ROM).
External Memory
Specifies all external memory areas of the target hardware. RAM is for memory that stores variables. ROM is for areas that store constants and program code (typically, EPROM or Flash memory). This information is used to derive linker/locater settings. In addition, the CPU startup code has to be configured for generating the required chip-select signals on target hardware.

When testing with Monitor-166, the program code will run in RAM. However, ROM has to be specified, otherwise the application has no memory for constants and program code.

  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.