weiqi7777

sram之timequest

以前写verilog代码的时候,基本没有添加过约束,从现在开始,要好好的学习约束,因为是使用的是quartus,而quartus的时序分析和约束工具是timequest。先要计划下要进行哪些约束1、时钟约束:这个系统是在50M时钟作用下,所以需要对这个时钟进行约束。2、输入延迟约束:

FPGA驱动sram

准备把de2-115上面的存储器外设都给驱动一下,首先就先从简单的sram开始。Sram的驱动比较简单,和FPGA内部的ram差不多,只不过不是由时钟来控制读写,而是由控制信号来控制读写,读写都很快,基本上一个时钟就可以读取和写入数据,当然这时钟不能太快,不能超过芯片规定

nios2之lcd软件设计

之前已经把nios2的硬件设计给搞定了,剩下就进行软件设计就行了。在刚刚建立的工程,选择nios2SBT。。现在开发nios2软件已经用NIOS2SBT了,不在用以前的IDE了。弹出的框中选择软件的路径,这里就选择建立的工程木。就弹出软件界面了。。。和一般的IDE软件看着没啥区别。

nios2之LCD硬件设计

最近手边有了DE2-115开发板,就用来玩玩nios2,顺便学习一个altera的开发流程,因为之前都是在用xilinx的。玩了之后,确实nios2的功能很强大,但是这开发的软件很不好用,有时候会出莫名其妙的问题,搞得很蛋疼。以下实现一个流水灯和LCD1602显示。流水灯通过按键来控制

stm32测试SDHC卡驱动

之前已经对SDHC卡的底层驱动已经写好了函数,接下来就利用写好的函数来测试队SDHC卡的驱动。SD2.0标准规定SDHC卡必须使用FAT32文件系统。所以这里首先是提取文件系统信息。有了解过FAT32文件系统的话,知道文件系统的信息都是存在0扇区的,所有,首先是将0扇区的数据给

stm32驱动SDHC卡 (SPI方式) 二

前面说了关于SDHC卡的一些基础知识。现在就开始进行驱动我们的SDHC卡了。有了前面一章的两个函数的基础,来构建其他的函数。首先是复位。复位是很重要的一个操作,复位如果不成功的话,那SD卡是不能使用的。所以首先要进行复位操作。复位操作还是相对有点麻烦的。先来个

stm32驱动SDHC卡 (SPI方式) 一

SD卡是比较常见的存储设备了。SD卡也有分类,按照容量有三类。1、SD卡,小容量的卡。容量小于2G。现在用得比较少了。2、SDHC卡。中容量的卡,容量大于2G,小于32G。目前用得普遍。3、SDXC卡。大容量的卡,容量大于32G。不同的卡,使用的协议标准是不一样的。小容量的SD

串口实现linux系统的终端(用proteus)

用过linux系统都知道,我们可以通过终端输命令来操作linux系统。这个是对于PC机的。但是对于嵌入式来说,没有显示器,那怎么来模拟这个终端了。这里就要用到嵌入式中最好用到功能,串口。我们可以通过串口,将要显示的东西发送给PC,然后PC在显示出来,这样不就模拟终端

stm32驱动W24Q16

W24Q16是FLASH存储芯片,容量为16Mbit。注意是16Mbit,其实就是2M-byte。W24Q16采用的是spi总线。但是这个spi总线有三种方式。首先列下该芯片的管脚图:第一种是标准spi(Standard)。即传统的四根线,CS片选信号,clk时钟信号,DI数据输入信号,DO数据输出信号。这个时

单片机之串口仿真(proteus加虚拟串口)

在proteus可以仿真串口,但是用它自带的终端不能显示字符,只能显示16进制值,而且不能输入信息。所以,就考虑使用虚拟串口,然后用串口调试助手。首先是搭建电路图,电路图很简单,就一个单片机,和一个COMPIN,集成电平转换的穿行通信接口,这个接口自带电平转换,所

FPGA之DS18B20

之前用单片机加proteus,来实现对DS18B20的驱动。也了解了DS18B20的驱动原理。然后就开始用FPGA来进行驱动了。介绍这里就不介绍了,可以看看之前写的博文。以下程序,只考虑外接一个DS18B20,因为开发板上就挂了一个。只读取温度16位值,没有读取其他寄存器值。需要其他

单片机之DS18B20(用proteus)

单片机之DS18B20(用proteus)想用verilog驱动DS18B20。但是想到verilog调试比较困难,首先先用单片机来驱动看看。看看DS18B20是怎么驱动的。用proteus搭建软件仿真环境,在proteus里面进行仿真。这里搭建了三个DS18B20。因为DS18B20是可以在一根线上挂载多个的。这里就

FPGA之DS1302

DS1302是比较经典的时钟芯片,刚好开发板上有这一个芯片。然后去准备用verilog去控制控制。以下是DS1302的封装和管脚说明。其中,主要就是控制CE,I/O,SCLK这三个信号。。其他都是电路固定接好的。不需要控制。这里要注意一下I/O这个管脚是双向口。所以在FPGA中要用inout

Chipscope调试IIC

在之前用FPGA实现对AT24C02驱动时候,因为AT24C02是IIC总线,所以要设计IIC总线的程序。之前已经说明了该程序是怎么设计的。但是在设计的过程中,我们不能保证我们写的程序第一次就是正确的,所以就需要调试。我在做的时候,就调试了好多次,用了各种方法,花了三天时间

FPGA之IIC

FPGA之IIC这几天实现FPGA对AT24C02进行读写。采用的是IIC总线,所以要写IIC控制代码。写代码花了一下午,可是调试花了三天。真是相当蛋疼,用了各种方式进行调试。AT24C02采用的是IIC总线,256KB字节的存储容量。分为32夜,每页有8字节。首先是写的时序:如上所示:第一