自定义博客皮肤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)
  • 收藏
  • 关注

原创 51 单片机定时器

原理:可以看到图中的TL0和TL1各占8个bit,时钟源每来一个脉冲,TL0则+1,当TL0计满,则溢出给TH0,两个计数器一共16个bit,则可以计数2的16次方个数,即0~65535,当加到最大值时,就将TF0(TimerFlag)置为1,就申请中断,TL0和TH0置为0。C/T:C为counter(计数器),T为Timer(定时器),字母头上一横指的是,低电平生效,简单地说,此处是一个寄存器,当给这个寄存器配置为 1 时,实现计数器功能,配置为 0 ,实现定时器功能。模式0:13位定时器/计数器。

2023-12-08 19:44:56 332

原创 基于卷积神经网络的猫狗识别

目录一、模型建立1、制作数据集2、图片分类3、统计图片数量4、定义模型5、图像生成器读取文件中数据6、开始训练7、保存模型8、模型评估9、可视化二、根据基准模型进行调整1、图像增强方法2、模型调整三、卷积神经网络的可视化1、导入训练模型,查看模型参数2、模型预处理3、输入一张猫的图像四、参考一、模型建立1、制作数据集原始数据:链接:https://pan.baidu.com/s/1Cahz_6zOlX2voH0TaATLiw提取码:2dgw下载后全部解压到工作目录下之后打开Jupyter。2

2021-06-17 19:35:50 945 2

原创 VGA协议与图像输出

目录一、Verilog的数字秒表1、代码2、结果二、VGA图像1、代码2、结果三、参考一、Verilog的数字秒表1、代码 module biao_v(clk,reset,pause,msh,msl,sh,sl,minh,minl); //其中msh为百分秒的十位,msl为百分秒的个位,sh为秒的十位,sl为秒的个位,minh为分的十位,minl为分的个位 input clk,reset,pause;//时钟,复位,暂停 output [3:0] msh,msl,sh,sl,minh,minl;

2021-05-29 18:33:15 347

原创 HLS编程环境入门

目录一、HLS是什么?与VHDL/Verilog有什么关系?1、HLS是什么?2、与VHDL/Verilog有什么关系?3、HLS包含的阶段二、HLS有哪些关键技术问题?目前存在什么技术局限性?三、参考一、HLS是什么?与VHDL/Verilog有什么关系?1、HLS是什么?HLS(High level Synthesis)就是从高层次描述,之后综合成可用的网表文件的技术。这里的“高”指采用C、C++等编写程序,而不是传统的HDL语言。然而,实际上Vivado套件中是预先采用Vivado HLS这个软

2021-05-28 15:43:27 163

原创 信息熵与压缩编码基础

