(一)FPGA之串口通信(UART)回到梦开始的地方,如今回过头来看串口协议,确实清晰了很多,但是奈何好记性不如烂笔头,我还是要重新记录一下学习的知识点,方便查找和学习。波特率(BandRate):串口协议中很重要的一点就是波特率,波特率的概念是每秒钟传送码元的个数,就是一秒钟传输了几个二进制的个数,他的单位是Bit/s和bps两种。常见的串口速度有115200bps9600bps等等,串口(RS232)的最大传输速率是115200bps,表示一秒钟传输了115200个二进制。波特率和字节的关系1GB=1024MB1MB=1024KB1KB=1024B(字节)我们需要串口接收的数据数每秒512
1、设计方案该模块是AXI接口与DDR3控制器的访问接口,属于AXIslave。主机AXImaster通过发送对应的读写地址和对应的读写数据,这些地址和数据通过异步FIFO缓存模块进行跨时钟域的处理和起到提高总线访问带宽的作用。axi接口模块将写命令通道的写地址(row、bank、col)、axi_awburst、axi_awsize、axi_awlength、axi_awid、读写标志拼接成一个数据帧存到AW_FIFO中;将读命令通道的读地址(row、bank、col)、axi_arsize、axi_arlength、axi_arid拼成一个数据帧存到AR_FIFO中;将写数据通道的wdat
前言1.准备工作2.创建蓝牙服务并广播3.创建BLE连接4.BLE蓝牙服务端查询服务和发现特征5.BLE客户端发现服务和服务特征6.BLE服务端配置和使能BLEAPP7.联系我们1.准备工作需要准备的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线,蓝牙调试助手,下载链接为链接:https://pan.baidu.com/s/1hQeigKrC7tkB5bp1OALzfg?pwd=1234提取码:12342.创建蓝牙服务并广播先保证模块或者开发板上电打印ready,如下图:发送以下指令:AT+BLEINIT=2AT+BLEGATTSSRVCREAT+BLEGATTSSRVSTARTA
小米路由器ProR3p刷机BreedPadavanOpenWrtUART/TTL救援date:2022-10-08lastmod:2022-10-29一般过程:小米路由器开发版ROM+小米路由器开启SSH工具文件:rom官网直接下载,含ssh的则需要小米账号在小米WiFi中绑定路由器刷引导(可跳过刷固件(系统)rom-devssh这一步首先是给路由器刷入开发板的rom,然后开启ssh。开启无线ssh有官方办法,漏洞办法,实在不行就拆机TTL跳线办法。获取官方ssh开启固件需要现在小米WIFIapp中绑定路由器,我重置路由器的时候app可以识别到路由器,让我设置,我设置完名称密码后重启就识别不到
近期学习了单片机及数电相关知识,故决定系统地学习一些通信协议。手边书本仅介绍了串口低速接口的相关协议。串行通信是指通过使用一条数据线(需要地线或控制线),将数据一位一位地一次传输,每一位数据占据一个固定的时间长度。特点:抗干扰,节省数据线,但速度慢串行通信时:数据一位一位地排列,按照时序信号控制发送与接收,发送端通过发送始终确定数据位的开始与结束,接收端需要在适当的时间间隔对数据流进行采样并解码。分为:同步串行通信与异步串行通信同步串行通信的信息帧由同步信号字符(SYNC)、数据字符和校验字符(CRC)组成。在传输数据时需要保持发送时钟与接收时钟的严格同步,但受限于不同厂家间的同步字符不统一,
在之前的内容里,讲述了AXI和DDR3的基本知识,也做了一个用AXIIP核读写BRAM的测试实验。接下来,我们就将这些部分结合在一起,做一个用AXIIP核对DDR3进行读写测试的实验。因为DDR3的时序比较复杂,所以我们一般都会使用Xilinx官方提供的MIGIP核来控制DDR3,上一节简介了比较常用的Native接口的MIGIP核,而我么进这次实验是基于AXIIP核来对DDR3进行读写测试的,所以我们这次要使用的是AXI接口的MIGIP核,它的接口是满足AXI时序的,这里也不在赘述。1配置AXIIP核 在新建一个工程后,和第二节的方法一样,我们配置一个AXI4的IP核,
在之前的内容里,讲述了AXI和DDR3的基本知识,也做了一个用AXIIP核读写BRAM的测试实验。接下来,我们就将这些部分结合在一起,做一个用AXIIP核对DDR3进行读写测试的实验。因为DDR3的时序比较复杂,所以我们一般都会使用Xilinx官方提供的MIGIP核来控制DDR3,上一节简介了比较常用的Native接口的MIGIP核,而我么进这次实验是基于AXIIP核来对DDR3进行读写测试的,所以我们这次要使用的是AXI接口的MIGIP核,它的接口是满足AXI时序的,这里也不在赘述。1配置AXIIP核 在新建一个工程后,和第二节的方法一样,我们配置一个AXI4的IP核,
文章目录1、通信的基本知识1.1、数据通信的种类1.1.1、串行通信1.1.2、并行通信1.1.3、总结1.2、数据通信的传输方向1.2.1、单工1.2.2、半双工1.2.3、全双工1.2.4、总结1.3、数据通信的方式1.3.1、同步通信1.3.2、异步通信1.3.3、同步与异步的区别1.4、通信基本知识的总结2、UART通信详解2.1、描述2.2、应用范围2.3、优缺点2.4、硬件连接2.5、通信格式2.6、波特率2.7、拓展3、IIC通信详解3.1、描述3.2、应用范围3.3、优缺点3.4、硬件连接3.5、通信格式3.6、IIC三种速率3.7、寻址4、SPI通信4.1、描述4.2、应用范
**AXI_UART调试说明-PS使用AXI_Uartlite拓展PL端串口资源**注:本例程是在xc7z010clg400_1实现,若导入至复旦微电子需更改为xc7z045iffg900-2L(目录中带*号的可略过)背景:PS端UART资源有限,难以满足实际运用中多串口的需求。具体方法:PS通过AXI总线调用PL的资源进行UART的拓展,本说明采用vivado自带的IP核AXIUartlite完成,属于AXI_GPIO。一、VivadoIP核建立完成图如下1.1ZYNQ核配置这块一般默认即可(可以双机查看GPMasterAXIInterface->M_AXI_GP0_Interface是否勾
在程序中,CPU对外界突发事件进行处理的方式又两种:1》轮询系统:(在main中,使用while循环,进行循环判断外界事物是否发生) while(1){ }2》前后台系统:(此时main中的while中的程序是在处理其它事务,当中断来到时,就处理中断服务函数) 轮询系统+中断 中断的过程:在主程序执行的过程中,中断突然发生,此时主程序停止往下执行,并将CPU的当前状态保持在内核栈中(即:现场保护)。然后跳转到中断服务函数的入口,并执行中断服务函数,当中断服务函数执行完后,再将之前保存在内核栈中的状态全部进行出栈,将状态恢复到发生中断之前(即:现场