自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 FPGA实现光纤通信(3)——光纤8b/10b编码数据回环

FPGA实现光纤通信8b/10b编码数据回环测试

2025-01-24 18:15:36 1660

原创 linux驱动开发之基于设备树+pinctrl和gpio子系统LED灯驱动(附驱动源码,适用于全志,瑞芯微等芯片)

orangepi_3_lts基于pinctrl和gpio子系统实现LED灯驱动

2024-11-19 17:00:16 903

原创 FPGA实现光纤通信(2)——光纤眼图测试

FPGA光纤通信眼图测试

2024-11-11 16:39:21 775

原创 FPGA实现光纤通信(1)——光纤通信简介

FPGA高速串行通信简介

2024-11-05 17:27:08 793

原创 FPGA实现USB2.0通信——基于CY7C68013A芯片

FPGA实现USB2.0数据读写测试

2024-10-29 17:00:00 1966 2

原创 FPGA实现UDP通信(5)——CRC校验

CRC校验详解

2024-10-23 14:36:41 535

原创 FPGA实现UDP通信(4)——数据接收实现

FPGA实现UDP数据接收,并且使用自动CRC校验,通过仿真进行验证

2024-10-23 14:35:46 844

原创 FPGA实现UDP通信(3)——数据发送实现

FPGA实现UDP数据发送以及使用一些工具软件进行调试的过程,通过UDP每隔一段时间发送一个固定数据并使用wireshark成功抓包,且网络调试助手成功接收到数据

2024-10-16 15:11:21 1380

原创 FPGA实现UDP通信(2)——通信接口简介

本文主要介绍了常见的网络通信接口MII,GMII和RGMII,对其引脚进行了分析,最后介绍了本次使用到的开发板锆石科技(已倒闭)FGPA A4_plus这块开发板的网络接口。

2024-10-16 11:36:22 909

原创 linux驱动开发之基于设备树的LED灯驱动(附驱动源码,适用于全志,瑞芯微等芯片)

基于设备树的linux的LED灯设备驱动开发,适用于全志,瑞芯微等芯片,理论行所有芯片是都适用的,而我本次基于orangepi_3_lts实现,程序开源,具有详细的注释,方便读者学习。

2024-10-05 15:50:46 839

原创 linux驱动开发之LED灯驱动(附驱动源码,适用于全志,瑞芯微等芯片)

linux驱动开发之LED等驱动开发,适用于全志,瑞芯微等芯片,理论行所有芯片是都适用的,而我本次基于orangepi_3_lts实现,程序开源,具有详细的注释,方便读者学习。

2024-10-05 15:49:02 669

原创 FFGA实现UDP通信(1)——通信协议简介

UDP通信协议简介

2024-09-21 17:20:37 941

原创 AXIS Data FIFO读写测试

verliog实现axis_data_fifo读写

2024-09-12 17:00:00 613

原创 FPGA驱动VGA接口显示,基础显示

FPGA驱动VGA显示

2024-08-12 17:00:00 525

原创 Orangepi3_lts字符驱动编写框架及具体步骤

orangepi3_lts加载字符驱动具体步骤

2024-07-08 17:00:00 458 1

原创 FPGA实现IIC驱动模块设计

FPGA实现IIC通信协议并仿真

2024-07-05 17:00:00 972

原创 FPGA串口通信下——串口接收+发送

FPGA实现串口发送和接收

2024-06-29 17:00:00 1873 1

原创 FPGA串口通信上——串口发送

FPGA实现串口发送数据

2024-06-24 16:44:18 1555

原创 ubuntu22.04搭建tftp服务

ubuntu22.04搭建tftp服务

2024-06-11 17:00:00 806

原创 Ubuntu22.04搭建NFS服务器

ubuntu下搭建nfs服务

2024-06-08 16:42:10 445

原创 Ubuntu安装Octave

最后使用flatpak安装Octave,由于Octave需要较大的存储空间,所以使用该虚拟机的话尽量空间大一点,双系统的话同样。此外,此过程由于是去官网安装的,需要的安装时间较长,所以有梯子的话尽量挂个梯子嘿嘿,没有的话多等待一段时间就好了。最近需要在ubuntu使用Octave,所以写个博客记录一下安装过程,Octave是一个类似于matlab的开源软件包,他与matlab同样执行.m文件,具有很高的兼容性。本次使用flatpak安装flatpak,首先安装flatpak,命令如下。

2024-05-29 17:00:00 588

原创 全志芯片bsp命名规则

