自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (33)
  • 收藏
  • 关注

原创 linux C语言 调用命令行 管道文件指针

/ 设置要运行的shell命令为"pwd"(列出当前路径)printf("%s", buffer);// 将每一行输出到控制台上。// 存放要运行的shell命令。// 读取输出内容的缓冲区。printf("无法打开管道\n");FILE* pipe;

2024-02-29 15:39:12 383

原创 嵌入式Linux开发与单片机开发的区别

在某些平台上看到很多人鼓吹嵌入式Linux开发比单片机开发要好,让所有人都去做嵌入式Linux开发。说这种话的人大多数是嵌入式Linux的培训机构,或者是一开始就以嵌入式Linux入门的那一批人,当然,也有很多的大佬。 我认为最有发言权的是在单片机行业待了三年以上,然后在嵌入式Linux行业也待过三年以上的人,显然笔者不是,不过笔者还是想把自己的理解写出来。 一个以单片机为主控的产品开发步骤:画原理图---画PCB---在Keil上编程---软硬件Debu...

2021-10-13 17:08:33 4019

原创 自制的Linux开发板,也算是入个门吧,嘻嘻

!这是我做的第一块Linux开发板,主控是全志V3s,外挂的ROM是1Gbit的spi flash,wson8那种封装,芯片自带ram。板子是双层板,9.8×9.8,那个5元包邮,你懂的。然后液晶的接口是通用rgb40pin,摄像头接口有预留出来,不过手头上没有东西。自己板子也没有画过几块,让大伙见效了在这里插入图片描述...

2021-06-13 00:26:59 1763 2

原创 浅谈C++的虚函数

