欢迎来到天天文库
浏览记录
ID:16474620
大小:1.08 MB
页数:11页
时间:2018-08-10
《数字温度器件控制电路设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目:数字温度器件控制电路设计一、初始条件计算机;OfficeWord软件;QuartusⅡ软件二、内容与要求1、数量掌握QuartusⅡ软件使用及使用VHDL语言编程。2、题目要求:查阅DALLAS公司数字温度传感器DS18B20的使用方法和工作时序,设计一个状态机,控制并处理来自DS18B20的数据,将测得的数据显示在数码管上。3、查阅至少5篇参考文献。按《武汉理工大学课程设计工作规范》要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。三、时间安排:1、2012年12月17日集中,作课程设计
2、的任务布置。2、2012年12月18日至2012年12月21日,进行课程设计,软件编程、仿真和调试。3、2012年12月22日,机房检查仿真结果,验证设计的可行性和正确性。4、2012年12月23日,熟悉实验平台和试验箱。5、2012年12月24日至2012年12月26日,进行设计的硬件调试。6、2012年12月27日至2012年12月28日,实验室检查设计成果,现场演示硬件实物,提交设计说明书及答辩。指导教师签名:年月日系主任(或责任教师)签名:年月日2摘要本设计是基于FPGA和DS18B20的数字温度器件控制电路。程序在QuartusII软件下应用VH
3、DL语言和verilog语言编写,两者语言格式的文件互相调用。程序中主要使用了状态机对DS18B20进行了时序控制,通过一些命令字从DS18B20获得温度值。最后将数据送给数码管显示电路进行显示,从而可以实时地观察到温度变化。关键字:数字温度器件控制电路;EDA;FPGA;VHDL;QuartusII;EP1C3T144C8。21系统方案设计1.1设计要求查阅DALLAS公司数字温度传感器DS18B20的使用方法和工作时序,设计一个状态机,控制并处理来自DS18B20的数据,将测得的数据显示在数码管上。1.2方案选定按照题目要求最终选定方案是中使用DS18
4、B20作为数字温度检测器件,选用EP1C3T144C8芯片,用FPGA生成显示译码电路和DS18B20的状态机,用数码管作为显示器件,最后将数据显示在数码管上。系统整体框图如图1.1所示。图1.1系统整体框图82单元模块分析与设计2.1DS18B20状态机设计DS18B20状态机是本设计中最核心的模块,通过状态机可以对DS18B20数字温度计进行读写操作,获得温度数据,所以设计出良好的状态机对于本课设具有重要意义。根据题目要求,设计的DS18B20状态机模块如图2.1.1所示。图2.1.1DS18B20状态机模块从图中可以看到DS18B20状态机模块有一个
5、时钟输入引脚clk,复位引脚ret_n,双向单线引脚own_wire和温度数据输出总线temperature,与外部连接简单合理。状态机的设计主要是参考DS18B20的工作时序和控制命令字要求,通过查阅资料,DS18B20的一般控制操作流程如图2.1.2所示。图2.1.2DS18B20控制流程图8参考上图,使用硬件描述语言进行状态机编写,由于自己以前已经使用verilog写过DS18B20的状态机程序,而且因为此状态机比较复杂,故为减少重复工作,此处选择了verilog语言编写状态机。状态机的状态数是由状态个数的需要而定,其中DEAD和WRITE的状态操作
6、是需要重复进行的,因为在程序中有很多数据要写入和读出。另外,状态机中有子状态机,step为其子状态,以实现嵌套循环。编写完程序后进行RTL仿真,可以看到状态机的视图,但是因为此状态机过多无法看到状态机内部状态的转换。状态机视图如图2.1.3所示。图2.1.3状态机视图2.2显示译码电路设计显示译码电路是用来将状态机从DS18B20获得的数据进行译码后送到数码管进行显示,主要由分频器、计数器、分频器和数据选择器构成,由于试验箱上已经有三八译码器,故在FPGA中不需要设计译码器。而分频器实际上也是计数器,当数据计数到一定值的时候翻转输出信号即可实现分频功能。将
7、计数器的输出送到译码器的输入即可实现动态扫描,然后再通过一定的数据选择电路,最后就可以实现显示译码电路。此处使用VHDL语言编写程序可以简单地实现显示译码模块。8编写完程序后观察RTL视图,可以清楚的看到显示译码模块的结构。如图2.2.1所示。图2.2.1显示译码模块从上图可以知道显示译码模块有一个时钟输入引脚i_CLK,复位引脚i_RST_N,熄灭位总线i_Turn_Off,小数点选择总线i_DP,段选码输出总线o_SEG和位选码输出总线o_SEL。其中熄灭位用来选择哪个数码管不亮,小数点选择总线用来选择哪个数码管显示小数点,段选码输出总线用来输出段选码
8、,位选码输出总线连接到三八译码器输入。通过观察此模块RTL视图,可
此文档下载收益归作者所有