自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 树莓派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 314

原创 树莓派4B+Ubuntu24.04 电应普超声波传感器串口输出 保姆级教程

现在看到我这个结果是每100ms可以读到一个数据,实际上最开始用的时候,是差不多300ms才有一个数据,我觉得这个间隔有点大,就问厂家,厂家建议将输出方式从轮询(缺省)输出改为同时输出,可以用串口发送指令。我的程序的大框架是有一个50ms的任务,我的相关控制都在这50ms任务里完成。所以,我写一个超声波测距的独立的函数,放到50ms任务里就行了。我的机器人上要用到超声波测距,因此就选了电应普的1拖4的超声波测距模块。这个模块的使用很简单,这里做一个笔记,也是对大家的一个参考。基本可以满足机器人的判断使用。

2025-04-25 17:02:40 324

原创 用树莓派和ads1115采样模拟量 保姆级教程

树莓派很好,美中不足的是,不能进行ADC转换,所以要选一个外接的ADC芯片来进行模拟量转换。正好,我要设计的产品里需要用到ADC,所以,我就设计了一个用ads1115进行ADC转换,将结果发送到树莓派的电路和程序,下面是保姆级教程。因为wiringPi库自带了驱动程序,直接拿来用就可以了,很方便,所以,我就选了这颗。测出来的电池电压很准,比我上次设计的用STM32的ADC采样的电池电压要准得多。2. 为什么用ads1115这个ADC转换芯片?6. 大功告成,亲个嘴儿。

2025-04-03 16:40:56 329

原创 用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 619

原创 用树莓派产生较为精确的10ms定时 保姆级教程

各位,我的树莓派4B,装的是ubuntu24.04LTS版本。我们都知道,在嵌入式软件开发里,实时性,是个很重要的东西。很多任务都是在一个10ms或者是50ms的任务里完成的。下面,我就写一个保姆级的教程,来教大家产生一个比较精确的10ms定时。没有原理,我从网上查了一下,linux可以有很多方式产生定时,能够产生比较准的定时的,是用posix_timer. 下面就给出我用posix_timer产生10ms定时的代码。这2个画面连接起来看,可以看到在1s之内,有100个输出,也就是10ms输出一个。

2025-03-03 10:18:22 263

原创 树莓派4B+Ubuntu24.04 opencv C++编译 保姆级教程

然后,找了半天后,发现,opencv2被装到了 /usr/include/opencv4/下面,我也不知道咋搞,就把opencv2从opencv4下面拷贝到/usr/include下面吧。这是一篇抄来的程序,但是我觉得这篇程序简洁干脆明了的将怎么样用opencv进行编程展示给了大家,所以,我就抄来放这里,做个记录,有利于中国计算机视觉编程的发展。用树莓派4B+Ubuntu24.04系统装opencv很简单,我默认大家都会,但是,为了记个笔记,我还是把命令写在这里。好了,程序写好了,开始编译。

2024-12-05 11:37:53 635 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 435 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 853

原创 STM32驱动无刷电机用PID实现速度环控制 保姆级教程

各位,9月份,我花了差不多1个月时间,实现了STM32用六步换相法驱动无刷电机的程序编制和调试。那么,既然电机都转起来了,怎么也得搞个PID实现速度环控制嘛。于是,我就开始学习无刷电机的速度环PID控制,抱歉我是对PID一无所知的小白。结果,花了我3天时间,居然实现了速度环PID控制,本着传播优秀知识,造福中华民族和全人类的宗旨,我现在来写个保姆级教程,来教大家怎么实现这个速度环PID。至此,STM32 无刷电机的PID速度环控制,大功告成,亲个嘴儿。

2024-10-12 20:31:23 1159

原创 STM32和STM32CubeMX 驱动无刷电机 保姆级教程

【这是我花费了很多时间,才搞对,而请教的所有人都不得要领,没有一个人觉得这里重要,我问预驱逻辑,他们都很奇怪的看着我,说,跟预驱逻辑有啥关系?其间,我也学习了不少人的BLDC驱动的文章,也请教了不少人,但是,很抱歉,没有一篇文章和一个人真正的能够提供帮助,还是得自己来摸索和理解。