本人一直从事嵌入式开发,包括单片机,FPGA,偶尔测试或者数据显示会用到QT。大家知道单片机一般是C语言开发,FPGA一般用verilog、vhdl开发,所以我很少用C++。C++与C语言最大的区别就是,一个是面向过程,一个是面向对象。类,封装性,继承性,多态性,虚函数都是C++的特点,虚函数我理解了好久。/***************************************************/class mybase{public: myte...

2021-02-25 16:11:43 116

原创 STM32-DP83848-RMII-FREEOS-LWIP-UDP调试笔记

由于工作之后大部分时间都是在调试FPGA,所以对于MCU这块很久都没有进展了。昨天就拿了同事画的STM32网络开发板来调试,调试的过程还是比较顺利的。硬件:STM32F407ZET6+DP83848+RJ45(带网络变压器)操作系统:FREEOS协议栈:LWIP应用协议:UDP实现功能:上位机下发一帧数据,STM32可以返回对应的指令信息调试过程: 我是直接用的cubemx(5.6.1),第一步就是要看板子上的晶振,是多少兆,可能是25兆,也有可能是20兆。...

2021-02-09 16:24:22 1060 1

原创 初学者浅谈FPGA的时序约束

接触FPGA已经差不多两年了,在学习的过程中总能偶尔听到FPGA需要时序约束。那个时候就是什么都不懂,不懂为什么要约束,以及约束的是什么东西,以及代码的风格对约束有什么影响。直到在后来的一次调试中踩了雷,才明白时序约束的重要性,如下verilog代码。/********************************************************************************************/reg [31:0]get_num;reg [7:0

2021-02-03 17:20:34 786

原创 cyclone iv e系列FPGA通过串口更新程序

cyclone iv e系列FPGA通过串口更新程序已经调试通过了(纯verilog)。1.烧写BOOT程序。(默认地址是0x0000-0x7ffff)2.在BOOT程序中通过ymodem协议下发RPD文件(512KB)。3.烧写RPD文件之前需要将标志位置0。4.通过ASMI ip核烧写RPD文件(APP文件)到0x80000-0x100000,烧写前需要擦除扇区。(0x0000-0x80000是装BOOT的,我用的是EP4CS16)。5.烧写完成后标志位置1。6.启动REMOTE

2020-12-10 17:46:00 1344 10

原创 将一个32bit的数据,颠倒过来,bit0与bit31交换,bit1与bit30交换,C语言实现与verilog实现。

将一个32bit的数据,颠倒过来,bit0与bit31交换,bit1与bit30交换。C语言实现void sw(uint val){ int i,valx=0; for(i=0;i<32;i++) { valx+=val<<(31-i); } return valx;}verilog 实现方案一:module sw(a,b);input wire [31:0]a;output w...

2020-11-05 19:52:11 2780 1

原创 FPGA开发与ARM(单片机)开发的区别

我是同时做过FPGA开发(verilog)与ARM(c)开发,有很多人说学了单片机再学习FPGA会比较好过度。理由是单片机的C语言与FPGA的verilog语言很像。我不太赞成这一个说法,理由是:单片机的C语言是串行执行的,FPGA的verilog是并行执行的。虽然两者看上去语法差不多,但是语言所代表的含义完全不同。C语言最终到芯片中后是二进制代码,verilog语言最终到芯片是电路。举个例子,同样实现两个led灯的闪烁,一个是10hz,一个是5hz。/*************************

2020-11-02 16:27:58 2819

原创 FPGA实现开根号,仿真通过,算一次需要34个时钟周期

/******************************************verilog开平方操作******************************************/module mysqrt(clk,//时钟indata,//输入待开平方数outdata,//输出开平方的结果flag_ok,);input wire clk;//时钟input wire [31:0]indata;//假设数据为32bitoutput reg [15:0]outdata=

2020-08-04 18:39:08 4601

原创 ALTERA系列的FPGA通过RS232串口在线升级

ARM系列的芯片(例如STM32系列)可以通过YMODEM协议实现在线升级,在芯片中写入BOOT程序、APP程序就可以实现。那FPGA可以这样做吗,答案是可以的。要想搞清楚流程就必须了解FPGA的启动过程。FPGA一般会外挂一个FLASH,FLASH中装的就是FPGA的配置信息。FPGA一上电首先会读取FLASH的配置信息,保存在RAM然后通过这些配置信息来运行逻辑,所以FPGA在运行过程中与外挂...

2020-03-31 18:20:51 2289

原创 FPGA 16位除法器

quartusii 中“/”是可以综合的,不过特别耗费资源。这时候在运算速度要求不是很高的前提下,自行实现除法器就是很有意义的事情了。 此除法器完成一次运算需要耗费18个时钟周期。赋值缓存一个时钟周期,移位减法16个时钟周期,输出一个时钟周期。为什么要缓存呢(a需要缓存到ax,b需要缓存到bx)?因为如果不做缓存,在运算期间a,b值改变会影响结果的正确性。 ...

2019-10-19 17:13:45 1852

STM32傅里叶变换.rar

STM32傅里叶变换.rar

2020-08-16

STM32_PID.zip

STM32_PID.zip

2020-08-16

STM32F1uartDMA模式任意长度接收发送

STM32F1uartDMA模式任意长度接收发送

2020-08-16

STM32F1uartDMA模式任意长度接收发送.rar

STM32F1uartDMA模式任意长度接收发送.rar

2020-08-16

STM32双通道交替.rar

STM32双通道交替.rar

2020-08-16

放大器的选型以及应用.rar

放大器的选型以及应用.rar

2020-08-16

查表法crc16与CRC8校验.7z

查表法crc16与CRC8校验.7z

2020-08-16

神经网络PID-模糊PID-专家PID-等高级PID.rar

神经网络PID-模糊PID-专家PID-等高级PID.rar

2020-08-16

STM32步进电机加减速曲线控制keil5.rar

STM32步进电机加减速曲线控制keil5.rar

2020-08-16

彻底学会C语言指针.rar

彻底学会C语言指针.rar

2020-08-16

linux 软件spi协议驱动0.96寸OLED

linux 软件spi协议驱动0.96寸OLED,端口可以任意修改,不像硬件SPI端口是固定的几个

2018-08-30

FPGA与STM32通讯

FPGA提供4位DA的接口 LCD1602 显示DA输出的频率, 用ROM查表的方法 本例程仅仅作为测试

2018-08-10

FPGA verilog

FPGA 电子琴 Verilog代码 资源:单按键,蜂鸣器 按一下 音调会改变一次 1 2 3 4 5 6 7循环

2018-08-07

激光枪自动射击装置

STM32单片机作为步进电机(28BYJ48)的控制核心,以晶体管(ULN2003AN)驱动步进电机,用脉冲精确的控制步进电机,使之能在二维空间内转过一个很小的角度。用OV7670摄像头,对靶的图像扫描,通过图像处理,计算分析就可以确定环数。

2018-08-06

倒立摆控制系统

用STM32定时器的编码器模式通过增量式光电编码器采集角度,电机自带编码器采集速度来完成直立环和速度环的PID控制,组成闭环控制系统。通过PID算法来控制电机PWM波的占空比从而达到控制电机方向以及速度

2018-08-06

风力摆控制系统

利用姿态传感器MPU6050以及数据融合滤波算法(一阶毕卡算法)得到风力摆底部平台的翻滚角和俯仰角,再将平台运动分解为x方向和y方向的简谐运动,通过李萨如图形法实现直线的绘制、圆形和爱心的绘制。控制过程主要依靠三角函数计算出期望的角度经PID控制器对空心杯电机输出PWM波控制电机的风速,从而实现对目标点的快速跟踪和抗干扰

2018-08-06

FDC2214手势识别

2018的全国大学生电子设计竟赛题, FDC2214手势识别, 用的器件有STM32F407ZGT6,OLED,CH451,FDC2214, 算法有导数积分算法 协议有,iic,spi

2018-08-06

pdf_sub_a.v

pdf_sub_a.v

2021-12-20

UART_IT_TEST.7z

UART通过中断接收数据,然后发送数据,具有学习的价值

2021-03-18

UART_DMA_TEST.7z

UART通过DMA接收与发送,接收一帧完成通过空闲中断判断,发送也是通过DMA,不占用CPU的资源

2021-03-18

TIM_DMA_DAC_TEST.7z

定时器触发DMA实现DAC输出正弦波,输出过程没有中断,不占用单片机的CPU。

2021-03-18

ADC_DMA_UART.7z

STM32采集5路波形通过DMA直接存在数组中,然后将数组的内容通过UART上传到电脑

2021-03-18

ADC_AVG_DMA_UART.7z

STM32F103 ADC通过DMA的方式采集5路,并且做均值处理后通过UART发送到电脑。

2021-03-18

STM32_ILI9341_PROTUSE8_8.rar

利用protuse8_8仿真STM32,让STM32驱动ILI9341。注意protuse的版本不能太低了!

2020-11-11

多功能风扇.zip

基于51单片机的多功能风扇+protuse仿真+keil代码

2019-07-04

简易信号发生器.zip

基于51单片机的简易信号发生器+protuse仿真+keil代码

2019-07-04

打铃-ds1302.zip

基于DS1302的自动打铃器+1602显示+protuse仿真+可设置8个时间+使用说明书

2019-07-04

八路抢答器.zip

带开始与错误提示与定时抢答的八路抢答器+protuse仿真+keil代码

2019-07-04

交通灯 - 串口.zip

(串口助手控制灯+交通灯)keil+protuse仿真

2019-07-04

USB协议.zip

VS2012(C#)作为上位机,STM32F103作为下位机,USBHID通信,上位机将(128*128)图像传输给下位机,下位机将图像存入flash并且显示出来,支持64张图片。

2019-06-17

STM32与FPGA进行16位SPI通信

STM32与FPGA通讯,使用的是16位SPI协议。STM32F103ZET6 Verilog

2019-03-20

FPGA作为从机与STM32用SPI的方式进行通信,结果显示在OLED上

本人首先用两片STM32F1以软件的方式进行SPI通信,一主一从以便了解SPI协议,通信测试成功(实际中一般用硬件spi)。然后用STM32F1主机与FPGA进行通信,根据从机STM32F1从机的接收代码改为Verilog,并且将SPI接收到的数据显示在0.96寸OLED(FPGA驱动OLED也是SPI方式,只是FPGA作为主机了)上。

2018-11-30

QT Creator dll 大全,解决QT无dll问题

QT Creator dll 大全,解决QT无dll问题 Qt5Core.dll Qt5Gui.dll Qt5PrintSupport.dll Qt5Widgets.dll D3Dcompiler_47.dll libstdc++-6.dll Qt5SerialPort.dll 不一一列举了

2018-11-30

空空如也

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

TA关注的人

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