• 等级
  • 46583 访问
  • 25 原创
  • 0 转发
  • 120189 排名
  • 3 评论
  • 15 获赞

uCOS 在 KEIL 中的任务切换展示图(OS Support)

以上图片为KEIL中自带的系统支持显示,可以展示操作系统的任务切换时的运行过程。AppTaskStart任务运行时间:最小运行时间:36us最大运行时间:75us平均运行时间:44us任务切换周期:200ms系统大部分时间用于空闲任务,没有充分利用系统性能。关于这个更详细的内容,可以关注公众号:emOsprey回复相应的关键字可以获取相应的支持库。...

2019-04-23 14:01:39

KEIL下载 HEX 文件

设置路径正确,一般在Objects文件下下,当然你也可以重新定位文件位置:点击下载按钮即可下载。更多精彩和干货,欢迎关注微信公众号:

2019-04-22 15:15:49

RTX工程源码移植(STM32F4xx)

KEIL5建立RTX工程确实很方便,但是有一个很大的问题,就是它直接使用.lib库,这样就让想对RTX进行源码分析的道友设置了障碍,因此需要将源码添加工程中。KEIL4的移植过程http://forum.armfly.com/forum.php?mod=viewthread&tid=16616&page=1&authorid=3349KEIL5移植。源码位置:X:\...

2019-04-13 17:25:50

将博客搬至CSDN

搬家地址

2019-04-02 16:59:05

为什么说你一定要掌握 KEIL 调试方法?

