基于Odyssey Max 10 FPGA EValuation Kit试用板的Si7020测温调试

作者: 囧人也幸福!
上传时间为: 2017-08-21 10:14 AM
2017-08-21
阅读:

收到板子快一周了,自己裸写了I2C的程序,实现了基于Si7020的测温实验。

1、选取si7020芯片工作在Hold master mode,这边测温要注意的是Clock stretch during measurement 这边转换的延时temp_si7020.zip

2、系统默认配置不去修改,默认测温的位数为14位,因此转换的延时时间应该在7~10.8ms之间

3、驱动程序的设计

I2C的程序以及整个芯片的程序会放在后续的程序附录文件中间中,有需要的自行下载

4、读取温度的状态机程序如下,这边的状态机是根据第一部分流程框图来实现的。

5、测温控制底层模块接口图

6、测温控制顶层模块,由于系统时钟选取50M,可通过计数器分频成390.625KHz的信号作为I2C的控制时钟

7、SignalTab仿真测试,分别截取I2C_SCL,I2C_SDA,以及状态机的主状态进行分析,I2C_main_state = 0x0a的情况下进行转换延时等待

7(1) 由于数据读取是在状态0x0b 和 0x0d状态,这边只取这二个状态看温度数据,由图可知数据位0x7168

7(2)温度转换,由于板子资源有限,这边只借助采集的数据自己计算,不作温度显示和换算功能,可得测得温度为30.99度

8、附件,测温调试的源程序工程,有需要的工程师自取,鉴于工程文件上传太慢,因此只上传程序源文件

si7020_control_fsm.v temp_si7020.v

9、工程文件附在网盘链接

链接:https://pan.baidu.com/s/1cjfXZw 密码:vzol

全部评论 ()
条评论
写评论

创建讨论帖子

登录 后参与评论
系统提示