自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 V4L2框架学习

是Linux内核中用于处理视频设备的标准框架,通常用于管理摄像头、视频采集设备等设备。应用程序通过V4L2提供的接口来控制摄像头的硬件寄存器1.用户态、内核态隔离应用不碰硬件,内核全权管理硬件,应用只发命令2.设备统一抽象所有设备都变成/dev/videoX 应用程序代码能够兼容所有摄像头,无需关注硬件3.内核缓冲区队列(零拷贝)vb2_queue让摄像头和应用程序直接操作同一块内存,实现最高效的零拷贝传输。

2026-04-21 18:42:25 81

原创 CMake的一些常用语法

CMake是开发中常用的自动编译构建工具,用于自动生成Makefile,常常结合自己写的shell脚本进行编译指定当前 CMake 运行所需的最低版本号project()定义工程名称定义变量打印信息,用于调试生成可执行文件(输出文件名 ,源文件)生成库文件 SHARED(动态库.so) STATIC(静态库.a)链接库,将生成app与lib1、lib2链接${LIBRGA}dl添加头文件路径,告诉编译器去哪里找#include头文件#添加头文件路径。

2026-04-20 20:55:18 354

原创 嵌入式Linux ffmpeg+Nginx实现RTMP推流

基于imx6ul,参考正点原子教程进行视频和摄像头画面推流。

2026-03-06 10:19:05 336

原创 V4L2摄像头应用编程学习记录(基于imx6ul)

本文介绍了基于Linux V4L2框架的视频采集与显示实现方案。通过初始化FrameBuffer设备建立LCD显示接口,并采用V4L2接口进行摄像头设备初始化、格式设置(强制RGB565)和帧缓冲管理(MMAP方式)。系统实现了视频数据的循环采集与LCD显示,包括双缓冲优化以消除画面撕裂:通过设置虚拟屏幕高度为物理高度的两倍,利用FBIOPAN_DISPLAY指令在垂直同步期间切换显示区域。代码详细展示了设备初始化、格式枚举、缓冲管理及数据流转的核心流程,为嵌入式视频采集系统开发提供了完整参考。

2026-03-05 12:09:31 284

原创 Linux qt学习记录

本文介绍了基于Qt框架开发的串口助手程序在imx6ul开发板上的实现过程。程序使用QSerialPort模块实现串口通信功能,包含串口参数设置(波特率、数据位、校验位、停止位)、数据收发等核心功能。通过手动创建UI控件并采用网格布局,实现了自适应屏幕尺寸的界面设计。程序先在Ubuntu上测试编译通过后,再使用交叉编译器编译移植到开发板运行。测试结果表明该串口助手能够正常运行,实现基本的串口通信功能。开发过程参考了正点原子教程,为嵌入式Linux平台上的Qt应用开发提供了实用示例。

2026-03-01 17:37:10 247

原创 Linux应用学习-读取jpg显示在LCD上

tslib jpeglib

2025-12-28 21:11:16 244

原创 ADC DMA双缓冲实时采集分析

不同的点是:选择DMA Circular Mode ,DMA选择Circular Mode。

2025-11-18 15:44:03 318

原创 软件按键消抖的几种方式(HAL库教程)

1.中断处理时间越短越好,不然严重浪费CPU资源2.stm32 hal库 HAL_Delay用的 滴答定时器 延时的,并默认是 优先级最低的,如果外部中断 优先级高于或等于 滴答定时器优先级,会造成中断里面的HAL_Delay无限延时,造成锁死退不出去!3.保险起见,还是别用HAL_Delay了。

2025-11-14 22:26:19 550

原创 基础知识复习(自用)

在STM32中,软件IIC是一种通过程序控制GPIO口模拟实现IIC通信的方法。在信息传输通道中,携带数据信息的信号单元叫码元(因为串口是1bit进行传输的,所以其码元就是代表一个二进制数),每秒钟通过信号传输的码元数称为码元的传输速率,简称波特率,常用符号“Baud”表示,其单位为“波特每秒(Bps)”。(CPHA,Clock Phase)来定义,其中CPOL参数规定了空闲状态(CS_N为高电平,设备未被选中)时SCK时钟信号的电平状态,CPHA规定了数据采样是在SCK时钟的奇数边沿还是偶数边沿。

2025-10-18 16:50:33 459

原创 Qt入门学习记录

初次使用qt,目前熟悉了一些基础的控件。

2025-09-23 21:23:00 297

原创 stm32自用函数、代码参考

备份

2025-07-28 15:56:20 362

原创 stm32 H7 ADC DMA采集

h7 adc dma

2025-07-08 13:25:08 2059 4

原创 Ti mspm0学习记录+代码备份

手机接收的格式为:包头0xA5 + 数据 + 校验 + 包尾0x5A。串口发送数据给蓝牙模块,蓝牙模块再发送数据给手机接收。此处是 一个整型和六个浮点数的数据包。与蓝牙模块HC05通信。

2025-05-30 11:04:00 450

原创 vivado fpga程序固化

一般下载到fpga上的程序在掉电之后就会丢失,如果想要掉电之后程序不丢失,就需要将比特流文件固化到板载的flash上。以下以我的7a100t开发板为例,介绍程序固化的流程。点击OK就可以下载了。

2025-05-20 19:33:36 2806

原创 波形数据有符号数和无符号数转换