在嵌入式软件开发过程中,不可避免的会出现很多的BUG,比如串口通信异常、定时器无法输出脉冲、IO口无法输出、无法进入中断等等问题,导致这些问题的原因可能不仅仅只是某一个方面,也可能是综合的,可能是软件设计上的问题,也可能是硬件上的,如何锁定问题就成了关键。学习51的时候,可能会采用LED灯、数码管、LCD屏等方式进行辅助调试(关于这个【看不会printf怎么打印红外遥控数据?...

2019-03-24 14:58:28

快来拼接你的代码!(拼接符 ##)

很久就知道了#和##,但是都没怎么使用,直到最近的项目涉及到需要编写大量相似的代码之后才决定尝试使用##去简化代码的书写。比如说我的项目需要控制四个通道的电机,四个通道的逻辑控制代码都是类似的,只是对应的硬件和数据信息不同而已。而我是一个讨厌做重复工作的人,所以就想利用##去简化我的代码书写。就比如说代码初始化这一块,总共有四份相似的代码,如果每一个都要去源码的位置进行修改,麻...

2019-03-08 19:16:39

C语言系列文章之 struct

结构体,怎么理解?你可以把它想象成一个桌面上的文件夹,这个文件夹里面可以有各种各样的文件,当然也还可以再有文件夹的存在,文件夹里面再放文件……。如果你要修改其中一个文件的内容,就是首先通过桌面上的那个文件夹作为入口,然后一个一个的进入文件夹去寻找你需要的文件,找到之后就可以随你修改了。**long、unsignedint、short、char(相当于各种文件类型,比如.txt、.c、.h...

2019-03-08 19:09:59

KEIL 生成 Bin\axf 文件

Axf文件生成默认情况是生成.axf文件的,但有可能不能生成该文件。生成的axf文件名如xx2.0这种文件名带有小数点的,此时就不能够生成axf文件。通过配置里的Output选项卡即可重新命名。该名称改成如下时即可产生axf文件。axf文件生成了axf文件之后,就可以使用命令将axf文件转为bin文件。在User选项卡中可以看到如果勾选...

2019-03-08 19:04:43

STM32 之 DMA

stm32f2技术培训_直接存储器访问_dmahttp://www.doc88.com/p-7952436689372.htmlAN4031应用笔记:使用STM32F2和STM32F4DMA控制器AN2548应用笔记:使用STM32F101xx和STM32F103xxDMA控制器STM32中文参考手册看完这些就差不多了。首先大概介绍一下功能吧,看笔记对于初学...

2019-03-08 18:57:55

一文看懂队列(FIFO)

这里的FIFO是先入先出的意思,即谁先进入队列,谁先出去。比如我们需要串口打印数据,当使用缓存将该数据保存的时候,在输出数据时必然是先进入的数据先出去,那么该如何实现这种机制呢?首先就是建立一个缓存空间,这里假设为7个字节空间进行说明。缓存一开始没有数据,并且用一个变量rear指示下一个存入缓存的索引地址,这里下一个存放的位置就是0,用另一个变量front指示下一个存入缓存...

2019-03-08 18:51:09

C语言系列文章之union

联合体,就是将几种数据类型联合起来的一种数据结构,但是它们共用一个空间。怎么理解呢?川剧变脸见过没,就是来来回回的变来变去,给人看的眼花缭乱的,但是不管你怎么变,面具下的脸却始终不变。同样的道理,各种数据类型就是各种脸谱,对外展现了不同的形象,唯一不变的就是它的内存空间的二进制数据始终都是一样的,它们占用的空间也是同一个地方,只是这些二进制数据当你把它看成浮点型的时候,它是浮点数;当你把它看成无...

2019-03-01 21:33:50

巧用补码

如何将12位有符号数转化为16位无符号数

2019-03-01 21:28:05

运算符 % 的妙用

说完位运算,再说说其他的运算符。+-*/不用多说,应该都比较清楚,但是还是要注意的就是使用/进行整型变量的计算时,它不像平常一样可以得到小数的,而只有整数部分,并没有小数。还有就是各个运算符的顺序,如果不确定哪个先运算,不如加上括号()吧,不用担心效率的问题,因为加了括号只是告诉编译器该如何处理这条语句而已。另外使用#define定义一些表达式的时候也最好加上括号,因为你不能确定你这个...

2019-03-01 21:27:45

C语言系列文章之enum

枚举,顾名思义,就是把一个个可能的值列举出来,它们占用的空间是同一个。这个功能和#define有些相似,但又不完全一样,#define是专业替换户,列举可能的值只是它的其中一种运用方式罢了(关于#define,可以查看define小节)。怎么理解呢?就比如一个玻璃瓶,你规定只能用它装水、饮料、酒这三样东西(枚举所有可能值)。当你装了水之后,如果你想用它装饮料的话,你就只能把水倒掉之后...

2019-03-01 21:14:01

C语言系列文章之typedef

Typedef应该算是很熟悉的关键字了,但是我也只是简单使用罢了,为了比较系统的讲述这一小节,特地上网搜了一下。好了,现在正式开始讲解。Typedef关键字可以用于给数据类型定义一个别名,比如说你本名叫关谷神奇,我嫌弃这个名字太长了,所以给你取一个别名,叫关谷,以后我叫关谷的时候你就知道在叫你了。当你定义了一个结构体时,每次创建一个结构体都要使用struct+结构体名的方式,而用...

2019-03-01 21:05:46

C语言系列文章之static

先总结一下static的用法,然后再对每一条进行说明:1、 定义全局静态变量2、 定义局部静态变量3、 定义静态函数4、 头文件中使用前面三个应该是很常见的,简要说明即可,重要的是后面那一个不常见,作为重点讲解内容。首先是全局静态变量,看这名字就知道,这个变量有两个属性(姑且就称之为属性吧),第一:这个变量是全局的,也就是说这个变量可以在源文件的任何一个函数中使用,并且始终存在。...

2019-03-01 20:59:57

C语言系列文章之volatile

和const不同(关于const可以看const小节),当一个变量声明为volatile,说明这个变量会被意想不到的改变。最为典型的就是I/O的输入寄存器了,因为这个变量的值和外部电平有关系,一旦外部电平发生了变化,那么这个变量也就跟着变。当然还有其它寄存器也是如此,比如各种状态寄存器、定时计数器等,他们的改变是靠硬件来改变的,你的程序只能读取数据,所以一定要申明为volati...

2019-03-01 20:55:08

从凡人到筑基期的单片机学习之路

为防止读者误解,首先申明一点,我不是大佬,亦不是大神,只是众多单片机学习者中的一员而已。我写此文的目的主要是记录自己学习的过程,并借此为一些初学者提供部分参考,或许能让初学者少走一些弯路。从小我对电子器件有比较浓厚的兴趣,特别是对那些会动的电子玩具更是好奇,好奇它为什么会动,好奇它为什么能无线遥控。但小学、初中、高中的课本无法为我解答,唯一接近的就是物理课了,所以我学得很认真,不为别的,只因它能...

2019-02-24 09:12:20

NRF24L01+中文翻译连载之四——附录与测试记录

3.4附录A-增强型ShockBurst™-配置和通信示例3.4.1增强ShockBurst™传输有效载荷将配置位PRIM_RX设置为低电平。当应用MCU有数据要发送时,通过SPI锁定接收节点地址(TX_ADDR)和加载有效负载数据(TX_PLD)到nRF24L01+中。发送有效载荷的长度是通过MCU写入TXFIFO的字节数计算出来的。**保持CSN为低电平时,TX_...

2019-02-18 22:10:15

NRF24L01+中文翻译连载之三——数据和控制接口

3.3数据和控制接口数据和控制界面使您可以访问nRF24L01+中的所有功能。数据和控制接口由以下六个5V容差数字信号组成:•IRQ(该信号低电平有效并由三个可屏蔽中断源控制)•CE(该信号高电平有效,用于在RX或TX模式下激活芯片)•CSN(SPI信号)•SCK(SPI信号)•MOSI(SPI信号)•MISO(SPI信号)使用1字节SPI命令,您可以在所有操作模式下激活nR...

2019-02-18 21:51:08

EmbeddedOsprey

主攻方向:STM32软件开发,主要开发平台KEIL
关注
  • 电子·微电子/嵌入式软件工程师
  • 中国 江西省 赣州市
奖章
  • 持之以恒