目录一、什么是信息熵二、举例一、什么是信息熵信息熵: 每个符号所含信息量的统计平均量。信息熵是消除不确定性所需信息量的度量,也即未知事件可能含有的信息量。二、举例一串消息包含A,B,C,D,E共5类符号,其内容是AABBBBAAAACCCCCCCCCEEEEEEDDDDEEEEEEEEEEEEE, 请问其信息熵是多少?如果分别采用香农-凡诺编码,霍夫曼编码,压缩率分别是多少?P(A):6/42P(B):4/42P(C):9/42P(D):4/42P(E):19/42信息熵:H(x

2021-05-27 22:50:52 97

原创 verilog在线练习

目录一、门电路1、与门2、或非门3、同或门二、组合电路1、7420芯片2、二对一多路复用器3、半加器三、时序电路1、D触发器2、同步复位D触发器3、四位二进制计数器一、门电路1、与门代码module top_module( input a, input b, output out );assign out=a&&b;endmodule仿真图2、或非门代码module top_module( input a, inp

2021-04-27 13:30:19 968

原创 FPGA的NIOS-II开发入门

目录一、流水灯显示1、实验原理2、实验步骤(一)硬件部分设计一、流水灯显示1、实验原理控制 LED 灯闪烁的用户程序代码很小,可将其固化在片内 ROM 来执行。变量、堆栈等空间使用片内 RAM,不使用任何片外存储器。整个系统的框图如图 1 所示。从图 1.1 控制 LED 闪烁的系统框图可知,其它逻辑与 Nios II 系统一样可存在于 FPGA中。Nios II 系统可与其它片内逻辑相互作用,取决于整个系统的需要。为了简单起见,本实验在 FPGA 内不包括其它逻辑。2、实验步骤(一)硬

2021-04-24 20:59:50 296

原创 FPGA入门

这里写目录标题基于Quartus-II软件完成一个1位全加器的设计1、半加器设计2、半加器仿真基于Quartus-II软件完成一个1位全加器的设计1、半加器设计1、打开quartusII,新建一个项目2、选择目标芯片:cycloneIVE系列的EP4CE11529C73、新建原理图文件File->new->Block Diagram/Schematic File4、在编辑窗中调入元件,完成半加器的原理图输入5、存盘编译,只要不报错就不用管如下图:将设计项目设置成可调用的元

2021-04-08 17:40:05 150

原创 机器学习数学基础之Python矩阵运算

目录一、什么是梯度下降法?1、什么是微分2、什么是梯度3、梯度下降算法原理(1)批量梯度下降法(2)小批量梯度下降法(3)随机梯度下降法二、梯度下降法的一般求解步骤三、在Excel里用牛顿法、或者梯度下降法求解的近似根四、线性回归问题求解1、最小二乘法2、梯度下降3、比较一、什么是梯度下降法?梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘

2021-04-05 17:14:35 184

原创 Quartus-II入门

目录在 Quartus-II 中自己用门电路设计一个D触发器,并进行仿真,时序波形验证1、创建工程2、创建block Diagram3、编译原理图文件4、创建vwm格式波形文件在 Quartus-II 中自己用门电路设计一个D触发器,并进行仿真,时序波形验证如图:D触发器的结构:1、创建工程1、File->New Project Wizard;2、填写工程名称;3、根据使用的FPGA,进行选择芯片系列及类型,此处使用的是EP4C115F23C7;4、之后一直next,finish。

2021-04-02 19:27:49 1330

原创 线性/非线性规划问题

这里写目录标题一、用Excel完成线性规划问题的求解1、问题描述2、使用Excle实现线性规划二、使用Python编程实现线性规划三、用拉格朗日方法求解,手工求解和编程求解1、题目2、拉格朗日和KKT条件的最优化问题3、利用拉格朗日手工求解问题4、利用拉格朗日编程求解问题四、总结一、用Excel完成线性规划问题的求解1、问题描述现有5个广告投放渠道,分别是日间电视、夜间电视、网络媒体、平面媒体、户外广告,如下表其他限制条件:电视广告至少投放20次(包括日间和夜间);触达用户数(曝光量)不少于

2021-04-01 18:25:31 169

原创 线性分类的Jupyter实践

目录一、准备工作二、实验步骤1、打开命令行**2、取萼片的长宽作为特征进行分类三、小结一、准备工作1、安装Anaconda可以看我上一个博客,也可以直接在这里下载2、下载实验所需的包在创建的虚拟环境中安装自己需要的包。点击Open Terminal之后分别运行下列命令:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpypip install -i https://pypi.tuna.tsinghua.edu.cn/s

2021-03-26 22:25:14 131

原创 ROS通信编程与仿真工具

目录一、工作空间二、ROS通信编程一、工作空间1、创造工作空间创造目录并进入,之后初始化环境。使用下列命令: mkdir -p ~/catkin_ws/src #创建文件夹 cd ~/catkin_ws/src #进入目录 catkin_init_workspace #初始化,使其成为ROS的工作空间2、编译工作空间使用下列命令:catkin_make3、设置环境变量使用下列命令:source /home/wensea/catkin_ws/devel/setup.bash该

2021-03-20 21:49:04 219

原创 数据的回归和分类分析

目录一、线性回归二、线性回归方法的有效性判别三、总结一、线性回归1、父亲-孩子x-y线性回归方程1)、删除重复项2)、之后在数据分析中选择回归,并勾选一下选项3)、结果方程为y=0.2978x+49.15。其中决定系数为1,说明有极高的相关性。如果父亲身高75,孩子身高为71.485英寸同理,母亲的回归方程:方程为y=0.3334x+48.472。其中决定系数为1,说明有极高的相关性。由此可知,“父亲高则儿子高,父亲矮则儿子矮”(即父亲与儿子身高相关,且为正相关)、“母高高一窝,

2021-03-20 15:50:08 974 1

原创 机器人操作系统(ROS)入门

