自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 soc操作流水灯

soc实现流水灯

2022-07-19 20:49:55 322 1

原创 嵌入式Linux(树莓派)环境设置及应用

树莓派远程登录操作

2022-06-22 21:53:29 394

原创 基于FPGA的VGA协议实现

基于FPGA实现VGA协议输出彩条,点阵,图片。

2022-06-07 19:49:35 379

原创 状态机专题练习

目录第一题第二题第一题根据以下描述功能用verilog编写一段代码,并用状态机来实现该功能。(1)状态机:实现一个测试过程,该过程包括启动准备状态、启动测试、停止测试、查询测试结果、显示测试结果、测试结束返回初始化6个状态;用时间来控制该过程,90秒内完成该过程;(2)描述状态跳转时间;(3)编码实现。代码module six_state ( //90s内六个状态切换 input wire clk, //时钟,50M input

2022-05-11 20:16:38 212

原创 Quartus II三种方式实现D触发器

目录一、D触发器原理二、D触发器的设计三、调用D触发器并仿真四、用Verilog语言实现D触发器五、总结六、参考链接一、D触发器原理D触发器是一个具有记忆功能的,具有两个稳定状态的信息存储器件,是构成多种时序电路的最基本逻辑单元,也是数字逻辑电路中一种重要的单元电路。功能表方程时序图二、D触发器的设计新建项目点击next选择芯片系列与类型nextfinish添加文件添加器件4个nand2与非门,2个not非门,2个

2022-03-15 21:52:40 1606

原创 modelsim安装与使用

目录一、安装二、使用三、参考链接一、安装运行安装程序选择安装位置等待安装过程,时间有点久完成(key driver的安装请求需要选择no)破解参考:【FPGA——工具篇】:Modelsim SE-64 10.4下载、破解、安装过程二、使用手动仿真新建项目添加存在文件新建文件代码`timescale 1ns/1ns // 定义仿真时间单位1ns和仿真时间精度为1ns module flow_led_tb(); // 测试模块

2022-03-15 14:02:28 1589 3

原创 Quartus13安装与使用

目录一、安装二、使用三、参考链接一、安装运行安装包点击NEXT点击finish选择OK勾选此项破解参考:该博客二、使用新建项目此页为添加已有文件,本次不用选择直接next选择芯片系列以及型号选择第三方软件,本次不做选择工程详细信息,直接finish创建工程顶层文件输入代码module flow_led( input sys_clk , //系统时钟 input sys_rst_n, //系统复位,低电

2022-03-15 08:59:16 2535

原创 人脸识别微笑检测(基于卷积神经网络CNN)

目录一、实验环境搭建二、图片预处理三、划分数据集四、CNN提取人脸识别笑脸和非笑脸五、Dlib提取人脸特征识别笑脸和非笑脸一、实验环境搭建pip install tensorflowpip install keraspip install h5py二、图片预处理打开微笑图片数据集将人脸检测出来并对图片进行裁剪import dlib # 人脸识别的库dlibimport numpy as np # 数据处理的库numpyimport cv2

2022-01-15 14:04:32 3074 3

原创 STM32+W5500网络通信

目录一.理论概述二.TCP数据通信三.STM32+W5500+modbus协议编程四.STM32+W5500的web服务五.参考链接

2021-12-28 08:55:58 2222

原创 RT-thread Nano在stm32f103上的移植

目录一.CubeMX添加RT-Thread操作系统组件二.CubeMX新建工程三.创建任务四.参考链接

2021-12-26 10:16:58 611

原创 AD原理图设计与Clion源码工具学习

目录一.使用Altium Designer软件完成STM32+W5500的系统电路原理图设计二.使用Clion完成STM32F103点亮LED三.参考链接

2021-12-26 09:04:11 222

原创 人脸表情识别

目录一、训练思路二、代码三、总结四、参考资料一、训练思路得到模型1、opencv读取数据集2、dlib人脸检测器定位人脸3、获取每张图片的HOG特征向量组4、利用SVM进行训练5、得出模型并保存使用模型1、读取模型,读取照片或者打开摄像头进行实时检测将每一帧或者图片的HOG特征值提取出来并预测得出结果并显示出来二、代码导包# 导入包import numpy as npimport cv2import dlibimport random#构建随机测试集和

2021-12-14 22:10:58 3346

原创 基于python学习opencv

目录一、学习资料二、Section11、basic_functions.py2、contours.py3、draw.py4、read.py5、thresh.py6、transformations.py三、总结一、学习资料OpenCV with Python in 4 Hours-course-master 提取码:c7a6二、Section1引入包:import cv2 as cvimport numpy as np1、basic_functions.py# 读取图片img = cv.i

2021-12-13 20:11:32 238

原创 图片颜色空间转换与切割

目录一、将彩色图片转换为灰度图片二、将彩色图片(RGB)转换为HSV、HSI格式三、切割车牌四、总结五、参考资料一、将彩色图片转换为灰度图片引入包以及文件路径#文件路径#导入相关包import cv2import numpy as npsource_path="F:\\jupyter\\source\\picture\\Lena\\lena.jpg"使用opencv,直接读取为灰度图片#使用opencv#直接读取灰度图片cv_read=cv2.imread(source_p

2021-12-11 10:58:13 2765

原创 数字图像与机器视觉基础补充(1)

目录一、同一张图片不同位深度BMP文件对比二、用奇异值分解对一张图片进行降维处理结果:结果:肉眼看的话是没什么区别的。用电脑自带的画图工具生成256色、16色、单色的位图(BMP)文件单色:16色:

2021-12-10 14:24:17 1775

原创 Keil虚拟仿真逻辑仪和 真实逻辑仪

目录一、Keil仿真二、示波器三、总结四、参考资料一、Keil仿真相关配置:进入调试界面:选择波形分析:添加信号:查看波形RTC时钟:根据波形图可以看出串口以一秒为周期向上位机发送一次数据uCOS:根据波形图可以看出PA5以一秒为周期控制LED灯亮灭,PB1以三秒为周期控制LED灯亮灭,串口以两秒为周期像上位机发送一次数据。在调试uCOS的波形图时遇到了** error 65: access violation at 0xE0001004 : no

2021-12-03 15:35:05 562

原创 基于STM32CubeMX(HAL库)制作RTC时钟

目录一、RTC概述二、建立新项目三、修改代码四、烧录运行五、总结六、参考资料一、RTC概述实时时钟的缩写是RTC(Real_Time Clock)。RTC 是集成电路,通常称为时钟芯片。实时时钟芯片是日常生活中应用最为广泛的消费类电子产品之一。它为人们提供精确的实时时间,或者为电子系统提供精确的时间基准,目前实时时钟芯片大多采用精度较高的晶体振荡器作为时钟源。有些时钟芯片为了在主电源掉电时,还可以工作,需要外加电池供电。硬件结构1) 晶振晶振一般叫做晶体谐振器,是一种机电器件,晶振是石英振

2021-12-03 10:23:40 2005 2

原创 STM32F103C8T6移植uCOS基于HAL库

目录一、使用CubeMX建立STM32HAL库二、下载uCOSIII源码三、移植前的准备四、开始移植五、运行结果六、总结七、参考资料一、使用CubeMX建立STM32HAL库配置RCC配置SYS设置串口USART1设置PA5、PB1为GPIO_Output用于点亮LED灯设置工程在main函数中的while循环里添加语句while (1) { /* USER CODE END WHILE */ /* USER CODE BEGIN 3

2021-11-30 10:22:36 3676

原创 基于AHT20的温湿度采集并用OLED显示

目录一、实现将温湿度采集数据显示到OLED二、烧录运行结果三、总结四、参考链接本篇博客接上一篇:STM32F103完成基于I2C协议的AHT20温湿度传感器数据采集一、实现将温湿度采集数据显示到OLED首先再上一个Demo的基础上需要在如下目录添加文件重写显示温湿度的函数void read_AHT20(void){ uint8_t i; for(i=0; i<6; i++) { readByte[i]=0; } //------------- I2C_Star

2021-11-26 17:10:37 330

原创 0.96寸OLED在STM32f103上实现滚动显示长字符

目录一、OLED屏的滚屏命令二、对需要显示的文字进行取模三、修改程序代码四、烧录运行结果五、总结六、参考文献一、OLED屏的滚屏命令水平左右移OLED_WR_Byte(0x2E,OLED_CMD); //关闭滚动OLED_WR_Byte(0x26,OLED_CMD); //水平向左或者右滚动 26/27OLED_WR_Byte(0x00,OLED_CMD); //虚拟字节OLED_WR_Byte(0x00,OLED_CMD); //起始

2021-11-26 15:52:59 3898

原创 基于STM32的0.96寸OLED显示屏显示数据

目录

2021-11-26 14:55:35 588

原创 STM32F103完成基于I2C协议的AHT20温湿度传感器数据采集

目录

2021-11-24 15:40:45 3089

原创 利用LibSVM工具进行决策树训练

目录

2021-11-19 13:37:47 954

原创 Python实现简单人脸识别

目录一、采集人脸二、采集对应20张图片的68个特征点数组和平均特征数组三、人脸识别四、总结五、参考资料一、采集人脸代码:import cv2import dlibimport osimport sysimport random# 存储位置output_dir = 'F:/my/631907060127'size = 64 if not os.path.exists(output_dir): os.makedirs(output_dir)# 改变图片的亮度与对比度 d

2021-11-13 13:48:47 6418 7

原创 两台电脑间通过串口连接传输文件

目录一、实验要求二、实验工具三、实验过程四、总结五、参考资料一、实验要求串口传输文件的练习。将两台笔记本电脑,借助 usb转rs232 模块和杜邦线,建立起串口连接。然后用串口助手等工具软件(带文件传输功能)将一台笔记本上的一个大文件(图片、视频和压缩包软件)传输到另外一台电脑,预算文件大小、波特率和传输时间三者之间的关系,并对比实际传输时间。二、实验工具两台笔记本,两个ttl转接口,若干接线,串口调试助手。三、实验过程先连接两个ttl,打开串口调试助手,设置串口波特率为115200选择一

2021-11-09 15:30:29 2405

原创 (Ubuntu+opencv+汉字库)实现点阵汉字的字模读取与显示

目录一二三一二#include<iostream>#include<opencv/cv.h>#include"opencv2/opencv.hpp"#include<opencv/cxcore.h>#include<opencv/highgui.h>#include<math.h>using namespace cv;using namespace std;void paint_chinese(Mat&

2021-11-08 23:45:55 407

原创 DMA实现连续向上位机发送数据(STM32开发板)

目录一、DMA概述二、DMA实现连续向上位机发送数据三、总结四、参考资料一、DMA概述DMA(Direct Memory Access,直接存储器访问)是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依赖于CPU 的大量中断负载。否则,CPU需要从来源把每一片段的资料复制到暂存器,然后把它们再次写回到新的地方。在这个时间中,CPU对于其他的工作来说就无法使用。原理:DMA 传输将数据从一个地址空间复制到另外一个地址空间。当CPU 初始化这个传输动作,传输动作本身是由 DMA

2021-11-07 11:09:41 1665

原创 STM32中断实现点灯和串口通信

目录一、STM32中断梗概二、中断模拟开关控制LED灯(HAL库)三、中断实现串口通信四、总结五、参考链接一、STM32中断梗概数据的传输方式中断的概念中断执行过程中断的作用中断的优先级中断向量HAL库的中断外部处理过程二、中断模拟开关控制LED灯(HAL库)新建project选择STM32F103C8芯片配置SYS配置RCC设置GPIOA1为输出引脚设置GPIOB0为中断控制引脚配置GPIO

2021-11-06 22:15:28 451

原创 编程实现人脸特征点标定(python3+opencv3.4+dlib库)

目录一、准备工作1.1、dlib库的安装1.2、opencv的安装二、绘制脸部特征点三、给人脸虚拟P上墨镜四、总结五、参考资料一、准备工作1.1、dlib库的安装下载dlib库的whl文件dlib库(cp37,cp38 提取码:svub)可以先在命令行查看电脑的版本,然后适配版本对应的dlib库。本文用的是python3.8将安装的whl文件放到适合的路径,并将该路径添加到环境变量的path中这里因为我的Python3.8是在安装的Anaconda3中,所以我将dlib库的文件也放在了里面

2021-11-05 20:25:48 433

原创 LDA&SVM编程实践

目录一、LDA&SVM概述1.1、LDA概述1.2、SVM概述二、编程实践(python)2.1、LDA2.2、SVM2.2.1、月亮数据集2.2.2、鸢尾花数据集三、总结四、参考资料一、LDA&SVM概述1.1、LDA概述1.2、SVM概述二、编程实践(python)2.1、LDA2.2、SVM2.2.1、月亮数据集2.2.1.1、线性SVM2.2.1.2、多项式核2.2.1.3、高斯核2.2.2、鸢尾花数据集三、总结四、参考资料...

2021-11-04 23:27:37 235

原创 决策树挑出好西瓜

目录一级目录二级目录三级目录一级目录二级目录三级目录

2021-10-31 22:03:02 213

原创 Python实现多元线性回归算法预测房价

目录一、多元线性回归二、使用excel预估房价三、python实现预估房价(借助sklearn库)三、基于统计分析库statsmodels进行线性回归四、结果分析五、参考资料一、多元线性回归社会经济现象的变化往往受到多个因素的影响,因此,一般要进行多元回归分析,我们把包括两个或两个以上自变量的回归称为多元线性回归 。多元线性回归的基本原理和基本计算过程与一元线性回归相同,但由于自变量个数多,计算相当麻烦,一般在实际中应用时都要借助统计软件。这里只介绍多元线性回归的一些基本问题。但由于各个自变量的单

2021-10-26 07:42:06 6158 2

原创 STM32串口通信输出Hello Window

目录一、准备工作1、UART简介2、实验原理二、创建项目三级目录一、准备工作1、UART简介通用同步/异步接收器/发送器(USART)是一种外围通信硬件设备,它使计算机可以与串行连接的设备进行同步和异步通信。USART通过串行端口和RS 232标准化协议提供串行数据通信。USART也称为串行通信接口(SCI)。USART通过从中央处理单元(CPU)接收并行数据,将其转换为串行数据以传输到串行端口/连接来工作。 同样,它从串行连接/端口接收串行数据,将其转换为并行数据,然后将其发送到CPU。 U

2021-10-24 15:36:19 670

原创 使用STMCubeMX生成代码实现点亮流水灯

目录一、安装STM32cubeMX二、用STM32CubeMX初始化代码三、修改代码并点亮流水灯四、运行结果五、参考资料一、安装STM32cubeMX安装地址:STM32Cube初始化代码生成器下载好之后打开,点击Next同意协议,继续Next勾选第一个就好,点击Next选择一个安装路径,点击确定,之后Next点击Next之后点击安装,安装完成如下图安装完成之后还没完,打开STM32CubeMX,点击Help(这里可能会打不开,如果打不开

2021-10-24 09:40:25 2263

原创 STM32F103C8T6之用寄存器点亮LED流水灯

目录一、准备工作1、什么是STM32芯片?2、GPIO相关的寄存器二、GPIO输出的操作1、初始化GPIO2、设置低电平三、创建项目1、新建项目2、编写代码四、连接电路一、准备工作1、什么是STM32芯片?STM32,从字面上来理解,ST 是意法半导体,M 是 Microelectronics 的缩写,32 表示32 位,合起来理解,STM32 就是指 ST 公司开发的 32 位微控制器。在如今的 32 位控制器当中,STM32 可以说是最璀璨的新星,它受宠若娇,大受工程师和市场的青睐,无芯能出其右。

2021-10-19 23:55:17 2203

原创 Keil下STM32的C语言与汇编语言混合编程

目录一、创建项目并进行调试二、C语言调用汇编函数1、无参调用2、有参调用三、汇编函数调用C语言四、总结五、参考资料一、创建项目并进行调试1、创建project输入project的名字,这里我输入的Func。选择芯片类型,这里我选择的是STM32F103VE。(ps:图片是后面调试的时候在魔法棒页面截的,我做的时候忘记截图了。)一些基本配置,按照图片所示选择就好。2、添加main.c和Func.s文件3、编写代码main.c: `# include<stdio.

2021-10-13 09:23:07 311

原创 Ubuntu16.04下的Opencv安装与使用

目录一、ubantu16.04安装opencv-3.4.1二、编写一个打开图片进行特效显示的代码 test1.cpp三、练习使用opencv库编写打开摄像头压缩视频的程序。1)、虚拟机获取主机摄像头权限2)、播放视频一、ubantu16.04安装opencv-3.4.1在官网下载source版本的opencv。下载成功之后另存到home目录。解压压缩包unzip opencv-3.4.1.zip进入到解压后的文件包cd opencv-3.4.1安装依赖库和cmake ,如

