自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【HLS】流水线仿真之排队函数的调用

①参数retptr返回值funcptr将要调用的HLScomponent这个函数对HLS组件的一次调用进行排队。返回值存储在第一个实参中,该实参应该是指向返回类型的指针。在调用ihc_hls_component_run_all()之前,组件不会运行。②参数funcptr将要调用的HLScomponent这个函数对HLS组件的一次调用进行排队。当HLS组件的返回类型为void时,应该使用这个函数。在调用ihc_hls_component_run_all()之前,组件不会运行。③参数。...

2022-07-22 17:04:47 662 1

原创 【SOC】SoC第一个工程 Hello World

右键opt选择LaunchTerminal,在控制台输入chmod777hello_world修改文件属性,使用语。①我们直接跳过制作系统镜像,利用读卡器将SD卡插到电脑上,首先格式化内存卡,然后打开烧录工具。在刚刚新建的工程下new→SourceFile新建一个文件。将之前编译生成的二进制的文件复制粘贴到opt文件夹下。④找到黄金工程的输出目录,运行脚本文件将编译生成的。重启,查看IP,IP地址是上述设置地址,成功。名字自己设置,其他配置如下,最后选择。文件,将此文件替换SD卡中同名文件。...

2022-07-18 22:08:52 693

原创 【FPGA】I2C读写EEPROM