目录一、ROS是什么二、ROS产生、发展和壮大的原因和意义三、实践练习1、安装2、运行四、总结一、ROS是什么ROS是Robot Operating System的缩写,原本是斯坦福大学的一个机器人项目,后来由Willow Garage公司发展,目前由OSRF(Open Source Robotics Foundation, Inc)公司维护的开源项目。1、是一个操作系统也就是说操作系统是用来管理计算机硬件与软件资源,并提供一些公用的服务的系统软件。而ROS也自称是一个OS。同理,ROS则是对机器

2021-03-03 19:05:13 446

原创 基于JSP的学生管理系统

目录一、环境搭建1、Tomcat配置2、JDBC 下载3、eclipse配置二、移植代码三、结果四、参考一、环境搭建本项目使用的是eclipse,需要提前搭建好JAVA配置环境。1、Tomcat配置Tomcat配置2、JDBC 下载JDBC官网3、eclipse配置点这里点这里将之前下载的mysql-connector-java-8.0.22包导入eclipse。二、移植代码将代码使用工程打开。项目下载链接:https://pan.baidu.com/s/1987R6dx202

2021-01-11 16:53:05 1036

原创 STM32的PWM和DAC练习(播放音乐)

目录一、用STM32F103输出一路PWM波形二、DAC练习步骤实作(截图)一、用STM32F103输出一路PWM波形此处使用的是野火自带的示例代码:《32-TIM—通用定时器》—>《2-TIM—通用定时器-4路PWM输出》之后进行下图设置:之后就能仿真了二、DAC练习将一段数字音频歌曲数据转换为模拟音频波形输出(循环)步骤1、截取自己想要一段音乐最好使用WAV格式,如果不是WAV格式需要使用软件将格式更改为WAV格式;2、用UltraEdit和Notepad++编辑这个

2021-01-07 20:32:08 2574 2

原创 HTTP和MQTT初识

目录一、HTTP1、读取指定城市的天气预报信息2、给指定手机号码发送验证码二、MQTT1、服务器搭建2.客户端连接MQTT服务器小结一、HTTP1、读取指定城市的天气预报信息配置好Java环境和IDE,网上方法很多这里就不赘述了。这里我使用的Java版本是JAVA11,IDE是IDEA。代码如下:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io

2021-01-04 21:10:40 306

原创 简单的STM32汇编程序

目录一、简单的汇编程序二、添加文件四、结果分析 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201230205708227.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80ODU0NzQ4OQ==,size_16,color_FFFFFF,t_70)五、用汇编程序完成 每间隔1秒钟闪烁一次

2020-12-30 21:08:06 3367 1

原创 基于SPI/IIC接口的OLED数据显示

目录一、实验工具二、代码三、结果一、实验工具1、OLED屏2、keil5软件二、代码这里使用的lcdwiki的示例代码做修改0.96inch SPI OLED Module1、学号姓名显示//学号显示函数void show_my_num(void) { GUI_ShowString(15,0,"1111111111",16,1);}//姓名显示函数void show_my_name(void){ GUI_ShowCHinese(45,16,16,"wensea",1);

2020-12-27 17:50:30 103

原创 绘制STM32最小系统PCB图

目录Altium Designer 18 安装绘制1.新建工程2.添加文件3.绘制4.结果参考:Altium Designer 18 安装参考:安装方法绘制1.新建工程如图,创建工程。2.添加文件选中需要添加文件的工程,右击后选择下图中的两个。第一个是原理图的文件,第二个是PCB文件。3.绘制按照自己的需求画图。可参考这个视频画图。4.结果参考:参考学习视频...

2020-12-26 20:14:24 82

原创 CPT实验

目录直接连接两台 PC 构建 LAN直接连接两台 PC 构建 LAN将两台 PC 直接连接构成一个网络。注意:直接连接需使用交叉线。进行两台 PC 的基本网络配置,只需要配置 IP 地址即可,然后相互 ping 通即成功。...

2020-12-25 19:01:10 300

原创 Wireshark 实验

Wireshark 实验目录Wireshark 实验1.数据链路层1.数据链路层

2020-12-25 18:54:29 765

原创 I2C协议及AHT20温湿度传感器

目录一、I2C协议二、AHT20温湿度传感器三、结果四、参考一、I2C协议I2C总线是PHLIPS公司在20世纪80年代推出的一种串行总线。具有引脚少,硬件实现简单,可扩展性强的优点。I2C总线的另一优点是支持多主控,总线上任何能够进行发送/接收数据的设备都可以占领总线。当然,任意时间点上只能存在一个主控。  I2C即是一种总线,也是一种通讯协议。在嵌入式开发中,通讯协议可分为两层:物理层和协议层。物理层是数据在物理媒介传输的保障;协议层主要是规定通讯逻辑,同一收发双方的数据打包、解包标准。打个比方,