2024-09-30 22:53:03 6568 8

原创 用VSCode和STM32CubeMX打造STM32开发利器 保姆级教程

一个软件,开发调试都搞定,很不错,但是,编辑起来没有VS code编辑那么爽,因为VS code有很多智能提示,很适合编辑。另外,在debug的时候,STM32CubeIDE也没有VS Code做得好,VS Code可以简单的将相关变量和内存都展示出来。此时,编译项目,是不包含这两个文件的。在需要添加的地方,建folder,将相关.h文件和.c文件加入新建的folder. 比如。下载完成后,就安装就好了, 很简单,不多说。不是所有的文件都是生成的,自己写的文件也很需要,怎么加入project呢?

2024-09-14 14:27:33 6305 14

原创 用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 468

原创 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 995

原创 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 6591 25

原创 树莓派4B+Ubuntu24.04 mavlink安装 保姆级教程

有很多方法,但是,我觉得都很麻烦,所以,我直接加了 -- break-system-packages.这有个问题,就是pip安装的时候,会说 externally-managed-environment。各位,飞控之间,大多使用mavlink来通信,今天来写一个mavlink安装的保姆级教程。安装完了之后,我们进到mavlink路径下的examples/c路径下,编译看看。装起来后,接下来就是生成mavlink2的C库。到此,安装就完成了,我们检验一下成果。来,我觉得在安装上,比官网说得清楚。

2024-08-21 16:54:06 900

原创 树莓派4B+Ubuntu24.04 LTS 摄像头安装 保姆级教程

树莓派上只有一个CSI摄像头的连接端子,倒不会找错。但是,怎么插进去,要费点力。我是找了半天,才发现,需要将CSI端子的黑色的塑料卡口往上拉起来,这样,CSI端子就张开了,将软线的蓝色一面对着黑色塑料卡口,往里面插,插到底后,将黑色卡口往下按压,按压到底,就插好了。白色的一面有管脚,蓝色的一面没有管脚,也就是没有电气连接性能的。既然买了,当然是要接到树莓派上,拍照试试。说明此时摄像头硬件还没有识别出来,而且设备是不支持摄像头配件的。买了树莓派,顺手就买了跟树莓派配套的摄像头 OV5647。

2024-08-16 17:52:49 1448 5

原创 树莓派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 1048

原创 树莓派4B+Ubuntu24.04 LTS 远程桌面 保姆级教程

各位,我搞这个树莓派4B是为了来搞机器人算法的。所以,操作系统是装的ubuntu 24.04LTS服务器版。为了跑ROS,估计要图形桌面,所以,我又要装个桌面系统和远程桌面。这东西,折腾了我2天,下面写个保姆级教程,教大家来搞定远程桌面。然后,在login的时候,用新的账号,密码login就行了。然后,输入账号,密码什么的,按照提示完成就可以。各种折腾之后,发现,真正起作用的,简单的命令是。这是openGL的命令,必须装上这个。到这里,都很简单,直接执行即可。【必须另外生成一个图形用户】

2024-08-05 17:26:27 1456 4

原创 树莓派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 1313 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 670 2

IDA Pro反汇编学习资料

The theater of the information security professional has changed drastically in recent years. We are no longer tasked with defending critical organizational assets from the unwelcome inquiry of curious youth; we, as a community, are now faced with fending off relentless and technically sophisticated attacks perpetrated by organized and nation state-backed criminals motivated by fi nancial or geopolitical gain. The prevalence of security holes in programs and protocols, the increasing size and complexity of the Internet, and the sensitivity of the information stored throughout have created a target-rich environment for our next-generation adversary. This criminal element is employing advanced polymorphic software that is specifi cally engineered to evade IDS, IPS and AV detection engines, and provide complete remote control and eavesdropping functionality on the victims’ computer. One of the few offenses we can deploy in order to understand and predict the impact of these malicious software programs is through employment of advanced reverse engineering techniques, leveraging industry-standard tools from companies like Data Rescue and Zynamics. This book represents the leading thought from the reverse engineering world. The authors are tremendous people in their own right, and I trust you and your organization will fi nd a wealth of information that will help prepare you for the proactive computer security frontier.

2011-06-10

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

TA关注的人

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