Home
Products
Services
Company Info
News
Buy Online

 

CodePalette™ for PSoC™


CodePalette is the most advanced code generation technology available for the Cypress MicroSystems PSoC™ microprocessor (Programmable System on Chip). Browse the topics below to learn how CodePalette for PSoC can reduce your time-to-market ( or time-to-demo or just increase your time-at-home), increase your code quality and reduce testing time.

Supported Processors
What is PSoC? CodePalette Features.
Why should I use CodePalette? Where does CodePalette fit into the development tool chain?
What does CodePalette for PSoC do for me? What on-chip devices are supported?
Task Scheduling. What is the RAM and ROM footprint?
What power management options are available?  
How extensible is the generated code? How can I try CodePalette for PSoC?

 

 

      • View the CodePalette for PSoC documentation online.
      Download the CodePalette for PSoC documentation in .CHM form (1.3mb).
      • View the End-User License agreement.
      • View CodePalette for PSoC brochure in PDF format.    (get PDF reader)
      • View release notes on installation and downloading.

 

What is new in version 1.2?

Version 1.2 greatly simplifies installation by removing any dependencies on Microsoft .NET. It also fixes some minor issues (see release notes).

Version 1.1

This version includes support for the new 8C27xxx family of microcontrollers. A driver has been added to support the hardware based Inter-Intergrated Circuit (I2C) controller contained in this family. The driver supports master, slave and both modes simultaneously.

The SPI master and SPI slave drivers have been improved to handle data overrun detection and recovery. Enhancements in the SPI slave driver allow data transfers to be terminated on the de-assertion of an external chip select signal which allows for variable length messages (at run-time) from an external SPI master. Back to top

Supported PSoC Processors

CY8C25122
CY8C26233
CY8C26443
CY8C26643 CY8C27143 CY8C27243
CY8C27443
CY8C27543
CY8C27643

Back to top

 

What is PSoC™?

PSoC devices consist of mixed signal arrays with on-chip controllers. These devices are designed to replace multiple traditional MCU-based system components with one, low cost, single-chip programmable component. PSoC devices include configurable blocks of both analog and digital logic components, as well as programmable interconnects. The architecture allows the user to create customized peripheral configurations that match the requirements of specific applications. The family includes a fast CPU, flash program memory, SRAM data memory, and configurable IO pins in a variety of packages. Detailed information about the PSoC architecture and development kits are available on Cypress MicroSystems' web site. Back to top.

Why should I use CodePalette?

The CodePalette tool can generate system software tailored for extremely memory constrained microcontrollers. The system software was designed with traditional features of embedded software along with microcontroller specific optimizations and peripheral hardware device drivers. This eliminates much of the experimental work a developer would need in order to finely tune code and work out specific issues or nuisances of the microcontroller design. Rather than re-invent some of the required "plumbing" of an embedded system, the developer can concentrate on implementing the desired functionality using a higher level of abstraction. The developer can alter any aspect of the system software to further optimize their application.

What does CodePalette for PSoC do for me?

CodePalette for PSoC allows you to very quickly create all of the customized support code necessary to control your specific configuration of PSoC. After configuring the device to your application needs in the PSoC Designer (supplied by Cypress), you run through the selection pages of the CodePalette Wizard. You choose only the code and features that you require in your application. You pick the methods of scheduling tasks, the specific device driver support needed, the power management approach, along with specific details of how you want each device to operate. The wizard generates high quality C code from a tested base. You can then edit the specific tasks to perform the high level operations that perform the functionality of your application. Using CodePalette gets you high quality, maintainable code developed in the shortest time frame. Back to top.

CodePalette Features:

  • Full source code
  • Task scheduling
  • Device drivers and with low-overhead driver model
  • Power management model
  • High speed, small foot print, very low-RAM usage
  • Extensible architecture Back to top.

Where does CodePalette fit into the development tool chain?

Back to top.

Task Scheduling

  • Non-preemptive, Low-overhead
  • Periodic Tasks, based on the Sleep timer, 8-bit hardware timer or 16-bit hardware timer.
    • Execute once per period. Periods based on any number of system timer ticks.
  • Continuous Tasks, run continuously in the background while the system is powered up.
    • Execute once per scheduling loop.
  • Event-driven Tasks
    • Execute based on an application or device event being set.
  • RAM usage – 2-bytes per task Back to top.

What on-chip devices are supported?

  • Serial Ports – supports two UARTs, transmit-only, receive only or bi-directional, full duplex, buffered I/O.
  • PWM – pulse width modulation drivers, 8 or 16-bit width.
  • Analog to Digital Converter - 12-bit incrementing with built in variable size FIFO.
  • SPI Bus - SPI master support, SPI slave support, with variable length message size. Back to top.

What power management options are available?

The PSoC system can operate in a number of power level states. These states are controlled by software. CodePalette generates code that provides an an optional power policy implementation. The code allows you to easily specify when the processor will go into sleep mode and what devices will be also put into sleep mode. This allows you to create optimum battery life conserving code. There are four basic power levels created by the CodePalette. The meaning and implementation of all levels are user re-definable. The default levels are:

  • Minimum – CPU sleep, analog off, scheduling suspended
  • Level1 - CPU sleep, analog on, scheduling suspended
  • Level2 – CPU sleep, analog on, scheduling enabled
  • Full – continuous scheduling

    Any task can register to receive Wake-up Events when the system moves to a higher power level. The implementation supports user definable actions on power level increase and decrease. This allows user code to specify additional devices to be placed into specific power states. Back to top.

What is the RAM and ROM footprint?

General system RAM/ROM sizes:

  • 2-bytes RAM per task
  • 1-bytes RAM per 8 Events
  • Scheduler: ~272 bytes of ROM
  • Event APIs: ~152 bytes of ROM
  • Power manager: <600 bytes of ROM (configurable to be smaller)
Configuration
RAM
ROM
Minimum: 8 events, 1 Event Scheduled Task template, (no Periodic Support, Power management or drivers)
4
576
Typical: 8 events, Periodic Support using the Sleep timer, Power Management, Driver Model, 1 ADC with ADC Monitor task, 2 PWM8 instances, 1 Periodic task
42
2836
Full: 8 events, Periodic Support using an 8 bit hardware timer, Power Management, Driver Model, 1 Bidirectional UART with UART Monitor Task, 1 ADC with ADC Monitor task, 2 PWM8 instances, 1 SPI Master w/ Monitor Task, 1 SPI Slave w/ Monitor Task, 2 Periodic tasks, 1 Continuous task
84
5103

Actual RAM and ROM usage will depend on the specific configuration. Back to top.

How extensible is the generated code?

CodePalette generates code based on a very extensible software architecture. You can easily add additional tasks to system, modify any of the device drivers, interrupt routines, power management approach or even the scheduler. CodePalette does not ship with any object code libraries. The output of the Wizard contains all of the source code necessary to build your application. Back to top.

How can I try CodePalette for PSoC?

CodePalette for PSoC is also available for purchase on a 30-day money back guarantee. You can use the product for 30-days and return it for a full refund if it doesn't meet your needs. CodePalette comes with 60-days of e-mail technical support (augmented by phone when needed). Additional support and product upgrades are available with a one year support agreement. Purchase online Back to top.

 

Send mail to webmaster@codetelligence.com with questions or comments about this web site. Privacy Policy
Copyright © 2003-2005 Codetelligence, Inc. Codetelligence and CodePalette are trademarks of Codetelligence, Inc., PSoC is a trademark of Cypress MicroSystems, Inc. Windows is a registered trademark of Micosoft Corp.