自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 ubuntu18.04下载vscode

2、打开文件对应目录下的终端进行安装。4、打开vscode安装中文包。下载对应的.deb安装包。3、运行vscode。

2024-07-10 23:14:10 334

原创 UR5手眼标定

打开四个标签页,依次启动这几个launch文件。

2024-07-09 18:42:18 647

原创 安装easy-handeye

rosdep install -iyr --from-paths src出错提示rosdep update。

2024-07-05 16:23:52 710

原创 安装ROS Wrapper for Intel RealSense(realsense-ros)

2、安装Intel® RealSense™ ROS和ros 软件包。5、插入realsense相机测试。1、创建 catkin 工作区。

2024-07-05 15:06:14 380

原创 安装realsenseSDK2.0

5、创建build目录并切换至build目录。7、插入realsense相机测试。2、克隆librealsense。1、创造工作空间并进入。如果运行第一个脚本失败。

2024-07-04 14:38:39 428

原创 [软件安装]linux下安装steam

报错显示没有当前文件夹,因为下载的压缩包的名字Steam后面一个空格,把空格删掉就可以解压了。(2)进入压缩包路径下,打开终端,执行以下代码进行解压。(1)在opt路径下新建一个文件夹。1、下载安装包到linux系统。3、解压安装包steam。4、启动Steam++

2024-07-04 13:48:07 424

原创 [STM32项目]基于 STM32 的智能垃圾桶

一、

2024-07-02 12:52:15 76

原创 [基础知识点总结]

而不必担心冲突。

2024-07-02 10:51:57 348

原创 [软件安装]Dev C++

1、官网下载2、百度网盘下载压缩包。

2024-06-29 14:32:08 301

原创 [C语言]指针

定义 char *c = 0x4000;等效于: *(c+1);//定义一个int型的数据。例如: char c[ ] = {0x33, 0x34, 0x35};等效于: *(c+2);例如: c[0];等效于: *c;)是C语言的一个重要知识点,其使用灵活、功能强大,是C语言的灵魂。等效于: 申请内存。(2)利用下标引用数组数据也等效于指针取内容。2、指针与底层硬件联系紧密,使用指针可操作。若指针存放了某个数据单元的首地址,则这个。(变量/数组/结构体/函数等)的。

2024-06-29 14:03:06 411

原创 从官方源码精简出第1个FreeRTOS程序

2、将源码解压到没有中文目录的路径下。

2024-06-26 21:02:10 429

原创 堆(Heap)和栈(Stack)

堆是一种,用于存储程序运行时动态分配的数据。在堆上和内存通常需要程序员显式地进行操作。1、设置使用模拟器2、点击调试,打断点。

2024-06-26 16:46:21 405

原创 FLASH闪存