2020-12-22 21:17:16 1294

原创 网页编写入门

目录一、准备二、制作网页一、准备下载nginx,链接双击.exe文件即可运行。二、制作网页1.创立两个文件,并在文件中分别写入以下代码

2020-12-05 20:21:15 1226

原创 Socket编程实例

目录一、原始套接字编程二、面向连接的流式套接字c/s三、非阻塞的多人聊天服务器IPv4一、原始套接字编程在虚拟机下创建一个Teardrop.c,并输入以下代码#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h>#include <netdb.h>#include <netinet/in.h>#include <net

2020-12-05 18:23:44 881

原创 STM32串口通信的简单实现

目录准备实现准备stm32核心板野火指南者配套例程中21-USART-串口通信kelifireTools实现随意打开野火指南者配套例程中20-USART-串口通信一个keli工程文件,修改stm32f10x_it.c中的中断服务函数修改函数int i=0;int ch;uint8_t ucTemp[20];void DEBUG_USART_IRQHandler(void){ if(USART_GetITStatus(DEBUG_USARTx,USART_IT_RXNE)!=RES

2020-12-05 16:31:52 1932

原创 freeRTOS及多任务创建

目录一、准备二、freeRTOS移植三、创建任务四、参考一、准备1.在freeROTS官网下载freeROTS源码,下载后解压2.新建一个文件夹freeRTOS,将刚才解压文件夹中的 FreeROTS\Source\ 目录下的所有文件复制到新建文件夹中3.将portable/RVDS中的CM3复制到keil文件夹中路径看图。4.将解压的源码文件夹中的FreeRTOS\Demo\CORTEX_stm32f103_keil中的FreeRTOSConfig.h复制到自己新建的文件夹中****

2020-12-04 20:18:10 693

原创 验证性实验

计算机网络验证性实验目录计算机网络验证性实验1.ipconfig2.ping3.tracert4.ARP1.ipconfig使用 ipconfig/all 查看自己计算机的网络配置。2.ping要测试到某计算机连通性,可以使用 ping 命令,也可直接使用 IP 地址。如图,ping百度,字节为ping包的大小,时间为往返的时间,TTL为包的生存时间值,包每转发一次则减一。使用 ping/? 命令了解该命令的各种选项并实际使用。如图,ping命令的所有用法。3.tracert要了解

2020-11-26 12:07:59 653

原创 简单的网游客户端编写(C#)

目录一、设置界面二、实现功能1.连接服务器2.发送信息给服务器3.播放背景音乐4.变换一次游戏背景图片三、结果四、总结一、设置界面使用VS中C#的Windows窗体应用。设计如下界面:二、实现功能1.连接服务器该服务器IP为"10.1.230.41", 端口号为3900。使用如下代码:try { //实例化 tcpClient = new TcpClient(); //向

2020-11-19 23:06:34 308

原创 C#端口扫描器

目录C#端口扫描器单线程多线程总结C#端口扫描器单线程但VS下设计以下界面:其中有一个listbox,5个label,一个progressBar,一个button,三个textBox。然后在Form1.cs下书写以下代码:using System;using System.Windows.Forms;using System.Threading;using System.Net.Sockets;namespace scanAPP{ public partial class

2020-11-19 19:55:34 367

原创 Linux(Ubuntu或树莓派)的远程操作练习

目录一、设置ubuntu1.在虚拟机中将网络模式设置为桥接模式2.配置IP3.检测是否配置好二、使用putty登录Ubuntu1.创建新用户2.运行putty3.win10下使用FTP三、用VNC viewer访问ubantu4.vnc与远程桌面的区别四、树莓派一、设置ubuntu1.在虚拟机中将网络模式设置为桥接模式2.配置IPMAC地址选择自带那个。如上图配置。3.检测是否配置好Ubuntu和主机能够互相ping通,说明配置成功。ps:此处需要打开SSH网上打开SSH的方法很多

2020-11-09 23:31:37 222

原创 STM32嵌入式应用系统设计

目录一、可视化的代码跟踪调试1.安装KDBG2、使用二、Proteus仿真运行stm32程序一、可视化的代码跟踪调试1.安装KDBG使用语句sudo apt-get install kdbg 安装KDBG如图,但在使用时会提示缺少依赖包。ubuntu会给出另一个语句,运行该语句即可。等安装成功之后,在命令行输入kdbg即可运行。如图,即可使用。2、使用导入文件即可。二、Proteus仿真运行stm32程序...

2020-11-08 22:45:18 234 1

原创 C#编程和网络编程入门

目录一、用C#编写一个控制台程序(UDP协议)结果C#编写一个简单的Form窗口程序一、用C#编写一个控制台程序(UDP协议)使用UDP协议时,我们需要有一个服务器,一个客户端,所以我们需要两个VS,一边为Server,一边为Client。Server代码using System;using System.Net;using System.Net.Sockets;using System.Text;class UDPReceive{ static void Main(string

2020-10-31 14:26:02 1387

原创 GDB调试器及使用方法入门+opencv的使用

GDB调试器及使用方法入门目录GDB调试器及使用方法入门GDB的打开方式断点的使用使用命令l/list显示代码和行号总结GDB的打开方式程序要能被调试,必须包含调试信息编译程序时,通过gcc的-g选项为程序添加调试信息,例如:gcc –g –o helloworld helloworld.c在命令行窗口输入以下命令启动GDB:gdb [程序名]启动成功。断点的使用在GDB下我们可以使用断点来排除错误。以下我们使用一个例子来说明本次使用的代码为:#include<stdio

2020-10-28 18:59:00 125

原创 程序是如何借助第三方库函数完成代码设计的

程序是如何借助第三方库函数完成代码设计的目录程序是如何借助第三方库函数完成代码设计的一.光标库(curses)的主要函数功能二.以游客身份体验一下即将绝迹的远古时代的 BBS三.说明头文件和库文件都被安装到哪些目录中四.体会curses库如何被链接和使用一.光标库(curses)的主要函数功能initscr(): initscr()是一般 curses 程式必须先呼叫的函数, 一但这个函数被呼叫之後, 系统将根据终端机的形态并启动 curses 模式.endwin(): curses()通常以呼

2020-10-16 17:53:11 291 1

原创 GCC 编译器背后的故事

GCC 编译器背后的故事目录GCC 编译器背后的故事一.准备工作二.编译过程1.预处理2.编译3.汇编4.链接三.分析 ELF 文件1.ELF 文件的段2.反汇编 ELF用nasm汇编编译器编译生成执行程序1.下载nasm汇编编译器2.使用nasm编译hello.asm文件3.生成可执行文件并执行总结一.准备工作先创建一 个工作目录 test0,然后用文本编辑器生成一个 C 语言编写的简单 Hello.c 程序为示例,其源代码如下所示:#include <stdio.h>int

2020-10-16 16:53:08 155

原创 用gcc生成静态库和动态库

用gcc生成静态库和动态库步骤用gcc生成静态库和动态库1.编辑生成例子程序 hello.h、hello.c 和 main.chello.h代码:hello.c代码main.c代码2.将 hello.c 编译成.o 文件3.由.o 文件创建静态库4.在程序中使用静态库5.由.o 文件创建动态库文件6.在程序中使用动态库下面我们进行以下实操一.使用静态库1.创建函数main1.c代码sub1.c代码:sub2.c代码:2.编译函数并使用ls查看3.使用静态库并查看二.使用动态库1.使用动态库并ls查看2.生

2020-10-16 15:37:22 79

原创 使用cl.exe和link.exe编译运行MFC

使用cl.exe和link.exe编译运行MFC和API程序环境系统为win10IDE 为vs2017一、MFC1.创建一个MFC程序如何创建一个最简单的MFC程序:https://blog.csdn.net/weixin_48547489/article/details/1090789612.配置环境变量1.在桌面右击此电脑->属性->高级系统设置->环境变量->用户变量2.找到Path后,点击编辑3.在自己电脑中搜索cl.exe并将该文件的路径复制粘贴

2020-10-14 21:15:25 274

原创 第一个MFC程序及它的运行流程

第一个MFC程序及它的运行流程步骤1.创建空项目并配置属性属性配置如下,在项目属性中改为以下两项。2.书写代码MyApp.h头文件#pragma once#define _WIN32_WINNT 0x0502 //不写这个会有警告#include <afxwin.h>class MyApp :public CWinApp{public: virtual BOOL InitInstance();};class MyMainWindow :public CF

2020-10-14 17:21:01 643

空空如也

空空如也

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

TA关注的人

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