ucos arm 代码

  • r8_139051
    了解作者
  • 359.7KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-04-09 08:28
    上传日期
arm_ucos : Contains the generic code files required for a project development on the ARM core. common : Contains the uC/OS-II ARM platform port code. ep73xx : Contains the EP7312 BSP code. lpc2xxx : Contains the LPC210x & LPC213x BSP code. s3c2410x : Contains the S3c2410x BSP code. Ex1_EP73XX : Sample uC/OS-II application (Ex1) code & build files for EP7312. Ex1_LPC2xxx : Sample uC/OS-II application (Ex1) code & build files for LPC2xxx. Ex2_LPC2xxx : Sample uC/OS-II application (Ex2) code & build files for LPC2xxx. Ex1_S3c2410x : Sample uC/OS-II application (Ex1) code & build files for S3c2410x. Ex2_S3c2410x : Sample uC/OS-II application (Ex2) code & build files for S3c2410x.
ucos.zip
内容介绍
ARM Port of uC/OS-II Date : 09.05.2004 Version : 1.16 uC/OS-II : Version 2.61 or lesser Tool-chain : SDT 2.51, ADS 1.2 or GCC ported by Michael Anburaj Homepage: http://geocities.com/michaelanburaj/ e-mail : michaelanburaj@hotmail.com Installation : UNZIP to desired drive (C:\ is recommended) Note: All paths & build reference made to uC/OS-II files are relative. So uC/OS-II source & ARM_UCOS must be extracted to the same path. Folders: arm_ucos : Contains the generic code files required for a project development on the ARM core. common : Contains the uC/OS-II ARM platform port code. ep73xx : Contains the EP7312 BSP code. lpc2xxx : Contains the LPC210x & LPC213x BSP code. s3c2410x : Contains the S3c2410x BSP code. Ex1_EP73XX : Sample uC/OS-II application (Ex1) code & build files for EP7312. Ex1_LPC2xxx : Sample uC/OS-II application (Ex1) code & build files for LPC2xxx. Ex2_LPC2xxx : Sample uC/OS-II application (Ex2) code & build files for LPC2xxx. Ex1_S3c2410x : Sample uC/OS-II application (Ex1) code & build files for S3c2410x. Ex2_S3c2410x : Sample uC/OS-II application (Ex2) code & build files for S3c2410x. Building & Running the project: Refer to the notes.doc in the respective doc folder under the ARM processor example projects. Important!!! ARM_UCOS based applications can either run standalone or in conjunction with some of the following software: 1. ICE boot - For ICE booted applications. The ice boot provided with the package must be burnt at RESET (0x00000000) 2. TMON - For TMON booted RAM & ROM applications. TMON must be burnt at RESET (0x00000000). Samsung�s monitor can be used for their processor based boards. Very important: This port cannot work with other monitors (like Angel) or HALs!!! There should not be any other monitor program other than TMON underneath the ARM_UCOS ported code. Notes: 1. Critical section manipulation methods 2 & 3 are implemented for SDT. When built using ADS or GCC use only method #3 (very important) 2. All interrupts are under the control of the OS (uC/OS-II). And the main IRQ handler is C_IRQHandler() function in FRMWRK.c 3. Interrupts operate purely in the IRQ/FIQ stack. 4. Porting this to other processors is very simple. Just modify the following functions: a. C_IRQHandler() in FRMWRK.c b. FRMWRK_vStartTicker() in FRMWRK.c c. Init.s d. CONSOL.c (not important) What's new in ver 1.xx: 1. It also builds under ADS 1.x & GCC (windows & Linux). 2. Thumb mode tasks have been added. Build configs for various Target / Task modes: TARGET | TASK | Comments ----------+-------+--------------------------------------- *arm | arm | Arm image with Arm mode tasks (pure arm code) armthumb | arm | Arm-thumb image with Arm mode tasks (not supported in the GCC make) arm | thumb | Illegal *armthumb | thumb | Arm-thumb image with Thumb mode tasks (99% thumb code) * Most useful build types. Note: Arm or Thumb mode tasks can later change modes in the case of Arm-Thumb interworked images. 3. Common Batch/make build files added for both SDT & ADS. 4. JTAG Target type added. Also ice_boot for the same is provided. 5. Optimized some parts of the assembly code. 6. Added ports for S3c2410x -ARM920T from Samsung & LPC210x - ARM7TDMI-S from Philips. 7. Fixed a major bug that was causing chaos with ARM-THUMB interworked images. 8. OS_TASK_SW_INFO_LEVEL flag added to os_cfg.h to print some useful info. during context switch. 9. GDB stubs added to TMON included for LPC210x port. 10.HALT exception handlers moded into ARM mode file. Note: About the EP73xx port ADS 1.2 has an assembler bug that causes mmu.o to bloat (increased to 16KB). Because of which the executable also increases in size. This bug is not seen in SDT or RVCT tools. Image Size (approx.) Tools r-ex1.bin 49KB ADS r-ex1.bin 33KB SDT Untested ports for the following ARM processors are available with me: 1. CS89712 from CIRRUS Logic 2. KS32C41000 (S3C44A0X) from Samsung 3. S3c4510 (SNDS100 Board version 1.0) 4. S3c4530 (SNDS300 Board) If you need any of these, please email me at michaelanburaj@hotmail.com This port can be modified very easily to make it work on any ARM core (ARM7, ARM9) based microprocessor or microcontroller. Please feel free to get in touch with me if you have difficulties doing this. Shortcomings: 1. Run-time C library initialization code is not added with the port (ctype functions & malloc need this). Please contact me if you need it. 2. uC/OS-II tasks run in SVC mode right from the beginning with full privileges. 3. The SPSR_task is just a bogus placeholder. It is there to maintain the design consistence. Therefore it is assumed that no context switch occurs in any other mode than SVC. So please do not change the processor operating mode. Also, all IRQs & FIQs should loop through the uC/OS-II function calls (OSIntEnter() & OSIntExit()). This will prevent context switched taking place from IRQ or FIQ modes. Cheers, Michael Anburaj.
评论
    相关推荐
    • ARM TRAINING
      arm m3 training , 3-days
    • arm资料
      arm汇编资料,以及一些其他个人东西
    • arm arm ledtest
      arm arm led arm arm ledtest
    • arm学习
      ARM学习的资料,也是我下载的,希望大家分享
    • ARM学习资料
      ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类...
    • arm学习
      arm初学者学习资料
    • carm
      carm
    • arm学习
      学习ARM,适用于初学者
    • ARM 指令
      ARM指令
    • SIM800C_MQTT.rar
      使用SIM800C模块,使用MQTT协议,连接中国移动onenet平台,能实现数据的订阅、发布、存储等