自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(100)
  • 资源 (5)
  • 收藏
  • 关注

原创 QT的操作

2024-05-03 00:03:13

原创 Qt中QMainWindow的一些操作

2024-05-01 17:14:42 96

原创 MySQL数据库下载及安装教程

3、在命令提示符中先输入cd C:\Program Files\MySQL\MySQL Server 8.0\bin 打开目录,然后输入mysql -h localhost -u root -p 登录数据库,再输入数据库密码,登录成功查看信息。2、在电脑中找到安装好的MySQL的bin文件目录 ,我的安装目录是:C:\Program Files\MySQL\MySQL Server 8.0\bin。红线标出的是mysql数据库版本号,可与下图版本号不一样,以实际安装的版本为准。2、计算机—>右键—>管理。

2024-05-01 14:29:45 1806

原创 SQLite Expert安装与注册

SQLite Expert

2024-05-01 13:59:31 166

原创 sqlite3下载

2024-04-30 20:26:39 64

原创 qt的一些方法

自动生成按钮相应的函数。

2024-04-29 00:05:36 201

原创 13_Qt中的快捷键

Qt Creator的一些快捷操作:

2024-04-28 19:08:55 539 1

原创 12_认识QT

help->About Plugins…->C+±>ClangCodeModel去掉勾选,再重启creator即可。

2024-04-28 18:50:12 302

原创 QT中如何创建一个自己的按钮控件

2024-04-28 17:14:26 68

原创 09_STM32系统时钟

2024-04-26 09:49:13 341

原创 12_FreeRTOSCPU利用率统计

用户想要使用 CPU 利用率统计的话,需要自定义配置一下,首先在FreeRTOSConfig.h 配置与系统运行时间和任务状态收集有关的配置选项,并且实现portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() 与portGET_RUN_TIME_COUNTER_VALUE()这两个宏定义vTaskGetRunTimeStats()和 vTaskList()函数获得任务的相关信息与 CPU 使用率的相关信息。

2024-04-24 22:57:40 147

原创 AD 21、22 软件安装教程

AD 软件安装教程

2024-04-23 22:08:03 1058

原创 11_FreeRTOS中断管理

临界段用一句话概括就是一段在执行的时候不能被中断的代码段。在 FreeRTOS 里面,这个临界段最常出现的就是对全局变量的操作。1.1 Cortex-M内核快速开关中断指令1.2 关中断FreeRTOS 关中断的函数在 portmacro.h 中定义,分不带返回值和带返回值两种。1.3 开中断1.4 临界段代码临界段代码也叫做临界区,是指那些必须完整运行,不能被打断的代码段,比如有的外设的初始化需要严格的时序,初始化过程中不能被打断。1.4.1 任务级临界段代码保护。

2024-04-23 21:45:29 308

原创 10_FreeRTOS内存管理

标准 C 库中的 malloc()和 free()也可以实现动态内存管理,但是如下原因限制了其使用:● 这些函数在小型嵌入式系统中并不总是可用的,小型嵌入式设备中的 RAM 不足。● 它们的实现可能非常的大,占据了相当大的一块代码空间。● 他们几乎都不是安全的。● 它们并不是确定的,每次调用这些函数执行的时间可能都不一样。● 它们有可能产生碎片。● 这两个函数会使得链接器配置得复杂。

2024-04-23 21:38:52 297

原创 09_FreeRTOS任务通知

FreeRTOS 从 V8.2.0 版本开始提供任务通知这个功能,每个任务都有一个 32 位的通知值,在大多数情况下,任务通知可以替代二值信号量、计数信号量、事件组,也可以替代长度为 1 的队列(可以保存一个 32位整数或指针值)。vTaskNotifyGiveFromISR()是 vTaskNotifyGive()的中断保护版本。xTaskNotifyFromISR()是 xTaskNotify()的中断保护版本。ulTaskNotifyTake()和xTaskNotifyWait()

2024-04-23 21:34:48 219

原创 08_FreeRTOS软件定时器

定时器,是指从指定的时刻开始,经过一个指定时间,然后触发一个超时事件,用户可以自定义定时器的周期与频率。FreeRTOS 操作系统提供软件定时器功能,软件定时器的使用相当于扩展了定时器的数量,允许创建更多的定时业务。FreeRTOS 软件定时器功能上支持:●裁剪:能通过宏关闭软件定时器功能。●软件定时器创建。●软件定时器启动。●软件定时器停止。●软件定时器复位。●软件定时器删除。1.1 软件定时器应用场景。

2024-04-23 21:26:07 307

原创 07_FreeRTOS事件

事件是一种实现任务间通信的机制,主要用于实现多任务间的同步,但事件通信只能是事件类型的通信,无数据传输。与信号量不同的是,它可以实现一对多,多对多的同步。configUSE_16_BIT_TICKS 定义为 0,那么 uxEventBits 是 32 位的,有 24 个位用来实现事件标志组。一对多同步模型:一个任务等待多个事件的触发,这种情况是比较常见的;多对多同步模型:多个任务等待多个事件的触发。FreeRTOS 提供的事件具有如下特点:事件控制块。