全志系列芯片bsp命名

2024-04-19 17:00:00 413

原创 U-BOOT命令使用2——环境变量操作命令

setenv用于设置和修改环境变量的值,一般环境变量是存放在外部flash中,uboot启动时会将环境变量从flash读取到DRAM中,所以使用setenv是修改DRAM中的环境变量值,修改以后要使用saveenv将修改后的环境变量保存到flash中。setenv不仅可以用来新建环境变量,还可以用来删除环境变量,通过给环境变量赋空值来删除环境变量。之后通过printenv命令来查看环境变量就可以看到我们设置的环境变量了。使用printenv命令查看一下,发现之前设置的环境变量果然被删除了。

2024-04-17 17:00:00 773 1

原创 U-BOOT命令使用1——信息查询命令

U-BOOT信息查询命令

2024-04-15 17:00:00 800 1

原创 orangepi3_lts的u-boot编译与烧写

可以烧写到SD卡的文件,spl/sunxi-spl.bin,u-boot.itb或者u-boot-sunxi-with-spl.bin,首先检查自己的ubuntu是否识别到了SD卡设备,输入ls /dev/sd* -l查看是否识别到了SD卡。orangepi3_lts的u-boot编译有两种方法,一种方法是使用官方的SDK进行编译,运行build.sh脚本通过图形化的界面选择u-boot就可以完成u-boot编译,这具体步骤官方手册都有,这里就不再赘述。orangepi3_lts的u-boot编译与烧写。

2024-04-13 19:00:00 1686 1

原创 Filezilla无法正常连接虚拟机的解决办法

启用之后再次检查ssh服务是否正常运行,依然是通过如上命令,打印出sshd表示正常运行,至此,再次ifconfig一下得到ID地址就可以正常连接互传文件了。如果没有显示,说明ssh服务不正常,输入以下指令,安装ssh服务。若输出结果有如下信息,说明ssh服务器正常。安装完成之后,通过如下命令启用ssh服务。

2024-04-04 22:09:20 1357 2

本资源为锆石科技FPGA A4-plus开发板用户手册,主要包括学习指导篇,数字电路篇,硬件语法篇,软件工具篇,项目实战篇,软核演练篇等

本资源为锆石科技FPGA A4_plus开发板用户手册,主要包括学习指导篇,数字电路篇,硬件语法篇,软件工具篇,项目实战篇,软核演练篇等,由于各种原因锆石科技破产了好像(至少网上查不到的,官网也进不去了),所以有些资料较难获取,所以我在这里整理了一些资料分享出来供大家学习。本资源为锆石科技FPGA A4_plus开发板用户手册,主要包括学习指导篇,数字电路篇,硬件语法篇,软件工具篇,项目实战篇,软核演练篇等,由于各种原因锆石科技破产了好像(至少网上查不到的,官网也进不去了),所以有些资料较难获取,所以我在这里整理了一些资料分享出来供大家学习。本资源为锆石科技FPGA A4_plus开发板用户手册,主要包括学习指导篇,数字电路篇,硬件语法篇,软件工具篇,项目实战篇,软核演练篇等,由于各种原因锆石科技破产了好像(至少网上查不到的,官网也进不去了),所以有些资料较难获取,所以我在这里整理了一些资料分享出来供大家学习。本资源为锆石科技FPGA A4_plus开发板用户手册,主要包括学习指导篇,数字电路篇,硬件语法篇,软件工具篇,项目实战篇,软核演练篇等。

2025-02-25

香橙派基于gpio子系统的led灯设备驱动源码

最近学习linux驱动,上次我们讲述了基于设备树下的LED等的linux驱动,但是其驱动的本质没有变,仍然是通过配置GPIO的相关寄存器来实现LED控制,只不过是加了设备树这个中介。而我们在驱动开发中,不可能都通过配置寄存器这种“原始”的方式来实现。在linux内核中,提供了pinctrl和gpio子系统可以用于GPIO驱动,其本质上就是芯片原厂官方将寄存器进行封装,方便驱动开发者使用,本次我们就来学习一下使用pinctrl和gpio子系统实现LED灯驱动,同时源码放出来供大家参考。本次驱动开发适用于全志,瑞芯微等芯片厂家的开发板,对于其他厂家的开发板应该同样适用,因为pinctrl和gpio子系统是Linux内核提供的,只要是linux系统,标准是统一的。我手上刚好有一块orangepi_3_lts板子(基于全志H6),所以我是基于这块板子来写LED灯驱动程序的,对于orangepi_3_lts这块板子,想要运行自己的驱动程序需要先加载内核头文件,具体步骤就不再赘述了,忘记的同学可以查看我之前的文章。

