自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于HLS的闪烁仿真

HLS概念HLS(High-Level Synthesis)是一种硬件设计方法,它允许使用高级编程语言(如C、C++)来描述硬件功能,然后通过自动化工具将其转换为硬件描述语言(如Verilog或VHDL)。这种方法可以显著提高硬件设计的效率和可移植性,缩短开发周期,并减少设计错误的可能性。HLS与VHDL/Verilog抽象级别HLS使用高级编程语言(如C、C++)来描述硬件功能,这使得设计者能够更加抽象地表达设计意图,而不需要深入考虑底层硬件实现细节。

2024-06-12 22:09:53 769

原创 基于DE2-115开发板的SystemVerilog流水灯程序

SystemVerilog 在 Verilog 的基础上添加了一些新的功能,比如对象导向编程、约束随机测试、接口和数据类型的扩展等,使得它更适用于复杂的硬件设计和验证任务。接口和数据类型的增强: SystemVerilog 对 Verilog 中的接口和数据类型进行了增强,使得它们更加灵活和强大,能够更好地支持现代的硬件设计需求。以上是 SystemVerilog 的一些基本语法特点,这些特点使得 SystemVerilog 更加灵活和功能丰富,在硬件设计和验证过程中有着广泛的应用。

2024-06-03 19:52:20 583

原创 基于STM32的超声波测距

然而这样太麻烦了,而且也不好用,因此我们可以随意一些,我在代码中使用的是预分频器为72,自动重装器为100,那么得到的频率为72MHz/72/100=1000Hz,也就是一次定时器中断的时间为100us,而自动重装器里的每一个值就是1us,所以每次外部中断的下降沿触发之后只需要将定时器触发的次数*100再加上自动重装器里的值就可以得到回响信号的持续时间了,单位是us。如果是拉高,那么我们需要记录下持续的时间,这时候我们需要用定时器计时,所以需要在一开始的时候就配置好定时器的初始化。

2024-05-27 21:20:07 583

原创 基于FPGA的VGA显示

VGA显示器使用隔行扫描方式,首先扫描屏幕的奇数行,然后再扫描偶数行。这样可以更快地更新屏幕,并且降低了闪烁效应。VGA显示器通过水平同步和垂直同步信号来确定图像的位置和刷新。水平同步信号用于确定何时开始每一行的扫描,而垂直同步信号用于确定何时开始新的屏幕帧VGA驱动显示器用的是扫描的方式,一般是逐行扫描。逐行扫描是扫描从屏幕左上角一点开始,从左像右逐点扫描,每扫描完一行,电子束回到屏幕的左边下一行的起始位置,在这期间,CRT对电子束进行消隐,每行结束时,用行同步信号进行同步;

2024-05-24 21:38:08 686 1

原创 嵌入式开发基础02:ROS的话题和服务通信

ROS的模块化设计理念导致ROS节点的功能结构比较单一,要想完成一个完整的功能通常需要几个节点的配合才能完成,同时ROS使用CMake和catkin做为编译工具,引入包的概念一次可以安装几组节点,省去了一个一个安装节点的操作。话题通信是ROS节点间常用的通信方式之一,举一个简单的例子:节点A和节点B想找人开黑,加入了某开黑群,节点A在群里每秒发送一条消息“刷屏”寻找队友,这样节点B就能看到消息啦,这就完成了一个简单的节点通信。的主题名称,是两个节点建立连接的关键,节点A发送的信息也就是。

2024-03-15 13:31:01 865 1

原创 嵌入式开发基础01:ROS的安装及小海龟仿真(基于Ubuntu18.04)

ROS(Robotic Operating System)是一个开源的机器人操作系统,旨在为机器人软件开发提供一套灵活、强大的工具和库。ROS最初是由斯坦福大学人工智能实验室(Stanford AI Lab)开发的,现在由OSRF(Open Source Robotics Foundation)维护。ROS提供了一系列用于构建机器人应用程序的工具和库,包括通用的操作系统服务、硬件抽象、消息传递、包管理、可视化工具等。它支持多种编程语言(如C++、Python)和运行在各种操作系统上。

2024-03-02 21:29:53 1233

原创 定时器&PWM应用编程

在具体实现中,PWM 常常使用定时器模块来产生一定频率的固定周期信号,同时通过输出比较模块或者自动重载模式等方式来控制占空比。占空比为0%时,输出电压为0。通过改变占空比,可以实现对输出信号的改变,从而实现对电路的控制。对噪声抵抗能力的增强是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。通过配置定时器的计数周期和比较值,可以控制 PWM 的频率和占空比。3、专用硬件产生 PWM:一些微控制器和专用 PWM 控制器集成了特殊的 PWM 模块,可以直接产生 PWM 信号。

2023-12-30 10:47:07 1042 1

原创 【无标题】FPGA编程入门——实现一位全加器

总的来说,这次的试验还是比较简单的。相当于是熟悉一下这些软件和代码的编写。为之后的学习打下一定的基础。

2023-12-19 20:07:06 1159 1

原创 【无标题】STM32F103C8T6基于HAL库移植uC/OS-III

uc/OS-III(Micro-Controller Operating Systems-III)是一款针对嵌入式系统的实时操作系统。它由美国计算机软件公司Micrium开发,旨在提供高度可靠和高效的操作系统解决方案。uc/OS-III是一个可裁剪、可配置和可移植的操作系统,适用于广泛的嵌入式应用,如工业控制、汽车电子、医疗设备和消费电子等。它采用了一种基于优先级的抢占式调度算法,支持多任务并行执行,并为实时任务提供了确定性的响应时间和可靠性。

2023-11-30 17:09:19 940

原创 基于STM32的OLED屏显示

