RTXC Application Notes on the Cogent Csb337 Board

There are 2 projects for building the Example Applications for the Csb337: Quadros_Dm and Quadros_Ss. These will build a dual-mode and single-stack example, respectively. The dual-mode example exercises the multi-stack features. There are program subprojects for both ARM and Thumb modes. The IAR J-Link USB and Macraigor Raven were both used for debug connection. NOTE 1: It was observed during qualification that Thumb code could not be debugged properly on the Csb337. The Thumb code runs from cstartup OK, but it cannot be stopped and restarted (ie. it cannot step nor run to a breakpoint). This behavior was observed on both the J-Link USB and Raven interfaces. NOTE 2: A cstartup symbol was added to the example programs for the Csb337. This symbol is equivalent to the ?cstartup symbol used in the IAR tools. It was added because the macro command parser of version 4.x of the IAR tools does not parse the '?'. The PC is initialized to cstartup in the macro file csb337_startup.mac. Single-Stack Example The single-stack example has 4 threads. One is a master thread. The other thread numbers 2 through 4 each cause an LED to be lit on the banks LED1 and LED2 of the CSB337 board. Dual-Mode Example Serial output is on SERIAL 1 of the Csb337. Settings are 38400-N-8-1. Supplementary RTXCgen Options 1.1 INTERPRET EXCEPTIONS AS AIC RTXCgen normally interprets ARM exception vectors as "core" vectors (eg. SWI, IRQ, FIQ, etc) based at address 0. However, for many ARM processors, it would be more convenient to make the exceptions correspond to the particular interrupt controller of the processor. For the At91rm9200, we have provided the option to bind the exception objects to the set of 32 interrupt sources for the AIC controller. To illustrate, without this option we can have only one exception object: Name Interrupt Level Vector Number Entry Point Description IRQISR N/A 24 IrqHandler The one and only IRQ Handler However, using this option we can have an exception object for each AIC interrupt source: Name Interrupt Level Vector Number Entry Point Description CLKISR 6 1 ClkIsr Kernel clock COMISR 3 7 ComIsr Serial Driver for UART1 UDPISR 4 11 UdpIsr USB Device Port .....etc....etc 1.2 DEBUG PROTECTION FOR AIC Supports the "Protect Mode" for the AIC. Details of this can be found in the AT92rm9200 datasheet. Turn this option off for final release of code.