笔记
文章平均质量分 66
佳大先生
这个作者很懒,什么都没留下…
展开
-
[Python] OSError: [E050] Can‘t find model ‘en_core_web_sm‘.
【代码】[Python] OSError: [E050] Can‘t find model ‘en_core_web_sm‘.原创 2023-10-27 21:26:49 · 533 阅读 · 1 评论 -
[Shell] openocd: error while loading shared libraries: libusb-1.0.so.0: cannot open shared object
【代码】[Shell] openocd: error while loading shared libraries: libusb-1.0.so.0: cannot open shared object。原创 2023-10-26 22:12:30 · 404 阅读 · 0 评论 -
[Python] ModuleNotFoundError: No module named ‘_ctypes‘
此前遇到了 python 中的 _ctypes 模块丢失的问题,经排查发现是 Pyenv 安装的 python 确实缺少了此模块,后来使用 conda 安装 Python 发现 _ctypes.cpython-37m-x86_64-linux-gnu.so 此包存在。排查方法是先全局查找相关模块,找到后将其路径导入 PYTHONPATH 中。若找不到模块就考虑重新安装模块,或者 Python(对于系统模块丢失的情况)Python 找不到模块。原创 2023-10-26 21:57:17 · 3211 阅读 · 0 评论 -
[Shell] BrokenPipeError: [Errno 32] Broken pipe1
若 $CLANG_FORMAT_DIFF_SCRIPT 中打印没有执行完时,外面的命令直接重定向或者关闭终端会发生以下错误。BrokenPipeError: 管道重定向导致 stdout 错误。原创 2023-10-26 19:53:55 · 417 阅读 · 0 评论 -
Shell 编程常见用法
本文主要记录写 shell 脚本时的常用写法。原创 2023-10-24 09:53:33 · 173 阅读 · 0 评论 -
【函数调用堆栈】
函数返回值是结构体原创 2022-08-26 09:14:51 · 897 阅读 · 0 评论 -
【编译链接与运行】
编译、链接、运行原创 2022-08-18 23:50:13 · 575 阅读 · 0 评论 -
【RISC-V】Trap和Exception
RISC-V之Trap与Exception原创 2022-07-27 09:50:23 · 4165 阅读 · 0 评论 -
通俗理解C++ operator(重载操作符)
如何理解operator(重载操作符)? operator是C++的重载操作符关键字,其作用就是对操作符重新定义,使其能够适应其他不同数据类型的运算。 简单点说,就是“+”本来是算数运算符,一般用于基本数据类型,但是想要运算用户定义的数据类型class(在class可能会含有多种数据类型),这时候用重载运算符就可以将两个对象进行操作。实现函数如下mycomplex operator...原创 2018-09-12 21:56:11 · 18873 阅读 · 2 评论 -
【FreeRTOS】内存管理
FreeRTOS之内存管理既然标准C库中的Malloc()与Free()也可以实现内存动态管理,为何FreeRTOS还要实现一套内存管理机制?原因如下:在小型的嵌入式系统中效率不高。会占用很多的代码空间。它们不是线程安全的。具有不确定性,每次执行的时间不同。会导致内存碎片。使链接器的配置变得复杂。目录文章目录FreeRTOS之内存管理目录0. 【五种heap的特点】1. 【heap_1】1.1 [heap_1的特性]1.2 [heap从哪个地址开始呢?]1.3 [`__attribut原创 2022-04-17 12:58:56 · 1521 阅读 · 0 评论 -
【RISC-V】外部中断
分为中断与异常,这里主要记录RISC-V指令集的中断。mstatus寄存器的MIE标志位是全局中断开关位,相当于一级中断标志。用于设置M/S/U模式下对应的External/Timer/Software中断。(M/S/U下方特权模式说到)在RISCV下,将中断(interrupt)又细分为三种类型:定时中断(timer)、核间中断(soft)、中断控制器中断(external)。定时中断可以用于产生系统的tick,核间中断用于不同cpu核之间通信,中断控制器则负责所有外设中断。这个设计和arm下有点不一样原创 2022-07-03 00:09:13 · 4005 阅读 · 0 评论 -
【FreeRTOS】中断机制
在FreeRTOS中,中断是实现实时性必要的操作。一款芯片的中断涉及到硬件触发,软件触发,软件中断处理。所以FreeRTOS的中断机制其实不好单独拿出来看。FreeRTOS关于中断能做到的是提供一套专门在中断服务函数中使用的API,比如:对应注意:下文有对于指令集的区分,主要以ESP-IDF(RISC-V为例)中断处理主要包括硬件处理部分和软件处理部分(不同的指令集架构有不同)情景假设:用户在系统正在运行Task1时按下按键,此时中断的处理流程如下。以写队列为例。用pxHigherPriorityTask原创 2022-06-23 00:21:28 · 5780 阅读 · 0 评论 -
【FreeRTOS】软件定时器
FreeRTOS 软件定时器原创 2022-06-05 15:12:43 · 324 阅读 · 0 评论 -
【FreeRTOS】队列
FreeRTOS 队列原创 2022-05-29 18:40:25 · 764 阅读 · 0 评论 -
【外设】Uart
Uart通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),只需要两根线数据线,抗干扰能力强,通信距离远。文章目录Uart硬件连接物理层Uart的优缺点UART的数据帧格式ESP32串口UART如何避免数据丢失?uart_read_bytes()正确的使用方法ESP32 uart串口例程uart中断硬件连接发送数据引脚:TX接收数据引脚:RX发送端 --> 接收端TX --> RXRX --> T原创 2022-05-22 23:41:56 · 983 阅读 · 0 评论 -
【FreeRTOS】任务调度机制
FreeRTOS之任务调度不同于前后台轮询系统,FreeRTOS正是使用任务调度机制来选择某个任务运行。那么到底如何选择任务,就需要根据任务的优先级的状态来决定。文章目录FreeRTOS之任务调度1 【优先级与任务状态】1.1 [优先级]1.2 [任务状态]2 【任务链表】3 【如何管理?】3.1 [如何找到最高优先级的运行态任务]3.2 [pxReadyTaskLists就绪任务优先级数组]4 【谁进行调度?】5 【通过链表理解调度机制】5.1 [空闲任务礼让]1 【优先级与任务状态】1.1 [优原创 2022-04-24 23:15:06 · 6341 阅读 · 7 评论 -
VMware-Ubuntu中根目录容量不足2G
如果使用VMware发现根目录过小且无法扩容请参照。原创 2022-04-01 17:32:12 · 1255 阅读 · 0 评论 -
[共享工具] 一套鼠标键盘控制两台不同系统的主机
用一组有线鼠标键盘控制两台电脑目前使用的Barrier,比较推荐,另一款是synergy。原创 2021-04-11 15:51:23 · 1632 阅读 · 0 评论 -
github切换gitlab,修改本地项目的远程地址
使用git remote -v查看远程origin路径git remote set-url origin git@git.xxx.com:xxx/example.git原创 2021-03-24 22:21:03 · 676 阅读 · 0 评论 -
CI基本知识
什么是CI?(理解CI)gitlab-ci是gitlab官方的一种持续集成(Continuous Integration)工具,通常用来进行日常的编译和自动化测试,避免提交上去的代码出现基础错误而影响项目进度。对于大的企业项目来说,往往是多人协同开发,并且项目周期都很长,需要将各种代码进行持续性的合并就称之为持续集成。比如有人可能会基于你所写的代码去实现其他的功能,如果你想要push自己新的修改,在此之前就要对新代码编译与测试,gitlab-ci就可以帮你完成这个功能,在push到gitl原创 2021-03-06 15:30:28 · 2613 阅读 · 0 评论