1、FLASH简介(1)STM32F1系列的包含和三个部分,通过(外设)可以对和进行(2)的用途:利用程来保存通过),(3))用于,它通过或(4))可以使用支持的2、闪存模块组织3、FLASH基本结构4、FLASH解锁(1)共有三个键值:= 0x000000A5(解除读保护的秘钥)(2)后,在会在(3)设置中的5、使用指针访问存储器(1)(2)使用指针指定地址下的存储器:*(((3)其中:(易变的数据,防止编译器优化)6、程序存储器(1)编程(2)页擦除(3)全擦除。

2024-06-21 20:29:56 715

原创 WDG看门狗

(1)看门狗可以,当程序因为设计等原因,出现时,程序陷入长时间的系统的(2)看门狗上是一个,当,程序(重置计数器)操作时,就(3)STM32内置两个看门狗):要求看门狗2、IWDG框图3、IWDG键寄存器(1)本质上是(2)在可能下,一般通过在来代的功能,以4、IWDG超时时间超时时间:× PR预分频系数 × (RL + 1)其中:= 1 /(输入时钟40kHz)5、WWDG框图6、WWDG工作特性(1)的值时,(2)在时,(3)时可以产生,用于以(4)以7、WWDG超时时间。

2024-06-20 16:40:00 358

原创 PWR电源控制

(1)PWR负责管理STM32,可以实现可和的功能(2)可(PVD)可以,当时,PVD会触发中断,用于(3)包括(Sleep)、(Stop)和(Standby),可在系统空闲时,降低STM32的功耗,延长设备使用时间2、电源框图3、上电复位和掉电复位4、可编程电压监测器5、低功耗模式6、模式选择执行WFI(Wait For Interrupt)或者WFE(Wait For Event)指令后,STM32进入低功耗模式7、(1)执行完指令后,STM32进入程序(2)

2024-06-18 22:41:46 802

原创 RTC实时时钟

备份寄存器(1)BKP可用于存储用户应用程序数据。当VDD(系统的主电源)(2.0~3.6V)电源被切断,他们仍然由VBAT(备用电池电源)(1.8~3.6V)维持供电。当系统在待机模式下被唤醒,或系统复位或电源复位时,他们也不会被复位(2)TAMPER引脚产生的侵入事件将所有备份寄存器内容清除(3)RTC引脚输出RTC校准时钟RTC闹钟脉冲或者秒脉冲(4)存储RTC时钟校准寄存器(5)用户数据存储容量20字节(中容量和小容量)/84字节(大容量和互联型)2、BKP基本结构实时时钟(1)RTC是一个。

2024-06-17 17:03:15 537

原创 SPI通信协议

1、W25Q64简介(1)W25Qxx系列是一种低成本小型化使用简单的非易失性存储器,常应用于数据存储字库存储固件程序存储等场景Nor Flash(闪存)(3)时钟频率80MHz(4)存储容量(24位地址):2、硬件电路3、W25Q64框图4、Flash操作注意事项(1)写入操作时:a.写入操作前,必须先进行写使能b.每个数据位只能由1改写为0,不能由0改写为1c.写入数据前必须先擦除擦除后,所有数据位变为1d.擦除必须按最小擦除单元进行(最小的擦除单元是一个扇区)e.连续写入多字节时,

2024-06-14 18:06:54 1080

原创 I2C通信协议

1、I2C外设简介(1)STM32内部集成了硬件I2C收发电路,可以由硬件自动执行时钟生成起始终止条件生成应答位收发数据收发等功能,减轻CPU的负担(2)支持多主机模型(3)支持7位/10位地址模式(4)支持不同的通讯速度,标准速度(高达100 kHz),快速(高达400 kHz)(5)支持DMA(6)兼容SMBus(系统管理总线)协议I2C1、I2C22、I2C外设框图3、I2C基本结构4、主机发送5、主机接收6、软件/硬件波形对比。

2024-06-05 18:00:53 647

原创 FlyMcu串口下载&STLINK Utility

1、可以通过给STM32下载程序,如果没有STLINK,就可以用这个软件通过串口下载程序,和STC的51单片机的烧录软件STC-ISP一样,通过串口给单片机下载程序2、创建串口下载所需要的HEX文件3、选择串口和波特率4、选择程序文件5、配置BOOT引脚让STM32执行BootLoader程序把配置BOOT0引脚的跳线帽(上面一个跳线帽)拔下来,插在右边两个针脚,,并且,让程序重新开始运行。

2024-06-05 00:04:11 350

原创 USART串口协议——串口发送接收以及串口收发数据包

Receiver/Transmitter)通用同步/异步收发器(1)USART是STM32内部集成的硬件外设,可根据数据寄存器的一个字节数据自动生成数据帧时序,从TX引脚发送出去,也可自动接收RX引脚的数据帧时序,拼接为一个字节数据,存放在数据寄存器里(2)自带波特率发生器,最高达4.5Mbits/s(3)可配置数据位长度(8/9)、停止位长度(4)可选校验位(无校验/奇校验/偶校验)(5)支持同步模式硬件流控制DMA智能卡IrDA(用于红外通信的)LIN(局域网的通信协议)

2024-06-03 20:18:18 1050

原创 DMA直接存储器存取

1、DMA可以提供(外设寄存器DR)(运行内存SRAM和程序存储器Flash)或者之间的,节省了CPU的资源2、通道),通道)3、每个通道都支持和5、存储器映像6、DMA框图7、DMA基本结构8、DMA请求9、数据宽度与对齐。

2024-06-01 23:58:33 485

原创 TIM编码器接口

