自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 9.Linux总结 Shell编译器(中)

Shell脚本语法讲解定义变量variable-valuevariable='value'variable=“value”使用变量SvariableS(variable)

2021-04-27 10:20:25 212

原创 8.Linux总结 Shell编译器(上)

Shell脚本有什么用批处理文件/整合命令(减少工作量)软件启动性能监控日志分析Shell命令的本质内置命令/外部命令我们可以看到 cd和pwd命令都是shell的内部命令赋予最高的权限。运行它了。都可以运行。...

2021-04-27 09:30:37 376

原创 8.C++ VS2019 布尔和整形

变量的定义方式类型名字 {初始值};或者类型名字 =初始值;常量的定义方式直接使用值const类型名字{初始值} ;类型 const名字 {初始值};#define名字值带符号的整数类型表 类型 内存占用(字节) 取值范围 signed char char 1 -127-127 short short int signed short signed short int ...

2021-04-26 08:47:15 363

原创 7.C++ VS2019 进制的讲解+常量和变量

int main(){ std::cout <<96'969'696'969+5;}我们可以看到数字可以加减。去掉双引号后。前面如果加“0b”则一律按二进制数来看待。int main(){ std::cout <<0b11111111111;}

2021-04-25 15:30:12 213

原创 6.C++ VS2019 大神必修:计算机基础知识

来讲一下干货:C的关键字共有32个。1.数据类型关键字(12个)Char,short,int,long,float,double,unsigned,signed,struct,union,enum,void2.控制语句关键字(12个)if,else,swich,case,default,for,do,while,break,continue,goto,return.3.存储类关键字(5个)auto,extern,register,static,const4.其他...

2021-04-25 14:07:12 211

原创 5.C++第一个小项目 游戏“麟江湖”

我们可以看到啊。让我们为游戏设置一个界面,基于控制台界,要求背影用灰色,文字用红色。灰色是8,红色是4.int main(){ system("color 04");//8是灰色 底色是灰色 4是红色 字体颜色是红色 std::cout << "================================================\n";//16*3 开始 std::cout << "\n"; std::cout &lt..

2021-04-25 11:24:39 144

原创 4.C++ VS2019 基础指令

在界面内输入键盘windows键+R,出现以下的框框,再次输入cmd.出现这个。pause就是暂停的意思。cls是清除屏幕的意思。我们运行后发现,我们所要输出的文字已经被清除了。这个shutdown /a命令太有用了哈哈哈哈,可以让电脑关机。然后怎么撤销呢。shutdown /a设置页面大小,高80,宽40....

2021-04-25 10:50:52 116

原创 3.VS2019语法解析

我们平时打开的sln,就是解决方案。所有以#开头的都是预处理指令。这时调用了iostream文件。在结尾输入这个就会显示没有结束。

2021-04-25 09:50:36 271

原创 2.VS2019 导弹控制

int main(){ std::cout << "火星反抗军第一司令部导弹1.0"; std::cout << std::endl; std::cout << "\\1\\加载导弹"; std::cout << std::endl; std::cout << "\\2\\发射导弹到冥王星"; std::cout << std::endl; std::cout <&l...

2021-04-25 09:22:48 95

原创 1.C/C++教学 VS2019 初写代码

打开程序后我们按F5或者本底调试器进行运行int main(){ std::cout << "Hello World!\n";}std表示域名空间。cout是std内的一个输出函数,如果在程序开始的地方没有写using namespace std;(通常放在宏定义后面),则使用std中的函数或者变量名时必须加std::。::表示域名运算符。cout<<这是C++特有一种输出格式,<<不是左移符号,它和cout搭配固定构成输出语句。像这样的...

2021-04-21 11:05:54 189

原创 7.Linux总结 使用编辑器gedit vi/vim编辑器(适合初学,精华,呕心沥血!看完请点赞!)

主讲内容1.gedit编辑器2.vi/vim编辑器首先打开vm,打开终端,我们现在要讲的就是自动补全。我们输入mkdi 在摁下Tab键 就是以上的成型了。然后我们输入mk.按两下Tab键就会出现如上所示的图。这就是系统的自动补全功能,不过现在写文章的我好困啊,到底该咋办才能不困呢。好了继续学习,困得小编也得出来给大家码字。我们可以ls /h 然后摁下Tab键。然后就会出现如上所示。现在我要为大家展示重复输入的命令函数那么这个函数是什么呢 就是!! 每错 就是两个叹号 妈的我好困

2021-04-02 10:57:08 1009

原创 6.Linux总结 使用linux命令行1(适合初学,精华,呕心沥血!看完请点赞!)

主讲内容如下1.Shell是什么2.命令的格式与帮助3.常用命令shell是linux的一个应用程序它的功能 是作为用户跟linux内核的沟通桥梁首先用户可以通过控制台终端输入各种各样的命令,然后这些命令,他会进一步的被这个shell解析,shell在解析了这些命令之后,他会 调用这些命令所对应的一些应用程序,应用程序就能通过各种系统调用的API接口然后去使用这个Linux内核的它的各种服务,Linux内核把程序运行完之后,会把这个运行结果也是通过这个系统调用的API接口,返回给这个应用程序,

2021-03-30 11:32:18 300 4

原创 5.Linux学习 用户管理与文件权限(初学,精华)

这节课主讲内容如下:1.用户与用户组2.文件权限1.用户与用户组两个概念:UID:用户的标识GID:群组的标识用户就是指Linux系统的使用者管理员(root)系统用户普通用户用户组:一对一、一对多、多对一、多对多思考:为什么需要对用户管理。三个重要文件:/etc/passwd 这是找UID 用户标识 /etc/shadow 存放的密码/etc/group 输入这些东西查看这个是管理员用户其余是系统用户。这是我们自己创建的用户。这是普通用户。x:应该是存

2021-03-29 14:44:56 77 1

原创 4.Linux学习 Linux文件系统(初学,精华)

我们准备用很长时间来概括这个内容。所以,精讲细讲,既讲重点,又讲细节。大家随我一起。跟着我的步骤一起来学习吧!(适合初学者,所以比较细,进度比较慢)提纲:Linux目录层次标准目录详细介绍文件类型介绍Linux目录层次标准首先我们必须认识这个东西。根目录:"/"查看根目录:ls -I 或者tree好,现在跟随我们的步骤,让我们一起打开虚拟机。我们右键点击屏幕,点在终端中打开。会给我们显示这个页面 我们输入cd / 这里一定要记住 cd和/之间一定要有空格。这样我们就进入

2021-03-29 09:57:24 98 1

原创 3.Linux学习 安装ubuntu(初学,精华)

https://www.virtualbox.org/下载软件点击下载。安装完毕后。可以选择自己的盘根据指示一直向下一步。安装完毕后https://ubuntu.com/进入此网站安装ubuntu

2021-03-24 09:24:58 85

原创 2.Linux学习 系统简介(初学,精华)

主讲内容Linux的起源linux主要构成linux发行版1.起源创始人:托马斯特点:开源免费只有%2的是托马斯自己写的。思想:一切皆文件logo:小企鹅

2021-03-23 15:28:21 58

原创 1.Linux学习 i. MX系列芯片介绍(初学,精华)

刚刚接触到Linux,我知道Linux里面有相当多的知识构架,相当的复杂,相当的难学,我希望,在我遇到这些东西的时候可以从容不迫,遇到问题就解决问题,一天不行就两天。加油!巩固知识,基层坐起!遇到问题就记!主讲内容:1.i.MX 系列处理器2.ARM体系架构3.i.MX RT简介我们应当如何挑选芯片呢?我们进入到恩智浦官方网站。选芯片主要看关键参数①性能稳定②资料齐全③芯片内部资源④开发工具⑤供货周期⑥性价比⑦运行环境RT系列用的是ARM的Cortex-M7内核,它

2021-03-23 15:13:10 1081

原创 12.STM32F429 emWin 内存设备(包会 记得点赞!)

主讲内容:内存设备简介内存设备API内存设备基础实验1.内存设备简介内存设备是emWin的一种绘图机制,可以用在很多的绘图操作中,最主要的作用是消除在绘制重叠项目时出现的屏幕闪烁现象。甚至可以在这种机制的帮助下实现一些华丽炫酷的界面效果,比如类似毛玻璃的模糊效果。原理简介不使用内存设备时,每一步绘图操作都会直接写入屏幕如果使用内存设备,所有的绘图操作都在牛才能中进行,绘制完成后才更新到屏幕内存要求内存设备使用的是emWin的动态内存空间使用步骤创建内存设备激活内存设备

2021-03-22 14:35:05 902 1

原创 11.STM32F429 emWin 颜色系统(包会 记得点赞!)

本节主讲内容大致如下:颜色相关基础逻辑颜色与物理颜色预定义颜色调色板颜色相关API颜色显示实验1.颜色相关基础色彩空间RGB:红色(R)、绿色(G)、蓝色(B)CMYK:青色(C)、品红(M)、黄色(Y)、黑色(K)又叫印刷三原色HSV:色相(H)、饱和度(S)、明度(V)色相:可见光光谱里面所有的颜色 参数范围是(0-360)饱和度:颜色鲜艳程度,饱和度越高,颜色越鲜艳明度:明亮程度,明度越高,颜色看起来越明亮。色彩深度也称为位深度(bit depth),表示图像中存储一

2021-03-22 11:22:09 1056

原创 10.STM32F429 emWin 显示位图 位图转换器的使用(包会 记得点赞!)

本节主讲内容如下:1.位图转换器2.位图显示API3.位图显示综合实验1.位图转换器用于将PC格式的图片转换为C文件格式或C流位图格式的工具,支持BMP、GIF、PNG和JPEG格式的转换。.c格式 .dta格式(流位图).bmp格式这一讲现讲.c和.dta格式需要一种工具:位图转换器位图转换器的使用①配置颜色保存模式②添加图像文件③保存C文件④选择C文件的颜色格式这里的意思为保存颜色为ARGB模式。这里打开图片记录了X方向尺寸Y方向尺寸第三个是图

2021-03-22 10:16:34 1446 1

原创 9.STM32F429 emWin 2D绘图(包会 记得点赞!)

这一讲我们来讲一下2D绘图的相关内容主讲内容有以下几个方面:基本绘图Alpha混合多边形和圆相关绘图绘制二维码2D绘图综合实验1.基本绘图emWin包含完整的2D图形库,并提供了用于绘制点、线、面、多边形等图形的各种API供用户使用,它们基于快速高效的算法。...

2021-03-20 11:22:40 1428

原创 8.STM32F429 emWin 数值显示(包会!记得点赞!)

大家好,本章节给大家讲解一下数值显示是什么东西。主讲内容:1.数值显示API2.数值显示实验1.数值显示APIemWin提供了多种数值显示API,可用来显示十进制、浮点数、二进制、十六进制等形式的数值,还专门提供了一个API函数用于显示版本号。这些数值显示API不需要浮点库的支持,并且都针对速度和大小进行了优化,在有些场景下可以简化程序并节省ROM空间和执行空间。显示的位数小于当前的数值的位数会不显示实际上这个函数并不支持首位为0不支持首位为0显示的位数小于当前的数值的位数会不显

2021-03-19 10:40:09 538

原创 7.STM32F429 emWin GUIBuilder的使用 文本显示(精华)

这节为大家讲解基础功能和常用控件的一些内容。这里我们先来讲一下文本显示文本显示文本显示API文本显示实验本讲内容的参考资料有三个:《emWin应用开发实战指南》《emWin英文参考手册》《emWin中文参考手册》1.文本显示API在emWin上显示文本非常简单,仅需几个API函数,就可以在显示屏上的任何位置使用任何可用字体显示文本。 emWin是支持换行和回车字符的。打开这个文件我们调一个32位的字体。我们来看一下第一个函数GUI_DispCEOL() 清除当前行从

2021-03-18 11:02:10 1224

原创 6.STM32F429 emWin GUIBuilder的使用 手把手教学(包会 记得点赞!)

这一章主讲内容如下:1.GUIBuilder介绍2.使用步骤3.添加GUIBuilder代码到STM324.添加GUIBuilder代码到模拟器2.使用步骤①创建框架窗口。②调整框架窗口的外观属性③在框架窗口中添加控件④调整控件的外观属性⑤保存并生成.c文件右键属性点击管理员模式运行。我们回到目录下 发现多了一个GUIBuilder.ini代表着可以正常保存了。emWin控件。鼠标左键拖动到下方。创建完成右键点击→Set title height变成3

2021-03-17 16:16:41 5303 11

原创 5.STM32F429 学习emWin 移植emWin到STM32-RGB接口

本讲内容:1.移植emWin所需的配置文件也是五个步骤1.emWin系统功能2.操作系统接口3.内存管理接口4.显示驱动接口5.触摸接口好了让我们进入第一步。和上一讲差不多哈。F429及其以上的 显示驱动都在这个GUIDRV_wf.c中。这里是多缓冲的层数。比如说,这里如果是1的话,那就是没有多缓冲,就是单帧缓冲。如果是2的话就是双帧缓冲。3就是三帧缓冲。一般我们都是直接用三帧缓冲这个是定义虚拟屏幕的数量,一般不去改它,一般就是1 。如果没有图层激活的状态下显示什

2021-03-17 14:32:22 2106

原创 4.STM32F429 学习emWin 移植emWin到STM32-8080接口

本章中心思想有两个内容1.emWin初始化2.移植emWin所需配置1.初始化。GUI_X_Config()这个函数是用来分配emWin动态内存的这个函数内部调用了GUI_ALLOC_AssignMemory()LCD_X_Config()是用来初始化和配置一些显示触摸相关的一些东西的。GUI_DEVICE_CreateAndLink()创建和链接驱动设备LCD_SetVSizeEx()和LCD_SetSizeEx()一个屏幕尺寸的设置LCD_SetVRAMAddrEx()是显存地址的

2021-03-17 11:29:50 1543

原创 3.STM32F429 学习emWin emWin在Windows上的仿真

大家好,这节给大家讲解一下emWin在Windows上的仿真。这节主讲内容如下:1.搭建Windows仿真环境2.使用VS 2019社区版仿真emWin3.仿真文件概览4.Hello World1.搭建Windows仿真环境获取仿真工程文件:emWin的Windows仿真版本是免费的。https://www.segger.com/downloads/emwin/我们已经下完了这个包,现在解压缩。2.使用VS 2019社区版仿真emWin打开仿真工具;2)设置仿真工程属性;3)

2021-03-15 14:24:48 1208 2

原创 2.STM32F429 学习emWin emWin文件和应用构架

主讲内容:1.如何获取emWin2.emWin目录结构3.文件说明4.软件构架1.如何获取emWin。使用最新的STemWin5.44a版本最新版本的emWin STM32 CUBE库中。这个路径就是CUBE存放软件包的位置这是Config里面文件第一个GUIConf.c是专门用分配emWin 动态内存用的。第二个GUIConf.h用来裁剪emWin的功能针对不同的液晶搞得驱动模板数据手册地址。所有可能用到的头文件↑已经编译好的库二进制文件。电脑仿真用的文件

2021-03-15 09:17:56 590 3

原创 1.STM32F429 学习emWin 初识emWin

emWin是德国SEGGER公司针对嵌入式平台开发的嵌入式GUI解决方案,支持在任何嵌入式系统上创建高效、高质量的图形用户界面。德国SEGGER公司→emWinST公司 → STemWinucGUI→ SEGGER公司为Micrium公司定制的图形软件库ucGUI是开发ucos的公司emXGUI是野火开发的GUI。好了,本讲结束。下讲进入主题。...

2021-03-15 08:51:00 616

原创 3.小白初学UCosIII STM32F429 任务的定义与任务切换的实现2

实现任务创建函数任务的栈,任务的函数实体,任务TCB最终需要联系起来才能由系统进行统一调度。那么这个联系的工作就由任务创建函数OSTaskCreate来实现该函数在os_task.c中实现。我们想象一下,我们创建一个任务,需要将一个任务栈以及一个任务控制块以及任务的一个函数主体给联系起来的。那么肯定是需要传递一个参数,传递这些参数。任务的栈,任务的函数主体,任务的TCB块。这些参数是必不可少的。那么我们可以来这里os_task.c中。 #include "os.h"void OSTaskCrea

2021-03-13 15:31:28 280

原创 3.小白初学UCosIII STM32F429 任务的定义与任务切换的实现1

我们会创建两个任务,并让这两个任务不断地切换,任务的主体都是让一个变量按照一定的频率翻转,通过 KEIL 的软件仿真功能,在逻辑分析仪中观察变量的波形变化,最终的波形图具体见任务轮流切换波形图。其实,图任务轮流切换波形图 的波形图的效果,并不是真正的多任务系统中任务切换的效果图,这个效果其实可以完全由裸机代码来实现,具体见代码清单: 任务-1。1 /* flag 必须定义成全局变量才能添加到逻辑分析仪里面观察波形2 * 在逻辑分析仪中要设置以 bit 的模式才能看到波形,不能用默认的模拟量3 */

2021-03-13 11:39:21 1730 6

原创 2.小白初学UCosIII STM32F429 裸机系统与多任务系统

5.1.1 轮询系统轮询系统即是在裸机编程的时候,先初始化好相关的硬件,然后让主程序在一个死循环里面不断循环,顺序地做各种事情,大概的伪代码具体见代码清单: 轮询系统伪代码。轮询系统是一种非常简单的软件结构,通常只适用于那些只需要顺序执行代码且不需要外部事件来驱动的就能完成的事情。在代码清单: 轮询系统伪代码 中,如果只是实现 LED 翻转,串口输出,液晶显示等这些操作,那么使用轮询系统将会非常完美。但是,如果加入了按键操作等需要检测外部信号的事件,用来模拟紧急报警,那么整个系统的实时响应能力就不会那么好

2021-03-13 10:02:29 368

原创 1.小白初学UCosIII STM32F429 软件仿真

话不多说,上干货!我们来看一下这个图中所有的东西。顺着读一下。上面的Mser是UserSourse:是源码,与硬件无关。Ports:用于存放接口文件,既uC/OS-III 与 CPU连接的文件,也就是我们通常所说的移植文件。想要uC/OS-III在单片机上运行uC/OS-III,这些移植文件必不可少。开始了。点击Keil5新建工程注意 : 路径不要有中文。根据步骤来建立文件夹把工程文件保存在Project里面 命名为:UCOS-III把这两个点上。之后就建立以

2021-03-12 17:07:32 785

原创 14.小白初学日记 STM32F429 HAL库 Systick系统定时器

大家好,又要开始战斗了!加油!肝!SysTick定时器特性介绍SysTick系统定时器是属于Cortex-M内核中的一个外设,内嵌在NVIC中。SysTick系统定时器含有一个计数宽度为24bit的向下递减的自动重装载计数器,计数器每计数一次的时间为1/CLKSource。一般我们设置CLKSource为系统时钟。以F103为例,CLKSource可以配置为72MHZ。当重装载数值寄存器的值递减到0的时候,SysTick系统定时器可以配置产生一次中断,以此循环往复。SysTick系统定时器是属于

2021-03-12 16:02:39 367

原创 13.小白初学日记 STM32F429 HAL库 中断

大家好 怀着激动地心颤抖的手 我又来了!这是中断向量表。我们可以看到Reset的优先级很高。优先级数越小,优先级越高STM32支持2^8个优先级(8个位来表示优先级 0~255)M3只支持2^4(高4位)在F103上,使用这4个bit,组成5组优先级。这五组中,每组分为1个抢占优先级,1个子优先级。第一个组(组0):是没有抢占优先级(0),4个组全部配置为子优先级(4个bit都是子优先级)。第二个组(组1):只有一个(1)抢占优先级,3个组配置为子优先级.剩下的和图中一样。如果中断

2021-03-12 15:32:03 443

原创 12.小白初学日记 STM32F429 HAL库 复位和时钟控制

大家好,新的一天又来了,让我们一起来学习这个伟大的单片机吧!今天我们来讲RCC这个RCC是复位和时钟控制的英文缩写。问题:什么是复位?什么是时钟?STM32有三种复位功能1.系统复位:系统复位将复位除时钟控制寄存器CSR中的复位标志和备份区域中的寄存器以外的所有寄存器为他们的复位数值。2.电源复位:电源复位将复位除了备份区域外的所有寄存器。3.后备域复位:备份区域拥有两个专门的复位,他们只影响备份区域。系统复位除了时钟控制寄存器 CSR 中的复位标志和备份域中的寄存器外,系统复位会将其

2021-03-12 13:43:49 3240

原创 11.小白初学日记 STM32F429 HAL库 STM32程序启动过程

大家好,怀着激动地小心,激动地小手,我们来了。今天我想给大家分享一个我自己的错误点。来警示大家。刚才写我按键例程程序的时候,我自己来写的,发现启动不了,终于找到了原因,大家一起来看下。while(i) { if(Key_Scan(GPIOA,GPIO_PIN_0)==1) { LED_Red_Toggle; } }上面的是例程。while(Key_Scan(GPIOA,GPIO_PIN_0)) { LED_Red_Toggle; }下面是我自己写的

2021-03-12 09:48:50 372

原创 10.小白初学日记 STM32F429 HAL库 GPIO输出板级支持包

大家好 小白又来了。哈哈今天给大家带来的是什么呢,让我们怀着激动地心,颤抖的手来一起学习吧!先给大家说一下什么是板级支持包。板级支持包(BSP)是介于主板硬件和操作系统中驱动层程序之间的一层,一般认为它属于操作系统一部分,主要是实现对操作系统的支持,为上层的驱动程序提供访问硬件设备寄存器的函数包,使之能够更好的运行与硬件主板。点击新建一个页面。LED灯的板级支持包:最基本的功能实现,点亮LED灯\熄灭LED灯。去设置电平状态可以使用以下函数HAL_GPIO_WritePin()这是bsp

2021-03-11 16:12:19 764 2

原创 9.小白初学日记 STM32F429 最新HAL学习Cube

这里可以修改文件包下载路径三种新建方式针对野火开发板 我们选择第一个选项这就是根据芯片来创建工程的在原理图上我们找到了F429的三个灯可以在下面这个框直接搜索我们可以看到GPIO引脚的功能有很多种我们要选择Output模式 要选择输出模式我们选择好之后 左侧GPIO栏里面这个就可以出现了同理我们把PH11 PH12都配置成输出模式我们点击它。下方出现引脚的配置框这个是GPIO输出的点评可以是低电平或者是高电平这个是选择GPIO的模式上拉或者下拉GPI.

2021-03-11 13:27:42 2088 5

原创 8.小白初学日记 STM32F429 最新HAL学习 新开始 移植HAL库

怀着激动的心颤抖的手,终于我们又见面了,最终我还是坚持下来了,没有了一枪的热血,只有平平淡淡的记录,学习,体会心得。其中文中的钥匙是上锁的意思。这里要改成使用第五版本编译器 和使用微库...

2021-03-10 11:04:04 130

空空如也

空空如也

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

TA关注的人

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