自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

VCA821的博客

初来报到,请多指教

  • 博客(37)
  • 资源 (9)
  • 收藏
  • 关注

原创 python实战-抽答小软件(老师专属版)

好久没更新了,有段时间没事帮同学做了几个小软件,很简单的所以分享给大家,代码相对比较简单但是并不一定是最优解,可以给大家提供一下思路哈哈,图侵删。工程及软件下载链接:首先上效果图吧!软件名称:Lucky_Dog实现功能:功能十分简单,在一个EXCEL的A列里写下名单(人数不作限制),然后保存后,在软件界面按绿色开始按键后开始抽人,采用的是随机显示和抽取,然后名字会显示到“那个谁”的位置处,功能结束使用软件和库版本:pycharm2019.3+eric6+Qt desi..

2020-11-29 21:39:13 561 1

原创 FPGA实战-麦克风模块控制舵机

最近一直都比较忙,做了一些东西但是没有时间更新博客,这次写个小玩物,也可以说是一个实验,实现效果不错,很适合初学者自己动手做一个。首先先上实物图实验平台:EGO1开发板FPGA型号:xc7a35tcsg324-1代码平台:VIVADO实现功能:按键数码管计数,0-99,麦克风控制舵机旋转,舵机旋转为顺时针180°后迅速转回,每次麦克风收到声音后,舵机会在转与不转中来回切换,...

2019-03-04 20:14:06 2583 5

原创 FPGA实战--等精度频率测量

首先放置效果图: 本次试验中采用的是等精度测频率,等精度测频的原理是产生一个1s的高电平,在高电平中对被测方波进行计数,所测得数字即该波形频率。具体等精度测量原理请参考:http://www.elecfans.com/d/591858.html 注意点:在1s高电平上升沿时,被测信号也需要是上升沿,才能进行准确计数,代码相对简单 ...

2018-12-11 20:19:09 8651 39

原创 STM32循迹避障小车制作代码详解(简单实现版)

写在最前:最近由于需要制作了一个循迹避障小车,制作比较简单但是还是出现了很多bug,因此在博客中记录一下,希望对后期需要制作的能有所帮助,小车由PWM信号+L293D驱动。(二轮驱动,第三轮为自由轮)要求:小车要求循迹避障,有两种避障策略,在循迹黑线上遇到障碍物停车,循迹黑线外遇到障碍物要避障(左转,右转,后退均可),循迹过程中要求不能出黑线之外。循迹原理:(红外探头+信号处理板)红...

2018-11-16 11:29:05 51562 113

原创 FPGA实战-以太网包文

为什么要学包文?1.FPGA最大的应用领域是通信2.以太网领域通常将数据封装成包文格式3.处理的基本单元以太网包文的最简单格式包文的接口表示有哪些data :传输的数据信号;vld   : 传输的有效信号sop  : 有效包文数据的第一个数据eop  : 有效包文数据的最后一个数据err    : 如果包文有误,则拉高,拉高位置在eop位置mty  ...

2018-08-27 15:40:22 3785

原创 FPGA实战-verilog设计规范及要点

以下为建议规范,可以增强代码的阅读性和可观性,并不是强制的规范1.只有三种逻辑电路:组合逻辑,同步复位的时序逻辑电路,异步复位的时序逻辑电路2.一个always只产生一个信号(方便调试,但是可以有多个输入)3.一个信号只能在一个always产生4.always是描述一个信号产生的方法,即在什么情况下,这个信号的值为多少,在其他情况下,值为多少(要考虑全面)5.含有posedge...

2018-08-26 22:29:09 653

原创 VGA解析

VGA(Video Graphics Array)做为视频输出输入接口已经广泛使用很长时间,主要通过红、绿、蓝三原色的模拟量传输。VGA  时序标准   显示器扫描方式从屏幕左上角一点开始,从左向右逐点扫描,每扫描完一行,电子束回到屏幕的左边下一行的起始位置,在这期间,CRT 对电子束进行消隐,每行结束时,用行同步信进行同步;当扫描完所有的行,形成一帧,用场同步信号进行场同步,并使扫描回到...

2018-08-25 00:57:40 1845

原创 FPGA实战-管脚分配相关及设置

