自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (5)
  • 收藏
  • 关注

原创 分区结构

分区结构DBR,引导记录区,包括一个引导程序和一个BPB,即本分区参数记录表系统可直接访问的第一个扇区,大小为512个字节(特殊情况占用其他保留扇区)512字节中,由跳转指令,厂商标志,操作系统版本号,BPB,拓展BPB,os引导程序,结束标志几个部分组成引导程序的主要任务是当MBR将系统控制权交给 引导程序 时,判断本分区根目录的前两个文件是不是操作系统的引导文件如果确定存在,将引导文件读入内存,并将控制权交给这个引导文件BPB参数记录本分区的起始扇区,结束扇区,文件存储格式,硬盘介质描述符,

2020-06-03 12:43:20 1109

原创 系统扇区

系统结构DBR,主引导记录;DPT,分区表;DBR,分区引导扇区 引导扇区MBRMain Boot Record,主引导扇区,硬盘主引导记录区,注意,MBR扇区只存在磁盘的0扇区,磁盘分区后,分区的起始是结构DBR对于SD卡,在安装FATFS文件系统之后,0扇区就是MBR,但是分区的起始扇区却是DBRMBR由三部分构成,主引导程序代码,占446字节;硬盘分区表 DPT,占64字节;主引导扇区结束标志,占两个字节其中MBR占据446个字节的空间,偏移量 0x0000 ~ 0x01BD主

2020-06-03 12:31:51 962

原创 网卡接口

