- 博客(16)
- 收藏
- 关注
转载 解决Keil 下载LPC2378 FLASH时报错“can not stop ARM...”
今天在移植基于LPC2378的模板时遭遇编译后下载到FLASH中仿真提示:can not stop ARM device , check JTAG cable .再网络上搜了一下,普遍是这个解释:下面将原文贴上:原文来自:RealView中文社区原帖链接:http://www.realview.com.cn/bbs/dispbbs.asp?boardID=2&ID=16
2013-11-27 03:03:02 778
转载 移植uCOS到RAM7
1. 要使uCOS-II正常运行,处理器必须满足以下要求: * 处理器的C编译器能够产生可重入型的代码; * 处理器支持中断,并且能够产生定时中断,通常为10 ~ 100Hz; * 用C语言可以开关中断; * 处理器能支持一定数量的数据存储硬件堆栈; * 处理器有将堆栈指针已经其他CPU寄存器内容读出,并存储到堆栈或内存中去的指令。2.
2013-11-27 02:58:43 371
转载 UC/OS II多任务切换例程
#include "config.h"#define TaskStkLengh 64 OS_STK TaskStk [TaskStkLengh]; OS_STK TaskStk1 [TaskStkLengh];OS_STK TaskStk2 [TaskStkLengh];OS_EVENT *TASK1;
2013-11-19 19:08:48 461
转载 uC/OS II在Microchip MCU上的移植
uC/OS II是一个完整的、可移植、可裁减、源码公开的抢占式实时多任务操作系统。因此程序开发人员可以在嵌入式系统的开发过程中.灵活地改写其源代码.以满足用户特定的需求。PIC18F452是Microchip公司生产的单片机PICmicro家族中的中档微处理器产品.是一款含有丰富片上资源的8位MCU.广泛应用在家用电器、医疗设备、工业控制等领域。因此uC/OS II在该处理器上的成功移植.将大大提
2013-11-19 19:06:58 617
转载 uCOS II内核调度分析
一. 内核概述: 多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务之间的通讯。内核提供的基本服务是任务切换。之所以使用实时内核可以大大简化应用系统的设计,是因为实时内核允许将应用分成若干个任务,由实时内核来管理它们。内核本身也增加了应用程序的额外负荷,代码空间增加ROM的用量,内核本身的数据结构增加了RAM的用量。但更主要的是,每个任务要有自己的栈空间,这
2013-11-19 19:05:06 498
转载 uCOS II就绪表(Ready List)分析
3.0 就绪表(Ready List) 每个任务被赋予不同的优先级等级,从0级到最低优先级OS_LOWEST_PR1O,包括0和OS_LOWEST_PR1O在内(见文件OS_CFG.H)。当uCOS II初始化的时候,最低优先级OS_LOWEST_PR1O总是被赋给空闲任务idle task。注意,最多任务数目OS_MAX_TASKS和最低优先级数是没有关系的。用户应用程序可以只有10个
2013-11-19 19:02:31 528
转载 uC/OS-II系统开发笔记
uC/OS-II是一个简洁、易用的基于优先级的嵌入式抢占式多任务实时内核。尽管它非常简单,但是它的确在很大程度上解放了我的嵌入式开发工作。既然是一个操作系统内核,那么一旦使用它,就会涉及到如何基于操作系统设计应用软件的问题。1、uC/OS-II的任务框架void task_xxx(void *pArg){ /* 该任务的初始化工作 */……
2013-11-19 18:56:05 509
转载 uCOS II在ARM处理器上移植过程中的中断处理
uCOS II是一个源码公开、可移植、可固化、可剪裁和抢占式的实时多任务操作系统,其大部分源码是用ANSI C编写,与处理器硬件相关的部分使用汇编语言编写。总量约200行的汇编语言部分被压缩到最低限度,以便于移植到任何一种其它的CPU上。 uCOS II最多可支持56个任务,其内核为占先式,总是执行就绪态的优先级最高的任务,并支持Semaphore (信号量)、Mailbox (邮箱)、
2013-11-19 18:53:33 514
转载 【求助】uC/OS-II中的一些疑问
1、关于OSStartHighRdy(): OSStart()用以启动OS,将CPU控制权交给OS,并选择当前系统中最高优先级的就绪任务执行(OS第一次执行任务);OSStartHighRdy()用以“恢复”第一个被执行的任务的上下文。 问:在任务第一次被调度执行前,任务栈中存有任务的上下文信息吗? 在OSTaskCreate()创建
2013-11-19 18:42:50 506
转载 【专题】uC/OS-II内核架构解析(7)---uC/OS-II应用开发
1. 应用开发步骤 (1) 包含uC/OS-II的总头文件includes.h; (2) 定义任务栈的大小和任务栈; (3) 分配任务优先级; (4) 实现任务功能; (5) 调用OSInit()函数初始化uC/OS-II的数据结构; (6) 创建用户任务,启动uC/OS-II;2. 编写任务函数 用户任务函数必须是无限
2013-11-19 18:32:54 602
转载 【专题】uC/OS-II内核架构解析(6)---uC/OS-II内存管理
1. memPart基本原理 uC/OS-II根据需要将内存空间分成多个内存分区,每个内存分区由具有相同大小的内存块(Block)组成。主要包含在C源文件OS_MEM.C中。OS_EXT OS_MEM OSMemTbl[OS_MAX_MEM_PART];OS_EXT OS_MEM *OSMemFreeList;memPart控制块结构体: typedef struc
2013-11-19 18:31:31 550
转载 【专题】uC/OS-II内核架构解析(5)---uC/OS-II通信与同步
1. 消息邮箱Mbox Mbox用于多任务间单一消息的传递,uC/OS-II使用ECB管理Mbox的基本信息,OSEventPtr指向创建Mbox时指定的内存空间。事件的创建由具体的事件管理程序实现。主要包含在C源文件OS_MBOX.C中。OS_EVENT *OSMboxCreate(void *msg);void *OSMboxPend(OS_EVENT *pevent
2013-11-19 18:30:22 590
转载 【专题】uC/OS-II内核架构解析(4)---uC/OS-II任务管理
1. C可执行代码结构 (1)代码段.text:存放CPU执行的机器指令,通常.text是可共享且只读的。 (2)数据段.data:.rodata(常量数据)、.rwdata(已初始化全局变量、静态变量)。 (3)未初始化数据段.bss:未初始化的全局变量、静态变量。 (4)栈.stack:存放函数参数、局部变量及任务切换时的上下文
2013-11-19 18:28:30 554
转载 【专题】uC/OS-II内核架构解析(3)---uC/OS-II系统核心
主要包含在C源文件OS_CORE.C中。1. uC/OS-II任务调度(1) uC/OS-II调度算法 uC/OS-II采用基于优先级的调度算法,总是选择当前处于就绪状态的优先级最高的任务进行调度。uC/OS-II是可抢占性的强实时性OS,在完成中断后允许进行新的任务调度。 uC/OS-II有两种调度方式:任务级任务调度、中断级任务调度。
2013-11-19 18:26:45 713
转载 【专题】uC/OS-II内核架构解析(2)---uC/OS-II基本介绍
1. uC/OS-II文件结构2. uC/OS-II组成部分 uC/OS-II大致可以分成系统核心(包含任务调度)、任务管理、时间管理、多任务同步与通信、内存管理、CPU移植等部分。 (1) 核心部分(OSCore.c) :uC/OS-II处理核心,包括初始化、启动、中断管理、时钟中断、任务调度及事件处理等用于系统基本维持的函数。 (2)
2013-11-19 18:21:06 511
转载 【专题】uC/OS-II内核架构解析(1)---嵌入式RTOS
1. 嵌入式系统基本模型2. RTOS设计原则 采用各种算法和策略,始终保持系统行为的可预测性。即在任何情况下,在系统运行的任何时刻,OS的资源配置策略都能为争夺资源(包括CPU、内存、网络带宽等)的多个实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满足。3. GPOS与RTOSGPOS:注重每次执行的平均响应时间,而不是某次特定执行的
2013-11-19 18:19:04 584
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人