根据FPGA的封装不同,不同型号的FPGA的引脚多少和定义都有所区别,那么在工程中,管脚应该如何配置呢?不用的管脚又该如何设置呢?下面来总结一下。FPGA的管脚一般分为两大类:专用管脚(占比20%-30%)和用户自定义管脚(占比70%-80%)根据功能分为时钟,配置,普通IO,电源四种管脚。以下图为例(黑金AX301,EP4CE17C8)不同颜色代表不同bank,三角形为电源管脚(...

2018-08-24 00:51:43 34971 4

原创 FPGA实战-两个D触发器的疑惑

因为去实习,所以最近都没有更新,特来更新一发。最近发现一个问题,就是很多代码中会特地的新建一个D触发器用来锁存信号,让很多人都比较疑惑,明明一个D触发器就可以检测输入是上升沿和下降沿,为什么要用两个?第二个触发器的作用是什么呢?我们举一个最简单的例子,按键的输入控制输出,可以从代码和RTL图中看出不同下面是用一个D触发器的代码(接下面的图是rtl图)`timescale 1ns / ...

2018-08-23 23:52:36 7196 6

原创 硬件笔记-整机调试方法步骤

整机的调试方法步骤大体分为2个部分:1.现象确认这是问题分析的第一步,首先要亲眼看到故障情况,从而获得相关信息2.常见分析方法:(对比法)将故障整机与正常整机对比,发现其中不同的地方(改动的地方),例如线材改动,这种方法能首先判定故障的可能位置,而且故障排除概率比较大。(交叉验证)若是物料并没有什么变化,那么交叉验证也是一个很好的选择,就是将故障整机和正常整机进行器件替换,例如...

2018-07-24 00:09:38 2860 1

原创 硬件笔记-贴片元器件焊接

今天学习了新的焊接方法,也是我目前焊接过得最小得贴片电容和电阻-0402,下面我对自己的焊接心得做一个总结:1.dip封装:不多说了,插过去背部焊接,但是话pcb的时候要注意正反面的问题,可以画完pcb后在3D模式下观察一下看是否正确。还有就是封装的孔类型问题。2.贴片电容电阻:(0805&0603)封装比较大,用尖头烙铁头和刀头都可以,首先讲焊盘一点加上焊锡,用镊子将一端固定...

2018-07-23 23:52:28 2963

转载 PCB布线原则

PCB布局原则1、根据结构图设置板框尺寸,按结构要素布置安装孔、接插件等需要定位的器件,并给这些器件赋予不可移动属性。按工艺设计规范的要求进行尺寸标注。2. 根据结构图和生产加工时所须的夹持边设置印制板的禁止布线区、禁止布局区域。根据某些元件的特殊要求,设置禁止布线区。3. 综合考虑PCB性能和加工的效率选择加工流程。加工工艺的优选顺序为:元件面单面贴装——元件面贴、插混装(元件面插装焊接面贴装一...

2018-07-07 17:03:59 2380

原创 STM32笔记-FM收音机

FM的收音机制作比较简单,只用一个芯片就可以实现,代码也比较简单,芯片选用的RDA5807或者RDA5807M,两者稍有区别,主要在复位方面,RDA5807M少一个vio引脚,无法进行软件复位,在买芯片后厂家会提供51的库代码,我们只需要移植一下就可以使用了,在使用中,我们需要插上耳机插孔作为天线,下面贴上芯片外围和连接MCU的电路和操作的函数代码(比较简单,函数也比较易懂,只需要读懂寄存器就行)...

2018-06-26 00:33:06 5953

原创 FPGA实战--2ASK调制

首先了解一下2FSK的百度百科:ASK即“幅移键控”又称为“振幅键控”,也有称为“开关键控”(通断键控)的,所以又记作OOK信号。ASK是一种相对简单的调制方式。幅移键控(ASK)相当于模拟信号中的调幅,只不过与载频信号相乘的是二进制数码而已。幅移就是把频率、相位作为常量,而把振幅作为变量,信息比特是通过载波的幅度来传递的。本来准备将2ASK和2FSK写到一起,但是我感觉不便于查找,故单独写开,请...

2018-06-22 00:55:29 5919 1

原创 FPGA实战--2FSK调制

首先了解一下2FSK的百度百科:(2ASK请直接看结尾)FSK是信息传输中使用得较早的一种调制方式,它的主要优点是: 实现起来较容易,抗噪声与抗衰减的性能较好。在中低速数据传输中得到了广泛的应用。所谓FSK就是用数字信号去调制载波的频率。如果是采用二进制调制信号,则称为2FSK;采用多进制调制信号,则称为MFSK。l 调制方法:2FSK可看作是两个不同载波频率的ASK已调信号之和。l 解调方法:相...

2018-06-22 00:48:43 19509 37

原创 STM32笔记--SDIO(SD卡读取)

学习这里首先要了解一下SD卡基本资料:SD卡的协议部分太多,也比较复杂,建议资料:《Simplified_Physical_Layer_Spec.pdf》其主要复杂在繁多的命令,一共有64个命令,各个命令代表什么可查资料。我们代码中一般用到的是ARM官方给的SD卡的库,但是库中存在问题,...

2018-06-19 20:10:21 14724

原创 STM32笔记--电源管理

为什么STM32需要电源管理:在很多应用场合,对电子设备的功耗要求非常苛刻。如某些传感器信息采集设备,仅靠小型的电池提供电源,要求工作长达数年之久,且期间不需要任何维护。为此,大多数 MCU 都会提供电源管理单元来切换 MCU 的 运行模式,尽量降低器件的功耗。STM32将片上外设和内核以模块方式管理,如下图所示:(PS : ADC 使用独立的电源供电,以提高转换精度。CPU 核心、存储器及内置数...

2018-06-18 01:03:58 5201 1

原创 ST-Link的internal command error问题的原因及解决方法

今天遇到很奇怪的问题,就是用的好好的ST-link突然不能用了,突然出现这种情况:这是由于stlink无法识别到芯片的情况,通过解决这个问题我找到几个原因和解决方法:1.电压问题电压过大或者过小都会导致ST-link无法识别,就会出现这种情况。这种情况复杂且比较多,所以不列举,如果不是下面的这个问题,那电压(即电路)问题可能会比较大。2.芯片睡眠,停机,待机模式我相信有很多人遇到这个问题,就是之前...

2018-06-18 00:25:23 32099 8

原创 STM32汉字字模制作详解(OLED实战)

之前没有用过OLED来显示汉字,今天心血来潮想做一个RTC的万年历,想着就用OLED来用汉字显示一下,之前想的确实很简单,不就是制作字模然后调用显示嘛!但是今天还是用了很久,原因在于我是真的不知道怎么正确产生字模,最后还是弄出来了,但是在百度过程中没有发现有一个具体的教程,所以自己写一个,来帮助自己记忆和他人使用。首先说我试过的软件:软件1:用起来挺好用,但是博主实在不知道怎么设置,都试了一遍但从...

2018-06-16 00:54:40 21240 4

原创 STM32电子万年历制作详解(RTC实战)

首先附上效果图:博主在重温了STM32的RTC后心血来潮,决定用RTC在做个万年历,其实也不算万年历,就是可以实时显示当前时间,而且大家也都知道,STM32自带的RTC的精度实在让人不好意思说,大概20分钟会有40S的误差,不过对于体验理解还是十分有帮助的,这个作品大概耗时2小时左右(汉字字库生成耗掉我大半精力呀T_T)所以我们一起来记录一下这个作品。但是由于精力有限,所以只写出部分主要问题和易错...

2018-06-16 00:20:10 23759 129

原创 STM32笔记--RTC

今天再一次学习了RTC,只能说自己曾经看的有点走马观花,今天重新学习到了很多,同时自己也心血来潮用几个小时制作了一个STM32+OLED的电子时钟,电子时钟的制作和讲解将写在下个博客里,希望大家多来看和评论。下面我们来看看RTC的定义:RTC 提供了一系列连续工作的计数器,配合适当的软件,具有提供时钟-日历的功能。写入计数器的值可以设置整个系统的时间/日期。以下为RTC的相关函数和函数描述函数名 ...

2018-06-15 23:46:57 829

原创 STM32笔记--DAC(正弦波发生)

     DAC,与ADC相对,是数字量转模拟量,经常用来作为信号发生器,这里DAC一定要详细记录,但其实原理还是相对简单。首先我们看一下DAC的触发源:DAC的触发源有6个定时器的更新时间和一个外部触发,一般外部触发我们用于DAC的直流产生,所以我们这次使用的是定时器触发。DAC的主要特性:(来自官方手册)●2个DAC转换器:1个输出通道对应1个转换器● 8位或者12位单调输出● 12位模式下数...

2018-06-14 20:54:54 29309 15

原创 STM32笔记--呼吸灯

     昨天看了PWM的产生,今天就来尝试一下呼吸灯的制作,如果PWM理解比较透彻的话,呼吸灯的制作就十分简单,原理很简单,就是改变CCR寄存器的值,来按时间输出占空比不同的方波即可,原理十分简单,在这里附上定时器输出PWM的代码和中断函数中的代码(其中呼吸灯有个数组文件需要用matlab生成),在此也不多加赘述。 TIM3_Breathing_Init();void TIM3_Breat...

2018-06-14 19:15:58 1039 1

原创 STM32笔记--定时器(PWM产生)

今天看来定时器这一部分,现在做一下总结,STM32总共分有8个定时器,包括基本定时器,通用定时器和高级定时器,其中基本定时器为TIM6,TIM7;通用定时器为TIM2,TIM3,TIM4,TIM5;高级定时器包括TIM1和TIM8。下面总结三种定时功能:基本定时器:只能定时,只能上升计时,可产生中断,DMA请求和触发内部DAC。通用定时器:可定时,输入捕捉,输出比较,编码器接口,可上下计数,同样可...

2018-06-14 01:18:41 851 1

原创 STM32笔记--SPI通信

相对于上次说的IIC,这次我们来回忆一下SPI,之前并没有过多深入了解SPI协议,所以这次再来记录一下,首先附上资料里的SPI定义:SPI,是英语 Serial Peripheral Interface 的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为 PCB 的布局上节省空间,提供方便,正是出于这种简单易...

2018-06-13 01:36:28 581

原创 STM32笔记--IIC通信

    今天重新看了IIC的通信协议,笔者之前对IIC的具体通信方式十分含糊,使用过的IIC通信器件有lcd1602和oled,因为直接使用的是库函数,所以对IIC的驱动和配置等都很含糊,而且IIC还分硬件与模拟,这次只分析硬件,模拟IIC后续补充。IIC具有引脚少,硬件实现简单的,可拓展性强的特点,现在被广泛使用再IC之间的通信,IIC具有如下特点:1.IIC有两条总线,一条双向串行总线SDL,...

2018-06-12 01:37:06 1574

原创 STM32笔记--液晶显示

     前几天出去了,所以没有更新,今天是一个比较大的方面,就是液晶的显示,液晶显示器的应用为单片机带来了活力,平时我们写单片机,无法得到任何可视的现象,如IO的电平变化等,最简单的人机交互可以说是led灯和数码管灯,但其实说白了,液晶也是数据的传输,只不过是控制了比较小的灯并且以一个极快的速度更新以至于我们以为它并没有变化,由于液晶屏的种类,尺寸繁多,所以本次只讲原理,不再讲具体的液晶,笔者使...

2018-06-06 21:02:26 2306

原创 STM32笔记--ADC(DMA方式)

    在上一次的博客中重新学习了DMA(附上链接:点击打开链接),这次我们便学以致用了,ADC的概念想必大家都是十分清楚了,模拟转数字,可以用在测信号,测电压,在我们的生活中有着十分巨大的作用,这次我们就来看看ADC又有哪些操作吧!       ADC流程,首先ADC采集一个信号(信号范围大都为0-3.3V,ps:3.3V可通过更改Vref寄存器修改),每隔相同时间菜一次数值发送到一个可变16位...

2018-06-01 17:07:39 7590 6

原创 STM32笔记--DMA

DMA是直接存储器存取用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU任何干预,通过DMA数据可以快速地移动。这就节省了CPU的资源来做其他操作。两个DMA控制器有12个通道(DMA1有7个通道,DMA2有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求。还有一个仲裁器来协调各个DMA请求的优先权。(手册官方解释)简而言之就是在使用DMA的时候,CP...

2018-05-30 16:41:35 1196

原创 STM32笔记--串口通信

今天重新学习了串口通信,但总体并没有太大收获,因为串口通信方式比较简单,代码也不是很难,因此在此只对串口通信代码分析,不过先贴上手册解释方便理解          简而言之,USART的操作就是在TDR和RDR两个寄存器上,还有就是USART的传输数据格式上,这个从代码中可以分析:首先是对gpio的配置,比较简单,而后就是对USART的配置,首先是传输速率,然后是传输的数据位长度,停止位,是否有校...

2018-05-30 16:17:46 694

原创 FPGA笔记--modeisim和SignalTap

   modeisim的安装问题一定会有很多,主要问题出在环境变量的设置,大家根据破解说明一步一步做是完全可以破解的,笔者用的是modeisim-altera 10.1,在这里可贴上安装完后如何设置modeisim使每次编译完后自动仿真。首先,打开工程后,根据下图点击工具栏Assignment->Settings...,选择Toolname,根据你的modlesim版本选择,笔者是modei...

2018-05-29 22:59:30 1094

原创 FPGA笔记--软件安装和选择

     在软件安装方面,我经历过太多,从大一第一次接触quartus,第一个版本是9.1版本,当时懵懵懂懂不会安装破解,以至于第一破解用时长达5个小时,现在我将软件选择安装和破解过程中的问题凭记忆写下,有错误还望大家指出,各版本安装包我都有,需要的可以私戳,文件较大所以不便上传。关于版本之间的不同可参考这位博主的总结:点击打开链接  我装过quartus9.1,11.0,13.1,13.0,17...

2018-05-28 21:58:12 749

原创 STM32笔记--Systick系统定时器

关于systick的具体概念不多记录,systick是存储一个数值然后倒计数,每记到0会进行一次中断,下面我们用代码记录其中SystemFrequency的值为72000000,可去查宏定义,除去100000代表的是每这么长时间周期就中断一次,这个设置就是每720个周期进一次中断,执行中断的函数,经常用于定时器延时,每1us中断一次!在中断中,每1us进一次,TimingDelay会-1,在del...

2018-05-28 16:19:24 846 2

原创 STM32笔记--EXTI中断

1.总中断问题:stm32默认开始总中断?还不清楚,但应该是。在STM32/Cortex-M3中是通过改变CPU的当前优先级来允许或禁止中断。 PRIMASK位:只允许NMI和hard fault异常,其他中断/ 异常都被屏蔽(当前CPU优先级=0)。 FAULTMASK位:只允许NMI,其他所有中断/异常都被屏蔽(当前CPU优先级=-1)。 在STM32固件库中(stm32f10x_nvic.c...

2018-05-27 23:26:01 833

原创 STM32笔记--工程环境的搭建

本人之前学习过stm32,因长时间没有使用特来复习深化,在今天的学习中,遇到和解决一些问题,所以记录下来为后面复习和其他人学习使用:1.CMSIS概念深化ARM Cortex™ 微控制器软件接口标准(CMSIS:Cortex Microcontroller Software Interface Standard) 是 Cortex-M 处理器系列的与供应商无关的硬件抽象层(英文原文为:a vend...

2018-05-27 00:28:33 436 1

原创 Error: Current license file does not support the EP4C6F17C8N device解决办法(实测有效)

      今天在破解quartus11.0的时候遇到的问题,在正常使用了半天后,突然出现Error: Current license file does not support the EP4C6F17C8N device的错误,打开软件已经没有30天试用提示,所以软件应该是破解了,经过多方百度,和实践得到下面解决方法和结果:       1.用破解后bin64下的sys_cpt.dll替换bi...

2018-04-10 20:59:26 35990 16

原创 网络技术学习-服务器篇(1)

服务器小解读        服务器从本质上说也是一种计算机,但是相对我们平常用的计算机,服务器的运行速度更快,能承受的负载更高,因此价格也十分昂贵;除此之外,服务器大都拥有高速的CPU运算,可以长时间的可靠运行,也有强大IO和数据吞吐能力,用于应用的后台操作,一般用户不会直接接触到服务器,但是会通过互联网和服务器建立层层联系。在此贴上百度百科,帮助理解      服务器,也称伺服器,是提供计算服务...

2018-03-28 10:10:02 1023 1

Lucky_dog.exe

老师抽人答题小程序,结合博客https://blog.csdn.net/VCA821/article/details/110353291 这里仅有exe文件,没有工程代码,分享给仅使用的同学和老师

2020-11-29

Lucky_Draw.zip

老师抽答神器,小软件,结合博客https://blog.csdn.net/VCA821/article/details/110353291 此文件为工程源码,dist文件夹里有已经生成的exe文件

2020-11-29

循迹避障小车工程进阶版本

循迹避障的小车代码,由于需求同学比较多,关联博客为https://blog.csdn.net/VCA821/article/details/84134780 这里的红外避障是采用的外部中断处理的,不会占用CPU,是进阶版本的代码

2020-11-29

Fre_measure_uart.zip

FPGA等精度频率测量代码,具体实现见博客 https://blog.csdn.net/VCA821/article/details/84960721

2020-09-29

1.RTC—万年历实验

stm32万年历代码,具体实现见博客https://blog.csdn.net/VCA821/article/details/80710717

2020-09-29

黑金SignalTap ii基础教程

该文档为黑金最新教程,详细写了SignalTap的基础教程,文档基于quartus17.1,如果需要软件可以到私信我或者在我的相关博客下留言,博客链接:https://blog.csdn.net/VCA821/article/details/80503200

2018-05-29

黑金modelsim的安装和仿真

该文档为黑金最新教程,详细写了modelsim的安装流程和单独使用方法,如果需要软件可以到私信我或者在我的相关博客下留言,博客链接:https://blog.csdn.net/VCA821/article/details/80503200

2018-05-29

[野火ISO]零死角玩转stm32完整版(含硬件原理图)

压缩包包括野火教程--零死角玩转stm32完整版,开发板的硬件原理图,学习中结合使用可以提升学习效率,加深学习和理解。

2018-05-27

野火STM32搭建开发环境学习资料

野火的教程2,搭建环境开发,压缩包包括视频讲解,视频讲解的文档和相关代码,初学者必备。PS:这一讲无程序

2018-05-27

空空如也

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

TA关注的人

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