![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件工程
文章平均质量分 80
zbp_uestc
这个作者很懒,什么都没留下…
展开
-
SimpliciTI 体系结构(1)
SimpliciTI简介SimpliciTI是TI开发的一份专门针对其CCxxxx系列无线通信芯片的网络协议。按照其官方说法SimpliciTI是一个基于连接的点对点通讯协议。它支持两种网络拓扑结构:直接的点对点通信结构和基于星型连接的网络拓扑结构。在星型连接中hub点在SimpliciTI中被称为Access Point,简写为AP。AP负责网络的构建和维护,它具备存储转发机制,因此可以对长原创 2014-04-11 13:35:29 · 1579 阅读 · 0 评论 -
ucOS学习笔记(1)——为什么需要操作系统
1.操作系统可以显著降低开发难度。操作系统帮我们协调多个程序之间的耦合关系,比如我们需要将串口的接收到的数据显示在一块LCD上。传统做法是如图1所示 :图1.无操作系统流程该流程中当串口接收到数据再调用LCD显示程序将数据显示出来,而图2展示了一种基于操作系统的方法。在该方法中串口接收数据和LCD显示程序均以为自己独占CPU,各自都只是执行自己相关部分的工作,而什么时候显示到LCD屏幕,什么时候又原创 2014-04-11 13:35:52 · 1429 阅读 · 0 评论 -
ucOS学习笔记(2)——多任务是如何实现的
ucOS是一个抢占式多任务操作系统,其核心就是人物调度机制,该机制保证了多个任务在一个MCU上并发执行。关于多任务实现我们就不得不谈一谈一段程序运行的上下文。所谓程序运行的上下文就是指一段代码(一般以函数为基本单位)运行过程中需要使用到的资源,这个资源被我称之为上下文。这些资源包括当前系统的基本工作寄存器,函数使用到的零时变量,全局变量等等。当这些资源被给定后我们无论在何时去执行一个给定的地址开始原创 2014-04-11 13:35:54 · 1971 阅读 · 0 评论 -
ucOS学习笔记(3)——ucOS的数据结构
ucOS的数据结构中最核心的一个数据结构就是任务控制块数据结构,其他的数据类型都是围绕该数据结构展开的,任务切换,代码调度也都是以该数据结构为基础来完成的。认清了该数据结构就了解了ucOS的运行机制。任务控制块数据结构如下:typedef struct os_tcb { OS_STK *OSTCBStkPtr; /* Pointer to current原创 2014-04-11 13:35:56 · 1858 阅读 · 1 评论 -
ucOS学习笔记(4)——一步一步移植ucOS到STM32
准备工作:1.到micrium官网下载最新的 OS在stm32上的移植资料。下载地址为:http://micrium.com/download/Micrium-ARM-OS-II-Cortex-M3.exe2.平台搭建:a.将1下载得到的文件解压得到micrium文件夹,并在Micrium\Software\ OS-II下用UV4创建一个 OS工程,配置CPU为STM32F101C8b.建立如图1原创 2014-04-11 13:35:59 · 2415 阅读 · 0 评论 -
ucOS学习笔记(6)——一步一步移植ucOS到STM32
之前已经完成了基本的编译工作。今天早上开始写了几个基本的设备驱动,同时编写了两个简单的测试任务。其间出现几个问题。第一个问题是代码编译能通过,但是下载到板子上就是跑不动,根本运行不到main函数,估计是初始化系统部分存在一些问题,我也没有深入研究直接将stm32官方的stm32f10x_vector.s和现在的init.s整合得到以下的系统初始化代码,该代码能够保证测试任务LED流水灯正常运行。;原创 2014-04-11 13:36:03 · 891 阅读 · 0 评论 -
ucOS学习笔记(5)——一步一步移植ucOS到STM32
这两天看了下keil的编译连接相关文档得到以下一些信息:1.关于AREA--AREA是arm汇编中的段标志,它代表一个段的开始。所谓段是指一个独立的,被命名的,不可分割一组代码或者数据,一个单独的代码段是一个应用功能的最小单元。原文如下“sections are independent, named, indivisible seqnces of code or data. A single原创 2014-04-11 13:36:01 · 1171 阅读 · 0 评论 -
SimpliciTI 体系结构(2)
SimpliciTI底层接口表2 simpliciti 底层接口函数名描述使用的全局变量void MRFI_SetLogicalChannel(uint8_t chan)设置通信频率。设置完信道后将根据全局变量[1]的值决定是否将系统设置为接收状态。1.mrfiRadioStatevoid MRFI_SetRFPwr(uint8_t idx)设置功率因子。设置完信道后将根据全局变量[1]的值决定是原创 2014-04-11 13:35:31 · 1474 阅读 · 0 评论