在fpga做数字信号处理时,经常会遇到这个转换的问题,比如我的ADC采集的数据和DAC输出的数据采用的都是无符号数,但在使用一些ip核比如dds、fir、fft等的时候,需要使用的是有符号数,因此就需要这样的转换,并且保证波形和原来一致。1.无符号转有符号(举例)

2025-05-16 21:29:07 362

原创 vivado原语

【代码】vivado原语。

2025-05-14 14:24:38 563

原创 fpga ADC模块 常用小模块(测频率、测Vpp)

模块3是配合1,2使用的。

2025-05-11 16:19:50 665

原创 Clion stm32 cfg文件

【代码】Clion stm32 cfg文件。

2025-05-06 21:17:20 249

原创 fpga与stm32 spi 通信代码备份

【代码】fpga与stm32 spi 通信代码备份。

2025-05-05 18:15:24 432

原创 LMS自适应滤波算法(MATLAB仿真+fpga实现)

将输入的信号改一下,改成s=sin(0.1*pi*t)+sin(0.3*pi*t);,参考信号改成s0=sin(0.1*pi*t);从图中可以看出:期望信号选择噪声信号或者正弦波信号均可得到较好结果。

2025-04-19 23:07:42 627

原创 个人fpga的常用xdc文件

【代码】个人fpga的常用xdc文件。

2025-04-14 13:11:09 317

原创 fpga修改后的dds模块(可控增益)

dds一般都是从rom里读数据然后给DAC模块输出,有些时候题目会要求你的幅值有所倍数关系,因此我修改了原先的dds模块,注意不能直接÷,因为波形数据是无符号数,14位的数据,范围是0~16383,中心点8191对应的是实际DAC输出的0V,所以要稍微做一点点小处理。

2025-04-14 10:38:56 371

原创 fpga模块 占空比为50%的任意奇偶分频

还是比较好用的,现场写的话可能会浪费一点时间,比如奇数分频不是50%占空比、2分频不小心变成了4分频等等问题。在校赛的时候,需要用fpga分频时钟给CD4046并以此来获得倍频时钟,才发现需要准备这个模块。

2025-04-14 10:32:55 357

原创 stm32 hal库 串口中断与串口屏通信

串口屏基础通信测试

2025-03-26 21:36:07 940 7

原创 vivado FFT ip核的使用

vivado fft ip核使用

2025-01-24 16:45:27 892

原创 vivado DDS ip核的使用

dds IP核使用

2025-01-20 21:07:37 2105

原创 fpga模块(6) LCD屏幕显示驱动

LCD屏幕显示

2024-11-08 12:31:38 971

原创 用嘉立创制作单层腐蚀板步骤

找一个容器,将转印好的铜板放入,加入腐蚀剂和热水,并不断摇晃加快腐蚀。用砂纸将覆铜板擦拭干净,将热转印纸上的电路与覆铜板贴合,用。腐蚀完成后,再钻孔,然后就可以开始焊接了!1.使用tina仿真,画原理图。加热,将电路图转印到覆铜板上。切一块大小合适的铜板。

2024-11-06 16:22:15 994

原创 vivado ROM ip核的使用

与随机存储器(RAM)不同, ROM 存储的数据一旦写入后断电后不会丢失, RAM断电后数据直接丢失, 因此 ROM 也被称为非易失性存储器(Non-Volatile Memory)。FPGA中是有一定的存储资源,常见就是BRAM,本实验通过调用FPGA的IP核, IP 核相当于是已经写好的模块, 来实现 ROM 的功能,不过这个 ROM 本质是 RAM,断电后数据会丢失,只是具有 ROM 的功能。coe文件初始化ROM(coe文件可以由matlab生成,也可由软件生成)此处coe文件存的是正弦波形数据。

2024-11-06 15:39:21 1886

原创 vivado RAM ip核的使用

vivado RAM IP核配置及使用

2024-11-04 21:33:55 3008

原创 vivado FIFO ip核的使用

FIFO(Frist Input Frist Output),即先入先出,也是一种存储器, 本质上还是RAM, 是一种先进先出的数据缓存器, 与普通存储器的相比, 没有外部读写地址线,这样使用起来非常简单。但缺点就是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加 1 完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址。

2024-11-04 15:40:02 1545

原创 fpga模块(5)SPI从机通信

SPI通讯协议一共有四种通讯模式,模式0、模式1、模式2以及模式3,这4种模式分别由时钟极性(CPOL,Clock Polarity)和时钟相位(CPHA,Clock Phase)来定义,其中CPOL参数规定了空闲状态(CS_N为高电平,设备未被选中)时SCK时钟信号的电平状态,CPHA规定了数据采样是在SCK时钟的奇数边沿还是偶数边沿。数据更新在SCK时钟的偶数边沿,本模式中,偶数边沿为下降沿。模式1:CPOL= 0,CPHA=1。数据更新在SCK时钟的偶数边沿,本模式中,偶数边沿为上升沿。

2024-11-03 10:18:45 1723

原创 Matlab学习笔记(持续更新)

matlab学习笔记

2024-10-28 20:38:59 837

原创 fpga模块(3)verilog实现14位dds信号发生器+DAC模块波形输出

基于fpga的14位dds信号发生器,并可以通过dac模块实现波形输出

2024-10-24 19:15:14 2080 6

原创 fpga模块(2)串口uart通信

fpga的串口发送与接收(rs232)

2024-10-24 18:24:31 824

原创 fpga模块(1)动态数码管驱动

【代码】fpga模块(1)6位共阳极动态数码管驱动

2024-10-24 12:59:26 565

空空如也

空空如也

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

TA关注的人

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