2024-04-23 21:23:28 264

原创 06_FreeRTOS互斥量

互斥信号量其实就是一个拥有优先级继承的二值信号量,在同步的应用中(任务与任务或中断与任务之间的同步)二值信号量最适合。互斥信号量适合用于那些需要互斥访问的应用中。在互斥访问中互斥信号量相当于一个钥匙,当任务想要使用资源的时候就必须先获得这个钥匙,当使用完资源以后就必须归还这个钥匙,这样其他的任务就可以拿着这个钥匙去使用资源。

2024-04-23 21:20:41 213

原创 05_FreeRTOS信号量

信号量(Semaphore)是一种实现任务间通信的机制,可以实现任务之间同步或临界资源的互斥访问,常用于协助一组相互竞争的任务来访问临界资源。在多任务系统中,各任务之间需要同步或互斥实现临界资源的保护,信号量功能可以为用户提供这方面的支持。1.1 二值信号量二值信号量既可以用于临界资源访问也可以用于同步功能。1.2 计数信号量。

2024-04-23 21:03:12 236

原创 04_FreeRTOS消息队列

队列又称消息队列,是一种常用于任务间通信的数据结构,队列可以在任务与任务间、中断和任务间传递信息,实现了任务接收来自其他任务或中断的不固定长度的消息。FreeRTOS 中使用队列数据结构实现任务异步通信工作,具有如下特性:●消息支持先进先出方式排队,支持异步读写工作方式。●读写队列均支持超时机制。●消息支持后进先出方式排队,往队首发送消息(LIFO)。●可以允许不同长度(不超过队列节点最大值)的任意类型消息。●一个任务能够从任意一个消息队列接收和发送消息。

2024-04-22 21:26:39 296

原创 03_FreeRTOS任务管理

任务状态通常分为以下四种:就绪(Ready)运行(Running)阻塞(Blocked)挂起态(Suspended)

2024-04-20 23:33:28 705

原创 02_FreeRTOS启动流程

在 Cortex-M3 架构中,FreeRTOS 为了任务启动和任务切换使用了三个异常:SVC、PendSV 和 SysTick:

2024-04-19 08:10:18 258

原创 11_Qt文件系统

例如,在安装了 Windows 平台的 PC 上面写入的一个数据流,可以不经过任何处理,直接拿到运行了 Solaris 的 SPARC 机器上读取。值得注意的是,有关文件本身的信息,比如文件名、文件所在目录的名字等,则是通过QFileInfo获取,而不是自己分析文件路径字符串。在使用QDataStream的时候,这样的代码很方便,但是使用了QTextStream时却有所不同:读出的时候,str 里面将是 The answer is 42,ans 是 0。而以文本形式写入数据,是没有数据之间的分隔的。

2024-04-18 19:00:46 658

原创 10_Qt绘图和绘图设备

Qt的这种格式是二进制的,不同于某些本地的元文件,Qt的pictures文件没有内容上的限制,只要是能够被QPainter绘制的元素,不论是字体还是pixmap,或者是变换,都可以保存进一个picture中。回忆下我们这里所说的QPaintDevice,实际上是说可以有QPainter绘制的对象。QPixmap使用底层平台的绘制系统进行绘制,无法提供像素级别的操作,而QImage则是使用独立于硬件的绘制系统,实际上是自己绘制自己,因此提供了像素级别的操作,并且能够在不同系统之上提供一个一致的显示形式。

2024-04-18 18:32:23 1004

原创 09_Qt消息机制和事件

Qt 的事件是整个 Qt 框架的核心机制之一,也比较复杂。说它复杂,更多是因为它涉及到的函数众多,而处理方法也很多,有时候让人难以选择。现在我们简单总结一下 Qt 中的事件机制。Qt 中有很多种事件:鼠标事件、键盘事件、大小改变的事件、位置移动的事件等等。所有事件对应一个事件处理函数,在这个事件处理函数中用一个很大的分支语句进行选择,其代表作就是 win32 API 的WndProc()函数:// ...break;...每一种事件对应一个事件处理函数。

2024-04-18 18:16:00 510

原创 08_Qt自定义控件

在搭建Qt窗口界面的时候,在一个项目中很多窗口,或者是窗口中的某个模块会被经常性的重复使用。打开Qt的.ui文件,因为SmallWidget是派生自Qwidget类,所以需要在ui文件中先放入一个QWidget控件, 然后再上边鼠标右键。在使用Qt的ui文件搭建界面的时候,工具栏栏中只为我们提供了标准的窗口控件,如果我们想使用自定义控件怎么办?我们可以看到, 这个窗口对应的类从原来的QWidget变成了SmallWidget。添加之后,类名会显示到上边的列表框中,然后单击提升按钮,完成操作.