1、编码器接口可接收编码器的信号,根据编码器旋转产生的正交信号脉冲,,从而指示编码器的和2、每个和都3、两个输入引脚借用了和4、正交编码器5、编码器接口基本结构6、实例(1)TI1、TI2均不反相(2)TI1反相,TI2不反相反相的意思是在边沿检测极性选择的时候进行下降沿a.在输入捕获模式下,需要选择上升沿有效还是下降沿有效b.在编码器接口模式下,就不在是边沿的极性选择了,而是高低电平的极性选择上升沿:信号直通,高低电平极性不反转下降沿:信号通过非门,高低电平极性反转。

2024-05-31 18:22:30 266

原创 ADC数模转换器

TCONV = 1.5 + 12.5 = 14个ADC周期 = 1μs。(3)例如:当ADCCLK=14MHz,采样时间为1.5个ADC周期。1、按照以下接线方式连接,并将STLINK插到电脑上。1、按照以下接线方式连接,并将STLINK插到电脑上。(1)AD转换的步骤:采样,保持,量化,编码。(1)单次转换,非扫描模式。(2)连续转换,非扫描模式。(1)ADCCLK的配置函数(在RCC中)(3)单次转换,扫描模式。(4)连续转换,扫描模式。5、单通道连续转换、非扫描模式。2、AD转换函数驱动模块。

2024-05-31 18:21:01 226

原创 TIM输入捕获

测周法:两个上升沿内,以标准频率fc计次,得到N ,则频率 fx=fc / N。测频法:在闸门时间T内,对上升沿计次,得到N,则频率 fx=N / T。1、按照以下接线方式连接,并将STLINK插到电脑上。1、输入捕获模式下,当通道输入引脚出现。(2)输入捕获驱动函数模块。(1)输入捕获驱动函数模块。2、输入捕获驱动函数模块。(1)输入捕获库函数功能。(3)PWM驱动函数模块。3、编写main.c代码。1、输入捕获驱动函数模块。(2)PWM驱动函数模块。2、编写main.c代码。8、输入捕获基本结构。

2024-05-30 16:21:53 311

原创 TIM输出比较

1、输出比较可以通过比较CNT(计数器)与CCR(捕获/比较寄存器)寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形2、每个高级定时器和通用定时器都拥有4个输出比较通道3、高级定时器的前3个通道额外拥有死区生成和互补输出的功能,用于驱动三相无刷电机。

2024-05-28 22:34:49 740

原创 TIM定时器中断

1、定时器可以对输入的时钟进行,并在时2、16位的时基单元,在计数时钟下可以实现最大59.65s的定时3、不仅具备基本的,而且还包含等多种功能4、根据复杂度和应用场景分为了三种类型STM32F103C8T6定时器资源:TIM1、TIM2、TIM3、TIM45、定时中断基本结构6、时序(1)预分频器时序计数器计数频率:CK_CNT = CK_PSC / (PSC + 1)PSC:预分频器的值(2)计数器时序计数器溢出频率:CK_CNT_OV = CK_CNT / (ARR + 1)

2024-05-25 22:35:51 436

原创 EXTI外部中断

1、旋转编码器:用来测量位置速度或旋转方向的装置,当其旋转轴旋转时,其输出端可以输出与旋转速度和方向对应的方波信号,读取方波信号的频率和相位信息即可得知旋转轴的速度和方向2、类型:机械触点式/霍尔传感器式/光栅式。

2024-05-24 22:44:50 573

原创 OLED显示屏

1、OLED(Organic Light Emitting Diode):有机发光二极管2、OLED显示屏:性能优异的新型显示屏,具有功耗低、相应速度快、宽视角、轻薄柔韧等特点3、0.96寸OLED模块:小巧玲珑、占用接口少、简单易用,是电子设计中非常常见的显示屏模块4、供电:3~5.5V,通信协议:I2C/SPI,分辨率:128*645、OLED驱动函数。

2024-05-24 20:37:18 299

原创 STM32相关C语言

1、关键字:#define2、用途:(1)用一个字符串代替一个数字,便于理解,防止出错;(2)提取程序中经常出现的参数,便于快速修改3、定义宏定义: #define ABC 123454、引用宏定义: int a = ABC;//等效于int a = 12345;

2024-05-24 11:32:35 288

原创 使用库函数的方法

