Cx51 8051/251 Development Tools The Keil Cx51 ANSI C Complier supports all classic Supports all 8051 Variants and extended 8051 device variants. Compiler Up to 16MB Memory extensions provide full access to all CPU resources and support up to 16MB memory. The Keil Cx51 generates code with the efficiency and speed of Easy-to-use IDE Supports hand-optimized assembly. New compiler and linker optimizations shrink programs into the smallest Complete Development Cycle single-chip devices. Complete Device Support The Keil Vision4 IDE fully integrates Cx51 Version 9 and provides control of the Compiler, Assembler, Including Peripheral Simulation Real-Time OS, Project Manager, and Debugger in a single, intelligent environment. With support for all Drivers for Flexible Debugging 8051 devices and full compatibility with emulators and third-party tools, Keil Cx51 is clearly the best in Target Hardware choice for your 8051 project. Code Size Optimization Large Model - Code Banking 100% -22% 75% 50% 25% 0% 6 7 8 9 10 Optimize Level To start your project, just select the device from the Vision Device Database. Keil Cx51 is the unsurpassed industry standard 8051 C Compiler. 10 optimization levels give you the ability to put more features into less memory space and provide the utmost code density for cost-sensitive single-chip designs. Using level 10 with the LX51 Extended Linker optimizes a complete application. LX51 creates sub-routines for common code blocks and replaces LJMP/LCALL instructions with shorter AJMP/ACALL instructions wherever possible. For the selected device, Vision Debugger provides dialogs with detailed peripheral information that are available with simulation and target debugging. www.keil.com Cx51Development Tools Overview Program Debugging Cx51 Compiler Vision Debugger Benefits of Vision Device Simulation Cx51 Compiler Highlights The Keil 8051 and 251 development kits contain different C The Vision Debugger provides source-level debugging and n n Simulation allows software testing on your desktop with Support for all 8051 derivatives and variants includes traditional features like simple and complex Compilers for optimum support of device variants. Cx51 is no hardware environment used as a generic term for: breakpoints, watch windows, and execution control as well as n Fast 32-bit IEEE floating-point math sophisticated features like performance analyzer, code coverage, n Early software debugging on a functional basis improves n C51 Compiler for classic 8051 devices, 8051 IP cores, Dallas n Efficient interrupt code and direct register bank control and logic analyzer. overall software reliability Contiguous Mode, and other extended devices n Bit-addressable objects The Vision Debugger may be configured as a Simulator where n Simulation allows breakpoints that are not possible with n CX51 Compiler for Philips 8051 MX and SmartMX programs run on your PC or as Target Debugger where hardware debuggers n Sophisticated syntax checking and detailed warnings n C251 Compiler for 251 devices and 251 IP cores programs run on your target hardware. n n Simulation allows for optimal input signals (hardware Use of AJMP and ACALL instructions The Cx51 Compiler gives complete access to all hardware The cycle-accurate Vision Simulator is a software-only product debuggers add extra noise) n Memory banking for code and variables beyond 64KB components within your C source code. For example, you can that simulates most features of your 8051/251 device without n Signal functions are easily programmed to reproduce actually having target hardware. Vision simulates a wide range control peripherals using SFR registers, write optimum interrupt n Register parameters and dynamic register variables complex, real-world input signals code with CPU register banks, accelerate variable access with of peripherals including I/O Ports, CAN, IC, SPI, UART, A/D n Global program-wide register optimization the data, idata, or pdata memory type, and use efficient bit and D/A converter, EPROM, and interrupt controller. The n Single-stepping through signal processing algorithms is operations or atomic bit manipulation. simulated peripherals depend on the device selected from the possible. External signals stop when the CPU halts n Common code block sub-routine optimization Vision Device Database. 8051 devices provide various physical memory spaces: fast n n It is easy to test failure scenarios that would destroy real Use of multiple data pointers DATA space, up to 16MB large XDATA space, and CODE space hardware peripherals n Use of on-chip arithmetic units for constants. For flexible memory usage, Cx51 offers: n Generic and memory-specific pointers n Three well-defined memory models that provide the default memory allocation for variables n Re-entrant functions and register bank independent code n Generic pointers that access all memory spaces n Extensive debug and source browse information n Memory types that control the space for variables or pointer n Simple assembly language interface accesses. Memory-specific pointers reduce RAM The disassembly window requirements, and optimize program execution shows CPU instructions and trace history LX51 Extended Linker RTX Tiny2 Real-Time Kernel Peripheral dialogs display status information and aid The standard Code Banking Linker lets you increase the The RTX Tiny2 multi-tasking real-time kernel makes in driver development program space of a classic 8051 device beyond 64KB. The LX51 implementing complex, time-critical software projects easy. RTX Extended Linker expands device support and adds further Tiny2 is royalty-free and is fully integrated into the Keil Cx51 functionality to the Keil Cx51 Compiler: tool chain. It works on all classic 8051 device variants, and The Logic Analyzer shows supports multiple DPTR and arithmetic units. changes to variables and nLinker Code Packing analyzes an entire application and signals over time generates sub-routines for common code blocks even on RTX Tiny2 is the successor of the popular RTX operating code banking applications. Short AJMP and ACALL system and provides: instructions replace longer LJMP and LCALL when possible The Project Window shows n Single chip and code banking support all project files, and helps n Incremental Linkage allows you to split programs into you manage your project n Round robin and cooperative task switching several functional parts as it is required for multi-application n programming or FLASH ROM updates Task management with create and delete n Far Memory Support gives you access to 16MB of n Timeout, Signal, and Ready events for task switching The Performance Analyzer variable space even on a classic 8051 device and the far displays execution times n Interrupt support for sending signals to tasks for program blocks memory type may be used for special memory types n Detailed Data Type Checking is performed across all public symbol definitions and improves software quality Memory and watch windows display program variables The Vision development platform is easy to use and it helps you to quickly create embedded programs that work. The Vision editor and debugger are integrated in a single application that provides a seamless embedded project development environment for editing, simulating, Flash programming and testing in target hardware. The Vision debugger includes a kernel-aware dialog for RTX Tiny2 that displays complete information about all the tasks in your program. 2 Keil 8051/251 Development Tools Keil 8051/251 Development Tools 3