- 博客(21)
- 资源 (48)
- 收藏
- 关注
原创 从0到1教你写UCOS-III 第八部分:时间戳
本章实现时间戳用的是 ARM Cortex-M 系列内核中的 DWT 这个外设的功能,有关这个外设的功能和寄存器说明具体见手册“STM32F10xxx Cortex-M3 programming manual”8.1 时间戳简介: 在 uC/OS-III中,很多地方的代码都加入了时间测量的功能,比如任务关中断的时间,关调度器的时间等。知道了某段代码的运行时间,...
2019-04-30 15:10:31 2544
原创 从0到1教你写UCOS-III 第七部分:阻塞延时与空闲任务
在上一章节中,任务体内的延时使用的是软件延时,即还是让 CPU 空等来达到延时的效果。使用 RTOS 的很大优势就是榨干 CPU 的性能,永远不能让它闲着,任务如果需要延时也就不能再让 CPU 空等来实现延时的效果。 RTOS 中的延时叫阻塞延时,即任务需要延时的时候,任务会放弃 CPU的使用权, CPU可以去干其它的事情,当任务延时时间到,重新获取 CPU使用权,任务继续运行,这样...
2019-04-30 09:05:01 1044
原创 从0到1教你写UCOS-III 第六部分:任务时间片运行
本章在上一章的基础上,加入 SysTick 中断,在 SysTick中断服务函数里面进行任务切换,从而实现双任务的时间片运行,即每个任务运行的时间都是一样的。6.1 SysTick 简介: RTOS 需要一个时基来驱动, 系统任务调度的频率等于该时基的频率。 通常该时基由一个定时器来提供,也可以从其它周期性的信号源获得。刚好 Cortex-M 内核中有一个系...
2019-04-30 08:32:14 1330
原创 再造STM32---第五部分:使用寄存器点亮 LED 灯
学习本章时,配合《STM32F4xx 中文参考手册》 “通用 I/O(GPIO)” 章节一起阅读,效果会更佳,特别是涉及到寄存器说明的部分。 关于建立工程时使用 KEIL5 的基本操作,请参考前面的章节。本讲建议看火哥视频,很重要。链接:https://pan.baidu.com/s/1Dusgd-K1pPJpILpcp7xawg提取码:w6nx5.1 GPIO 简...
2019-04-29 22:56:05 2297
原创 再造STM32---第四部分:新建工程---寄存器版
4.1 新建工程:4.1.1 新建本地工程文件夹: 为了工程目录更加清晰,我们在本地电脑上新建 1 个文件夹用于存放整个工程,如命名为“LED”,然后在该目录下新建 2 个文件夹,具体如下:表格 8 工程目录文件夹清单表格 9 工程目录文件夹内容清单4.1.2 新建工程:打开 KEIL5,新建一个工程,工程名根据喜好命名,我这里取 LED-REG,直接...
2019-04-29 12:15:15 505
原创 从0到1教你写UCOS-III 第五部分:任务的定义与任务切换的实现
5.1 本章目标: 本章是我们真正从从 0 到 1 写 RTOS 的第一章, 属于基础中的基础, 必须要学会创建任务,并重点掌握任务是如何切换的。 因为任务的切换是由汇编代码来完成的,所以代码看起来比较难懂,但是我会尽力把代码讲得透彻。 如果本章内容学不会,后面的内容根本无从下手。 在这章中, 我们会创建两个任务,并让这两个任务不断地切换,任务的主体都是让一个变量按...
2019-04-29 00:23:56 3292
原创 再造STM32---第三部分:什么是寄存器?
本系列是基于STM32F429野火库进行学习。3.1什么是寄存器? 我们经常说寄存器,那么什么是寄存器?这是我们本章需要讲解的内容,在学习的过程中,大家带着这个疑问好好思考下,到最后看看大家能否用一句话给寄存器下一个定义。3.2 STM32 长啥样?...
2019-04-25 00:09:44 1319
原创 从0到1教你写UCOS-III 第四部分:裸机系统与多任务系统
在真正开始动手写 RTOS 之前,我们先来讲解下单片机编程中的裸机系统和多任务系统的区别。4.1 裸机系统 裸机系统通常分成轮询系统和前后台系统,有关这两者的具体实现方式请看下面的讲解。4.1.1 轮询系统 轮询系统即是在裸机编程的时候, 先初始化好相关的硬件,然后让主程序在一个死循环里面不断循环, 顺序地做各种事情,大概的伪代码具体见代码清单 4...
2019-04-24 21:59:20 1189
原创 从0到1教你写UCOS-III 第三部分:新建工程-软件仿真
在开始写 RTOS 之前,我们先新建一个工程, Device 选择 Cortex-M3 内核的处理器,调试方式选择软件仿真,到最后写完整个 RTOS 之后,我们再把 RTOS 移植到野火 STM32开发板上,到了最后的移植其实已经非常简单,只需要换一下启动文件和添加 bsp 驱动就行。3.1 新建本地工程文件夹: 在开始新建工程之前,我们先在本地电脑端新建一个文件...
2019-04-24 21:57:17 1622 1
原创 从0到1教你写UCOS-III 第二部分:如何学习RTOS?
2.1 为什么要学习 RTOS? 当我们进入嵌入式这个领域的时候, 往往首先接触的都是单片机编程, 单片机编程又首选 51 单片机来入门。 这里面说的单片机编程通常都是指裸机编程,即不加入任何 RTOS(Real Time Operation System 实时操作系统) 的程序。 常用的 RTOS 有国外的 FreeRTOS、ucOS、 RTX和国内的 Huawei LiteOS、...
2019-04-24 21:56:13 1259
原创 再造STM32---第二部分:再识 STM32
本系列是基于STM32F429野火库进行学习。2.1什么是 STM32? STM32,从字面上来理解, ST 是意法半导体, M 是 Microelectronics 的缩写, 32 表示32 位,合起来理解, STM...
2019-04-23 23:10:01 712
原创 再造STM32---第一部分:如何正规的安装KEIL5?
本章内容所涉及的软件只供未出社会的学生使用,不得用于商业用途。个人或公司因商业用途导致的法律责任,后果自负。一、温馨提示:1、 安装路径不能带中文,必须是英文路径2、 安装目录不能跟 51 的 KEIL 或者 KEIL4 冲突,三者目录必须分开3、 KEIL5 的安装比起 KEIL4 多了一个步骤,必须添加 MCU 库,不然没法使用。4、 如果使用的时候出现莫名其妙的错误,先百度查找解决...
2019-04-23 19:53:27 800
原创 STC51入门笔记(郭天祥C语言)---第九节:常见芯片和运放电路介绍
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。作者:sumjess一、PCF8591锁存器:1、74HC573锁存器介绍: 74HC573是拥有八路输出的透明锁存器,输出为三态门,是一种高性能硅栅CMOS器件。器件的输入是和标准CMOS输出兼容的,加上拉电阻...
2019-04-18 09:21:57 3908 2
原创 STC51入门笔记(郭天祥C语言)---第八节:通用型1602,12232,12864液晶操作方法
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。作者:sumjess一、液晶概述: 液晶(LiquidCrystal) 是一种高分子材料,因...
2019-04-15 12:20:50 10877
原创 STC51入门笔记(郭天祥C语言)---第七节:l2C总线AT24C02芯片应用
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。作者:sumjess一、I2c总线概述:1、I2c总线介绍 l2C总线(InterICBus)由PHI...
2019-04-14 16:03:32 4314
原创 STC51入门笔记(郭天祥C语言)---第六节:串行口通信原理及操作流程
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。作者:sumjess一、并行与串行基本通信方式: 随着单片机系统的广泛应用和计算机网络技术的普及,单片机...
2019-04-13 13:53:03 9418
原创 STC51入门笔记(郭天祥C语言)---第四节:键盘检测原理及应用实现
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。作者:sumjess 键盘分为编码键盘和非编码键盘。键盘上闭合键的识别由专用的硬件编码器实现, 并产生键编...
2019-04-09 10:30:43 5365 1
原创 基于STM32的UCOSIII入门教学(一)第1讲 RTOS背景知识简介
一、前后台系统和RTOS系统:1、前后台系统: 早期嵌入式开发没有嵌入式操作系统的概念 ,直接操作裸机,在裸机上写程序,比如用51单片机基本就没有操作系统的概念。通常把程序分为两部分:前台系统和后台系统。 简单的小系统通常是...
2019-04-08 23:29:39 1771
原创 STC51入门笔记(郭天祥C语言)---第三节:数码管显示原理及应用实现
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。作者:sumjess一、数码管显示原理 我们先来看几个数码管的图片, 左图为单位数码管、中图为双位数码管、右图为四位数码管, 另外还有右下角不带点的数码管,最右图还有“米”字数码管等。...
2019-04-07 17:55:34 11421
原创 STC51入门笔记(郭天祥C语言)---第二节:Keil 软件使用及流水灯设计
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。作者:sumjess本章详细介绍单片机程序常用编译软件 Keil 的用法,包括用Kei 建立工程、工程配置、C51单片机程序软件仿真、单步、全速、断点设置、变量查看等。同时还介绍如何使用SST89E516RD 单片机进行计算机与 TX- lC单片机学习板之间的...
2019-04-03 12:01:59 10552 1
原创 每次新建keil项目,选好单片机型号后,都出现“Copy STANDARD 8051 startup code to project folder and
跳入C函数之前执行的一段汇编代码,不加就用默认的启动代码,加了你没修改这段代码,那还是相当于用默认的启动代码,这时加和没加都一样。比如说,你想另外设置SP的值,不用默入的,就可以加入,然后修改SP。反正这个启动代码不用改,加不加无所谓。根据你项目的需求决定是否添加。如果你采用汇编语言写程序,建议别添加,添了还得改模块名称,麻烦。如果你采用C语言,添加了有好处,避免你忘记有些初始化...
2019-04-01 15:07:03 3341
课程设计题五:汽车尾灯控制器设计.zip
2019-07-04
课程设计题六:秒表.zip
2019-07-04
课程设计题二:7人多数表决器.zip
2019-07-02
STC51_Sumjess.zip
2019-06-15
基于arduino的跟随小车
2019-04-11
基于arduino的循迹小车(不含有PID算法)
2019-04-11
基于arduino的智能寻光小车
2019-04-11
基于arduino的魔术手
2019-04-11
基于手机蓝牙的arduino遥控小车
2019-04-11
基于arduino的循迹小车(含有PID算法)
2019-04-11
基于arduino的避障小车
2019-04-11
基于手柄(有线)的ardunio遥控小车
2019-04-11
STM32史上最全库
2018-09-26
Ele_design_Sum.zip
2020-04-29
贪吃蛇_Sumjess(C语言).zip
2020-02-07
USART6_DMA_NVIC.zip
2020-02-02
课程设计题十四:双机通信.zip
2019-07-24
课程设计题十三:乒乓球比赛.zip
2019-07-24
课程设计题十二:电子密码锁.zip
2019-07-23
课程设计题十一:拔河游戏机设计.zip
2019-07-21
课程设计题十:简易电子琴设计.zip
2019-07-21
课程设计题九: 倒计时时钟设计.zip
2019-07-13
课程设计题八:篮球比赛计分器.zip
2019-07-11
课程设计题七:交通灯控制器.zip
2019-07-05
课程设计题三:日历和数字钟.zip
2019-07-04
课程设计四:LED彩灯控制器设计.zip
2019-07-04
基于单片机的电子钟.zip
2019-07-01
课程设计题一:八人抢答器.zip
2019-07-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人