2024-04-18 17:40:42 244

原创 07_Qt登录窗口布局和常用控件

第二种布局方式是利用控件里的widget来做布局,在Containers中。在widget中的控件可以进行水平、垂直、栅格布局等操作,比较灵活。将控件放入widget控件中进行水平布局,就可按比例缩放。设置弹簧固定宽度,以及一些属性。调整对话框和widget的间隙。使得对话框输入时看不见内容。

2024-04-18 17:04:35 337

原创 06_Qt对话框QDialog

Qt 支持模态对话框和非模态对话框。使用QDialog::exec()实现应用程序级别的模态对话框使用QDialog::open()实现窗口级别的模态对话框使用QDialog::show()实现非模态对话框。

2024-04-18 15:15:59 564

原创 05_Qt资源文件添加

【代码】05_Qt资源文件添加。

2024-04-18 14:34:14 109

原创 4_QMainWindow

QMainWindow是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个锚接部件(dock widgets)、一个状态栏(status bar)及一个中心部件(central widget),是许多应用程序的基础,如文本编辑器,图片编辑器等。主窗口的工具栏上可以有多个工具条,通常采用一个菜单对应一个工具条的的方式,也可根据需要进行工具条的划分。除了以上几个部件,中心显示的部件都可以作为核心部件,例如一个记事本文件,可以利用。

2024-04-18 14:19:08 767

原创 01_FreeRTOS移植

复制工程模板,不需要的源文件全部删除。替换掉工程中的裸机延时。

2024-04-17 15:08:58 266

原创 百度网盘不限速方法

百度网盘不限速方法。

2024-04-17 10:58:52 450 1

原创 百度网盘客户端打不开

直接找到百度安装目录下的Autoupdate文件夹找到Autoupdate.exe 双击打开 (注意:先确保任务管理器里没有百度网盘运行的进程)

2024-04-17 10:49:21 227

原创 00_初识FreeRTOS

比如 char 型变量的前缀是 c,short型变量的前缀是s,long 型变量的前缀是l,portBASE_TYPE 类型变量的前缀是x。因此,当我们定义一个无符号的 char 型变量的时候会加一个 uc 前缀,当定义一个char型的指针变量的时候会有一个pc前缀。这里有一个最有效也是最难的方法,就是阅读 RTOS 的源码,深究内核和每个组件的实现方式,这个过程枯燥且痛苦。如果是学习,只会简单的调用API,那是不可取的,我们应该深入的学习其中一款 RTOS。官网 www.freertos.org 获得。

2024-04-17 10:40:33 269

原创 03_信号和槽

Q_OBJECTpublic:signals://自定义信号写道signals下//返回值是void,只需要声明,不需要实现//可以有参数,可以重载Q_OBJECTpublic:signals:使用connect()可以让我们连接系统提供的信号和槽。但是,Qt 的信号槽机制并不仅仅是使用系统提供的那部分,还会允许我们自己设计自己的信号和槽。

2024-04-16 22:04:54 686

原创 02_对象树

作为父组件的 window 和作为子组件的 quit 都是QObject的子类(事实上,它们都是QWidget的子类,而QWidget是QObject的子类)。因此,这段代码在超出作用域时,会先调用 quit 的析构函数,将其从父对象 window 的子对象列表中删除,然后才会再调用 window 的析构函数。这些细节在今后的开发过程中很可能时不时跳出来烦扰一下,所以,我们最好从开始就养成良好习惯,在 Qt 中,尽量在构造的时候就指定 parent 对象,并且大胆在堆上创建。

2024-04-16 21:18:37 1743

原创 01_QPushButton按钮

上面代码中,一个按钮其实就是一个QPushButton类下的对象,如果只是创建出对象,是无法显示到窗口中的,所以我们需要依赖一个父窗口,也就是指定一个父亲利用setParent函数即可,如果想设置按钮上显示的文字利用setText,移动按钮位置用move。对于窗口而言,我们可以修改左上角窗口的标题setWindowTitle,重新指定窗口大小:resize,或者设置固定的窗口大小setFixedSize;

2024-04-16 20:41:08 107

原创 00_Qt概述以及如何创建一个QT新项目

Qt是一个跨平台的C++图形用户界面应用程序框架。它为应用程序开发者提供建立艺术级图形界面所需的所有功能。它是完全面向对象的,很容易扩展,并且允许真正的组件编程。

2024-04-16 20:15:02 804

原创 08_ADC轮询方式读取电压值/DMA方式多通道采集/DAC数模转换

【代码】08_ADC轮询方式读取电压值/DMA方式多通道采集/DAC数模转换。

2024-04-16 11:51:23 207

原创 07_PWM波&SPWM波

【代码】07_PWM波&SPWM波。

2024-04-16 10:47:29 99

4-12油画特效.ipynb

opencv油画特效

2021-03-05

4-11颜色风格.ipynb

opencv颜色风格

2021-03-05

空空如也

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

TA关注的人

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