- 博客(40)
- 收藏
- 关注
原创 基于FPGA的VGA字符显示
VGA是什么1.VGA(Video Graphics Array),视频图形阵列,是一种视频传输标准,具有分辨率高、显示速度快、颜色丰富等优点,不支持音频传输。2.VGA显示原理VGA的数据引脚1、2、3(RED、GREEN、BLUE)输入的不是简单的0、1数字信号,而是模拟电压(0V-0.714V)。当引脚具有不同的电压时,VGA显示器显示不同的颜色。VGA是一种D型接口,采用非对称分布连接方式,共有15针,分三排,每排5个孔。在15个管脚中,其中比较重要的是3根RGB彩色分量信号和2根扫描同
2022-07-11 21:46:56
817
1
原创 【无标题】
一.安装点击“next”勾选“I accept the agrement”,然后点击“next”3.选择安装位置4.选择安装的内容5.点击“next”6.等待安装
2022-03-15 21:55:08
139
原创 uc/os3多任务与实时日历
uc/os3多任务与实时日历目录uc/os3多任务与实时日历一、将uc/OS移植到stm32F103上1.建立HAL库2.移植1.准备2.移植3.结果二、STM32的日历读取、设置和输出。1.背景1.RTC定义2.发展历史3.硬件结构4.RTC特征5.RTC寄存器2.STM32CubeMX配置3.Keil三、波形1.Keil逻辑仪输出电平和串口通信的波形2.SaleaeLogic16真实逻辑仪四、总结五、参考文献
2022-01-15 16:47:13
369
原创 基于I2C/SPI的温湿度采集与OLED显示
基于I2C/SPI的温湿度采集与OLED显示嵌入式第10-11周作业目录基于I2C/SPI的温湿度采集与OLED显示一、I2C总线通信协议1.I2C协议简介2.什么是“软件I2C”和“硬件I2C”3.硬件II2C和软件I2C有什么区别二、温湿度传感器的数据采集并通过串口输出三、OLED屏显和点阵编码原理1.OLED的定义和优势2.OLED模块显存已经显示原理3.点阵编码原理4.SPI协议四、OLED屏显示例1.显示姓名学号2.滚动显示3.OLED显示温
2022-01-15 16:26:59
381
原创 点阵汉字的字模读取与显示
点阵汉字的字模读取与显示目录点阵汉字的字模读取与显示一、串口传输文件二、点阵汉字的字模读取与显示1.汉字的机内码、区位码编码规则和字形数据存储格式汉字机内码定义区位码定义2.点阵字库结构点阵字库结构16*16点阵字库14*14与12*12点阵字库3.汉字点阵获取利用区位码获取汉字利用汉字机内码获取汉字三、Ubuntu下调用opencv库编程显示图片和学号姓名四、总结五、参考文献一、串口传输文件这个实验需要用到两台笔记本电脑,两个tt
2022-01-14 22:43:44
309
原创 STM32中断与DMA通信编程
STM32中断与DMA通信编程嵌入式第8周作业学习stm32中断、DMA通信原理和编程方法。使用stm32tubemx和HAL库分别完成以下编程练习:1. 用stm32F103核心板的GPIOA端一管脚接一个LED,GPIOB端口一引脚接一个开关(用杜邦线模拟代替)。采用中断模式编程,当开关接高电平时,LED亮灯;接低电平时,LED灭灯。2. 采用串口中断方式重做上周的串口通信作业。3. STM32采用串口DMA方式,用115200bps或更高速率向上位机连续发送数据。目录STM32中断
2022-01-14 22:40:28
261
原创 搭建并配置Keil
搭建并配置Keil嵌入式开发环境,完成一个基于STM32汇编程序的编写。嵌入式系统作业1目录搭建并配置Keil嵌入式开发环境,完成一个基于STM32汇编程序的编写。准备编写程序并调试分析1.新建工程2.代码编写3.程序调试总结参考资料准备安装并配置KEIL1)在官网下载KEIL安装包。https://www.keil.com/download/product/.安装教程参考博客https://blog.csdn.net/dengjin20104042056/ar
2022-01-14 21:07:18
138
原创 串口通信小试牛刀
串口通信小试牛刀目录串口通信小试牛刀一、串口通信协议:RS-2321.串口通信协议2. RS-2323.RS232电平与TTL电平的区别4.USB/TTL转232模块(以CH340芯片模块为例)的工作原理1.模块介绍2.模块用途3.硬件设计二、stm32CubeMX的安装1.配置环境变量2.安装STM32CubeMX3.初始化代码4.修改代码并点亮流水灯三、STM32的USART串口通讯程序1.USART介绍2.USART配置:3.汇编实现
2022-01-14 20:53:56
2562
原创 STM32F103寄存器方式点亮LED流水灯
STM32F103寄存器方式点亮LED流水灯1、学习和理解STM32F103系列芯片的地址映射和寄存器映射原理;了解GPIO端口的初始化设置三步骤(时钟配置、输入输出模式设置、最大速率设置)。 2、以 STM32最小系统核心板(STM32F103C8T6)+面板板+3只红绿蓝LED 搭建电路,使用GPIOB、GPIOC、GPIOD这3个端口控制LED灯(最高时钟2Mhz),轮流闪烁,间隔时长1秒。 1)写出程序设计思路,包括GPIOx端口的各寄存器地址和详细参数; 2)分别用汇编语言,C语言编程实现。目
2022-01-14 19:35:09
2658
原创 GCC背后的故事&OpenCV相识何必曾相逢
GCC背后的故事&OpenCV相识何必曾相逢嵌入式系统基础第四周作业目录GCC背后的故事&OpenCV相识何必曾相逢一、 学习并掌握可执行程序的编译、组装过程。1.阅读、理解和学习材料“用gcc生成静态库和动态库.pdf”和“静态库.a与.so库文件的生成与使用.pdf”,请在Linux系统(Ubuntu)下如实仿做一遍。2.在第一次作业的程序代码基础进行改编,除了x2x函数之外,再扩展写一个x2y函数(功能自定),main函数代码将调用x2x和x2y ;将这3个函数分别
2022-01-14 19:15:41
1828
原创 搭建并配置Keil嵌入式开发环境
搭建并配置Keil嵌入式开发环境,完成一个基于STM32汇编程序的编写。目录搭建并配置Keil嵌入式开发环境,完成一个基于STM32汇编程序的编写。准备编写程序并调试分析1.新建工程2.代码编写3.程序调试总结参考资料准备安装并配置KEIL1)在官网下载KEIL安装包。https://www.keil.com/download/product/.安装教程参考博客https://blog.csdn.net/dengjin20104042056/article/det
2022-01-14 18:49:17
238
1
原创 数字图像与机器视觉基础补充(1)
文章目录一.比较不同位深度BMP文件二、将原图colorful的PNG文件分别转换为BMP,JPG,GIF 比较大小三、用奇异只分解对图片进行降维处理四、采用图像的开闭运算,检测出2个样本图像中硬币、细胞的个数1、硬币2、 细胞五.采用图像梯度、开闭、轮廓运算等,对图片中的条形码进行定位提取;再调用条码库获得条码字符六、总结七、参考一.比较不同位深度BMP文件从网页上下载一张彩色图片,查看该图片信息,显示位深度24通过电脑画图程序和PS软件,分别将该图片保存为 32位、
2022-01-06 17:24:19
99
原创 基于IO、NIO、Netty的TCP网络聊天程序
目录一、IO实现TCP聊天程序1. IO简介2. IO实现网络程序3. 运行测试二、NIO实现TCP聊天程序1. NIO简介2. NIO实现网络程序3. 运行测试三、Netty实现TCP聊天程序1. Netty简介2. Netty实现网络程序3. 运行测试四、总结五、参考一、IO实现TCP聊天程序1. IO简介服务端阻塞点server.accept();获取套接字的时候inputStream.read(bytes);输入流读取数据的时候
2022-01-05 15:15:49
83
原创 游戏客户端编程
目录一、NetworkStream网络流介绍二、连接服务器三、客户端向服务器发送数据四、实现背景音乐的播放功能五、实现游戏背景变换六、总结七、参考一、NetworkStream网络流介绍NetworkStream常用的属性和方法属性或方法解释CanRead流是否支持读取,可以从流中读取数据,返回为trueDataAvailable看读取的流上是否有可用的数据,常用来判断流是否还有数据Read(byte[] buffer,int offset,int
2022-01-05 15:11:01
57
原创 HTTP协议与Wireshark网络抓包
这里写目录标题一、HTTP协议1. HTTP简介2. HTTP工作原理3. HTTP消息结构二、Wireshark1. Wireshark简介2. Wireshark工作流程三、抓包验证四、总结五、参考一、HTTP协议1. HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web)服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议
2022-01-05 15:05:45
379
原创 【IDEA】IDEA配置GitHub并上传项目
目录一、Git的安装与验证二、上传文件至GitHub1.在IDEA中设置Git2.登录GitHub账号3.上传项目4.GitHub上检验是否上传成功三、更新项目四、项目版本回溯五、总结六、参考一、Git的安装与验证1.git官方下载地址:https://git-scm.com/downloads2.检验下载是否成功,在自己电脑的开始菜单里找到Git,打开Git Bash 命令窗口行若无异常不闪退即算安装成功。3.安装完成之后还需要最后一步配置,有关你的姓名和邮箱
2022-01-05 15:02:43
257
原创 【IDEA】使用JDBC连接MySQL 数据库并查询数据
目录一、MySQL的下载与安装1.官网下载2.安装3.MySQL环境变量配置4.测试是否配置成功二、Java MySQL连接1.下载驱动包2.导入工程3.创建数据库4.连接数据库参考一、MySQL的下载与安装1.官网下载MySQL的版本分为多种,一般我们下载的是社区版本的(社区版是开源的,免费的),建议去官网下载.官网地址:https://dev.mysql.com/downloads/mysql/点击红框,进入安装包下载界面选择好需要下载的版本后,
2022-01-05 14:55:09
1091
原创 【人脸识别】基于HOG特征、SVM算法实现微笑识别
【机器学习】机器学习之支持向量机(SVM)21/100发布文章weixin_45937995未选择文件new目录一、HOG特征提取原理二、代码实现三、总结四、参考一、HOG特征提取原理HOG特征提取流程可分为5个部分:检测窗口、归一化图像、计算梯度、统计直方图、梯度直方图归一化、得到HOG特征向量。检测窗口: HOG通过窗口(window)和块(block)将图像进行分割。通过以细胞(cell)为单位,对图像某一区域的像素值进行数学计算处理。在此先介绍窗口(window
2022-01-05 14:34:23
459
原创 【机器学习】机器学习之支持向量机(SVM)
目录一、支持向量机(Support Vector Machine)介绍1. 支持向量机基本型2. 核函数3. 常用核函数二、基于SVM处理月亮数据集分类1. 基于线性核函数2. 基于多项式核3. 基于高斯核三、基于SVM处理鸢尾花数据集分类1. 基于线性核2. 基于多项式核3. 基于高斯核四、总结五、参考一、支持向量机(Support Vector Machine)介绍支持向量机(Support Vector Machine,常简称为SVM)是一种
2022-01-05 14:22:12
458
原创 【机器学习】机器学习之线性判别分析(LDA)
目录一、线性判别分析介绍二、线性判别分析原理1. 类内散度矩阵(within-class scatter matrix)2. 类间散度矩阵(between-class scatter matrix)3. 广义瑞利商(generalized Rayleigh quotiet)三、sklearn库实现线性判别分析LDA四、总结五、参考一、线性判别分析介绍线性判别分析(Linear Discriminant Analysis,简称 L D A LDA LDA)是一种经典的线性学习方
2022-01-05 14:17:45
885
原创 【机器学习】机器学习之决策树(基于ID3、CART挑选西瓜)
目录一、决策树介绍1. 基本流程2. 选择划分因素(1)信息熵(information entropy)(2)信息增益 (information gain)(3)增益率(gain ratio)(4)基尼指数(Gini index)二、实现基于信息增益准则(ID3)的决策树1. 数据样本处理2. 代码实现(1)建立决策树(2)绘制决策树3. 结果分析三、使用Sklearn库实现决策树1. 基于信息增益准则( I D 3 ID3 ID3或 C
2022-01-05 14:15:11
1672
1
原创 【机器学习】机器学习之一元线性回归
目录一、多元线性回归基础理论二、案例分析三、数据预处理1.错误数据清洗2.非数值型数据转换四、使用Excel实现回归1.回归实现2.回归分析五、使用代码实现回归1. 数据预处理2. 使用Statsmodels建立多元线性回归模型3. 使用Sklearn库建立多元线性回归模型4. 模型优化六、总结七、参考一、多元线性回归基础理论在研究现实问题时,因变量的变化往往受几个重要因素的影响,此时就需要用两个或两个以上的影响因素作为自变量来解释因变量的变化,
2022-01-05 13:57:46
414
转载 Email-FTP-RTSP协议实践研究
目录一、RT-thread Nano移植二、基于 CubeMX 移植 RT-Thread Nano三、添加 RT-Thread Nano 到工程1. 选择 Nano 组件2. 配置 Nano3. 中断与异常处理四、创建任务五、总结六、参考一、RT-thread Nano移植RT-Thread Nano 是一个极简版的硬实时内核,它是由 C 语言开发,采用面向对象的编程思维,具有良好的代码风格,是一款可裁剪的、抢占式实时多任务的 RTOS。其内存资源占用极小,功能包括任务处理
2022-01-04 19:55:37
197
转载 Email-FTP-RTSP协议实践研究
目录一、Email协议介绍及应用1. SMTP协议2. POP3协议3. IMAP协议4. Email协议简单应用二、FTP协议介绍与应用1. FTP协议简介2. 应用三、RTSP协议介绍与应用1. RTSP协议介绍2.MMS协议介绍3.使用VLC软件保存视频4. 使用fiddler下载视频四、总结五、参考一、Email协议介绍及应用Email涉及SMTP、POP3、IMAP协议。1. SMTP协议SMTP是一种提供可靠且有效的电子邮件传输的
2022-01-04 19:42:54
322
转载 AD绘制电路图AND Clion完成点灯实验
一、AD绘制stm32f103c8t6和w5500系统电路原理图二、Clion编写点灯程序三、总结四、参考一、AD绘制stm32f103c8t6和w5500系统电路原理图AD18下载教程如下https://blog.csdn.net/weixin_42014622/article/details/83721000stm32f103c8t6元件库下载https://pan.baidu.com/s/1j8TW4BbuEHMBATg7ZncSTw提取码:1234AD18操.
2022-01-04 19:17:41
230
原创 [dlib]建立人脸数据集+完成人脸识别
一.采集20张人脸特征图像import cv2import dlibimport osimport sysimport random# 存储位置output_dir = 'D:/mypicture/picture/'size = 64if not os.path.exists(output_dir): os.makedirs(output_dir)# 改变图片的亮度与对比度def relight(img, light=1, bias=0): w = img.s
2021-11-23 16:58:48
152
原创 人脸特征提取
文章目录一.安装Dlib库二.安装Opencv三.代码准备一.安装Dlib库二.安装Opencv三.代码准备1.实时采集人脸、保存并绘制68个特征点import numpy as npimport cv2import dlibimport osimport sysimport random# 存储位置output_dir = './faces'size = 64 if not os.path.exists(output_dir): os.makedirs(output_
2021-11-17 22:47:07
10160
原创 JDBC连接MySQL数据库并查询数据
文章目录一.MySQL安装二.MySQL数据库连接一.MySQL安装二.MySQL数据库连接1.下载驱动包前往官网地址:https://dev.mysql.com/downloads/connector/j/模式切换为Platform Independent,第一个下载链接是tar.gz格式用于unix的操作系统;而zip格式用于windows的操作系统2.导入工程中打开Intellij IDEA,建立一个Java工程,选择File->Project Structure中选择Mod
2021-10-23 19:22:17
45
原创 计算机网络作业
R1:主机和端系统之间哟苏很么不同?列举几种不同类型的端系统。Web服务器是一种端系统吗?主机和端系统没什么不同,两者可以互换使用。端系统包括:PC,工作站,web服务器等。web服务器是一种端系统。R2:“协议”一次常用于外交关系,微基百科是怎样描述外交协议的?维基百科:外交礼仪通常被描述为一套国际礼仪礼貌规则。这些久经考验的规则使它变得更容易国家和人民要共同生活和工作。协议的一部分一直是承认所有在场人员的等级地位。协议规则是基于基于文明的原则。R3:标准相当于协议为什么重要?标准对于协议非常重
2021-10-08 14:00:57
11082
1
原创 Spring boot使用postman建立的Restful接口
这里写自定义目录标题1.(一)工作原理(二)1.如何处理Get请求?Get请求用于从指定的URL获取信息,不会对端点做任何修改。例如:url地址为`https://localhost:8080/me/count网页内容:使用Get指令得到的内容和网页内容一致2.如何处理post请求?GET通常作用于从数据库中读取数据;而POST则是将数据提交/更新于数据库中。步骤1,2,3前面都有提到步骤4 切换为Body选项步骤5 选中raw步骤6 选择JSON步骤7 ) 复制前面GE
2021-09-20 21:47:34
112
原创 第一个Springboot程序—helloworld
TOC](创建一个helloweb程序)创建一个新的项目点击next后,出现错误:无法下载:“https:start.spring.io:连接超时”。Error message:Cannot download ‘https://start.spring.io:connect timed out’解决方法:方法一:修改url为:“http://start.spring.io”方法二:修改url为阿里云地址:“https://start.aliyun.com/”3.选择JDK84.选
2021-09-20 19:38:31
69
原创 ubuntu下使用gcc和Makefile执行c程序
(一)用gcc直接编译c程序1.编写c程序1.1 我喜欢先用vim 创建一个文件:vim+文件名,随便输入内容 ESC+:+wq 保存退出,即可在可视化文件夹里找到刚刚创建的文件1.2右键点击open with gedit,编写内容1.3 用cat+文件名的方式查看文件内容,sub1.c就创建好啦同理main1.c 和sub1.o如下在这里插入图片描述2.gcc的使用原理参考博客(二)使用Makefile运行1....
2021-09-16 13:05:07
520
原创 IDEA环境搭建和Spring入门
安装JDK8,IDEA环境安装环境(还没搞懂)(一)Java类型的Helloworld文件1.创建过程1.1创建java类型的project文件File->New->Project2.选择文件类型为java,如要用到web网页,则勾选;此处什么都不用勾选3.勾选后系统会自动在src里下载com.company包4.填写项目名称和存储地址5.在src里创建包,名称为packageA6.在包新建类,分别为helloWrorld,Main2.代码展示2.1 类helloWorl
2021-09-12 19:08:18
96
原创 css的总结
一.css语法1.class与id选择器:id 选择器适用范围只有一个元素,而class可以有多个元素。二.盒子模型1.内容cotent:盒子的内容,如文本、图片等2.内边距padding:即内容和边框之间的区域。例如:padding-left,padding-right,padding-top,padding-bottom.(简写默认顺时针方向)3.边框border:默认不显示4.外边距margin:边框以外与其它元素的区域三.定位1.relative:相对定位,元素.
2021-06-20 20:31:12
46
原创 HTML的总结
空元素:只有一个开始标签。 < br > : 换行 < hr >:水平分割线 <input>:输入框 <img>:图片 <a>: 超链接 元素的属性 <p title="这是个title属性">鼠标移上来试试</p> 超链接 文本超链接 &...
2021-06-20 19:19:18
54
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人