- 博客(20)
- 收藏
- 关注
原创 实验四:基于System-Verilog的FPGA设计与仿真
SystemVerilog是Verilog的扩展,它提供了更多的功能和特性,比如更强大的数据类型、对象编程、接口和多线程等。改用SystemVerilog可以提高代码的可维护性、可扩展性和可重用性,同时还能够更好地满足复杂设计的需求。
2024-06-03 20:15:17
404
原创 实验三---红外超声波雷达测距
c) 在软件层面,通过程序实现Modbus协议的相关功能,包括主从设备通信逻辑、数据传输格式、功能码解析等,确保主控芯片可以作为Modbus从设备被其他设备访问和控制。b) 使用RS485转接芯片实现RS485的物理层接口,将主控芯片连接到12路超声波雷达模块,实现数据通信功能。芯片,驱动12路HC-SR04超声波模块,通过定时器实现超声波发送和接收,并处理测距数据。d) 提供相应的用户接口和配置界面,方便用户设置超声波雷达参数和监控测距数据。为上升沿捕获并连接到超声波模块的。
2024-05-24 15:55:24
892
1
原创 实验二-基于FPGA的VGA协议实现
OSC_50, //原CLK2_50时钟信号VGA_CLK, //VGA自时钟VGA_HS, //行同步信号VGA_VS, //场同步信号VGA_BLANK, //复合空白信号控制信号 当BLANK为低电平时模拟视频输出消隐电平,此时从R9~R0,G9~G0,B9~B0输入的所有数据被忽略VGA_SYNC, //符合同步控制信号 行时序和场时序都要产生同步脉冲VGA_R, //VGA绿色VGA_B, //VGA蓝色VGA_G);//VGA绿色//外部时钟信号CLK2_50。
2024-05-24 14:08:45
324
1
原创 第12周作业--HLS入门
HLS(High-Level Synthesis)高层综合,就是将 C/C++的功能用 RTL 来实现,将 FPGA 的组件在一个软件环境中来开发,这个模块的功能验证在软件环境中来实现,无缝的将硬件仿真环境集合在一起,使用软件为中心的工具、报告以及优化设计,很容易的在 FPGA 传统的设计工具中生成 IP。传统的 FPGA 开发,首先写 HDL 代码,然后做行为仿真,最后做综合、时序分析等,最后生成可执行文件下载到 FPGA 使用,开发周期比较漫长。使用 HLS,用高级语言开发可以提高效率。
2024-05-24 11:43:53
501
原创 实验一. Nios-II编程入门
这次实验让我掌握了Nios II编程的基础知识。在编写控制LED流水灯和串口通信的程序时,我学习了如何使用Nios II IDE进行编程、调试和下载程序。掌握了如何操作GPIO和UART等外设。
2024-05-12 23:45:51
264
原创 ROS机器人小车建模仿真与SLAM
用一个文件描述一个机器人模型文件的后缀为.urdf文件的内容格式为XML格式XML根节点为robot关于SLAM的实现,它通常依赖于多种传感器数据,如激光雷达或摄像头等。这些传感器能够获取环境的几何信息或图像信息,为机器人的定位和地图构建提供数据支持。在基于激光的SLAM方法中,激光雷达被用于获取环境的点云数据。通过对点云数据的处理和分析,机器人能够识别出环境中的障碍物、墙壁等特征,并据此进行定位和地图构建。而在基于视觉的SLAM方法中,摄像头则扮演着重要角色。
2024-04-27 17:28:08
892
原创 第2周--ROS通信编程
当你运行了这个命令,它会打开一个窗口,展示一个图,其中节点用方框表示,节点之间的消息传递用箭头表示。我学习了ROS的核心概念,如话题与服务模式,并实践了话题的创建、发布与订阅,以及服务的编写与调用。学习了ROS的核心概念,如话题与服务模式,并实践了话题的创建、发布与订阅,以及服务的编写与调用。同时,我掌握了ROS动作编程,通过实现机器人运动到目标位置的动作,我认识到实时位置反馈在控制过程中的重要性。同时,我掌握了ROS动作编程,通过实现机器人运动到目标位置的动作,我认识到实时位置反馈在控制过程中的重要性。
2024-03-15 23:30:25
1985
1
原创 第1周---ROS1.0环境安装与配置
ROS(Robotic Operating System)是一种开源的机器人操作系统,它提供了一系列的软件库和工具,用于帮助开发机器人应用程序。ROS并不是一个传统意义上的操作系统,而是一个运行在类Unix系统(如Linux)上的软件平台,旨在简化和加速机器人软件开发过程。ROS提供了诸如硬件抽象、设备驱动、通讯中间件、传感器处理等功能,使开发人员可以更方便地构建复杂的机器人控制系统。ROS已经广泛应用于学术研究和工业领域中的各种机器人项目中。
2024-03-03 19:52:16
979
原创 定时器&PWM应用编程
定时器的工作原理可以分为四个部分:时钟产生部分、时基单元部分、输入捕获部分和输出比较部分。PWM(Pulse Width Modulation)是一种模拟控制方式,通过对一系列脉冲的宽度进行调制,来等效的获得所需要的波形(含形状和幅值)。脉宽调制(PWM,Pulse Width Modulation)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
2024-01-20 17:27:58
933
原创 一. 了解串口协议和RS-232标准,以及RS232电平与TTL电平的区别;了解USBTTL转232模块(以CH340芯片模块为例)的工作原理。
本次实验主要涉及串口通信协议、RS-232标准以及电平差异的理解,同时利用STM32系统实现与上位机的串口通信。实验过程主要分为两个阶段:基础串口通信设置和基于特定字符的通信控制。首先,我们深入了解了串口通信协议和RS-232标准,以及RS-232电平和TTL电平之间的主要区别。RS-232标准定义了数据传输的电压范围和信号线功能,而TTL电平通常具有更低的电压范围。在实验中,我们使用了CH340芯片模块作为USB/TTL转232模块,它能够实现TTL电平与RS-232电平之间的转换。
2024-01-11 22:12:00
2839
1
原创 第16周实验-用Verilog设计1个单周期8位CPU_模拟8051主要功能和部份指令
/偏移量//新指令地址endmoduleinput Cin;endmodule。
2024-01-04 23:04:22
507
1
原创 基于寄存器&标准外设库的LED流水灯
STM32标准外设库是一个固件函数包,它由程序、数据结构和宏组成。程序和数据结构:STM32标准外设库由程序和数据结构组成,这些程序和数据结构描述了外设的功能和操作方式。宏:宏是用来定义外设寄存器地址、位定义、中断向量等常量的集合。使用宏可以简化代码,提高可读性和可维护性。外设驱动:STM32标准外设库为每个外设提供了一组驱动函数,这些函数覆盖了该外设的所有功能。例如,GPIO驱动函数可以用来设置GPIO的输出状态、读取GPIO输入状态等。
2023-12-03 20:32:32
968
1
原创 第十二周实验——嵌入式PTOS多任务程序设计
首先:,它与通常的操作系统有所不同,主要是因为它能够在限定的时间内对外部事件做出响应。这种特性使得RTOS非常适合于那些需要实时响应的应用场景,例如嵌入式系统、自动驾驶等。其次: UCOS(Unified Real-Time Operating System)是Micrium公司开发的一款实时操作系统(RTOS)。UCOS有两个主要的版本,分别是UCOSII和UCOSIII。。相比于μC/OS-II删除和更新一些少用的功能,添加更加高效的功能和服务UCOSIII是一个。
2023-11-30 23:36:18
1757
原创 嵌入式实验:汉字点阵的字模读取与显示
找到保存的.dat文件,并重命名为.jpg文件。在国标GD2312-80中规定,所有国标汉字及符号都分配在一个94行、94列的方阵中,方阵的每一行称为一个“区”,每一列称为一个“列”,而一共有94个“区”,而每个“区”都有94个列,一共是94×94个汉字区位码的前两位是它的区号,后两位是它的位号。用区位码就可以唯一地确定一个汉字或符号。
2023-11-19 23:25:49
470
原创 1. 学习I2C总线通信协议,使用STM32F103完成基于I2C协议的AHT20温湿度传感器的数据采集,并将采集的温度-湿度值通过串口输出
简单学习I2C总线通信
2023-11-11 16:43:43
660
1
原创 一. 学习并掌握可执行程序的编译、组装过程。学习任务:
发现:当静态库和动态库同名时,gcc命令优先使用动态库,默认去连/usr/lib目录中的动态库。
2023-10-06 23:21:09
55
1
原创 1. 安装并熟悉Proteus 电路仿真软件,完成一个C51程序设计和仿真。
首先点击魔法棒,并在弹出的窗口中选择Output,在勾选Create HEX File,然后点击Ok。其次点击编译按钮,进行编译即可成功生成两个头文件**(这一步不可忽略,否则无法生成.hex文件)**////GPIOA_BASE=0x40000000+0x10000+0x0800=0x40010800,该地址为GPIOA的基地址//GPIOB_BASE=0x40000000+0x10000+0x0C00=0x40010C00,该地址为GPIOB的基地址。
2023-09-24 23:05:27
136
1
原创 嵌入式系统基础1
使用gcc命令和Windows系统的IDE进行编译可以帮助您了解程序编译和运行的方式,以及多个文件之间的链接。但是,在大型工程中,使用makefile来管理编译更加高效。总而言之,相对于单纯使用gcc命令或者Windows系统的IDE,makefile 提供了更高效、灵活和可维护的方式来编译和管理多个文件的大型工程。
2023-09-14 19:36:00
49
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人