SPI是Serial Peripheral Interface的缩写,是一种用于在微控制器或其他数字设备之间进行通信的串行通信接口标准。SPI以主-从模式进行通信,由一个主设备控制多个从设备。SCLK(时钟线):由主设备产生的时钟信号,用于同步数据传输。MOSI(主设备输出,从设备输入):主设备向从设备发送数据的线路。MISO(主设备输入,从设备输出):从设备向主设备返回数据的线路。SS(片选线):主设备用于选择要与之通信的从设备的线路SPI 主要特点有:可以同时发出和接收串行数据;

2023-11-19 18:36:26 203

原创 I2C总线通信协议及stm32温湿度(AHT20)采集

I2C(Inter-IC)是一种串行总线协议,用于在集成电路之间传输数据。它由Philips半导体(现在的NXP Semiconductors)在1980年代中期开发,用于连接微控制器、传感器、显示屏等芯片。I2C总线共有两根信号线,一根称为SCL(Serial Clock Line),用于传输时钟信号;另一根称为SDA(Serial Data Line),用于传输数据。I2C总线有两种模式:主模式和从模式。主模式由主设备控制,从模式由从设备控制。使用两根信号线,使用简单,可节省PCB空间。

2023-11-13 19:36:53 650

原创 【无标题】

串口协议是一种用于数据通信的标准接口协议,其目的是在设备之间传输数据。RS-232(Recommended Standard 232)是一种常见的串口协议标准。RS-232标准定义了电气和机械方面的规范,用于在计算机和其他外部设备之间进行通信。该标准规定了串口的信号线定义、电气特性、通信波特率范围和数据传输格式等。RS-232标准常用于串行通信,其中数据以位的形式依次传输。RS-232标准使用了一组信号线,包括发送数据线(TX)、接收数据线(RX)、控制信号线(如数据流控制、硬件流控制)、地线等。

2023-11-03 17:17:53 32

原创 嵌入式开发05 基于HAL库的流水灯和外部中断控制灯的亮灭

HAL(硬件抽象层)库是一种编程库,用于与特定硬件进行交互。标准库(如C标准库)是一组通用函数和类型,用于进行常见的编程任务。寄存器是用于存储和控制硬件设备的元件。

2023-10-27 16:49:04 120 1

原创 【无标题】嵌入式开发04 基于寄存器和固件库的stm32 LED流水灯

操作系统:win10集成开发环境(IDE):keil5烧录工具:mcuisp串口驱动:CH340驱动。

2023-10-17 18:48:23 132

原创 嵌入式开发03 gcc背后的故事

源文件经过编译器编译后才可生成二进制文件,编译过程包括预处理、编译、汇编和链接,日常交流中常用“编译”称呼此四个过程。编译器是一系列工具的集合,如arm平台使用的交叉编译器arm-linux-gcc包括arm-linux-cpp(compiler preprocessor预处理)、arm-linux-cc1(c compiler编译)、arm-linux-as(assembly 汇编)、arm-linux-ld(linker链接)等工具。

2023-10-06 17:19:23 83 1

原创 嵌入式开发入门02(基于Proteus的模拟仿真)

Proteus 是一款知名的电子设计自动化 (EDA) 软件套件,主要用于电路设计、仿真和 PCB 布局设计。它由英国Labcenter Electronics公司开发,广泛应用于电子工程师和学生的电路设计和原型开发过程中。Proteus 软件具有直观的用户界面和强大的功能,可以帮助用户快速设计和验证电路原型。它提供了多种设计工具,包括电路图编辑器、仿真引擎和PCB布局编辑器。通过Proteus,用户可以绘制电路图并进行仿真,以验证电路的功能和性能。

2023-09-25 22:45:05 517 1

原创 嵌入式开发基础01:Ubuntu系统下简单C程序的编译和运行

vim拥有各种各样的文本间移动/跳转的命令和其他的普通模式的编辑命令,并且能够灵活组合使用,比那些没有模式的编辑器更加高效的进行文本编辑。同时VIM与很多快捷键设置和正则表达式类似,可以辅助记忆。Vim具有三种模式:命令模式、插入模式、低行模式。运用vim命令直接打开文件默认是在命令模式下。命令模式:不能直接编辑文本,输入的字母会被当作命令执行。插入模式:在命令模式下输入字母i可切换到插入模式,在当前光标前输入,插入模式下按Esc可以返回命令模式。

2023-09-14 21:43:34 1992 1

原创 《web应用基础》课程结业报告

这是一个利用html,css,JavaScript制作的web静态网页,主要内容是关于俱乐部球队简单介绍,包括球员照片,球队简介,联系方式等等。这个web项目是本人第一个结合了html,css,JavaScript等多方面的网页项目,通过本次网页的设计实践,结合了课程所学知识,提升了对web相关技术的熟练程度,受益匪浅。首先,通过对html相关知识的学习,我能够熟练使用各种标签进行文本、图片的展示其次,通过对css的学习,我掌握了许多页面布局的方法及其技巧。

2023-07-01 21:40:46 42

原创 html css js 学习心得体会

掌握数据类型和操作:了解 JavaScript 的数据类型,如字符串、数字、布尔值、数组和对象等,以及它们的常见操作和方法。掌握 CSS 属性和选择器:了解常用的 CSS 属性,如颜色、字体、边距、尺寸等,以及选择器的使用方法,能够为网页添加样式和布局。学习文档结构和语义化标签:使用适当的 HTML 标签来描述内容的结构和含义是一个良好的实践,可以提高网页的可访问性和搜索引擎优化。实践和尝试:通过编写代码和实践项目,不断尝试各种效果和布局,可以加深对 HTML 和 CSS 的理解,并发现问题和解决方法。

2023-07-01 20:20:01 637

2021级平均学分绩点.rar

2021级平均学分绩点.rar

2023-09-12

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

TA关注的人

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