网络接口网络接口(以太网)是硬件接口,LwIP是软件,并且网卡也是由很多种的LwIP使用一个数据结构,nitif来描述网卡用户提供最底层的接口函数,LwIP则提供统一的接口,这样用户根据网卡不同提供底层接口,上层则不需要改变ethernetif.c文件提供了netif访问不同的网卡,每个网卡有不同的实现方式,用户仅仅修改ethernetif文件即可单网卡中,netif结构体只有一个;多网卡设备中,LwIP将每个用netif描述的网卡连接成一个单项链表网卡结构体struct netif{#i

2020-05-31 13:56:34 1168

原创 3. 软件定时器组

定时器组// configTIMER_TASK_PRIORITY 定时器任务的任务优先级,可以为 0~( configMAX_PRIORITIES-1),越高越及时响应// configTIMER_QUEUE_LENGTH 用来设置定时器命令队列的队列长度。// configTIMER_TASK_STACK_DEPTH 用来设置定时器任务堆栈大小,单位为字,不是字节!定时器组的时基基于系统时钟节拍实现的,定时器的实现不基于任何硬件的定时器(不需要使能读寄存器),并且定时器可以创建很多个硬件

2020-05-31 13:49:44 1050

原创 5. 任务通知

任务通知任务通知的本质是一个32位的变量多数情况下,任务通知可替代二值信号量,计数信号量,事件组,也可以替代消息邮箱(单个消息的消息独列)任务通知值是每个任务控制块就有的,所以无需创建控制块发送选择:发送通知给任务,如果有通知未读,不覆盖通知值发送通知给任务,直接覆盖通知值发送通知给任务,设置通知值的一个或多个位,当做事件组使用发送通知给任务,递增通知值,当做计数信号量限制:只能一个任务接收通知消息(每个任务都有通知值),必须指定接收通知的任务只有等待通知的任务可以被阻塞,发送通知的任

2020-05-31 13:48:41 1060

原创 4. 消息队列

消息队列队列又称消息队列,常用于任务间通信的数据结构,可以在任务与任务之间,中断与任务之间传递消息,实现任务接收来自其他任务或中断的不固定长度的消息任务可从消息队列中读取消消息,当消息队列为空,读取消息的任务被阻塞,用户可指定任务阻塞任务的时间 xTicksToWait如果消息队列为满,向消息队列发送消息的任务会进入阻塞态,同样可指定阻塞时间,超时恢复为就绪态在指定阻塞时间内,如果队列为空,任务保持阻塞状态等待队列数据有效;如果等待超时,任务自动恢复就绪态不论是否写入,不论是否读取成功,任务或中断

2020-05-31 13:47:51 1759

原创 2.6 系统时钟节拍

系统时钟节拍任何的操作系统都需要提供一个时钟节拍,以供系统处理如延时,超时等与时间相关的事件(时基)。系统时钟节拍是特定的周期性中断,中断间的时钟间隔取决于不同的应用。(设定时基,一般是1ms左右)时钟的节拍中断使得可以将任务延迟若干个时钟节拍(释放CPU给其他任务,若干时间后再执行)在任务等待事件发生的时候,也提供等待超时等待;时钟节拍频率越快,系统额外开销越大FreeRTOS通过滴答定时器产生SysTick中断#define configTICK_RATE_HZ ( ( TickType_

2020-05-31 13:46:38 680

原创 2.5 任务API

删除void vTaskDelete( TaskHandle_t xTaskToDelete ){ TCB_t *pxTCB; taskENTER_CRITICAL(); // 进入临界段,避免操作列表时,被中断打断 { // 通过句柄获得任务控制块,就是将句柄强转为 任务控制块 类型,NULL则 操作 Current pxTCB = prvGetTCBFromHandle( xTaskToDelete ); if( uxListRemove( &( pxTCB

2020-05-31 13:45:29 238

原创 2.4 任务切换

任务切换所谓任务切换,就是在就绪列表中,寻找优先级最高的就绪任务,然后执行该任务任务切换的本质是通过触发 PendSV 中断,在中断中执行任务切换#define portNVIC_INT_CTRL_REG (*(( volatile uint32_t *) 0xe000ed04))#define portNVIC_PENDSVSET_BIT ( 1UL << 28UL )#define portSY_FULL_READ_WRITE ( 15 )#define portYIELD_F

2020-05-31 13:44:20 445

原创 2.3 SVC中断

SVC中断SVC中断服务函数通过SVC指令触发SVC中断 #define vPortSVCHandler SVC_Handler__asm void vPortSVCHandler( void ){ PRESERVE8 ldr r3, =pxCurrentTCB ; 读取 pxCurrentTCB 变量值,R3 = pxCurrentTCB ldr r1, [r3] ; 读取 pxCurrentTCB 栈顶指针,R1 = *( pxCurrentTCB) ldr r0, [

2020-05-31 13:43:49 2287

原创 2.2 开启调度器

开启调度器void vTaskStartScheduler( void ){ BaseType_t xReturn; #if( configSUPPORT_STATIC_ALLOCATION == 1 ) // 静态创建空闲任务 { StaticTask_t *pxIdleTaskTCBBuffer = NULL; StackType_t *pxIdleTaskStackBuffer = NULL; uint32_t ulIdleTaskStackSize;

2020-05-31 13:41:08 345

原创 2.1 创建任务

创建任务// 静态创建任务的实现TaskHandle_t xTaskCreateStatic( TaskFunction_t pxTaskCode, // 函数名称,空指针类型地址,标记函数入口 const char * const pcName, // 任务名称,主要用于调试用 const uint32_t ulStackDepth,// 任务堆栈,需先指定数组,单位为4 Byte void * const pvParameters, //

2020-05-31 13:40:11 422

原创 1. 列表和列表项

FreeRTOS列表和列表项列表是FreeRTOS中的一个数据结构,类似于链表,挂载各种数据FreeRTOS中的列表为双向链表,有previous和next指针,用于遍历列表项。typedef struct xLIST{ listFIRST_LIST_INTEGRITY_CHECK_VALUE /* 宏,生成变量,验证列表的完整性 */ configLIST_VOLATILE...

2019-05-24 21:18:44 2528

NRF51-Nordic.pdf

N51822数据手册,应该网上也能找到

2019-08-28

MQTT协议.md

算是在学习MQTT协议的时候的一些总结和笔记,没有那么全,不清楚的地方百度谷歌一下吧 ε=(´ο`*)))唉,分用得好快, 里面图片不知道能显示不能,不能显示就再补吧

2019-06-21

pixhawk资料

网上开源pixhawk的一些资料,各种说明书,源码解读之类的,可能不会特别的全面,但是还是花了一番功夫的

2017-07-20

空空如也

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

TA关注的人

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