& #181; C/os-ii Version Upgrade Guide

Source: Internet
Author: User

IDE:MDK v4+

MCU:LPC17XX (CORTEX-M3)

Rtos:μc/os-ii


Upgrade Order:V2.52,V2.62,V2.76,V2.86,V2.91


V2.52

Yi, Startup*.s (startup_lpc17xx.s)1. Change the name of the two interrupt service function



Note : Names can use other.



2. Definition of two interrupt service functions1). Os_cpu_pendsvhandlerPosition
Definition: os_cpu_a.asm
Statement: OS_CPU. H


2). Os_cpu_systickhandlerLocation: OS_CPU_C.C


Second, the application of the main file (APP.C)1. Define on/Off interrupt function (assembly)Location: os_cpu_a.asm


1). Cpu_intdisOff interrupt
2). Cpu_intenOpen Interrupt


The first caller of this function is main (). And the first line in the main () function.




2. systick_config function location: core_cm3.h


The caller of this function is App_taskstart (Guardian Task)
Before the call. The initialization of the board is to be performed.


Three, critical functionThe statements are os_cpu.h.
1. Enter the critical functionOs_enter_critical ()


2. Exit the critical functionOs_exit_critical ()


V2.62

First, change Ucos all filenames are called lowercase letters1. Delete all files from the source directory

2. Copy all files under the source directory of the V2.62 to the source directory

3. Renaming os_cpu_a.asm, OS_CPU_C.C, os_cpu.h to Os_cpu_a.asm, OS_CPU_C.C, os_cpu.h

Second, add files1) Copy os_debug.c to ports directory

2) Change the reference fileBy the original # include "Includes.h" #include <ucos_ii.h>




Iii. overwriting documents1) Copy the os_cfg.h to the app directory and overwrite it!

2) Add Reference file "Os_cpu.h"#include <os_cpu.h>


3) Change the value of Os_ticks_per_sec to 1730


V2.76

First, cover Ucos all documents

1. Copy all files under the source directory of the V2.76 to the source directory

Second, add files1) Copy Os_dbg_r.c to ports directory, change name to OS_DBG.CDelete the original os_debug.c file


2) Copy the Os_cfg_r.h to the app directory and change the name to Os_cfg.h

3) Change the value of Os_ticks_per_sec to 800

Three, the multiply defined solves the method1) ucos_ii.cStare out "#include <ucos_ii.h>"


Iv. Methods of OS_CORE.C Error resolutionStare out all the *.c files in Ucos_ii.c


V2.86

First, the steps of the former



Second, the difference1) identifier "Os_task_tmr_prio" undefined.Add its definition in app_cfg.h




2) Do not use application hookSet Os_app_hooks_en to 0;


V2.91

First, the steps of the former



Second, the difference

1) Do not use application hookSet Os_app_hooks_en to 0;




Copyright notice: This article blog original articles, blogs, without consent, may not be reproduced.

& #181; C/os-ii Version Upgrade Guide

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.