自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 物联网lwIP网络开发学习笔记——以太网基础

loTloT网络架构TCP/IP协议簇lwIP协议栈:栈是指实现协议的源代码C/S架构 vs B/S架构osi模型7层TCP/IP模型以太网硬件设计物理层接口MCU/CPU通过MAC层使用MII/RMII/SNI协议和物理层进行通信Magnetics-网络变压器STM32以太网连接图MII_TX_CLK:发送数据使用的时钟信号,对于10M位/s的数据传输,此时钟为2.5MHz,对于100M位/s的数据传输,此时钟为25MHz。MII_RX_CLK:接收数据使用的时钟信号,对于10

2020-09-24 10:53:01 512

原创 物联网操作系统学习笔记——列表及列表项

列表及列表项概念及其应用列表和列表项任务调度列表介绍其他组件列表介绍双向链表结构1:插入与删除效率高,只要操作一次就能完成。2:对数据的管理更加灵活与便捷,有利于编写逻辑清晰的程序。列表与列表项freeRTOS列表操作APIvListInitialise()vListInitialiseItem()vListInsert()vListInsertEnd()uxListRemove()列表及列表项函数应用功能需求功能业务划分void Delay_Task

2020-09-21 20:53:01 186

原创 物联网操作系统学习笔记——内存管理

FreeRTOS内存管理STM32编译过程及程序组成source code(源代码)的c文件和汇编S文件通过Keil中的armcc/armasm生成.o文件(Object code),然后再通过armlink工具生成.axf文件(镜像文件,可通过ST-link进行烧录)再通过fromelf生成.bin/.hex文件程序的组成、存储与运行左边是C程序组成,右边是STM32程序组成text:是的代码段:RAM.以上是数据段:ROM程序存储生成反汇编指令 fromelf --text -c

2020-09-17 19:50:20 377

原创 物联网操作系统学习笔记——低功耗管理

低功耗管理的概念低功耗管理STM32低功耗设计详解STM32电源管理系统STM32低功耗模式睡眠模式: 在睡眠模式中,仅关闭了内核时钟,内核停止运行,但其片上外设,CM4核心的外设全都还照常运行。有两种方式进入睡眠模式,它的进入方式决定了从睡眠唤醒的方式,分别是WFI(wait for interrupt)和WFE(wait for event),即由等待“中断”唤醒和由“事件”唤醒。睡眠模式的各种特性见下表停止模式: 在停止模式中,进一步关闭了其它所有的时钟,于是所有的外设都停止了工作

2020-09-16 15:59:32 572

原创 物联网操作系统软件定时器

软件定时器的定义和作用FreeRTOS软件定时器FreeRTOS软件定时器工作原理软件定时器函数应用功能需求使用软件定时器功能完成闹钟功能设计当闹钟到达时,可根据执行动作,触发相关的led亮灭APIxTimerCreate()xTimerStart()xTimerReset()pvTimerGetTimerID()xTimerChangePeriod()功能设计实验1、硬件功能框架串口命令定义功能业务划分功能实现流程一:1.1配置RTC使能开

2020-09-14 17:58:49 707

原创 物联网操作系统学习笔记————事件标志组

概念及其应用FreeRTOS的事件标志组概念简单理解就是一个事件标志可以控制多个任务,也可以多个事件标志采用与逻辑控制一个任务,多个事件标志用或逻辑控制一个任务FreeRTOS事件标志组的介绍1:FreeRTOS事件标志组是24比特内存空间2、当任务去创建一个事件标志组的时候,可以和相关bit进行关联。当等待事件标志组触发时,任务TASK2从运行态变为阻塞态。当任意一个中断或任务进行了一个SET把标志位从零值一之后,就可以让TASK2进行恢复。工作原理:事件标志组函数实验操作:功能

2020-09-10 16:46:21 447

原创 物联网操作系统学习笔记——系统互斥信号量

优先级翻转什么是优先级翻转互斥信号量概念及其应用一、解决优先级翻转的问题当高优先级任务去剥夺了低优先级任务的cpu使用权时,信号量如果被低优先级任务占有,高优先级任务处于阻塞态,临时提高低优先级任务的优先级。——互斥信号量的第一个特性二值信号量一般用于信号同步二值信号量主要做一些信号同步,任何一个任务都可以发送二值信号量,同时解除一个等待获取的任务的阻塞状态。1,只适合用于同步,2、二值信号量不是单个任务独有。任务独占资源互斥信号量的两个特性:1、优先级继承2、任务独占资源(这个资

2020-09-09 14:01:31 597

原创 物联网操作系统学习笔记——系统信号量

信号量概念及其应用信号量定义:信号量(semaphore),多任务环境下使用的一种设施,负责协调多个任务,以保证任务能够正确,合理的使用公共资源。FreeRTOS信号量介绍FreeRTOS信号量工作原理二值信号量工作原理计数信号量工作原理...

2020-09-03 22:17:44 401 1

原创 物联网操作系统学习笔记——消息队列2

消息队列实现原理消息队列控制块pcHead和pcTail:队列的头和尾指针。pcWriteTo和pcReadFrom:队列要入队和出队指向的地址,便于操作xTasksWaitingToSend、xTasksWaitingToReceive:和任务相关的链表,uxMessagesWaiting:队列里还没 处理消息的个数cRxLock\cTxLock:接受锁和发送锁,任务和中断为了防止冲突而定义.消息队列创建//队列实现,实际是xQueueGenericCreate函数传参传入一个队列类型

2020-09-03 20:42:35 251

原创 物联网操作系统学习笔记——消息队列1

消息队列的概念及其意义1、定义消息队列(queue),可以在任务与任务间、中断和任务间传递消息实现任务接收来自其他任务或中断的不固定长度的消息2、FreeRTOS消息队列的介绍任务和中断发送消息到消息队列,消息队列接收到消息之后按照尺寸大小存储消息,其他任务想从消息队列中获取数据。当队列中的消息是空时,挂起(pend)读取任务,用户还可以指定挂起的任务时间(timeout)。3、FreeRTOS的工作原理消息队列就是一段内存空间FreeRTOS消息队列详细介绍消息队列函数应用实例操作

2020-09-03 16:18:15 797

原创 物联网操作系统学习笔记——任务栈

任务栈大小确定如果栈的大小没有确定,在进行上下文切换的时候,堆栈溢出,会导致程序出错。任务堆栈大小确定需要用到堆栈空间的任务:任务栈大小确定方案三个方案:MDK-htm文件分析的不足:1,如果调用的是函数指针不去计算2,如果是中断和中断嵌套也不去计算栈溢出检测——FreeRTOS提供的检测第一种方式的不足,只能在任务切换的时候进行检测,但是在运行过程中容易出现栈溢出。2,将MDK-htm文件分析并不可行,只供参考堆栈检测API栈溢出检测栈溢出回调函数????任务状态

2020-09-02 17:12:26 255

原创 物联网操作系统学习笔记————多任务使用

物联网操作系统多任务使用要点临界段应用临界段的作用:一、什么是临界段在程序访问资源时,不希望被其他任务或者中断打断,这段要执行的代码,称为临界代码段。不想被打断访问的资源读取或者修改变量(全局变量)调用公共函数的代码(不可重入函数)使用硬件资源(外设)对时序有精准要求的操作用户不想被打断的代码临界段概念二,临界段的API1、关闭中断taskDISABLE_INTERRUPTS();2、打开中断taskENABLE_INTERRUPTS();3、进入临界段freerto

2020-09-01 21:55:33 342

空空如也

空空如也

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

TA关注的人

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