2024-11-19

FPGA实现IIC通信quartus工程,纯verliog,可进行移植

IIC通信协议是一种串行通信总线,但其只有一根数据线,属于半双工通信协议,适用于传输距离较短的场景下使用。IIC由数据线SDA和时钟线SCL组成,数据线既可以用来发送数据,也可以用来接收数据,数据传输速率在标准模式下可以达到100kbit/s,在快速模式下可以达到400kbit/s,在高速模式下可以达到3.4Mbit/s,IIC的数据线和时钟线可以都会接上拉电阻,保证在没有进行数据传输时引脚电平处于高电平状态。IIC支持多主和主从两种工作方式,其通常工作在主从工作模式,在主从工作模式下,系统只有一个主机,其他期间都是IIC总线的从机,在该工作模式下,主机产生时钟信号并启动数据发送和停止。IIC工作总线时序如下图所示。空闲状态数据线和时钟线均处于高电平,当相进行数据传输时,需要先把SDA数据线拉低,产生一个起始信号,当想停止数据传输时,将SDA数据线拉高,产生一个停止信号,此时再次回到空闲状态。本次主要通过仿真来实现FPGA的IIC通信功能,并没有进行板载实验。FPGA程序设计主要在一个iic_driver模块中实现IIC在指定地址读和写一帧8位数据。

2024-11-14

基于python实现的玫瑰花源码,可以直接运行画出玫瑰花

Python由荷兰国家数学与计算机科学研究中心的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。 Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言, 随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发,Python在各个编程语言中比较适合新手学习,Python解释器易于扩展,可以使用C、C++或其他可以通过C调用的语言扩展新的功能和数据类型。 Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。本次基于python实现的玫瑰花源码,可以直接运行画出玫瑰花,方便学习python用于画图的相关函数以及控件。对于新手来说较为友好,可以用来学习入门。

2024-11-01

FPGA驱动USB2.0芯片需要的驱动,固件以及上位机软件

本次使用的USB2.0芯片为CY7C68013A,该芯片内部具有一个增强型的8051内核,对该CPU烧写不同的固件程序可以实现不同的模式,如Bulk模式,Streaming模式等等,使用该芯片需要安装FX2的标准驱动程序以及CySuite USB_3_4_7_B204,这里面有该USB2.0芯片的一些常用固件,如果自己想写固件的话需要下载keil,没错,这就是我们常用的51,32等单片机使用的keil,来编写固件并生成可执行程序,同时要烧写固件需要用到上位机Control Center软件,这里我将上面提到的三个软件打包放在这里了。其中驱动是需要自己手动安装的,USB连接电脑之后,在设备管理器端选择在电脑中选择驱动程序,定位到驱动文件的目录就可以更新驱动程序了。此外,CySuite USB_3_4_7_B204是需要下载安装的,安装之后会有一些官方提供的固件,其中最重要的就是slave.iic和blukloop.iic了,slave.iic是用来实现数据收发的,与FPGA通信时可以选择这个,blukloop.iic是用来实现自身数据回环的,这与FPGA关系就不大了,可以用来验证电路。

2024-10-16

基于设备树的香橙派LED灯内核驱动源码,包括驱动文件,Makefile和上层测试App

本内容主要是基于orangepi_3_lts开发板写的一个LED灯内核驱动程序,本次驱动添加了设备树修改,该驱动程序同样的,主要通过写寄存器的方式来实现。本次分享的内容主要包括LED灯的内部驱动源码,用于编译ko文件的Makefile以及上层用于测试的APP文件,用于打开和关闭led等。 本文件适用于linux驱动的初学者学习入门。本次写驱动主要流程就是写寄存器,包括IO口做什么引脚用,引脚驱动水平,输入输出模式以及读写高低电平四个寄存器,对应的寄存器保存在设备树文件中,驱动文件通过读设备树得到相对应的寄存器地址,相应的寄存器在手册上可以找到,并且源码具有较为详细的注释,方便学习。驱动主要内容包括初始化file_operation结构体对应的一些函数,包括open,close等等,以及如何从物理地址映射到虚拟地址,操作相关寄存器也是操作映射得到的虚拟地址等等内容,源码每一部分具有较为详细的注释。 此外,我后期会不断更新各种基于香橙派的设备驱动源码,如果觉得对你学习有帮助不妨留个关注。