I2C即Inter-Integrated Circuit(集成电路总线),是由Philips半导体公司(现在的NXP半导体公司)在八十年代初设计出来的一种简单、双向、二线制总线标准。多用于主机和从机在数据量不大且传输距离短的场合下的主从通信。主机启动总线,并产生时钟用于传送数据,此时任何接收数据的器件均被认为是从机。I2C总线由数据线SDA和时钟线SCL构成通信线路,既可用于发送数据,也可接收数据。在主控与被控IC之间可进行双向数据传送数据的传输速率:各种被控器件均并联在总线上,通过器件地址(SLAVEAD

2022-07-09 15:27:22 3318

原创 【嵌入式】VNC Viewer远程连接树莓派

我这里使用的格式化工具是打开格式化工具,选择我们的SD卡,然后点击format之后点击是出现这个界面就格式化完成了首先去下载树莓派镜像官网地址:https://www.raspberrypi.org/downloads/raspbian/然后我们还需要烧录工具下载烧录的工具然后打开它1.点击CHOOSE OS,选择到刚才下载的镜像文件2.然后点击CHOOSE SD CARD 选择刚才格式化的SD卡,接着就点击WRITE接着会弹出一个对话框,选择Continue/OK,然后,就开始

2022-06-22 15:26:41 461

原创 【FPGA】DS18B20数字温度传感器实验

我们将对照原味的“ 英文手册 ”来分析实在看不懂还可以戳这里中文手册传送门!!!全英文,算了摆烂了。。。😭别急,原子哥给出了中文版结构图,这样对照起来一目了然👍DS18B20的内部结构主要由8部分组成:那么,FPGA需要怎样控制才能让DS18B20工作并将温度数据读取出来呢???温馨提示:命令解释有点繁琐,我们可以把此部分当作资料来查看,现在也可以直接去看命令用法ROM功能命令就是操作这一块“ 只读 ”的存储器64位ROM的具体内容如下图:64位ROM中的序列号是出厂前被光刻好的,它可以..

2022-06-16 12:03:50 5641 12

原创 【FPGA】基于VGA的图像显示

vga

2022-06-11 23:43:25 7020

原创 【FPGA】UART串口通信---基于FIFO

我们在上一章完成了UART串口通信的收发模块,这一章我们将FIFO引入进来,使用FIFO进行缓存数据,来连接串口通信的收发模块同步FIFO读和写应用同一个时钟。它的作用一般是做交互数据的一个缓冲,也就是说它的主要作用就是一个buffer1。异步FIFO读写应用不同的时钟,它有两个主要的作用,一个是实现数据在不同时钟域进行传递,另一个作用就是实现不同数据宽度的数据接口。同步FIFO和异步FIFO略有不同,下面的参数适用于两者。,用参数FIFO_data_size表示,也就是FIFO存储的数据宽度;,用参

2022-06-04 22:17:39 9568 4

原创 【FPGA】UART串口通信

这一章我们需要理解串行通信,并行通信两种方式。并理清UART串口通信的整个模块设计,然后依次编写发送模块,接收模块定义:串行通信是指利用一条传输线将数据一位位地顺序传送。(也就是说串行通信传输的数据是1比特1比特的传送的)串行通信又称为点对点通信,对于点对点之间的通信根据数据的同步方式,又分为 异步通信 和 同步通信 两种方式根据数据的传输方向与时间关系,又可分为:①单工通信、②半双工通信及③全双工通信三种方式。1.同步通信同步通信一般有一个同步时钟,如下图,一根数据线,一根时钟线。一个时钟传输一

2022-06-01 20:56:28 5995 1

原创 【FPGA】数码管电子时钟(可设置时间和闹钟)

目录前言一丶需求分析1.设置时间2.设置闹钟二丶工程源码1.counter2.seg_driver3.key_debounce4.beep5.顶层模块三丶模块原理图四丶管脚信息五丶上板验证六丶源码前言本次实验内容承接上一篇文章数码管电子时钟,在此基础上新增两个功能:1.设置时间2.设置闹钟,到点响铃一丶需求分析模块:beep counter seg_driver top其中:1.设置时间2.设置闹钟,到点响铃这两个功能都整合在counter模块,里面设置的重要信号如下所示

2022-05-30 23:16:12 11338 11

原创 【FPGA】数码管电子时钟

目录一丶数码管介绍二丶任务描述三丶系统框图四丶模块调用五丶模块原理图六丶工程源码1.计数器模块2.数码管驱动模块3.顶层模块七丶仿真测试1.TestBench2.仿真结果八丶管脚信息九丶上板验证十丶源码一丶数码管介绍Cyclone IV开发板上的数码管一共有6个,我们每次只能选择其中一个显示,怎么解决电子时钟时、分、秒同时显示呢?要实现电子时钟首先要了解什么是余晖效应。余晖效应一般指视觉暂留。 视觉暂留现象即视觉暂停现象(Persistence of vision,Visual staying phe

2022-05-24 17:14:20 6739 2

原创 【FPGA】如何理解全加器

目录一丶什么是全加器二丶1位全加器的Verilog实现三丶深层解析sum及cout表达式的逻辑一丶什么是全加器半加器比较容易理解,它的电路指对两个输入数据位(a、b)相加,输出一个结果位(sum)和进位(cout),但没有计算进位输入的加法器电路。输出表达式相比半加器,全加器是将低位进位输入也代入计算的加法电路,同样输出一个结果位和进位。1位全加器就是计算带进位输入的 1位二进制数的加法电路,多个一位全加器进行级联可以得到多位全加器。这里我们来理解一下低位进位和本位加法进位对照真值表:

2022-05-23 12:53:48 10400 4

原创 【FPGA】锁存器、触发器和寄存器

目录一丶锁存器1.什么是锁存器2.锁存器工作原理3.锁存器优缺点二丶触发器1.什么时触发器2.触发器工作原理3.代码实现三丶寄存器四丶锁存器与触发器的区别一丶锁存器1.什么是锁存器锁存器(latch)—对脉冲电平敏感,在时钟脉冲的电平作用下改变状态锁存器是电平触发的存储单元,数据存储的动作取决于输入时钟(或者使能)信号的电平值,当锁存器处于使能状态时,输出才会随着数据输入发生变化。(简单地说,它有两个输入,分别是一个有效信号E,一个输入数据信号D,它有一个输出Q,它的功能就是在E有效的时候把D的值

2022-05-22 22:46:20 6829

原创 【FPGA】按键消抖

目录一丶按键原理二丶按键消抖三丶消抖方式1.延迟采样①任务描述②编写代码③时序图分析④仿真2.抖动稳定后采样①任务描述②编写代码③时序图分析④仿真四丶消抖场景五丶消抖应用一丶按键原理我们首先来看原理图可以看到有4条输入线接到FPGA的IO口(最左边四个KEY)上,分两种情况:1.当按键KEY1按下时,D3V3(也就是电源)通过电阻R(原理图上折线的那一段)然后再通过按键KEY1最终进入GND形成一条通路,那么这条线路的全部电压都加到了R这个电阻上,KEY1(最左边四个IO口)这个引脚就是个低电平。

2022-05-22 13:31:15 10397 1

原创 【FPGA】状态机实验

#123

2022-05-12 08:31:24 1516

原创 数字电路基础与Quartus-II入门【作业2】

目录一、Quartus II 13.1的安装及使用1.Quartus II的安装2.Quartus II的注册二、实验:1位全加器设计1.新建工程2.新建原理图文件3.将设计项目设置成可调用的元件4.半加器仿真5.设计全加器顶层文件6.引脚绑定及硬件下载测试。7.引脚绑定三、参考文献一、Quartus II 13.1的安装及使用1.Quartus II的安装这里借用学姐的图片,安装包太大了,之前自己已经安装了①打开已经下载好的安装包②选择I accept the agreement,然后点击N

2022-03-15 19:16:44 1728

原创 校车管理系统【JSP + Servlet + HTML + CSS + JavaScript + Bootstrap + Jquery】

目录一、任务需求二、系统处理流程三、系统实现1.登录注册2.管理员3.普通用户4.增5.删6.改四、重要代码一、任务需求1.本系统的用户分为两类,普通用户和管理员。其中管理员可以对校车,学院,司机,用户进行增删改查的操作;普通用户只可以查看学院,车辆,司机的信息。2.设置四个表用户,学院,车辆,司机 用户属性:用户名,密码,权限级别 学院属性:学员编号,学院名称 车辆属性:车辆编号,发车时间,所属学院编号 司机属性:工号,姓名,性别,年龄,所在车辆编号3.四个表的信息都可以增删改查二、系统处理

2022-01-17 19:55:28 1600 4

原创 基于Springboot+Netty实现Web聊天室【网络通信编程】

目录一、IDEA创建项目二、编写代码三、运行程序四、参考文献一、IDEA创建项目在IDEA中创建一个Spring框架的项目JDK版本选择8(也就是1.8)二、编写代码DemoApplication.Javapackage com.example.demo;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplicati

2022-01-17 19:20:21 371

原创 基于RTT Nano的多任务嵌入式程序设计【嵌入式】

目录一、CubeMX创建项目1.添加RT-Thread操作系统组件2.配置项目二、创建任务三、运行结果四、参考文献一、CubeMX创建项目1.添加RT-Thread操作系统组件获取RT-Thread Nano软件包链接:https://www.rt-thread.org/download/cube/RealThread.RT-Thread.pdsc打开CubeMX:2.配置项目开发板选择STM32F103C8T6设置引脚PA3,PA4为GPIO_Output,用来点亮LED设置S

2022-01-17 18:38:18 3168

原创 Python人脸笑脸识别【人工智能】【CNN】

目录一、图片预处理二、划分数据集三、CNN提取人脸识别笑脸和非笑脸1.导入路径2.创建模型3.归一化处理一、图片预处理准备好我们所需要的数据首先打开数据集,将人脸检测出来并对图片进行裁剪import dlib # 人脸识别的库dlibimport numpy as np # 数据处理的库numpyimport cv2 # 图像处理的库OpenCvimport os# dlib预测器detector = dlib.get_frontal_face_detector()predic

2022-01-17 15:19:47 4913 1

原创 基于SVM算法的人脸表情识别【人工智能】

目录一、一、

2021-12-25 19:39:26 1133

原创 数字图像与机器视觉基础补充2【人工智能】

目录一、将彩色图像文件转换为灰度文件1.使用opencv2.不使用opencv二、图像格式转换1.将彩色图像(RGB)转为HSV 格式2.将彩色图像(RGB)转为HSI 格式三、利用opencv进行车牌数字分割四、参考文献一、将彩色图像文件转换为灰度文件1.使用opencv实现代码:import cv2 as cv# 路径为英文image = cv.imread('58a0507e5583a1291368eeb5.png')# 将图片转为灰度图gray_image = cv.cvtCol

2021-12-24 21:40:49 302

原创 使用Selenium爬取动态网页信息【网络通信编程】

目录一、Selenium简介1.原理2.安装二、网页自动化测试1.打开浏览器并访问百度2.爬取动态网页的名人名言3.爬取京东图书三、参考文献一、Selenium简介1.原理Selenium 是一个 Web 应用的自动化框架。通过它,我们可以写出自动化程序,像人一样在浏览器里操作web界面。 比如点击界面按钮,在文本框中输入文字 等操作。而且还能从web界面获取信息。 比如获取12306票务信息,招聘网站职位信息,财经网站股票价格信息 等等,然后用程序进行分析处理。Selenium 的自动化原理是

2021-12-17 16:31:16 2358

原创 数字图像与机器视觉基础补充(1)【人工智能】

目录一级目录一级目录

2021-12-10 21:38:21 275

原创 基于STM32的OLED显示屏显示数据【嵌入式】

目录一、SPI(串行外设接口)1.SPI协议简介2.SPI物理层3.SPI基本通讯过程二、使用0.96寸OLED显示屏显示数据三、结果四、参考文献一、SPI(串行外设接口)1.SPI协议简介SPI协议是由摩托罗拉公司提出的通讯协议(Serial PeripheralInterface),即串行外围设备接口,是一种高速全双工的通信总线。它被广泛地使用在ADC、LCD等设备与MCU间,要求通讯速率较高的场合。2.SPI物理层SPI通讯设备之间的常用连接方式见图SS( Slave Selec

2021-11-26 23:10:40 1296

原创 游戏客户端编程【网络通信编程】

目录一、创建项目二、窗体设计1.连接服务器并接收数据2.客户端发送数据到服务器3.播放背景音乐4.定时自动更换游戏背景图片任务说明: 编写一个网游客户端,游戏服务器的校园内网IP地址为 10.1.230.74,端口为3900,采用TCP连接。1)连接成功后,可以将服务器发来的消息不停地显示在 listbox 中;客户端要发给服务器的数据,通过 textbox输入 或者点击button;能够播放背景音乐;每隔30秒,变换一次游戏背景图片。一、创建项目使用VS2019新建一个w

2021-11-26 17:17:29 2498

原创 stm32通过I2C接口实现温湿度(AHT20)的采集【嵌入式】

目录一、I2C原理1.I2C简介2.I2C物理层3.软件I2C4.硬件I2C二、代码实现三、编译运行一、I2C原理1.I2C简介IIC(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。在 CPU 与被控 IC 之间、IC 与 IC 之间进行双向传送,高速 IIC 总线一般可达 400kbps 以上。PS:

2021-11-26 15:46:35 3668

原创 C#实现端口扫描器【网络通信编程】

目录一、创建项目1.创建项目2.界面设计二、单线程实现端口扫描三、多线程实现端口扫描四、运行对比五、参考文献一、创建项目1.创建项目打开Visual Studio新建一个Windows窗体项目应用(.Net Framework)2.界面设计二、单线程实现端口扫描代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Draw

2021-11-24 19:13:41 509

原创 C#利用套接字实现数据发送【网络通信编程】

目录一、UDP介绍1.Socket2.TCP3.UDP二、控制台程序使用 UDP 通信1.控制台输出hello world2.使用UDP在室友电脑输出hello world3.利用Wireshark抓包分析三、Form窗口程序使用 TCP 通信1.创建项目2.设计图形界面3.代码编写4.程序运行5.利用Wireshark抓包分析四、参考文献一、UDP介绍这部分总结来源于:HarrietLH C#利用套接字实现数据发送1.Socket套接字是支持TCP/IP协议的网络通信的基本操作单元。可以将套接字看

2021-11-24 17:17:39 2470

原创 Wireshark网络抓包疯狂聊天程序【网络通信编程】

目录一、疯狂聊天环境配置二、使用wireshark进行抓包三、分析抓包四、参考文献一、疯狂聊天环境配置在启动疯狂聊天程序时,两台电脑必须连接同一个wifi才能通信。 并且,win10有个内置防火墙,默认是开启的,要关掉它,疯狂聊天程序才能正常发现目标。 网络适配器中需要禁用这几项,否则无法双向通信此时两台电脑都打开疯狂聊天程序发送消息测试连接成功二、使用wireshark进行抓包在wireshark中输入筛选ip.dst==255.255.255.255进行过滤这里发现此程序是通过UDP

2021-11-19 16:00:58 457

原创 网络爬虫之入门练习【网络通信编程】

目录一、爬取南阳理工学院ACM题目网站的信息1.代码2.网页分析3.运行程序爬取文件二、爬取重庆交通大学新闻网站的信息1.代码2.网页分析3.运行程序爬取文件三、总结四、参考文献网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做。一、爬取南阳理工学院ACM题目网站的信息1.代码import requestsfrom bs4 import BeautifulSoup

2021-11-19 14:34:36 561

原创 人脸识别数据集【人工智能】

目录一、人脸特征提取二、获取每个人68个特征数据并保存到csv中三、参考链接环境:pycharm专业版python3.8dlib19.19.0一、人脸特征提取人脸数据集①使用摄像头采集(视频流截图)采集的过程,最好使用同一设备同一光线下进行采集import cv2import dlibimport osimport sysimport random# 存储位置output_dir = 'D:/mypicture/picture/'size = 64if not os

2021-11-18 22:56:51 413

原创 使用LibSVM实现决策函数训练【人工智能】

目录一、下载LibSVM二、使用LibSVM工具准备数据三、训练模型并写出决策函数的数学公式四、参考文献一、下载LibSVMLibSVM官网下载完成解压后得到文件目录如下:之后选择对应语言的代码:(这里我用的JAVA)创建一个项目,添加一个Test类,项目目录结构如下:二、使用LibSVM工具准备数据选择windows文件夹,找到名为svm-toy.exe的运行程序并运行手动绘制数据集的点:最后点击Save将数据保存为train.txt。在原有基础上再次添加一点数据,保存为test.t

2021-11-18 22:09:49 712

原创 点阵汉字的字模读取与显示【嵌入式】

这里写目录标题一级目录二级目录三级目录一级目录二级目录三级目录

2021-11-12 23:08:58 362

原创 SVM深入理解【人工智能】

目录一、SVM算法二、基于SVM处理月亮数据集分类1. 基于线性核函数2. 基于多项式核3. 基于高斯核三、重做例子代码四、参考文献一、SVM算法支持向量机(Support Vector Machine,常简称为SVM)是一种监督式学习的方法,可广泛地应用于统计分类以及回归分析。它是将向量映射到一个更高维的空间里,在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两边建有两个互相平行的超平面,分隔超平面使两个平行超平面的距离最大化。假定平行超平面间的距离或差距越大,分类器的总误差越小。二

2021-11-12 19:26:40 1515

原创 Python之人脸特征提取【人工智能】

一、环境说明二、win10安装opencv和dlib1.使用命令查看当前python版本为3.8python --version[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传2.使用命令安装opencv pip3 install opencv_python3.搜索对应版本的dlib文件下载好后用命令在适合的位置进行安装python3.8的链接:https://pan.baidu.com/s/1kLn0uEqO5xinuTMZzk3fFA提取码:kh99pyt

2021-11-12 19:06:14 5393 1

原创 STM32中断与DMA通信编程【嵌入式】

目录一、DMA二、在CubeMX上创建项目1.设置RCC2.设置USART13.使能串口中断4.下载项目三、烧录运行四、参考文献一、DMADMA传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。我们知道CPU有转移数据、计算、控制程序转移等很多功能,系统运作的核心就是CPU,CPU无时不刻的在处理着大量的事务,但有些事情却没有那么重要,比方说数据的复制和存储数据,如果我们把这部分的CPU资源拿出来,让CPU去处理其他的复杂计算事务,是不是能够更

2021-11-08 19:43:29 98

原创 网络抓包与HTTP协议【网络通信编程】

一、HTTP协议1.HTTP是什么?HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型,是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在之上的一种应用。HTTP连接最显著的特点是:客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。2.HTTP协议如何使用TCP连接模拟TCP/HTTP关系的就是:电话/人,先连接

2021-11-08 19:38:07 1987

原创 网络抓包与HTTP协议【网络通信编程】

这里写目录标题一级目录二级目录三级目录一级目录二级目录三级目录

2021-11-06 22:36:19 1562

原创 线性判别准则与线性分类编程实践【人工智能】

目录一、LDA原理1.LDA的基本思想2.瑞利商和广义瑞利商3.二分类LDA原理4.多分类LDA原理5.LDA算法流程6.小结二、线性分类算法三、算法代码实现1.python编程实现2.对月亮数据集进行SVM分类四、参考文献一、LDA原理1.LDA的基本思想LDA是一种监督学习的降维技术,也就是说它的数据集的每个样本是有类别输出的。这点和PCA不同。PCA是不考虑样本类别输出的无监督降维技术。LDA的思想可以用一句话概括,就是“投影后类内方差最小,类间方差最大”。什么意思呢? 我们要将数据在低维度上进

2021-11-04 16:27:10 514

原创 多元线性回归算法预测房价【人工智能】

目录一、理论知识二、回归效果的显著性检验三、基于机器学习的线性回归与梯度下降四、使用EXCEL进行数据分析五、使用SPSS进行数据分析六、房价预测一、理论知识一元线性回归是分析只有一个自变量(自变量x和因变量y)线性相关关系的方法。一元线性回归分析的数学模型为:y = a+bx+ε。使用偏差平方和分别对参数a和参数b求偏导,可以得到线性模型的未知参数a、b的最小二乘估计值,其中,偏差平方和定义为∑(yi-a-bXi)2,a和b的唯一解如图所示。参数的最小二乘估计为了方便回归效果显著性检验,根据b

2021-11-02 22:06:14 2548

空空如也

空空如也

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

TA关注的人

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