自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 任务调度(Task Scheduling)

μC/OS-Ⅱ总是运行进入就绪态任务中优先级最高的那一个。确定哪个任务优先级最高,下面该哪个任务运行了的工作是由调度器(Scheduler)完成的。任务级的调度是由函数OSSched()完成的。中断级的调度是由另一个函数OSIntExt()完成的,这个函数将在以后描述。OSSched()的代码如程序清单L3.8所示。  程序清单 L3.8 任务调度器(the Task Sc

2017-02-28 08:47:31 1863

原创 就绪表(Ready List)

每个任务被赋予不同的优先级等级,从0级到最低优先级OS_LOWEST_PR1O,包括0和OS_LOWEST_PR1O在内(见文件OS_CFG.H)。当μC/OS-Ⅱ初始化的时候,最低优先级OS_LOWEST_PR1O总是被赋给空闲任务idle task。注意,最多任务数目OS_MAX_TASKS和最低优先级数是没有关系的。用户应用程序可以只有10个任务,而仍然可以有32个优先级的级别(如果用户

2017-02-27 10:35:27 1315

原创 任务控制块(Task Control Blocks, OS_TCBs)

一旦任务建立了,任务控制块OS_TCBs将被赋值(程序清单3.3)。任务控制块是一个数据结构,当任务的CPU使用权被剥夺时,μC/OS-Ⅱ用它来保存该任务的状态。当任务重新得到CPU使用权时,任务控制块能确保任务从当时被中断的那一点丝毫不差地继续执行。OS_TCBs全部驻留在RAM中。读者将会注意到笔者在组织这个数据结构时,考虑到了各成员的逻辑分组。任务建立的时候,OS_TCBs就被初

2017-02-25 08:41:20 996

原创 μC/OS-Ⅱ初始化

在调用μC/OS-Ⅱ的任何其它服务之前,μC/OS-Ⅱ要求用户首先调用系统初始化函数OSIint()。OSIint()初始化μC/OS-Ⅱ所有的变量和数据结构(见OS_CORE.C)。OSInit()建立空闲任务idle task,这个任务总是处于就绪态的。空闲任务OSTaskIdle()的优先级总是设成最低,即OS_LOWEST_PRIO。如果统计任务允许OS_TASK_STAT_EN和任务

2017-02-24 09:06:01 823

原创 uC/OS-II源码入门分析

一、uC/OS-II的简介uC/OS是一个微型的实时操作系统,包括了一个操作系统最基本的一些特性,如任务调度、任务通信、内存管理、中断管理等,而且这是一个代码完全开放的实时操作系统,简单明了的结构和严谨的代码风格,非常适合初涉嵌入式操作系统的人士学习,它可以让我们以最快的速度来了解操作系统的概念、结构和模块工作原理,并由浅入深逐步推广到商用操作系统上。同时对于那些对操作系统感兴趣的爱好者来

2017-02-23 08:12:34 426

原创 DS18B20简单解析

DS18B20 是美信公司的一款温度传感器,单片机可以通过 1-Wire 协议与 DS18B20 进行通信,最终将温度读出。1-Wire 总线的硬件接口很简单,只需要把 DS18B20 的数据引脚和单片机的一个 IO 口接上就可以了。硬件的简单,随之而来的,就是软件时序的复杂。1-Wire总线的时序比较复杂,很多同学在这里独立看时序图都看不明白,所以这里还要带着大家来研究 DS18B20 的时

2017-02-22 10:06:02 34373 3

原创 ds1302简单解析

DS1302的图如下:  DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~5.5V。采用双电源供电(主电源和备用电源),可

2017-02-21 08:48:24 2862

转载 51单片机之声双色点阵驱动

a 单色点阵与双色点阵发光原理1)单色点阵单色LED点阵等效图如下:8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图上图所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:   一根竖柱:对

2017-02-20 11:31:48 2951

转载 三极管之——PNP与NPN

一.PNP与NPN  晶体管的检测方法 NPN和PNP主要就是电流方向和电压正负不同,说得“专业”一点,就是“极性”问题。 方法一: 鉴别基极B  将数字万用表拨至二极管档,红表笔固定任接某个引脚,用黑表笔依次接触另外两个引脚,如果两次显示值均小于1V或都显示溢出符号“1”,则红表笔所接的引脚就是基极B。如果在两次测试中,一次显示值小于1

2017-02-19 09:36:25 8543

转载 Source Insight入门教程

Source Insight入门教程转载自:http://www.cnblogs.com/olvo/archive/2012/05/04/2483424.html 进入到Temp Project窗口分别可以以文件列表的方式,列出所有的文件,每个窗体下边有一排按钮,左边的窗口(secondView.cpp)从左至右分别为:按字母顺序排列所有标记、按照文

2017-02-18 16:22:34 753

转载 Source Insight基本使用和快捷键

为什么要用Source Insight呢?貌似是因为比完整的IDE要更快一些,比较利于查看大量的代码。  软件的安装很简单,设置好安装目录。  配置好文档路径,当然这个也可以在Options里面改,选Options->Preferences…里面的Folders标签就行。 Project的建立和工作区域  在菜单中选择Project->New Project…可

2017-02-17 17:03:49 389

原创 串口(用1602显示,缺少部分代码)

#include #include "delay.h"#include "1602.h"void uart_init(void){ SCON = 0x50;//设置工作方式为方式1,允许串口接收 TMOD |= 0X20;//定时器1工作于方式1 TH1 = 0XFD;//波特率为9600 TR1 = 1; EA = 1; //ES = 1;}void uart

2017-02-16 10:36:17 537

原创 双色点阵心形显示

#include //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include#define DataPort P0 //unsigned char segout[8]={0,1,2,3,4,5,6,7}; //8列unsigned char segout[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //8列

2017-02-15 11:54:46 1097

原创 ir

#include #include "uart.h"#include "delay.h"#include "1602.h" unsigned char irtime;//unsigned char num;bit startflag = 0;bit irok = 0;bit irpro_ok = 0;unsigned char irdata[33];unsigned char

2017-02-14 16:58:54 564

原创 PCF8591 DA输出模拟

/*----------------------------------------------- 名称:IIC协议 PCF8591 AD/DA转换 论坛:www.doflye.net 编写:shifang 修改:无 内容:使用DA输入,数码管显示输出数字量,LED显示模拟电压大小------------------------------------------------

2017-02-13 20:13:44 5676 1

原创 ds18b20

#include #include #include #include "1602.h"#include "delay.h"sbit ds = P0^0;sbit LED = P0^1;bit ack = 0;void ds18b20_init(void){ ds = 0; DelayUs2x(200); DelayUs2x(200); ds = 1; Delay

2017-02-12 09:05:05 361

原创 PCF8591 1602液晶显示

//main.c/*----------------------------------------------- 名称:IIC协议 PCF8591 AD/DA转换 论坛:www.doflye.net 编写:shifang 修改:无 内容:使用4路AD中的4路检测外部模拟量输入 使用液晶显示-------------------------------------------

2017-02-11 09:21:21 2133 1

原创 109-PCF8591 4路AD数码管显示

//main.c/*----------------------------------------------- 名称:IIC协议 PCF8591 AD/DA转换 论坛:www.doflye.net 编写:shifang 修改:无 内容:使用4路AD中的4路检测外部模拟量输入------------------------------------------------*/

2017-02-10 09:03:30 806

原创 智能电子钟

//main.c#include #include #include #include "i2c.h"#include "delay.h"#include "1602.h"#define AddWr 0x90 //写数据地址 #define AddRd 0x91 //读数据地址extern bit ack;sbit SPK = P2^2;cha

2017-02-09 08:56:59 884

原创 时钟项目

//main.c#include #include "1602.h"#include "i2c.h"#include "key.h"#include "delay.h"sbit SPK = P2^2;char hour;char min;char sec;char msec;char ckhour;char ckmin;char cksec; bit spk_fl

2017-02-08 18:34:48 515 2

原创 108-PCF8591 1路AD 1602显示

//main.c/*----------------------------------------------- 名称:IIC协议 PCF8591 AD/DA转换 论坛:www.doflye.net 编写:shifang 修改:无 内容:使用4路AD中的1路检测外部模拟量输入------------------------------------------------*/

2017-02-07 13:07:18 625

Linux c编程一站式学习(中文版)

本人已细心阅读过,对于程序在PC下实现的机制叙述的比较细致,适合入门嵌入式开发学习,主要内容:部分1,C语言入门;部分2,C语言本质;部分3,linux系统编程。

2017-11-21

空空如也

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

TA关注的人

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