- 博客(26)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 树莓派5+Ubuntu24.04 LTS CH348 / CH9344 驱动安装 保姆级教程
各位,最近我做的项目里,要用到多个激光测距的模块。这些激光测距的模块是用串口输出的,所以,我想用一个可以一个USB口转8个串口的板子,正好淘宝上有,我就买了。买来之后,装驱动,却碰到点问题,装不上。后来,我摸索了一下,搞定了,把这个过程记录一下吧。在windows系统上,是很容易安装的,按照提示,直接安装就行。这个1个USB转8个串口的板子,是使用沁恒的CH348的芯片,沁恒提供了驱动程序。按照使用说明,将驱动拷到树莓派之后,输入make命令。在树莓派5的安装要复杂一点,下面讲讲树莓派5上的安装。
2025-11-11 17:53:22
297
原创 闲得蛋疼之PX5 RTOS移植到stm32用stm32cubeMX 保姆级教程
这个,现在主流的嵌入式操作系统有freertos,被亚马逊收购了,现在是开源的,谁都可以用。然后,有个threadX, 被微软收购了,去年,微软将这个操作系统给了Eclipse 基金会,也开源了。threadX吹牛逼说,到目前为止有120亿嵌入式产品用了这个操作系统。12billion, 注意是12billion。
2025-08-22 17:19:15
1159
原创 STM32和STM32CubeMX实现FDCAN通信, 保姆级教程
各位,我现在要用树莓派和STM32的板子进行通信,一个是用串口,但是,考虑到串口的速度,通信距离和可靠性,还是用CAN比较合适。所以,我要做一个STM32的CAN通信接口。下面就是保姆级教程。
2025-08-08 10:46:21
2495
6
原创 树莓派5+Ubuntu24.04 LTS ROS2 N10P镭神激光雷达 保姆级教程
当时,买来之后呢,只有windows版的上位机,通过USB插口,确实可以扫描到雷达的点云,但是,我的智能小车计划用linux系统,而且当时我用的linux系统是树莓派4B+ubuntu24.04LTS版本。那么,修改了之后,就编译成功了。我开始也按照他们的使用手册,改了一下,结果发现他们的使用手册跑不通,越搞越复杂,问他们技术人员,他们技术人员也说不出个啥,只说也可以不改。我也觉得可以不改,将USB插到树莓派,树莓派会自动识别,到时候直接读写就行了,不必搞那么复杂。这样,在我的机子上,就在这么个目录下。
2025-07-10 14:58:10
2036
2
原创 树莓派5+Ubuntu24.04 LTS ROS2 Jazzy安装 保姆级教程
我曾经写过一个。现在,我又买了一个树莓派5,想在树莓派5上学习ROS2,所以,有必要在树莓派5上再装ROS2,装的过程中,发现树莓派5上装ROS2和树莓派4B上装ROS2有点不同。所以,就再写一个树莓派5上装ROS2的保姆级教程。
2025-06-23 11:43:05
1178
原创 ESP32-C3 Vscode+ESP-IDF开发环境搭建 保姆级教程
板子焊完了之后,我就将我的桌面电源,调成12V,1.5A,接到板子上的电源插口上去了,结果,发现电流很大,但是板子上的指示电源的LED却没有亮。我也不知道是我的电路设计错了,还是焊错了,还是芯片或者器件有问题,于是,我在网上问,网上有人说,他的模块一接上电脑就能识别出USB口,就要求他下载程序。意思我的板子有问题,在乐鑫的官方论坛问,乐鑫的回答也是我的板子可能有问题。但是,烧到我的板子上没用,因为,例程里用的是LED灯带,而且是用的IO8,我的板子是自己设计的,不是乐鑫的开发板,IO口对不上。
2025-05-30 09:23:45
1957
原创 树莓派5+Ubuntu24.04 LTS串口通信 保姆级教程
各位,除了树莓派4B之外,我又搞了个树莓派5, 装的也是Ubuntu24.04 LTS服务器版。装系统的方法跟树莓派4B一样,没什么好说的。装完了系统之后,我就想装个wiringPi来试试串口,却发现这个树莓派5的串口和树莓派4B的串口有点不一样。2. 原来,树莓派5的/boot/firmware/config.txt要这样改。多了个/dev/ttyAMA10, 这是树莓派5 debug用的串口。这时, 用ls /dev/ttyAMA* 之后,得到的结果是。3. 树莓派4B和树莓派5的串口的对应关系。
2025-05-08 09:47:23
980
2
原创 树莓派4B+Ubuntu24.04 电应普超声波传感器串口输出 保姆级教程
现在看到我这个结果是每100ms可以读到一个数据,实际上最开始用的时候,是差不多300ms才有一个数据,我觉得这个间隔有点大,就问厂家,厂家建议将输出方式从轮询(缺省)输出改为同时输出,可以用串口发送指令。我的程序的大框架是有一个50ms的任务,我的相关控制都在这50ms任务里完成。所以,我写一个超声波测距的独立的函数,放到50ms任务里就行了。我的机器人上要用到超声波测距,因此就选了电应普的1拖4的超声波测距模块。这个模块的使用很简单,这里做一个笔记,也是对大家的一个参考。基本可以满足机器人的判断使用。
2025-04-25 17:02:40
460
原创 用树莓派和ads1115采样模拟量 保姆级教程
树莓派很好,美中不足的是,不能进行ADC转换,所以要选一个外接的ADC芯片来进行模拟量转换。正好,我要设计的产品里需要用到ADC,所以,我就设计了一个用ads1115进行ADC转换,将结果发送到树莓派的电路和程序,下面是保姆级教程。因为wiringPi库自带了驱动程序,直接拿来用就可以了,很方便,所以,我就选了这颗。测出来的电池电压很准,比我上次设计的用STM32的ADC采样的电池电压要准得多。2. 为什么用ads1115这个ADC转换芯片?6. 大功告成,亲个嘴儿。
2025-04-03 16:40:56
939
原创 用VSCode和CMake打造树莓派开发利器 保姆级教程
安装好后,用ssh登录树莓派,在任意地方,输入code,就可以打开vscode了。4.1, 在源文件目录下打开vscode后,vscode看到这个cmake文件后,会自动帮你配置,你只需要等配置好后,点build就行。调试程序停在了main()的第一条指令,然后,可以点单步执行,或者打断点,看执行逻辑和变量了。4.2 第二种方式,就是,自己建立一个build文件夹,进入build文件夹,然后,执行指令。上面是vscode的自动配置,那么点build后,就是下面的情况了。7. 好了,大功告成,亲个嘴儿。
2025-03-06 19:09:45
853
原创 用树莓派产生较为精确的10ms定时 保姆级教程
各位,我的树莓派4B,装的是ubuntu24.04LTS版本。我们都知道,在嵌入式软件开发里,实时性,是个很重要的东西。很多任务都是在一个10ms或者是50ms的任务里完成的。下面,我就写一个保姆级的教程,来教大家产生一个比较精确的10ms定时。没有原理,我从网上查了一下,linux可以有很多方式产生定时,能够产生比较准的定时的,是用posix_timer. 下面就给出我用posix_timer产生10ms定时的代码。这2个画面连接起来看,可以看到在1s之内,有100个输出,也就是10ms输出一个。
2025-03-03 10:18:22
466
原创 树莓派4B+Ubuntu24.04 opencv C++编译 保姆级教程
然后,找了半天后,发现,opencv2被装到了 /usr/include/opencv4/下面,我也不知道咋搞,就把opencv2从opencv4下面拷贝到/usr/include下面吧。这是一篇抄来的程序,但是我觉得这篇程序简洁干脆明了的将怎么样用opencv进行编程展示给了大家,所以,我就抄来放这里,做个记录,有利于中国计算机视觉编程的发展。用树莓派4B+Ubuntu24.04系统装opencv很简单,我默认大家都会,但是,为了记个笔记,我还是把命令写在这里。好了,程序写好了,开始编译。
2024-12-05 11:37:53
844
1
原创 STM32和STM32CubeMX实现UART不定长接收数据 保姆级教程
需要说明的是,UART接收用DMA传输后,为了接收不定长数据,要一直接收到UART的RX线上为Idle为止,所以,要用HAL_UARTEx_ReceiveToIdle_DMA,这个函数来启动UART2的接收,这个函数在启动UART的同时会启动DMA中断,同时,要用HAL_UARTEx_RxEventCallback这个中断回调函数来处理中断服务,因为这个中断回调函数在DMA传输到一半时也会触发,所以用函数__HAL_DMA_DISABLE_IT(&hdma_usart2_rx, DMA_IT_HT);
2024-11-21 10:41:44
607
2
原创 STM32和STM32CubeMX定时器输入捕获 保姆级教程
各位,我正在做一个无人小车的电调,电调需要根据接收到的PWM信号来驱动马达转动,从而实现电子调速的功能。那么,既然需要根据接收到的PWM信号来做控制,那么就需要知道接收到的PWM信号的脉宽和周期,占空比之类的了。我用TIM4产生2路PWM,用的Channel1和Channel4, 系统时钟是170M,所以分频做170-1,分频到1M,也就是1us.电调不知道为什么,要用14ms的周期的PWM信号,所以,我设置的PWM周期是14ms.产生1路1000us的波和1路1300us的波。然后把采样极性改成下降沿。
2024-11-07 17:25:13
1226
原创 STM32驱动无刷电机用PID实现速度环控制 保姆级教程
各位,9月份,我花了差不多1个月时间,实现了STM32用六步换相法驱动无刷电机的程序编制和调试。那么,既然电机都转起来了,怎么也得搞个PID实现速度环控制嘛。于是,我就开始学习无刷电机的速度环PID控制,抱歉我是对PID一无所知的小白。结果,花了我3天时间,居然实现了速度环PID控制,本着传播优秀知识,造福中华民族和全人类的宗旨,我现在来写个保姆级教程,来教大家怎么实现这个速度环PID。至此,STM32 无刷电机的PID速度环控制,大功告成,亲个嘴儿。
2024-10-12 20:31:23
1524
原创 STM32和STM32CubeMX 驱动无刷电机 保姆级教程
【这是我花费了很多时间,才搞对,而请教的所有人都不得要领,没有一个人觉得这里重要,我问预驱逻辑,他们都很奇怪的看着我,说,跟预驱逻辑有啥关系?其间,我也学习了不少人的BLDC驱动的文章,也请教了不少人,但是,很抱歉,没有一篇文章和一个人真正的能够提供帮助,还是得自己来摸索和理解。
2024-09-30 22:53:03
9561
10
原创 用VSCode和STM32CubeMX打造STM32开发利器 保姆级教程
一个软件,开发调试都搞定,很不错,但是,编辑起来没有VS code编辑那么爽,因为VS code有很多智能提示,很适合编辑。另外,在debug的时候,STM32CubeIDE也没有VS Code做得好,VS Code可以简单的将相关变量和内存都展示出来。此时,编译项目,是不包含这两个文件的。在需要添加的地方,建folder,将相关.h文件和.c文件加入新建的folder. 比如。下载完成后,就安装就好了, 很简单,不多说。不是所有的文件都是生成的,自己写的文件也很需要,怎么加入project呢?
2024-09-14 14:27:33
10918
23
原创 用Windows Terminal通过SSH访问树莓派 保姆级教程
我现在是用的MobaXterm来通过SSH访问树莓派的。这个用着挺好的,没有任何问题。但是,既然windows自带了个Terminal也能通过SSH进行远程访问,那么我就想试试看,用Windows Terminal通过SSH访问树莓派。1.1打开你的Windows Terminal, 如下。在terminal的下列菜单里,就可以看到RPi了。第一次登录时,会让你选择,你输入yes就行。在图标里选一个图标,我是用的树莓派的图标。点RPi, 就可以登到你的树莓派了。1.5然后,在名称写 RPi。
2024-09-06 09:50:42
632
原创 STM32 VCP串口通信 浮点数printf打印的问题 保姆级教程
然而,电脑上都是USB的接口,没有串口,不想接USB转串口的芯片的话,就将STM32的USB直接配置成VCP(virtual Communication Port), 那么,电脑就直接将USB识别为串口,直接用printf打印,用串口调试器,就可以看到输出的结果了。看到没有,浮点的打印输出,从 \0\0\0\0\0\0\0,变成了正常的 v = 19.23的输出了。道理是这么个道理,我要说的,其实不是这个,而是,我都弄好了之后,用printf函数打印,如下。看一下,我勾选上之后的运行的结果。
2024-09-05 09:18:43
1298
原创 ArduPilot飞控之Mission Planner模拟飞行 保姆级教程
于是我问博主,怎么才能成功飞行,博主只是让我看视频教程和参考资料,还是没有说出个所以然来,我也还是没有模拟飞行成功。2.3 在【高德地图】上找到你所在的位置,点击右键,选择【set home here】, 这样就设置了你的所在位置,也就是飞行的起始位置了。可以看到,此时的空速为1.7m/s, 地速为1.7m/s,高度99m. 左边HUD上的地空线已经有12°的倾斜,兄弟,你已经遨游天空了。一会儿,下载成功了,就成这样的画面了。然后,在15秒内,在右边的地图上,点右键,在菜单中选【take off】
2024-08-30 14:36:15
10942
33
原创 树莓派4B+Ubuntu24.04 mavlink安装 保姆级教程
有很多方法,但是,我觉得都很麻烦,所以,我直接加了 -- break-system-packages.这有个问题,就是pip安装的时候,会说 externally-managed-environment。各位,飞控之间,大多使用mavlink来通信,今天来写一个mavlink安装的保姆级教程。安装完了之后,我们进到mavlink路径下的examples/c路径下,编译看看。装起来后,接下来就是生成mavlink2的C库。到此,安装就完成了,我们检验一下成果。来,我觉得在安装上,比官网说得清楚。
2024-08-21 16:54:06
1258
原创 树莓派4B+Ubuntu24.04 LTS 摄像头安装 保姆级教程
树莓派上只有一个CSI摄像头的连接端子,倒不会找错。但是,怎么插进去,要费点力。我是找了半天,才发现,需要将CSI端子的黑色的塑料卡口往上拉起来,这样,CSI端子就张开了,将软线的蓝色一面对着黑色塑料卡口,往里面插,插到底后,将黑色卡口往下按压,按压到底,就插好了。白色的一面有管脚,蓝色的一面没有管脚,也就是没有电气连接性能的。既然买了,当然是要接到树莓派上,拍照试试。说明此时摄像头硬件还没有识别出来,而且设备是不支持摄像头配件的。买了树莓派,顺手就买了跟树莓派配套的摄像头 OV5647。
2024-08-16 17:52:49
2145
7
原创 树莓派4B+Ubuntu24.04 LTS ROS2 Jazzy安装 保姆级教程
但是呢,虽然,我进行了准备工作,但是,执行这个pgp, key的时候,还是很慢,也没有报错。我等了一会儿,没有进展,我就开科学上网了。我用sudo命令时,因为是昨天刚刚新开的为了用远程桌面的账号,没有sudo权限,用不了sudo命令。所以,在有sudo权限的用户名下,给新用户名,用下列命令增加了sudo权限。修改Ubuntu Hosts文件: 这项工作很重要,如果不修改, ROS2 GPG Key无法安装,就无法进行ROS2安装。这个其实很简单,安装ROS2的官网指导就行,一步一步安装。
2024-08-06 14:27:10
1369
原创 树莓派4B+Ubuntu24.04 LTS 远程桌面 保姆级教程
各位,我搞这个树莓派4B是为了来搞机器人算法的。所以,操作系统是装的ubuntu 24.04LTS服务器版。为了跑ROS,估计要图形桌面,所以,我又要装个桌面系统和远程桌面。这东西,折腾了我2天,下面写个保姆级教程,教大家来搞定远程桌面。然后,在login的时候,用新的账号,密码login就行了。然后,输入账号,密码什么的,按照提示完成就可以。各种折腾之后,发现,真正起作用的,简单的命令是。这是openGL的命令,必须装上这个。到这里,都很简单,直接执行即可。【必须另外生成一个图形用户】
2024-08-05 17:26:27
1833
7
原创 树莓派4B+Ubuntu24.04 LTS串口通信 保姆级教程
各位,我最近指导一个南京理工的研究生实现【树莓派4B+Ubuntu24.04 LTS串口通信】,结果她搞了一个星期没有搞定,我现在写一个保姆级教程,教大家怎么搞定。sudo vim /boot/firmware/config.txt #(ubuntu是这个,raspiberrypi是/boot/config)有uart0, 到uart5, 有6个UART。看到有AMA2 - AMA5, 与uart2- uart5对应。树莓派的板子上虽然有这么多串口,但是没有装载,必须先装载起来。用minicom来看结果。
2024-07-26 17:49:01
2056
7
原创 树莓派4B Ubuntu 64位系统安装 wiringpi,解决No “Hardware“ line方法,保姆级教程
我最近入手了一个树莓派4B 4G的板子,打算用来开发机器人算法,所以,就安装了Ubuntu Server 64位的系统。因为,想操作GPIO,看网上说安装WiringPi, 然后用WiringPi来控制GPIO比较方便,所以,我就从网上下载安装WiringPi.结果装上了 libwiringpi2 和 wiringpi。就出现了,经典的【No "Hardware" line】我看网上说装wiringpi就行了,于是,我就直接命令。可能要科学上网才能下哦。duang, 出现问题。
2024-07-19 17:25:33
822
2
IDA Pro反汇编学习资料
2011-06-10
STM32驱动直流电机,单片机重启
2025-08-04
请问NXP的SVF522R3K1CMK4芯片,如何设置外部SPI Flash启动?
2019-11-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