自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 详解UCOS中的内存管理

在嵌入式设备中,持续的调用malloc()和free()容易产生内存碎片,长时间的运行最终会导致内存消耗殆尽。UCOS提供了一套内存管理机制,在系统初始化的时候就分配好内存空间,将所有可用的空间组织成链表,需要申请内存的时候直接从链表中申请,释放内存的时候直接将内存归还到空余内存链表中即可。使用这种方法不仅避免了内存碎片的产生,而且使得在常数时间内分配内存空间成为可能。

2014-04-23 10:49:54 8143

原创 详解UCOS中的互斥信号量

二值信号量主要用于进行共享资源的独占式访问,比如我们用一个变量来标志一个资源是否可用,当这个变量为1的时候表示资源可用,当这个资源为0的时候表示资源不可用,但是二值信号量容易产生优先级反转,影响系统的实时性。互斥信号量一般用于降解优先级反转,

2014-04-23 09:09:49 8204 1

原创 详解UCOS中的任务调度机制

一个操作系统内核提供的最核心的功能就是任务的调度机制,操作系统的内核调度机制有大体有两种,一种是时间片轮番调度,就是将一个系统周期分为好几段,第一段时间执行第一个任务,第二段时间执行第二个任务....每一段时间都执行相应的任务。一种就是抢占式实时内核,即优先级最高的任务优先运行,不论什么时候,只要就绪的任务中有比当前正在执行的任务优先级更高的任务,就暂停当前的任务去执行优先级最高的任务。UCOS_II就是抢占式的实时内核。

2014-04-22 14:11:50 6156

原创 C++中的深拷贝和浅拷贝

C++中的深拷贝和浅拷贝当有需要的时候,C++编译器会为类生成默认的内联public复制构造函数,这些复制构造函数只是简单的进行位拷贝,即将一个对象的成员变量的值逐位拷贝给另外一个对象,以完成对象的初始化。

2014-04-22 09:25:11 1223

原创 MCF52259 ADC 模块配置

1.配置引脚功能2.通过设置Channel List 1 and 2 Registers 来定义ADC的扫描顺序3.设置Smaple Disable Register 来禁止某些通道4.设置各种中断以及Offset Register(Offset Register)5. 开始转换

2014-04-19 10:02:40 1468

原创 MCF52259 PIT中断

中断向量表如下所示:__declspec(vectortable) vectorTableEntryType _vect[256] = { /* Interrupt vector table */ (vectorTableEntryType)__SP_AFTER_RESET, /* 0 (0x000) Initial supervisor SP */ _startup, /* 1 (0x004) Initial PC

2014-04-18 19:07:46 2221

原创 MCF52259 实现PWM波级联

#define MCF_PWM_PWMPER0 (*(vuint8 *)(0x401B0014))#define MCF_PWM_PWMPER1 (*(vuint8 *)(0x401B0015))#define MCF_PWM_PWMPER2 (*(vuint8 *)(0x401B0016))#define MCF_PWM_PWMPER3 (*(vuint8 *)(0x401B0017))#define MCF_PWM_PWMPER4 (*(vuint8 *)(0x401B001

2014-04-18 17:56:25 1914

原创 MCF52259 PLL & GPIO

网上冷火的资料很少,我们当时在这这块芯片的驱动上面话了很多时间,特地将我们都配成功的模块都贴出来,以供大家参考。PLL 模块:建立ColfFire MCF52259 工程时Codewarrior会生成一个MCF52259_sysinit.c 文件。

2014-04-18 17:23:06 1826

原创 C++实现KMeans算法

去年暑假在准备机器人大赛的时候用到了KMeans算法,我们使用该算法来对地图进行分区,该算法的具体步骤如下:1.随机的选取K个种子点作为初始聚类中心2.然后求出所有的点到K个聚类中心的距离,找出离每个点最近的聚类中心作为该点的种群中心。3.经过前两步就形成了K个点群,然后更新K个点群的中心。4,重复步骤2和3直到满足一定的阈值。开发环境 VS2012 + easyX

2014-04-18 16:51:56 2845

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除