草庐IT

STM32+FPGA

全部标签

HDL & FPGA 学习 - Avlon 总线,从端口传输、主端口传输,单周期、可变周期传输

目录1.1Avlon总线定制外设IP核的框架从端口传输从端口信号类型从端口传输模式列举基本单周期读写传输固定等待周期的读写传输可变等待周期的读写传输(推荐)具有建立时间和保持时间读写传输主端口传输主端口信号类型主端口传输模式列举与参数说明主端口单/可变周期的读传输主端口单/可变周期的写传输其它Avalon传输模式编辑整理by Staok,始于2021.2且无终稿。转载请注明作者及出处。整理不易,请多支持。本文件是“瞰百易”计划的一部分,尽量遵循“二项玻”定则,致力于与网络上碎片化严重的现象泾渭分明!本文系广泛撷取、借鉴和整理,适合刚入门的人阅读和遵守,已经有较多经验的人看一看图个乐,如有错误恭

【STM32】使用Keil5加载程序时出现No Target Connected错误的解决办法

错误情况加载程序时弹出Notargetconnected的Error框,随后弹出Flashdownloadfailed-TargetDLLhasbeencancelled。此时打开设置中Debug选项的Setting窗口,显示SWDIO中Notargetconnected解决办法检查设置里的Debug选项里的调试器型号有没有选对,如下图所示,我用的是ST-Link的调试器。检查调试器设备连线有没有损坏或者接触不良。在别人的设备上调试观察确定是否为硬件问题。以上都没问题,可能是某个调试相关的引脚被禁用,需要按住开发板上的Reset按钮不放,在点击LOAD键后约1秒左右的时间松开Reset键,观察

STM32FATFS文件系统移植

STM32FATFS文件系统移植1。FATFS简介FATFS文件系统是一个用于在微控制器上运行的开源文件系统,支持FAT/FATFS、NTFS、exFAT等主流文件系统,且一直保持更新。在此以FatFs官网最新版本v0.15进行移植。2.移植具体操作2.1下载FatFs源码FATFS源码在其官网就有下载链接,下载后解压即可,官网页面如图1所示:图1.FATFS官网页面将其翻至最下面,就可以找到下载链接,如图2所示:图2.FATFS下载链接2.2FATFS代码结构FATFS源码解压后,其一级目录结构如图3所示:图3.FATFS源码一级目录结构其source文件夹下各文件作用如下所示:source

STM32SPIFLASH读写

STM32SPIFLASH读写1.1SPI注意事项SPI是同步通信,即通信双方每次信息交互必会带有一问一答,这代表在正常的单核MCU(例如STM32)中很难实现软件模拟的双向SPI通信(TFT屏幕一类的外设不算,那些顶多属于单向SPI),因为无法同时发送和接收数据。而在STM32中,硬件实现同步通信的办法是利用硬件缓冲区,以字节为单位,每次发送一个字节的数据,接收缓冲区就会缓存一个字节的接收数据,如此实现同时接收和发送。1.2SPI代码编写SPI的代码需要引用如下的标准库头文件:#include"stm32f10x_rcc.h"#include"stm32f10x_gpio.h"#includ

一起玩儿物联网人工智能小车(ESP32)——60. 基于TFT_eSPI库的1.3寸SPI彩色显示屏的使用(ST7789)(二)

摘要:TFT_eSPI库的基本介绍前边介绍了TFT_eSPI库的基本情况,下面就来看一下怎样使用TFT_eSPI库来驱动ST7789驱动芯片的1.3寸彩色液晶屏幕。在ArduinoIDE中安装了TFT_eSPI库以后,首先需要找到TFT_eSPI的安装位置。因为关于液晶屏幕的配置信息是在TFT_eSPI的库文件夹中进行配置的。这样做的好处是,配置一次,可以在多个项目中使用这个配置信息,只要不更换屏幕,都不需要再进行配置信息的设置和修改。如果这个配置信息,是配置在每个项目中的,那么就需要在每个项目中都维护一套液晶屏幕模块的配置信息。找到TFT_eSPI的安装路径之后,首先打开User_Setup

