- 博客(19)
- 问答 (9)
- 收藏
- 关注
原创 git的使用
git是分布式的版本控制系统。需要一台服务器作为代码仓库每个用户的电脑都是一个服务器,并且和代码仓库是镜像的,用户修改和获取代码都是提交到自己的服务器当中。不需要网络就可以进行工作。当连接网络时,用户可以选择将自己的服务器与代码仓库进行同步。git gui,即图形化界面的方式git bash,命令行的方式bash是linux系统的命令,在任意文件夹中,都可以通过打开命令行窗口,此时的路径就是当前目录。Linux指令(一)——文件目录指令Linux指令(二)——其他常见指令。
2023-12-22 14:35:55
949
原创 硬件SPI通信协议
(Serial Peripheral Interface,串行外设接口)是一种全双工同步串行通信接口,用于MCU与各种外围设备以串行方式进行通信以交换信息,通信速度最高可达25MHz以上。SPI通常由四条线组成,一条主设备输出与从设备输入(Master Output Slave Input,MOSI),一条主设备输入与从设备输出(Master Input Slave Output,MISO),一条时钟信号(Serial Clock,SCLK),一条从设备使能选择(Chip Select,CS)。
2023-12-04 22:20:19
2389
原创 STM32CubeMX安装及使用
根据自己下载方式设置对用的debug选项,如果不设置该项,程序只能运行一遍。和**System Clock Mux,**然后设置时钟源的频率,最后设置需要的时钟频率HCLK,各种倍频和分频选择器会自动选择合适的值。也可以不用在这里安装,如果不知道使用什么MCU的话,可以暂时不安装,等到生成程序工程的时候,软件会自动安装。通过搜索栏搜索自己想添加的MCU 型号,然后在右下方点击对应封装的器件。第一次使用cubeMX软件,建议更改库文件路径,不要默认在C盘的用户文件夹中。先在时钟树上选择对应的时钟通道,选择。
2023-12-03 20:19:48
6827
1
原创 硬件I2C通信协议
I2C全称为由于它的引脚少,硬件连接简单,所以很多时候都使用I2C来进行不同模块之间的通信,虽然速度没有SPI块。I2C只使用了一根数据总线SDA和一根时钟总线SCL,属于串行通信,采用半双工通信。
2023-09-20 21:18:19
213
1
原创 画的第一块板子以及学到的新东西
至此,自己画板制作的最小系统板已经可以正常使用,通过本次画板打板的经历也让我学到了很多以前没有注意过的东西,也学到了很多,不只软件,对于硬件部分也有了一定的了解。
2023-09-18 23:57:52
241
原创 RT-Thread线程间同步
在两个或多个线程会操作到同一个临界区资源的时候,会导致竞态的产生,需要通过线程间同步来避免出现错误,同步的方法有很多种,常使用信号量、互斥量(互斥锁)、事件集等。
2023-08-12 16:53:23
300
1
原创 RT-Thread线程相关及遇到的问题
在led.c里面动态创建了两个线程,下载之后却一直只有一个灯出现了该有的现象,在串口调试助手发送list_thread命令,只能看到一个创建了的线程,并且提示如下错误,查了资料后才知道有个宏定义可以修改堆区的大小。由于是线程创建后是在堆区,所以要删除线程的时候会释放存储空间,使用 rt_thread_delete(rt_thread_t thread)函数。修改RT_HEAP_SIZE的大小,由于我一个线程分配的是1024的大小,所以创建两个的时候最后创建的那个线程就失败了。
2023-08-06 16:39:25
459
1
原创 Linux基础——shell编程
(如果需要输出变量需要在变量前加上$,如果不加会认为是符号)变量=值(=号左右两边不能有空格)unset 变量readonly 变量=值,不能被撤销变量命名规则:变量名称可以使用字母、数字和下划线组成,但不能使用数字开头;变量名称一般使用大写。将命令的返回值赋给变量:使用A=`data`(是反引号,不是单引号)或者使用A=$(data)shell中已经设定好的变量,可以直接在shell脚本中使用。$$:当前进程的PID号:后台运行的最后一个进程的PID号。
2023-06-10 14:40:47
263
原创 Linux基础——软件包管理
Yum是一个软件包管理器,基于RPM包的管理,能够从指定的服务器自动下载RPM包并安装,可以自动处理依赖性关系,并且一次性安装所有依赖的软件包。rpm用于互联网下载包的打包及安装工具,它生成。-i:install,安装。-v:verbose,提示。-h:hash,进度条。扩展名的文件,相当于windows的。
2023-05-28 13:04:51
130
1
原创 Linux基础——进程管理
在linux中,执行的程序称为一个进程,每一个进程都会有一个ID,又叫做pid或进程号。一个进程可能是以前台或者后台的形式存在。前台是指在屏幕上显示的,可以对其操作,只有退出这个进程才能干其他的事。后台是指实际在运行但屏幕上看不到,比如任务调度里面的atd和crond。2、ps指令ps [选项]常用选项:显示当前终端的所有进程信息以用户的格式显示进程信息显示后台进程运行的参数显示所有进程以全格式显示使用ps -aux后显示以下信息USER:进程执行的用户PID:进程号。
2023-05-27 18:48:13
258
1
原创 Linux指令(二)——其他常见指令
功能:快速定位文件路径,无需遍历整个文件系统,查询速度较快,第一次使用前需要先使用。功能:zip可以将文件和目录压缩成 .zip文件,unzip解压 .zip文件。功能:gzip将文件压缩成 .gz文件,gunzip解压 .gz文件。功能:从指定目录下递归遍历各个子目录,将满足条件的文件显示出来。功能:打包指令,打包后的文件为 .tar.gz文件。功能:过滤查找,在指定文件中查找指定的关键词。常用选项:(一般几个选项组合使用)功能:查找某个指令在哪个目录下。功能:显示当前时间或修改时间。
2023-04-02 10:36:44
217
原创 Linux指令(一)——文件目录指令
绝对路径:从根目录开始到所要寻找的目录的路径相对指令:从当前目录开始到所要寻找的目录的路径如果哪一条指令不懂得话可以直接,即可查看指令的功能和选项。
2023-04-01 00:48:43
243
原创 Linux基础——Vi/Vim的使用
Linux自带有Vi和Vim文本编辑器,可以在终端直接使用这两个编辑器,Vim可以理解为是Vi的进阶版,可以有更多的操作。Vim常用的有三种模式,分别是正常模式、插入模式和命令行模式:1.正常模式用Vim打开一个文档就就进入了正常模式,这是默认模式,可以移动光标,可以删除字符或删除整行,也可以使用复制、粘贴来处理文件数据。使用Vim+文件名称即可打开一个文档。如果文件以存在,可使用Tab键填充名字。例如:回车后就会出现:此时还是无法写入其他东西,得进入插入模式才可以开始写。2.插入模式。
2023-03-26 20:54:33
269
原创 Linux基础——目录结构
1、目录结构2、常见目录说明/bin:存放常用命令 /root:系统管理员的用户主目录 /boot:存放了Linux启动时使用的核心文件 /dev:存放设备的文件,Linux将所有硬件设备都映射成一个文件来管理 /etc:存放系统管理需要的配置文件和子目录 /home:普通用户的主目录,Linux中每个用户都会有一个自己的主目录,文件名称一般是用户名 /var:存放经常被修改的目录,包括各种日志文件 /lib:存放库文件 /usr:很多的应用程序和文件都存放在这个目录下
2023-03-26 15:34:03
602
原创 AD使用学习——原理图篇
首先需要创建一个新的项目,用来存放其他的各种文件。然后就是四种基本的文件——原理图库、原理图、PCB库、PCB。
2023-03-18 14:53:28
11125
空空如也
关于三轮的简单电磁循迹小车问题
2022-10-21
stm32点灯失败?
2022-09-26
C++类的使用出现的问题
2022-08-24
EXTI按键点灯不成功
2022-07-26
递增运算符怎么回事?
2022-07-23
好像是循环的问题但是找不出来
2022-06-06
c语言对文件的写入为什么不成功
2022-06-03
为什么同样的代码,第一张图能够成功,第二张图不行呢?
2022-05-16
c语言如何将杨辉三角挖空然后插入文字?有什么思路吗?
2022-04-26
在循环中想让一个字符串遇到'\0'再退出循环,但是遇到空格就已退出是怎么回事?
2022-04-21
输入这个二维数组的时候为什么要多输入一个数才能继续进行?不懂啊!!求解答
2022-04-18
将一个数插入按顺序排的数组中
2022-01-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人