2024-10-04

香橙派LED灯内核驱动源码,包括驱动文件,makefile和上层测试app

本内容主要是基于orangepi_3_lts开发板写的一个LED灯内核驱动程序,该驱动程序主要通过写寄存器的方式来实现,暂时没有添加设备树,添加设备树的分享可以看我的下一篇分享。本次分享的内容主要包括LED灯的内部驱动源码,用于编译ko文件的Makefile以及上层用于测试的APP文件,用于打开和关闭led等。 本文件适用于linux驱动的初学者学习入门。本次写驱动主要流程就是写寄存器,包括IO口做什么引脚用,引脚驱动水平,输入输出模式以及读写高低电平四个寄存器,在手册上可以找到,并且源码具有较为详细的注释,方便学习。驱动主要内容包括初始化file_operation结构体对应的一些函数,包括open,close等等,以及如何从物理地址映射到虚拟地址,操作相关寄存器也是操作映射得到的虚拟地址等等内容,源码每一部分具有较为详细的注释。 此外,我后期会不断更新各种基于香橙派的设备驱动源码,如果觉得对你学习有帮助不妨留个关注。

2024-10-03

FPGA纯verliog实现串口通信,串口发送

本次主要设计串口通信,基于verliog实现,并且通过了板级验证,实现串口发送,FPGA产生一组连续的数据,并通过串口一秒发送一位数据发送到上位机进行显示。 日常通信方式中主要分为串行通信和并行通信,并行通信通常情况下是由多个发送或接收数据线组成的,每根线传输一位或多位,传输速率较快,但成本较高,不适合用于长距离通信。而串行通信通常是数据发送或接收在一条数据线上,数据的每一位按特定的通信协议顺序传输,这种方法会减少使用成本,但传输速率较并行传输来说较慢。而串口通信协议数据串行通信,所以我们本次主要来讲解下串行通信。串口通信数据线包括TX和RX,TX用来发送,RX用来接收,连接为TX接RX,RX接TX。串口通信数据帧由起始位,数据位,奇偶校验位和停止位组成,起始位低电平有效,一次传输一个8位数据(还可以是5、6、7位,大多数情况下是8位),奇偶校验位用来平衡数据位中“1”的个数+奇偶校验位“1”的个数为奇数或者偶数(如果不使用奇偶检验位数据位可以是9位),最后停止位高电平有效,串口通信速率由波特率来表示,常用的有9600、19200、38400、57600、115200等等。

2024-09-30

FPGA纯verliog实现串口通信,串口回环

本次主要设计串口通信,基于verliog实现,并且通过了板级验证,实现串口回环,FPGA首先接收串口助手发送过来的数据,FPGA接收到数据之后,将接收的数据原封不动发送回去,实现串口回环,同时也可以做相应的修改,实现纯发送和纯接收。 日常通信方式中主要分为串行通信和并行通信,并行通信通常情况下是由多个发送或接收数据线组成的,每根线传输一位或多位,传输速率较快,但成本较高,不适合用于长距离通信。而串行通信通常是数据发送或接收在一条数据线上,数据的每一位按特定的通信协议顺序传输,这种方法会减少使用成本,但传输速率较并行传输来说较慢。而串口通信协议数据串行通信,所以我们本次主要来讲解下串行通信。串口通信数据线包括TX和RX,TX用来发送,RX用来接收,连接为TX接RX,RX接TX。串口通信数据帧由起始位,数据位,奇偶校验位和停止位组成,起始位低电平有效,一次传输一个8位数据。 该代码在后续测试中发现一些小问题,就是但连续发送多个字节时,回环发送回去的数据总是间隔发送,也就是每两个字节会漏掉一个字节,不过当只发送一个字节时,没有这个问题存在,该问题目前还在排查中,后面会给予相应的解决方案。

2024-09-30

基于C语言实现的贪吃蛇小游戏(Visual studio打开直接运行)

基于C语言实现的贪吃蛇小游戏,项目使用Visual Studio可以直接打开工程,直接运行就可以,程序局具有较为完整的注释,方便新手学习,主要知识点包括结构体,指针,链表等内容。所有源码均是开源的,拿到手可以进行任何自己想进行的相关修改,十分友好。欢迎关注,有不懂的问题可以与我交流。 基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏基于C语言实现的贪吃蛇小游戏。

2024-09-26

NetAssist网络调试助手软件

网络调试助手,方便进行TCP以及UDP网络通信调试

2024-09-25

空空如也

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

TA关注的人

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