STM32 CAN接口中断处理与性能优化技巧

在基于STM32的CAN接口中,中断处理是一个非常重要的部分,它可以帮助我们实时地处理接收到的数据和处理其他CAN事件。为了优化CAN接口的性能,以下是一些中断处理和性能优化的技巧:✅作者简介:热爱科研的嵌入式开发者,修心和技术同步精进❤欢迎关注我的知乎:对error视而不见代码获取、问题探讨及文章转载可私信。 ☁ 愿你的生命中有够多的云翳,来造就一个美丽的黄昏。🍎获取更多嵌入式资料可点击链接进群领取,谢谢支持!👇点击领取更多详细资料1.中断优先级设置:  在使用CAN接口时,我们需要根据任务的优先级来设置中断的优先级。一般来说,CAN中断的优先级应该高于其他外设的中断,但低于主定时器(Sys

手把手教你搭建ARM32 QEMU环境

概述我们知道嵌入式开发调试就要和各种硬件打交道,所以学习就要专门购买各种开发版,浪费资金,开会演示效果还需要携带一大串的板子和电线,不胜其烦。然而Qemu的使用可以避免频繁在开发板上烧写版本,如果进行的调试工作与外设无关,仅仅是内核方面的调试,Qemu模拟ARM开发环境完全可以完美地胜任。本篇就带大家教你们如何手把手搭建QEMU环境.注意不能模拟uboot,所以本篇没有模拟uboot启动kernel过程环境准备PC系统:Windows10虚拟机:VMware-17虚拟机系统:Ubuntu-18.04.1模拟的32位开发板:vexpress-a9搭建环境时使用的源码版本qemu-8.2.0lin

STM32 I2C_OLED显示汉字及屏幕滚动

STM32I2C_OLED显示汉字及屏幕滚动文章目录STM32I2C_OLED显示汉字及屏幕滚动一.I2C以及AHT20温湿度传感器介绍二.用0.96寸OLED屏幕显示数据1.OLED介绍2.样例测试三.汉字编码原理编码排序A0A0→A0FEA1A0→A2FE依次排列。四.实验步骤1.软件2.具体实现①.目录结构②.字模函数③.显示汉字④.屏幕滚动⑤.主函数五.实验结果六.程序源码任务简介学习I2C总线通信协议,使用STM32F103完成基于I2C协议的AHT20温湿度传感器的数据采集,并将采集的温度-湿度值通过串口输出。具体任务:显示自己的学号和姓名;显示AHT20的温度和湿度;上下或左右的

UDP以太网(1)RTL8201F-phy芯片MDIO接口FPGA配置RMII模式

RTL8201F-phy芯片MDIO接口FPGA配置RMII模式介绍以太网物理层芯片支持10Mbps/100Mbps,支持mii、rmii接口;电路图上配置为RMII接口,寄存器也需要配置。phy芯片使用的是rmii接口,用mdio配置,配置方法比较简单,先看MDIO接口时序:MDC频率最高为2.5Mhz,phy在上升沿锁存MDIO的数据phyaddress是在挂多个phy芯片的时候用来识别phy的,下面看配置寄存器有哪些:PHY配置寄存器每个寄存器都有默认值,不配置也可以运行,当要修改配置或者查看phy发送接收芯片状态的时候就要使用mdio接口。下面是写时序的例程可以参考一下:modulem

【FPGA学习】状态机实现UART通信

文章目录前言一、数据帧结构二、接收模块2.1状态设置2.1状态跳转2.2奇校验2.3数据输出三、发送模块3.1状态跳转3.2数据输出四、顶层模块总结前言  在之前的文章中【FPGA学习】实例一、CycloneIV串口通信(RS232)我们已经能够采用波形图的方法,实现9600bps的Uart通信。近期笔者在整理了状态机和计数器组合的设计方法以后,对状态机的设计又有了新的感悟和体会,所以又把经典的RS232协议拉出来当状态机的例子练手了哈哈哈。数据有效位为8bit,功能上增加了奇校验,并将波特率设置为115200bps,并借助这篇文章梳理一下状态机和计数器组合设计的思路和设计要点,文章奉上:一、