2021-10-10 17:41:08 1949 1

原创 GCC编译器背后的故事

目录1、准备工作2、将源文件 test.c 文件预处理生成 test.i3、将预处理生成的 test.i 文件编译生成汇编程序 test.s4、将编译生成的 test.s 文件汇编生成目标文件 test.o5、使用动态库进行链接,生成的 ELF 可执行文件的大小和链接的动态库6、使 用 静 态 库 进 行 链 接 , 生成的 ELF 可执行文件的大小和链接的动态库7、使用 readelf -S 查看其各个 section 的信息8、使用 objdump -D 对其进行反汇编1、准备工作编写一个简单的程序

2021-10-09 20:12:21 50

原创 练习静态库.a文件与动态库.so文件的生成与使用

目录一、扩写程序二、静态库.a文件的生成与使用三、共享库.so文件的生成与使用接上篇博文Ubuntu16.04系统中分别使用gcc与makefile编译C语言程序。一、扩写程序程序一:sub2.h#ifndef __SUB1_H#define __SUB1_H#include "stdio.h"float x2y(int a,int b);#endif程序二:sub2.cinclude "sub2.h"float x2y(int a,int b){ floa

2021-10-08 20:21:44 203

原创 静态库.a与.so文件的生成与使用(练习)

目录编写例子程序1.静态库.a文件的生成与使用2.共享库.so文件的生成与使用编写例子程序程序一:A1.c#include <stdio.h> void print1(int arg){ printf("A1 print arg:%d\n",arg); }程序二:A2.c#include <stdio.h> void print2(char *arg){ printf("A2 printf arg:%s\n", arg); }程序三:A.h#ifnd

2021-10-08 15:37:29 380

空空如也

空空如也

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

TA关注的人

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