- 博客(8)
- 资源 (4)
- 收藏
- 关注
原创 嵌入式C学习笔记201904
指针 指针变量:以地址为值得变量 指针变量得类型:声明中去掉变量名之后剩下得部分,就是这个指针变量的类型 指针变量指向的变量的类型:声明中去掉变量名和前面的一个*号,剩下的就是*号 <1>*在声明中仅用来说明后面的变量是一个指针变量 <2>*在赋值符号=的左边,修改指针变量指向的那个变量的值-------间接寻址运算符 &...
2019-04-22 17:28:25
183
转载 字符串
原文链接:https://blog.csdn.net/Wan_shibugong/article/details/81949513求字符串的长度 :strlen长度不受限制的字符串函数 :strcpy;strcat;strcmp长度受限制的字符串函数 :strncpy ;strncat ;strncmp字符串查找 :strchr ;strrchr ;strpbrk ;strstr...
2019-04-11 23:19:54
102
原创 ucos学习笔记---005调度锁保护(3.02)
设计目标:假设有一全局共享的计数器变量shareCount。在任务1和任务2中分别对其自增调度锁原理:上锁时,禁止任务切换,无论何种情况,即使时间片用完,仍运行原任务;解锁是允许任务切换软件实现:...
2019-04-11 22:46:16
243
原创 ucos学习笔记---004临界区保护(3.01)
临界区保护设计目标:临界区概念:指的是访问多个任务共享资源的一段代码。当有任务进入临界区时,其他任务必须等待直至该任务离开临界区,以确定共享资源的访问不会冲突临界区保护原理:设计实现:使用关中断保护临界区,中断控制寄存器PRIMASKuint32_t tTaskEnterCritical(void){ uint32_t primask = __get_PRIMASK...
2019-04-11 22:45:40
594
原创 列表元素的插入与删除
// test5.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <malloc.h>#include <iostream>using namespace std;struct DuLNode{ int data; DuLNod...
2019-04-11 22:42:02
215
原创 ucos学习笔记---003双任务延时原理与空闲任务
双任务延时原理与空闲任务设计目标:提供一个任务延时接口,使得延时过程中可放弃CPU转而运行其他任务,提高CPU运行效率任务延时原理:任务数量不限,而硬件计数器资源数量非常有限,不得不采用“软件计时器”延时精度问题:精度有限void tTaskSched(){ if(currentTask == idleTask) { if(taskTable[0]->delayT...
2019-04-08 21:43:53
179
原创 ucos学习笔记---002双任务时间片运行原理
002:双任务时间片运行原理时间片切换原理:用系统定时器的中断函数实现任务的切换与调度。void tSetSysTickPeriod(uint32_t ms) //任务调度定时器参数配置{ SysTick->LOAD = ms * SystemCoreClock / 1000 -1; NVIC_SetPriority(SysTick_IRQn, (1<...
2019-04-08 11:20:52
316
原创 ucos学习笔记---001任务切换
001:概述:裸机程序:单一的顺序执行代码结构----------缺点:实时性不能保证;CPU利用率不高 RTOS:通用任务管理框架,用于控制任务的运行和任务1.07:内核编程实践异常中断触发main.c typedef struct _BlockType_t { unsigned long *stackPtr; }Block...
2019-04-02 15:29:01
308
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人