- 博客(92)
- 收藏
- 关注
原创 关于在 Notion 中使用 Markdown 语法
习惯使用的 Markdown 的伙伴们应该知道,当需要加粗字体时,会首先输入。,也就是先键入**,后面紧接着输入需要加粗的文字,最后键入**。但是在 Notion 中,这个就不太行了。同样,行内公式、行内代码高亮、斜体等都是这个规则。,然后在里面填内容。
2023-10-01 21:23:39 5174
原创 解决 Ubuntu-MATE 系统中出现 System policy prevents Wi-Fi scans 的问题
解决 Ubuntu-MATE 系统中出现 System policy prevents Wi-Fi scans 的问题
2022-10-18 21:28:11 2256 2
原创 Depends: zlib1g (= 1:1.2.11.dfsg-zubuntu9.1) but 1:1.2.11.dfsg-zubuntu9.2 is to be installed
解决Ubuntu-MATE系统中package所依赖的版本问题
2022-10-18 21:09:29 1035
原创 E:The repository ‘ppa.launchpadcontent.net‘ does not have a Release file
解决Ubuntu-MATE系统中出现的仓库问题
2022-10-18 21:04:54 3719
原创 Solve the problem of MSVC2017 compiler with yellow exclamation mark in kits component of QT
Solve the problem of MSVC2017 compiler with yellow exclamation mark in kits component of QT
2022-07-27 21:07:58 176 2
原创 Solutions to license invalidation caused by MATLAB update
Solutions to license invalidation caused by MATLAB update.
2022-07-16 15:11:36 676 1
原创 C++之强制类型转换
C++之强制类型转换强制类型转换在实际工程中是很难完全避免的。因此,安全可靠的转换方式变得非常重要。1 C 强制类型转换C 方式的强制类型转换的用法如下代码所示:(Type)(Expression)Type:需要转换成的类型Expression:对其进行转换e.g.int v = 0x12345;// 将 int 类型的变量转换成 char 类型char c = char(v);C 方式的强制类型转换存在如下问题:过于粗暴:任意类型之间都可以进行转换,编译器很难判断其正确性
2022-05-24 09:13:34 1947
原创 C++之函数重载
C++之函数重载1.函数重载的定义函数重载:使用同一个函数名定义不同的函数。从本质上来看,就是互相独立的不同函数,每一个函数类型不同。因此,函数重载是由函数名和参数列表决定的。注意:函数返回值不能作为函数重载的重要依据!2.构成函数重载的条件当满足以下三个条件之一时,便可以构成函数重载函数参数个数不同// 函数类型:void(int)void Demo(int x){ printf("x = %d\r\n", x);}// 函数类型:void(int, int)voi
2022-05-23 19:46:05 603 2
原创 C++之函数参数默认值
C++之函数参数默认值1.参数默认值的指定方式在 C++ 中,可以在函数声明时为参数提供一个默认值。这样在函数调用时,如果没有提供函数参数值,则使用默认值。e.g. 在函数声明时,指定参数默认值void Demo(int x = 0);int main(int argc, char* argv[]){ Demo(); // 不用提供参数,会将 x = 0 的结果输出 return 0;}void Demo(int x){ printf("x = %d\
2022-05-23 15:03:41 9134
原创 C++之引用
C++之引用1.什么是引用引用可以看作是一个已经定义的变量的别名,其作为变量别名而存在。2.引用的用法2.1 普通引用当引用作为普通引用时,其使用语法如下所示:Type& new_name = old_name;e.g.int a = 0;int& b = a;b = 5; // 此时,a = 5注意在定义时必须使用相同类型的变量进行初始化不能使用常量进行初始化int& b = 0;2.2 const 引用在 C 语言中,c
2022-05-22 21:49:13 258
原创 初始 ISA
初始 ISAISA 全称为 (Instruction Set Architecture),称之为 处理器架构,简称为 架构,是处理器的灵魂。ISA 具有如下特点:一组指令集合定义了软件程序员需要了解的硬件信息,如支持的数据类型、存储器、寄存器状态、寻址模式及存储器模型等构成处理器底层硬件与运行在其上的软件之间的桥梁与接口,是现代计算机处理器中最重要的抽象层软件无须做任何修改便可以完全运行在任何一款遵循同一抽象层标准的处理器上简单理解为:ISA 是能够为电路硬件翻译应用程序的一层抽象层。具体的
2022-05-18 14:10:08 333
原创 解决 At least one valid and enabled repository required for this action to succeed 问题的办法
解决 At least one valid and enabled repository required for this action to succeed 问题的办法问题重现:当我们使用 MaintenanceTool 工具对已安装的 Qt 进行卸载、修复等其他操作时,会遇到如下图所示的问题,导致无法继续解决办法单击窗口左下角的图标,如下图所示,随后会弹出一个新的窗口在新的窗口中,选中 Repositories 一栏在 Repositories 一栏中,选中 Tempora
2022-05-18 11:55:42 6374 1
原创 更改 Windows+Ubuntu 双系统的启动顺序
更改 Windows+Ubuntu 双系统的启动顺序打开计算机,在选择系统界面下,记录要更改的系统的序号,默认是从 0 开始,比如,Windows 系统位于第三行,那么它的序号就是 2打开终端,进入到 /etc/default/ 目录下,可以执行下面的命令cd /etc/default/输入下面的命令,随后进入下图所示的界面,即进入更改配置界面sudo sudo nano grub在上面的界面中,可以看到位于第一行的白色文字 GRUB_DEFAULT=0,将 0 更改为你要修改的
2022-05-16 19:15:20 3550
原创 以面向对象的方式编写单片机程序
以面向对象的方式编写单片机程序通过触发按键控制 LED 的亮灭Traditional wayint main(void){ while(1) { if (read_gpio_pin_key()) { write_gpio_pin_led(); } }}OOP waytypedef struct LEDDevice { int group; int pin; void (*Init)(struct LEDDevice *pDev); void (*C
2022-05-13 13:51:30 878
原创 PyQ5 的安装教程
PyQ5 的安装教程PyQt5 是用来创建 Python GUI 应用程序的工具包。作为一个跨平台的工具包,PyQt5 可以在所有主流操作系统上运行(Unix、Windows、Mac)。本文描述 Windows 系统下如何安装 Python + PyCharm + PyQt5,并通过 PyQt5 采用两种方式设计 GUI 界面。a. 直接使用代码设计界面b. 先使用 QtDesigner 进行可视化设计,然后将生成的 .ui 文件转换成 .py 文件。1. 安装 Python访问官网Python
2022-05-13 13:48:42 2318 1
原创 初始 Ubuntu
初始 UbuntuUbuntu 中的目录遵循 FHS 标准 (Filesystem Hierarchy Standard,文件系统层次标准)。它定义了文件系统中目录、文件分类存放的原则、定义了系统运行所需的最小文件、目录的集合,并列举了不遵循这些原则的例外情况及其原因。FHS 并不是一个强制的标准,但是大多的 Linux、Unix 发行版本遵循 FHS。问题描述:使用 vi 命令时,使用方向键时老是出现很多字母,按退格键不能正常删除字符,如下图所示:原因:新系统只装了 vi,没有装 vim;或
2022-05-13 13:19:19 167
原创 FreeRTOS 学习教程之任务调度算法
FreeRTOS 学习教程之任务调度算法所谓调度算法,就是怎么确定哪个就绪态的任务可以切换为运行状态。在 FreeRTOS 中,任务调度有如下策略:configUSE_PREEMPTION该算法是配置任务是否具有可抢占的功能,即当高优先级的任务就绪时能否打断低优先级的任务而执行。定义为 1 代表具有抢占功能,定义为 0 代表不具有抢占功能。configUSE_TIME_SLICING该算法是配置 同等 优先级的任务是否具备轮流执行的功能。如果不配置的话,意味着获得执行权限的任务在
2022-05-13 13:10:38 744
原创 栈的学习笔记-基于C语言
栈 的学习笔记-基于 C 语言本文主要记录作者在学习栈的过程中所作的笔记,仅供参考,如有错误,还请见谅,并请读者补充以及提出建议,谢谢!在进入正文之前,先温习一下 C 语言的一个重要知识点:在执行基于 C 语言编写的函数时,并不是直接执行函数内部的代码,而是按下面的步骤进行执行:获取到函数的返回地址划分处一块属于自己的栈,用于保存 LR 等寄存器以及局部变量等对 LR 寄存器进行赋值,该值等于返回地址,即将返回地址保存到栈空间中正式开始执行代码本文根据下面代码的执行流程,进行阐述 栈
2022-05-11 10:02:56 155
原创 一文详解算力
一文详解算力算力(也称哈希率)是比特币网络处理能力的度量单位。即为计算机(CPU)计算哈希函数输出的速度。比特币网络必须为了安全目的而进行密集的数学和加密相关操作。 例如,当网络达到 10Th/s 的哈希率时,意味着它可以每秒进行 10 万亿次计算。在通过“挖矿”得到比特币的过程中,我们需要找到其相应的解 m,而对于任何一个六十四位的哈希值,要找到其解m,都没有固定算法,只能靠计算机随机的hash碰撞,而一个挖矿机每秒钟能做多少次hash碰撞,就是其“算力”的代表,单位写成 hash/s,这就是所谓工
2022-05-06 11:20:21 7136
原创 嵌入式神经网络处理器-NPU
嵌入式神经网络处理器-NPUNPU 指的是“嵌入式神经网络处理器”,采用“数据驱动并行计算”的架构,特别擅长处理视频、图像类的海量多媒体数据。NPU 处理器专门为物联网人工智能而设计,用于加速神经网络的运算,解决传统芯片在神经网络运算时效率低下的问题。NPU 处理器包括了乘加、激活函数、二维数据运算、解压缩等模块。乘加模块用于计算矩阵乘加、卷积、点乘等功能,NPU 内部有64个MAC,SNPU有32个。激活函数模块采用最高12阶参数拟合的方式实现神经网络中的激活函数二维数据运算模块
2022-05-06 10:50:23 5042
原创 一文搞懂 C++ 中 namespace 的用法
一文搞懂 C++ 中的 namespace1 namespace 的作用创建名字是程序设计过程中一项最基本的活动,比如创建符号常量、变量、函数、结构、枚举、类和对象等名字。当一个项目很大时,名字互相冲突性的可能性越大,因此在调用的时候就会出现一系列的问题。为了避免这种情况发生所带来的后果,标准 C++ 引入关键字 namespace(命名空间/名字空间/名称空间),对标识符的作用域进行控制。正如 C 语言可以通过 static 关键字来使得名字只得在本编译单元内可见。2 namespace 的用法
2022-05-06 10:25:54 3496 2
原创 屏幕的初始化过程-LVGL
屏幕的初始化过程-LVGL1、lv_init:初始化屏幕链表_lv_ll_init(&LV_GC_ROOT(_lv_disp_ll), sizeof(lv_disp_t));2、lv_win32_init:注册显示器到链表static lv_disp_drv_t display_driver;lv_disp_drv_init(&display_driver);display_driver.hor_res = hor_res;display_driver.ver_res
2022-05-05 16:15:22 2608 2
原创 为 Ubuntu22.04 系统添加中文输入法
为 Ubuntu22.04 系统添加中文输入法1、首先,安装 Chinese 语言包2、单击桌面右上角图标,点击 Settings,在弹出的窗口中,点击 Region & Language,然后点击 Manage Installed Languages3、或者通过这种方式打开,打开 Show Applications,找到 Language Support 并打开,弹出如下窗口,如下图所示4、如果第一次点击的话,应该会弹出如下窗口,如果没有弹出直接跳过接下来的步骤。
2022-05-05 09:44:01 43273 43
原创 更改 Ubuntu22.04 系统软件源
更改 Ubuntu22.04 系统软件源首先,将之前的软件源进行备份sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup(1)图形化操作打开 Show Applications,找到 Software & Updates 并打开,弹出如下窗口,如下图所示在 Download from 一栏,选择 Other,并弹出新的窗口,如下图所示a.在新的窗口中,通过鼠标滚动,找到自己想设置的软件源,比如本人比较
2022-05-05 08:06:13 29700 6
原创 【1】KiCad 符号编辑器的基本使用
KiCad 符号编辑器的基本使用对于符号编辑器,说白了就是创建元器件的符号。它存在的好处就是:当 KiCad 软件提供的元器件符号库中不存在我们要使用的元器件时,可以通过此工具根据其原理进行创建,以此来绘制原理图。为了更好的梳理 KiCad 符号编辑器的使用,本文通过创建 W25Q16 元器件符号(如下图所示)的方式进行描述。每一个元器件都具有 引脚序号 和 引脚名称,在绘制的时候,主要关注这两块内容。元器件引脚的序号排列方式如下图所示1.首先打开 KiCad 软件2.点击 .
2022-04-29 22:11:08 6798 2
原创 KiCad 的安装教程
KiCad 的安装教程KiCad 是一款免费、开源的 EDA 设计工具,它能够创建电路原理图并进行 PCB 布局布线,它具有一个集成化的开发环境,在其之下 KiCad 包含了如下几款非常精致、相互独立的软件工具。KiCad 的原理图编辑器支持从最基本的原理图到包含数百张图纸的复杂层次设计的所有内容。创建自己的自定义符号或使用KiCad官方图书馆中的数千个符号中的一些。使用集成的 SPICE 模拟器和电气规则检查器验证您的设计。KiCad 的 PCB 编辑器足够平易近人,可以让您的第一个 PCB 设
2022-04-29 19:32:50 7908 4
原创 MATLAB R2022a 安装教程
MATLAB R2022a 安装教程MathWorks 于 2022 年 3 月 15 日发布了 MATLAB 和 Simulink 产品系列的最新版本 Matlab R2022a 。Matlab R2022a 除了带来数百项 MATLAB 和 Simulink 特性更新和函数更新之外,还包含 5 款新产品和 11 项重要更新。1. 安装之旅百度网盘分享地址-uicz第一步:下载好压缩包后,对压缩包进行装载:第二步:打开装载好的 DVD 驱动器,如下图所示:第三步:在驱动器中找到 s
2022-04-29 19:17:27 35539 74
原创 在 KEIL 官网下载 Pcks
在 KEIL 官网下载 Pcks直接单击,进入下载地址如果想进一步熟悉怎么进入的,详细步骤如下打开 KEIL 官网首页在 Product Information 下,单击 Supported Microcontrollers,进入 MDK5 Device List 界面,如下图所示:进入官网界面在 MDK5 Device List 界面的 Quick Links 下,单击 Software Packs,进入 MDK5 Software Packs 界面,如下图所示:进入
2022-04-25 14:06:41 983
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人