1、打开.h文件的最后,看一下有哪些函数2、右键转到定义,查看一下函数和参数的用法(全英文,可以借助翻译软件,例如有道词典)

2024-05-23 21:00:34 213

原创 STM32F103C8T6引脚介绍

VBAT:如果要使用STM32内部的BKP和RTC这个引脚就必须接备用电池,用来维持BKP和RTC在VDD主电源掉电后的供电,这个备用电池只有一根正极的供电引脚,接电池时,电池正极接到VBAT,电池负极和主电源的负极接在一起工地就行了。内部数字部分电路的供电:三组VDD和VSS_1、_2、_3。想把这些默认复用功能的引脚换到重新定义的这个位置来,就是用AFIO完成的。内部模拟部分电路的供电:VDDA和VSSA。1、PA15、PB3、PB4默认为。3、解除调试端口并进行引脚重映射。

2024-05-23 20:34:06 324 1

原创 新建一个STM32工程(精简版)

(1)启动文件:STM32入门教程资料\固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm(2)STM32入门教程资料\固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x。

2024-05-23 17:18:06 569 1

原创 GPIO输入输出

1、可配置为8种输入输出模式2、引脚电平:0V~3.3V,部分引脚可容忍5V3、输出模式下可控制端口输出高低电平,用以驱动LED、控制蜂鸣器、模拟通信协议输出时序等(1)LED:发光二极管,正向通电点亮,反向通电不亮(2)有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定(3)无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音4、输入模式下可读取端口的高低电平或电压,用于读取按键输入、外接模块。

2024-05-23 12:09:35 575 1

原创 新建一个STM32的工程

1、建立工程文件夹,Keil中新建工程,选择型号2、工程文件夹里建立Start、Library、User等文件夹,复制固件库里面的文件到工程文件夹这一步是为了添加工程文件准备的,建文件夹是因为文件比较多需要分类管理一下,需要用的文件夹一定要复制到工程文件夹里面来3、工程里对应建立Start、Library、User等同名称的分组,然后将文件夹内的文件添加到工程分组里。

2024-05-22 18:31:20 1346 1

原创 [软件安装]Keil MDK

1、百度网盘下载资料2、双击MDK524a如果之前安装过keil5 C51,可以直接选择C51的安装目录安装,这样两个软件就可以共存了3、一般会弹出一个窗口提醒是否安装ULINK的驱动(ULINK是KEIL公司开发的调试器),选择安装4、自动弹出一个Pack Installer的窗口,用来安装器件支持包的,先关闭如果没有弹出该窗口,关掉杀毒软件即可。

2024-05-21 22:33:54 391

原创 LCD1602显示

RSRS=1 数据寄存器RS=0 指令和状态R/W 读/写R/W=1 读R/W=0 写。

2024-05-19 22:10:38 435 1

原创 LED点阵显示

1、仿真2、代码3、仿真结果LED点阵。

2024-05-19 20:09:34 189 1

原创 串口中断原理及实现

SM0、SM1——串行口工作模式TI、RI——发送、接收中断标志位TI=0发送TI=1TI=0发送RI=0接收RI=1RI=0接收电源控制寄存器PCON常用的波特率初值表当SMOD位为1,则波特率加倍。

2024-05-19 15:38:40 365 1

原创 中断的介绍与实现

51系列允许5个中断源:——由P3.2端口线引入,低电平或下降沿引起。——由P3.3端口线引入,低电平或下降沿引起。这两个外部中断源标志和它们的触发方式控制位由特殊功能寄存器TCON的低4位控制。——定时器/计数器0中断,由T0回零溢出引起。——定时器/计数器1中断,由T1回零溢出引起。—串口I/O中断,串口端口完成一帧字符发送/接收后引起。这3个内部中断源的控制位分别锁存在特殊功能寄存器TCON和SCON中。

2024-05-17 20:31:25 557

原创 Ubuntu18.04下安装UR5的ROS驱动包

不同版本安装的ROS驱动包是不同的本文用的UR5机械臂,软件版本为3.13,应该选择ur_robot_driver驱动包(有些低版本的可能使用ur_modern_driver驱动包)

2024-05-14 18:05:36 262 2

空空如也

空空如也

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

TA关注的人

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