- 博客(30)
- 收藏
- 关注
原创 ROS机器人小车建模仿真与SLAM
URDF(Unified Robot Description Format)是一种用于描述机器人模型的XML格式,它定义了机器人的各个部件(link)和连接部件的关节(joint)。在ROS中,URDF文件不仅用于定义机器人的几何形状和尺寸,还用于定义机器人的运动学和动力学特性。在ROS中,图形化显示是理解机器人模型和其在环境中的交互的关键工具。这将生成PDF和其他格式的文件,你可以打开PDF文件来查看模型的图形化表示。生成的PDF文件可以在任何PDF阅读器中打开,以查看机器人模型的图形化表示。
2024-06-16 19:37:20 886
原创 HLSLED闪烁仿真
使用HLS工具进行LED闪烁仿真有助于验证设计的正确性和功能性。仿真过程中可观察LED闪烁模式,评估性能指标如时序约束和资源利用率,并进行必要的调试和修正。
2024-06-12 22:16:39 651
原创 System Verilog:在DE2-115开发板上进行vga显示
本次实验的核心目标是通过深入学习SystemVerilog的基本语法,将之前使用Verilog语言实现的练习项目重新设计,并在DE2-115开发板上实现。这些项目包括流水灯、全加器、VGA显示和超声波测距。实验过程不仅涉及到代码的编写,还包括testbench仿真以及硬件实现,旨在加深对SystemVerilog的理解并提升实际硬件开发能力。
2024-06-03 22:52:15 432
原创 DE2-115用NIOSII软核实现流水灯
(2)点击后出现下图,在”SOPC Information File name”窗口中选择 kernel.sopcinfo 文件,以便将生成硬件配置信息和软件应用关联,CPU 栏会自动选择”CPU”。(3)将管脚”inclk0”改名为 clock,管脚”reset_reset_n”改名为 reset_n,管脚 out_led_export[7…(2)分配中断号:在”IRQ”标签栏下点选”Avalon_jtag_slave”和 IRQ 的连接点就会为”jtag_uart”核添加一个值为 0 的中断号。
2024-05-08 19:27:29 1066
原创 ROS自学之话题与服务
同样地, 新建功能包的时候没有加–dependencies rclcpp service_interfaces等功能包, 则需要手动添加, 放置于标签下。将编译好的文件安装到install/poor_and_organization/lib/poor_and_organization下。话题通过订阅接收消息,采用订阅发布模型,类似于抖音订阅博主,博主发布内容,推送给各位订阅者。可以看到,在发布者发布消息的同时,接收者同步收到消息。这是话题关系图,需要点击左上角刷新才可以看到。新建终端,执行以下代码。
2024-03-16 20:34:39 335
原创 STM32F103C8T6移植uC/OS-III
按钮, 将文件目录跳转至: UCOSIII/uCLIB,选择 ALL files 文件类型,将其中的九个文件添加进 uCOSIII_LIB 组;app.c 、 app_cfg.h 、 cpu_cfg.h 、 includes.h 、 lib_cfg.h 、 os_app_hooks.c 、os_app_hook.h、os_cfg.h、os_cfg_app.h复制到上一步建立的OS文件夹中,同时新建三个空白文件: bsp.c、bsp.h、app.h。选择uCOSIII_Sourc组,点击Add Files…
2023-12-31 21:39:33 751
原创 OLED显示数据
时钟极性(CPOL)和时钟相位(CPHA)可以指定为“0”或“1”,形成四种独特的模式,以提供主从通信的灵活性,如图2所示。然后,主设备输出适当的指令,后跟两个数据字节,用于定义预期的状态寄存器内容。如图1所示,一个标准的SPI连接涉及到一个主机master使用串行时钟(SCK)、主输出从输入(MOSI)、主输出从输出(MISO)和从选择(SS)线连接到一个或几个从机slave。除了标准的4线配置外,SPI接口还扩展到包括各种IO标准,包括用于减少引脚数的3线和用于更高吞吐量的双或四I/O。
2023-12-31 14:23:24 1027
原创 I2C总线通信协议实现温湿度(AHT20)采集
IIC(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。在CPU与被控IC之间、IC与IC之间进行双向传送,高速IIC总线一般可达400kbps 以上。注意IIC是为了与低速设备通信而发明的,所以IIC的传输速率比不上SPII2C最重要的功能包括:只需要两条总线;
2023-11-21 20:32:12 97
原创 基于HAL库实现DMA串口通信
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考DMA,全称Direct Memory Access,即直接存储器访问。DMA传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。DMA用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。这就节省了CPU的资源来做其他操作。
2023-11-04 19:13:59 302 1
原创 STM32寄存器点亮LED灯
实验设备:嵌入式开发平台,USB转串口数据线(ttl);集成开发环境:Keil μVision5 IDE;计算机:Intel® Pentium® 及以上;内存:1GB及以上;
2023-10-17 21:26:08 45 1
原创 ubantu下gcc库a.和库so.的生成与使用
这里如果执行不了的话说明动态库包含的静态库没有加-fPIC选项。创建文件夹,打开终端,输入以下代码。程序 1: hello.h。程序 2: hello.c。程序 3: main.c。
2023-09-26 22:56:28 234
原创 STM32寄存器
51单片机使用的是8051核心,它的指令集和寄存器结构相对简单,并且有许多成熟的开发工具和例程可供参考。而STM32F103系列芯片是基于ARM Cortex-M3核心的,具有更强大的性能和功能,但相应地需要更复杂的配置和编程。尽管如此,学习并适应STM32的编程模型将为更复杂的应用提供更好的扩展性和灵活性。相似之处在于它们都需要通过编程来实现对其状态的修改,都需要使用特定的寄存器或内存地址来访问相关的数据。不同之处在于,对内存中的变量的修改是在程序运行过程中进行的,主要是为了在程序中存储和处理数据;
2023-09-26 16:55:12 47
原创 在Ubuntu系统下编写主程序与子程序并与window系统进行对比
本次实验了gcc编译和makefile编译两种方式,加深了对Linux系统的理解。
2023-09-06 22:05:10 114 1
原创 JavaScript & TypeScript 学习总结
对象(Object):JavaScript 和 TypeScript 都是基于对象的语言,对象是数据和功能的集合。基本语法:JavaScript 和 TypeScript 都遵循类似的语法规则,包括变量声明、赋值、条件语句(如 if-else)、循环语句(如 for 和 while)等。通过创建闭包,可以实现函数的封装和私有变量的保护,提高代码的安全性和可维护性。通过学习 JavaScript 和 TypeScript,我可以掌握编程的基本语法、操作符、语句、函数、对象、数组以及闭包的概念。
2023-07-03 20:36:04 84 1
原创 学习HTML & CSS
HTML文档的结构主要包括DOCTYPE声明、HTML标签作为根元素、Head标签放元数据和样式表链接、以及Body标签放网页的实际内容。在HTML中可以包含文本、图片、表格、列表、表单等元素,使用不同的标签和属性来控制样式和行为。CSS提供了定位属性,如相对定位、绝对定位和固定定位,用于控制元素的位置和层叠效果。HTML是创建网页结构的标记语言,一系列标签和元素描述了网页的组成和内容。颜色、尺寸和对齐是CSS常见的属性,可以调整元素的外观和布局。组合选择器允许选择多个元素,并对它们应用相同的样式。
2023-07-03 20:29:16 91 1
原创 设计一个Time类
【问题描述】定义了一个以hours, minutes和seconds作为数据成员的Time类。设计了成员函数将两个Time对象相加(即时间相加),并进行相应的检查,查看增加的分钟数及秒数是否大于59。如果秒数大于59,则分钟数向前递增1。类似地,如果分钟数大于59,则小时数向前增1。【输入形式】输入两个由时、分、秒构成的时间。【输出形式】输出输入的两个时间相加后的时间【样例输入】2 34 451 47 56【样例输出】the result is:4:22:41【样例输入】2 67 1
2022-05-21 23:33:27 1039
原创 【无标题】
【问题描述】圆盘找数问题。设有20个整数的数组成一个圆(首尾相接),分别求出连续的四个数之和为最大的四个数及其和值)以及连续的四个数之和为最小的四个数(输出整个数列、最大、最小的四个数及其和值。 要求: (1)圆盘类class circle中包含私有成员int num[20], int Max[4] , int Min[4],int sum_max, int sum_min, 同时根据需要增加私有或公有成员及必要的公有成员函数。 int num[20]; //存放输入的20个随机
2022-05-21 22:56:36 281
原创 datatype(数据类型)类(构造函数重载和调用)
【问题描述】声明一个datatype(数据类型)类,该类能够根据用户的输入,确定输入的数据类型,能处理包含字符型、整形、浮点型3种类型的数据,并给出合理的输出。提示:需要进行构造函数的重载【输入形式】给用户选择,当输入1时,选择输入整型;输入2时,输入字符型;选择3时,输入浮点型。不考虑其他错误情况【输出形式】输入该数据以及该数据的类型【样例输入1】2c【样例输出1】character:c【样例输入2】112【样例输出2】int:12【样例输入3】31.44F【样例输出3】fl
2022-05-17 22:01:48 5947
原创 点类定义和使用
1.点类定义和使用【问题描述】定义一个点类,该类包含整形坐标x,y以及用于设置坐标值的函数,名为setxy()参数自行确定,以及用于显示坐标的函数displayxy()参数自行设置。合理编写主函数,能够实现(3,4)以及(5,6)固定两个点对象的参数设置,以及信息输出【输入形式】无数据输入,请一定使用类的定义以及对象的创建的相关知识【输出形式】输出两个固定点的相关信息【样例输入】【样例输出】The first point is:(3,4)The second point is:(5,6)`
2022-05-17 21:11:54 2274 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人