自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (2)
  • 收藏
  • 关注

原创 Deep_Learning_readme

首先进行环境的安装,推荐安装Anaconda,Anaconda中包含了conda等180多个科学包及其依赖项。其中conda则是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。torch安装完成后,我们按照A1-1的步骤将其导入Jupyter Notebook运行即可。由于部分同学电脑没有显卡,且各个同学系统也不一致,因此大家根据需求安装GPU 或CPU版本即可。在第五章节,推荐使用5.2 离线安装,而不是在线安装,否则会出现一些bug。

2024-03-22 23:27:36 1621

原创 CER基础知识

语境信息不仅包括当前的物理环境(比如地点、时间、周围的人和事物),还包括对话历史(之前的对话内容)、参与者之间的关系(比如他们是朋友、同事还是陌生人)、社会文化背景(一些特定的文化习俗或者语言用法)等等。

2024-03-18 16:59:56 407

原创 MIMO容量

MIMO信道容量确定性MIMO的信道容量未完待续确定性MIMO的信道容量我们主要讨论确定性信道的容量,并且假设一个3x3的MIMO系统,信道每个接收支路的平均信噪比从0到30dB,依次间隔5dB,计算发射机无信道信息时的容量。下图为主要代码:H=[-0.0688-j*1.1472 -0.9618-j*0.2878 -0.4980+j*0.5124 -0.5991-j*1.0372 0.5142+j*0.4967 0.6176+j*0.9287 0.2119+j*0.4111 1

2022-04-28 14:49:14 486

原创 全国大学生FPGA创新设计竞赛:FPGA—相位干涉仪测向算法

1.项目总体及相位干涉仪测向概述根据调查发现,对于一些特定信号的快速精准定位一直是世界性难题。不仅仅是对某些会给国家和社会带来严重安全威胁的非法信号的定位跟踪,还可能是对紧急情况下的搜求信号的精确定位。相位干涉仪测向算法顾名思义是利用无线电信号到达测向天线的相位信息来进行测向的,这种算法不受信号强度衰减的影响,与振幅法相比具有更高的测向精度,但是一维单基线相位干涉仪测向算法可能会产生对称模糊,会具有多个定位角度。本项目信号源的产生采用自研的以Artix7核心板为主控并集成AD9361的硬件平台实现,由

2022-04-06 22:02:59 6638 16

原创 git clone 时出现 Failed to connect to github.com port 443: Timed out

这里写目录标题1.问题描述2.如何解决1.问题描述我们来避下坑,今天在git时出现了如下错误:fatal: unable to access ‘https://github.com/ecsoya/fabric-demo.git/’: Failed to connect to github.com port 443: Timed out随后我又git在gittee上面的资源,发现并不会报错了。因此很可能是服务器ip的问题2.如何解决1.首先打开 ipaddress.com 网站,查询以下网址对应

2021-12-18 16:36:09 362

原创 viviado报错 Unable to load Tcl app xilinx::xsim

当 $HOME/.Xilinx/Vivado/2014.3/XilinxTclStore 目录中缺少 support 和/或 tclapp 目录时,可能会出现此问题。在 TCL 商店中运行以下命令并重新启动 Vivadotclapp::reset_tclstore亲测有效

2021-09-08 20:45:40 1886 5

原创 verilog流水完成数据的乘法

使用流水完成数据的乘法,仿真通过。原理就是和竖式运算一样的。module matrix_mul( input wire clk, input wire [3:0]mul_a, input wire [3:0]mul_b, output reg [7:0]mul_out );reg [7:0]en1;reg [7:0]en2;reg [7:0]en3;reg [7:0]en4; reg [7:0]add1;reg [7:0]add2;a

2021-09-03 16:30:08 193

原创 详解Ubuntu文件的结构

首先我们知道,linux系统文件结构和windows系统文件结构不同之处在于,linux系统文件统一挂载在根目录下的,而windows系统的文件是分磁盘挂载的。windows下通常分C盘D盘E盘等,C盘称系统盘用于存储windows系统,D盘个人习惯是软件盘,用于安装软件,E盘用于存储个人文件。即windows是分结点挂载的,通常一个良好的存储模式对以后的文件维护具有很大的帮助。linux系统文件统一挂载在一个结点下,即根目录结点。其目录结构为树状,从根结点以此往下进行延伸。文件结构如下图所示:下面

2021-08-18 17:05:48 625

原创 linux常用命令

接下来我将为大家详细说明linux下常用的命令。喜欢的朋友可以收藏。1 ls目录信息查看命令该命令会显示当前目录下的文件1.1 ls -a显示目录所有文件及文件夹,包括隐藏文件,比如以.开头的。1.2 ls -l显示目录下文件及文件夹的大小、创建日期等信息。2 cd目录切换命令2.1 cd / 进入linux的根目录2.2 cd /…/XXX/ 进入XXX目录下3 pwd当前路径显示命令4 uname系统信息查看命令5 clear清屏命令(并未实际清除)6 cat显

2021-08-18 14:49:18 70

原创 FPGA实现BP神经网络-原理

FPGA实现BP神经网络激活函数1.神经网络激励函数的选择和实现方法下面将介绍BP神经网络常用的激活函数。1.1 简单线性函数神经元功能函数 f 连续取值,输入 x 由连接矩阵 W 加权产生输出,如图:1.2 Sigmid函数神经元的输出限制在[-1 :+1]之间的连续非减函数,此时称为双极性Sigmoid函数;同理,当此函数最小值向上平移1个单位长度后,神经元的输出限制在[0 :+1]之间的连续非减函数,此时成为单极性Sigmoid函数。我们生活中默认的S函数指的就是双极性Sigmoid

2021-06-16 23:18:39 5181 4

原创 感知机及Sigmoid函数

第1章使用神经网络识别手写数字神经网络和深度学习这本书是关于什么的关于练习和问题使用神经网络识别手写数字反向传播算法的工作原理改进神经网络的学习方式神经网络可以计算任何函数的视觉证明为什么深度神经网络难以训练?深度学习附录:有没有简单的智能算法?致谢经常问的问题如果您从这本书中受益,请捐款。我建议 5 美元,但您可以选择金额。PayPal - 更安全、更简单的在线支付方式!或者,您可以通过向我发送比特币来捐款,地址为1Kd6tXH5SDAmiFb49J9hknG5pqj7KSt

2021-06-06 22:12:35 1359 1

原创 学习硬件的态度和方式

态度和方式,不止是学习和创作。买东西也是一样的。包括我那个学生在内的很多人都觉得,初学者嘛,先买个便宜的,一两百块钱的板子学一学,等我学的不错了,再去买好一点的。可惜,事情总不像大家想象的那么好。我们静下来好好想一想,为什么我们会有先买个便宜的板子学一学,这种想法呢,我们的这种想法是怎么来的呢。大多数人有这个想法,他背后的逻辑是什么?他背后的逻辑就是,反正这个板子才100多块钱,很便宜啊,就算学不会,也不可惜,就当扔了呗。你们想想是不是这个逻辑,凡是带着这种想法的人,能走得远嘛,可能很难吧,因为你给自己留了

2021-05-30 21:18:24 131

原创 verilog_阻塞赋值与非阻塞赋值

verilog_阻塞赋值与非阻塞赋值阻塞赋值的赋值号用“=”表示。为什么称这种赋值方式为阻塞赋值呢?因为对应的电路结构往往与触发沿没有关系,只与输入电平的变化有关系。阻塞赋值的操作可以认为是只有一个步骤的操作,即计算赋值号右边的语句并更新赋值号左边的语句,此时不允许有来自任何其他Verilog语句的干扰,直到现行的赋值完成时刻,即把当前赋值号右边的值赋值给左边的时刻完成后,它才允许下一条的赋值语句的执行。串行块(begin-end)中的各条阻塞型过程赋值语句将以它们在顺序块后的排列次序依次执行。阻塞型过程

2021-05-23 19:57:26 1156

原创 Verilog中条件编译命令 `ifdef、`else、`endif 用法

(1)`ifdef宏名(标识符)程序段1 `else 程序段2 `endif它的作用是当宏名已经被定义过(此处需要采用 ``define 命令定义),则对程序段1进行编译,程序段2将被忽略;否则编译程序段2,程序段1将被忽落。其中`else部分可以没有,即:(2)`ifdef宏名(标识符) 程序段1`endif这里的“宏名”是一个Verilog HDL 的标识符,“程序段”可以是Verilog HDL语句组,也可以是命令行。这些命令可以出现在源程序的任何地方。

2021-05-10 10:29:44 897

转载 $readmemb和$readmemh在verilog用法

菜鸟一枚,只是分享一下在学习的过程,和这两个系统函数的简单用法,readmemb和readmemb和readmemb和readmemh用来从文件中读取数据到存储器中。读取的内容只包括:空白位置(空格、换行、制表格(tab和form-feeds),注释行、二进制或十六进制的数字。数字中不能包含位宽说明和格式说明,其中readmemb要求每个数字是二进制数,readmemh要求每个数字必须是十六进制数字。数字中不定值x或X,高阻值z或Z,和下划线(_)的使用方法和代表意义与一般Verilog HDL程序中

2021-05-10 09:00:48 1122

原创 FPGA_点亮led

今天我们开始学习了FPGA,FPGA与单片机最大的区别在于单片机编程不需要考虑硬件,而FPGA的编程必须要对代码进行思考,因为最终我们的代码都会生成实际的电路。FPGA设计流程分为以下九个步骤,刚开始我们需要严格按照步骤来做,切忌眼高手低。这样等熟悉了之后才能提高开发速度。在设计的过程中发现任何一步有错误都必须回到上一步骤进行解决。点亮LED首先我们建议工程体系(路径&文件名不能出现中文)。工程目录下应包含doc(数据手册)、vivado_prj(仿真&源代码等文件)。实验目的:

2021-05-05 13:12:02 446

原创 数字滤波技术总结

本文目录数字滤波技术简介限幅滤波中值滤波算法算术平均滤波数字滤波技术简介所谓数字滤波,就是通过一定的计算或判断程序减少干扰在有用信号中的比重。故实质上它是一种程序滤波。在单片机进行数据采集时,会遇到数据的随机误差,随机误差是由随机干扰引起的,其特点是在相同条件下测量同一量时,其大小和符号会现无规则的变化而无法预测,但多次测量的结果符合统计规律。为克服随机干扰引起的误差,硬件上可采用滤波技术,软件上可采用软件算法实现数字滤波。滤波算法往往是系统测控算法的一个重要组成部分,实时性很强。采用数字滤波算法克

2021-04-22 22:41:18 2916

原创 Keil5_setup教程(ARM+C51)

解压完成后首先运行MDK531.EXE,点击Next。同意协议并点击Next选择Core和Pack的安装路径。一般来说Core安装在X:/Keil_v5,Pack安装在X:/Keil_v5/Arm/Packs,其中X不能为系统盘(一般为C盘)注:安装路径中不能有中文。然后点击Next。4. 个人信息四个选项中,各输入一个空格即可。然后点击Next。开始安装,请耐心等待。取消勾选。点击Finish退出安装。在新打开的窗口中点击OK。然后关闭Pack Insta..

2021-03-04 23:18:28 5870 3

原创 MATLAB_神经网络做数据拟合预测

目录简介各种网络模型分析及matlab实现BPElmanRBFGRNN分析比较简介1.本次我们将以25M晶振的温度频偏曲线数据为基础,进行神经网络的搭建学习,最后消除绝大部分频差。见下图,蓝色区域是有可能达到的偏差,我们通过学习来给一个相应的调整量使其尽量回到0频偏。本次仿真的输入有两个特征:温度和频偏;输出的为调整量。以下为采集到的大样本数据:%输入训练向量p,注意必须使p,t矩正列相等其中每列表示一个样本,行数表示总样本数p=[-20 -19.5 -19 -18.5 -18 -17.5 -17

2021-01-30 13:40:00 8942 4

原创 github_vscode项目管理

#1.准备步骤vscode的下载。首先 https://github.com/ 这是GitHub的官方网站,在官网上可以注册属于自己的GitHub账号,网上是全英文的,对于英语不好的同学建议使用谷歌浏览器,谷歌浏览器可以翻译网页变为中文使用起来十分方便;通过简单的步骤之后你就会有一个属于自己的GitHub账号。再简单注册完成之后会需要验证你所输入的邮箱才能正常使用你的GitHub。在登陆自己的GitHub账号之后,在网页右上角的小加号是用来创建自己的库的按钮,第一个框是自己为自己的库起一个名字,第二

2021-01-05 19:10:42 468

原创 如何优雅地提问

如何优雅地提问在各个地方提问时, 大家会发现有几个现象:提问题后没人回答提的问题过了很久才有人回答对方老是嫌弃自己太菜问问题前,确认自己已经学习了 入门指南本文档的 入门指南 章节, 是使用 MaixPy 的基础中的基础, 不管你是否有过开发经验,是大佬还是小白, 请务必从前到后完整阅读并操作一遍。很多问题会在这个过程中解决, 切忌一开始就到 QQ群、论坛 、issue, 或者邮件随便提问, 很多在文档中一开始就说明了的问题可能不会得到社区的及时的回答, 节省大家的时间,也为了更好的社

2020-12-08 23:42:30 436

原创 github--pr 详细步骤

Pr?大概意思就是:有一个仓库,叫Repo A。你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Github账号下有了一个Repo A2,。然后你在这个A2下工作,Commit,push等。然后你希望原始仓库Repo A合并你的工作,你可以在Github上发起一个Pull Request,意思是请求Repo A的所有者从你的A2合并分支。如果被审核通过并正式合并,这样你就为项目A做贡献了。首先你需要一个github账号,所有还没有的话先去注册吧!https://github.com/我们

2020-12-07 17:04:01 4245

原创 stm32代码移植to-txr

PS:st官方文件如stm32f10x_gpio.c,.h以及stm32f10x_usart.c,.h和我们自己写的结构相似(st前缀的文件切记不能改,除了stm32f10x_it.c(中断相关,具体后面讲)),c是函数定义,h是函数声明,一般先去h里面找对应函数(一般在末尾),然后右击(如果拿到的是别人写好的,就直接右击函数go to def看定义)。开始移植1.改引脚。先看引脚是否是重定义功能,如图,如果是需要调用重定义函数(具体去stm32f10x_gpio.h(因为是GPIO相关的,所以在这个

2020-10-04 22:29:04 227 1

原创 stm32-GPIO模式配置

GPIO 8 种工作模式如下:1 GPIO_Mode_AIN = 0x0, // 模拟输入(模拟电信号,保持原始样)2 GPIO_Mode_IN_FLOATING = 0x04, // 浮空输入(降低功耗)3 GPIO_Mode_IPD = 0x28, // 下拉输入(控制默认电平,增强输出驱动能力,抗干扰)4 GPIO_Mode_IPU = 0x48, // 上拉输入(同下拉)5 GPIO_Mode_Out_OD = 0x14, // 开漏输出(只能输出0,若想输出高电平由外部上拉电压决定)6

2020-08-16 16:02:19 1498

原创 stm32中断系统

在处理器中,中断是一个过程,即CPU在正常执行程序的过程中,遇到外部或者内部的紧急事件需要去处理,必须暂停当前处理事件,转而去为处理更加紧急的事件,待处理完毕后再返回被打断的程序处继续往下执行。例如:当无人机超过了遥控器的控制范围,需要立刻停止其他事件,进行下降事件,这是当下最紧急的事情。一般我们称中断为异常事件。且stm32所有的I/O都可以配置中断。@TOC...

2020-08-08 00:17:16 447

原创 Scripts\pip-script.py‘ is not present.报错

今天更新pip,使用pip install --upgrade pip,然后并没有更新成功,上面的命令是直接把pip或所需的依赖包直接删掉了,所以在用pip下载其他安装包时,出现错误。最终出现Scripts\pip-script.py’ is not present.报错,网上许多人说的是用easy_install pip命令,然而卡在某一处一直不动,因此那种方式并不能完美解决。应该调用easy_install -i https://mirrors.aliyun.com/pypi/simple pip。轻

2020-08-01 22:12:11 2356

原创 python- __slot__特殊变量解析

我们都知道python中的类可以在运行时对其动态添加任意的属性和方法,但是如果我们想要限制其添加某些属性,就可以对类声明一个特殊的变量__slot__,同时我们知道类的属性默认是以字典的形式储存在类中,这无疑会占用很大的内存,所以当我们想优化代码时,就可以在类中声明__slot__特殊变量(元组)。下面以来代码来讲解:# 作用# 限制要添加的实例属性# 节约内存空间class Stu(object):#继承超类 __slots__ = ('name','age','score')#元组类型

2020-07-24 00:06:06 448

原创 python-单例模式详解(__new__)

单例模式在实际的开发中很常见,即每个类有且仅可以生成一个实例对象。例如:电脑的回收站,在系统中只能打开一个回收站,也就是说这个整个系统中只有一个实例,再次调用类进行对象实例化时,生成的依旧是同一个对象,拥有相同的内存地址,相同属性。简单的说就是不管创建多少次对象,类返回的对象都是最初创建的,不会再新建其他对象。下面用python代码进行演示:class DataBaseClass(object): def __new__(cls, *args, **kwargs): # cls._instance=cls

2020-07-23 21:42:39 268

原创 C语言--(初级)学生成绩管理系统

本人通行工程专业,现在主要涉及的方向有单片机和人工智能方向,主要还是硬件方向,如果有相同专业爱好的小伙伴,可以加qq2441860278进行交流!大一生活结束了,写了一个学生成绩管理端来复习C语言的期末考试,其涵盖了本学期所学习的大部分知识点。如果有误,欢迎各位指正。本系统的功能主要有6个,如下图:可以通过菜单栏选择不同的功能。程序每完成一项功能,能够返回起始菜单页去选择其他功能选项。话不多说,直接上代码。#include <stdio.h>#include <stdlib.h

2020-06-17 00:50:23 560

原创 C语言--解析int *p[n]和int (*p)[n]

相信在学C语言的小伙伴都对数组和指针的关系有点迷惑,特别是当两者结合在一起时,今天我就带大家来分析一下C语言中int *p[n]和int (*p)[n]以及int *p()和int (*p)(),帮助大家更好地掌握数组和指针。首先...

2020-06-10 21:47:36 1012

原创 C语言--不引入第三方变量进行数值交换

在C语言的程序中难免会遇到两个数值交换的问题,我们一般是引入第三方变量进行交换。如交换ab的值:main{int a,b;int t;t = a;a = b;b = t;}即可以完成两个数值的交换。但是我们还可以在不引入第三变量即可以进行交换,即使用二进制的按位异或运算(0^0=0 , 1^1=0 , 0^1=1 , 1^0=1)。如下:main{int a = 3,b = 4;//a=00000011;b=00000100a = a^b; //a=0000011

2020-05-11 09:55:18 1428

原创 C语言------------------------char*类型一定是字符串吗

C语言------------------------char*类型一定是字符串吗今天看了翁凯老师的C语言课程——字符串常量,视频中提到了字符串和指针之间的关系。首先,字符串在内存中以数组形式存在,以’\0’结尾。许多书本上都写的是char就是字符串,这种说法并不准确,只有char所指向的地方含有结尾的0,此时char*才是字符串。所以定义字符串我们应该用数组还是指针呢?首先,指针定义的字...

2020-04-12 12:28:48 1901 1

原创 51单片机模拟实现SPI完成串口通信

本文我们拟使用两个51单片机软件模拟实现SPI完成通信,相互接收和发送数据。即在A电脑上发送字符,B电脑上接收到字符,反之相同。MODE1:CPOL=0,CPHA=0:此时空闲态时,SCLK处于低电平,数据采样是在第1个边沿,也就是SCLK由低电平到高电平的跳变,所以数据采样是在上升沿,数据发送是在下降沿。MODE2:CPOL=0,CPHA=1:此时空闲态时,SCLK处于低电平,数据发送是...

2020-03-24 16:47:04 6671 3

原创 C语言----数组元素循环左移m位

今天迈出了第一步,写了自己的第一个博客,如有错误,欢迎大家指出。今天总结了一下循环移位数组中元素m位的方法,我们将其封装成一个函数,向函数中传递两个参数,第一个为数组名,即首元素地址;第二个为移动的位数。//数组元素循环左移m位 #include<stdio.h>#define N 9//数组共N个元素void zuoyi(int *a,int m);//函数声明int ma...

2020-03-23 23:24:57 5727 1

matrix_mul.v

学习FPGA的同学

2021-09-03

MATLAB神经网络原理与实例精解.zip

MATLAB及神经网络学习工作人员或相关研究的学生

2021-01-23

空空如也

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

TA关注的人

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