455|2

15

帖子

0

资源

一粒金砂(中级)

【Perf-V评测】芯片温度采集 [复制链接]

今天是大年三十了,祝大家春节快乐。

今天打算照着手册里提供的项目测评个芯片温度采集的题目,提前准备了I2C接口的1602液晶屏,就是下面这个样子滴:

image.png

image.png

一共有四个引脚,VCC,GND,SCL,SDA,这种液晶最大的好处就是比并口的节省连接引脚。

 

1602里面存储器有三种:CGROM、CGRAM、DDRAM。
  DDRAM(Display Data RAM)就是显示数据RAM,用来寄存待显示的字符代码。共80个字节,如果说我们想要在屏幕上显示我们想要显示的,直接把需要的字符代码送入显存就可以了。

1602模块上固化了字模存储器,就是CGROM和CGRAM。 加装了I2C转接版的LCD1602,能够同时显示16x02即32个字符。模块内部具有两个 8 位寄存器:指令寄存器(IR)和数据寄存器(DR)。用户可以通过 RS 和 R/W 输入信号的组合选择指定的寄存器,进行相应的操作。

RS R/W 操作说明
0 0 写入指令寄存器(清除屏等)
0 1 读busy flag(DB7),以及读取位址计数器(DB0~DB6)值
1 0 写入数据寄存器(显示各字型等)
1 1 从数据寄存器读取数据

   1. 读状态:输入RS=0,RW=1,E=高脉冲。输出:D0—D7为状态字。
 2. 读数据:输入RS=1,RW=1,E=高脉冲。输出:D0—D7为数据。
 3. 写命令:输入RS=0,RW=0,E=高脉冲。输出:无。(写完置E=高脉冲)
 4. 写数据:输入RS=1,RW=0,E=高脉冲。输出:无

项目代码一共四个模块,I2C模块,LCD模块,TEMP_DESIGN_INIT和TOP模块。其中I2C模块实现以I2C时序传送地址、数据等信息。LCD实现1602上的信息显示。TEMP_DESIGN_INIT模块是官方实现内部温度及电压采集的模块。

LCD1602同开发板的连接,如下是约束文件:

set_property PACKAGE_PIN B11 [get_ports sda]
set_property PACKAGE_PIN B10 [get_ports scl]
set_property PACKAGE_PIN N14 [get_ports clk]
set_property PACKAGE_PIN L13 [get_ports rst_n]
set_property PACKAGE_PIN M15 [get_ports key1]
set_property PACKAGE_PIN L14 [get_ports key2]
从约束文件知道,SCL连接开发板的  A0,SDA连接A1,电源接5v,另外还用了K1和SW3两个按键来实现电压及温度的显示控制。

运行程序后,界面显示温度曲线:

image.png

但是1602的液晶上没有显示,估计设备地址没配置对。

 

image.png 外面鞭炮声隆隆,先试验到这。

image.png
image.png
image.png

赞赏

1

查看全部赞赏


回复

785

帖子

2

资源

版主

测评写的不错,就喜欢你这样的测评帖子,感谢老铁的分享!期待后续


回复

7947

帖子

20

资源

版主

我之前使用矿板的PL操作I2C设备时也遇到无法通信的问题,你试试直接使用PS的MIO对应的I2C试试。

个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾

回复
您需要登录后才可以回帖 登录 | 注册

最新文章 更多>>
    关闭
    站长推荐上一条 1/6 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表