七段数码管显示控制程序设计
LED显示程序设计实验
实验二LED数码管驱动显示程序实验一、实验目的1、初步学习和了解VHDL语言编程方式2、学习和掌握七段数码显示译码器的设计方法3、学习和掌握VHDL的多层设计方法二、实验要求1、根据硬件设计的思维方式,编制LED七段码的显示程序2、要求是一位LED以定位方式显示3、完成LED七段码波形分析的显示功能4、在EDA实验箱上按要求显示三、实验设备1、计算机一台2、EDA——Ⅳ实验箱一台四、实验原理1、七段码是用一种纯组合的逻辑电路,通常是用小型专用的IC门电路组成,数字输入与输出表达均未16进制,处理一般较复杂,而用FPGA/CPLD来实现较为简单。
2、七段码输入与输出的原理与真值表关系。
(a)输入:七段码输入为四个输入信号,用来表示为“0000”到“1111”,即表示为十六进制的“0”到“F”。
(b)输出:七段码输出为七个输出信号,分别用“A、B、C、D、E、F、G”七个符号来表示。
一般规定,输出信号为“1”时,它所控制的发光二极管为点亮状态,输出信号为“0”时,它所控制的发光二极管为熄灭状。
本实验使用的七段数码管为共阴极组,其电路如图2.1所示。
图2.1 共阴极数码管及其电路(c)输入与输关系为四位二进制代码组成十六进制代码,将其代码显示,其对应关系如表2.1所示。
(d)显示方式是通过选位的方式进行,是将FPGA/CPLD的三位二进制的信号输出,通过外部三——八译码器硬件电路,选中一路LED信号为输出,故选择一位LED数码管显示,本实验是采取选相应的一个指定位置进行LED显示。
3、输入是通过外部的四个按键操作而组成一位十六进制。
其连接到FPGA/CPLD的对应的引脚上,需进行引脚分配。
4、编写译码程序,生成底层组件,组合成底层文件。
表2-1 七段字符显示真值表五、实验步骤1、 在D 盘建立自己的文件目录,D: \ EX \ Z04** \ you*\ex*;2、 在Max+Pluse Ⅱ的界面下,自己的文件目录下,建立项目文件 File \ Project \ 文件名A ;3、 在自己的文件目录下,建立文本文件 File \ New \ 文件名B.vhd ;4、 保存此文件并划归到项目文件内, File \ Project \ Set Project current File ,其中文本文件名B 必须和实体名一致;5、 输入程序,保存文件“文件名B.vhd ”,File \ Save As “文件名B.vhd ”(注意后缀,如保存默认文件名时,其后缀通常为“*.tdf ”文件,必须删除后缀为“*.tdf ”文件名;6、 单击编译器快捷方式按钮,对文本文件进行编译,观察是否有原则错误;7、 如有修改则修改程序中错误,若无错误则可做以下工作; 8、 建立底层器件的封装,File \ Create Default Symbol ;9、 建立图形文件,File \ New \ 文件名C.gdf 并化归到项目内。
七段数码管显示
七段数码管显示设计报告目录一、设计任务二、题目分析与整体构思三、硬件电路设计四、程序设计五、心得体会一.设计任务数码的显示方式一般有三种:第一种是字型重叠式;第二种是分段式;第三种是点阵式。
目前以分段式应用最为普遍,主要器件是七段发光二极管(LED)显示器。
它可分为两种,一是共阳极显示器(发光二极管的阳极都接在一个公共点上),另一是共阴极显示器(发光二极管的阳极都接在一个公共点上,使用时公共点接地)。
数码管动态扫描显示,是将所用数码管的相同段(a~g 和p)并联在一起,通过选位通信号分时控制各个数码管的公共端,循环依次点亮各个数码管。
当切换速度足够快时,由于人眼的“视觉暂留”现象,视觉效果将是数码管同时显示。
根据七段数码管的显示原理,设计一个带复位的七段数码管循环扫描程序,本程序需要着重实现两部分:1. 显示数据的设置:程序设定4 位数码管从左至右分别显示1、2、3、4;2. 动态扫描:实现动态扫描时序。
利用EXCD-1 开发板实现七段数码管的显示设计,使用EXCD-1 开发板的数码管为四位共阴极数码管,每一位的共阴极7 段数码管由7 个发光LED 组成,7 个发光LED 的阴极连接在一起,阳极分别连接至FPGA相应引脚。
四位数码管与FPGA 之间通过8 位拨码开关(JP1)进行连接。
二.题目分析与整体构思使用EXCD-1 开发板的数码管为四位共阴极数码管,每一位的共阴极7 段数码管由7个发光LED 组成,呈“”字状,7 个发光LED 的阴极连接在一起,阳极分别连接至FPGA 相应引脚。
SEG_SEL1、SEG_SEL2、SEG_SEL3 和SEG_SEL4 为四位7 段数码管的位选择端。
当其值为“1”时,相应的7 段数码管被选通。
当输入到7 段数码管SEG_A~ SEG_G 和SEG_DP 管脚的数据为高电平时,该管脚对应的段变亮,当输入到7 段数码管SEG_A~SEG_G 和SEG_DP 管脚的数据为低电平时,该管脚对应的段变灭。
七段数码管驱动电路设计
七段数码管驱动电路设计说起这七段数码管驱动电路设计,咱们得先来聊聊它是个啥宝贝。
想象一下,那些电子钟、计算器上闪烁的数字,还有咱们游戏机上计分用的那些酷炫数字,它们背后可都离不开这七段数码管的默默付出。
今儿个,咱们就来手把手,用大白话聊聊怎么给这七段数码管搭个温馨的小窝,让它能在咱的电路世界里大放异彩。
一、初探七段数码管首先,咱们得认识这位主角——七段数码管。
它呀,就像是个简约版的霓虹灯,由七条线段(a到g)和一个小数点组成,通过不同的组合,能显示出0到9这十个数字,外加一些简单的字符。
想象一下,这七条线段就像是小朋友手里的画笔,一笔一划地勾勒出数字的模样,多有趣!1.1 挑选合适的数码管挑数码管,得看看它是共阳极的还是共阴极的。
这就像选房子,有的房子阳台朝南采光好(共阳极),有的则朝北凉爽些(共阴极)。
选对了,后续设计才省心。
1.2 理解工作原理数码管工作的秘密在于电流。
咱们通过控制哪些线段通电,哪些不通电,来“画”出不同的数字。
这就像是在玩灯光秀,开灯关灯之间,数字就活灵活现地出现了。
二、设计驱动电路接下来,就是给数码管找个好搭档——驱动电路。
这就像是给数码管找了个司机,告诉它啥时候该亮,啥时候该暗。
2.1 选择驱动芯片市面上有好多驱动芯片,比如74HC595、TM1637等,它们就像是不同类型的汽车,有的省油(功耗低),有的跑得快(驱动能力强)。
咱们得根据实际需求,挑个最合适的。
2.2 搭建电路框架搭电路就像搭积木,把电源、驱动芯片、数码管还有必要的电阻电容按规矩摆好。
电源是心脏,驱动芯片是大脑,数码管是显示屏,电阻电容则是调节器,保证电路稳定运行。
2.3 编程控制电路搭好了,还得给它编个程序,告诉它怎么工作。
这就像是在教小朋友跳舞,一步步指导它怎么迈步、转身。
编程时,咱们得设定好每个数字对应的线段组合,让数码管能按咱们的意愿显示。
三、调试与优化电路搭完,程序编好,接下来就是见证奇迹的时刻了。
4位七段数码管循环显示
4、答辩考核
指
标
要
求
1、采用MCS-51单片机作为微处理器。
2、数码管模块闪烁“0028”3次,再闪烁“3105”3次,如次循环不停。。
3、在目测条件下LED显示屏各点亮度均匀、充足、稳定、清晰无串扰。
进
程
安
排
第一周:设计程序
第二周:做实物图
第三周:做实验报告
主要
参考
文献
[1]张靖武,周灵彬.《单片机系统的PROTEUS设计与仿真》.北京:电子工业出版社.2011,2
本文设计行、列驱动电路,运用单片机的智能化,系统的将每个功能电路模块连接在一起,总体结构设计如下图1-1所示:
图1-1
1.4
1.布置课题、复印资料、提出要求
2.列元件C清单、备齐元件
3.学习PROTEUS软件,PROTEUS中硬件设计
4.程序设计调试、PROTEUS软硬件调试
5.硬件电路焊接
6.单片机芯片烧录、硬件调试
[2]张义和,王敏男.《例说51单片机》.人民邮电出版社.2011,1
[3]何立民.单片机高级教程.第1版.北京:北京航空航天大学出版社,2001
[4] AT89C51 DATA SHEEP Philips Semiconductors 1999.dec
地点
院12-14
图2-1晶振电路图
2.2复位电路
为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V±5%,即4.75~5.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。如图2-2为复位电路图。
七段数码管显示控制程序设计
P、B、E、F、2、3、4、5、6、8、9
网络68为停止程序。
网络69为复位程序。将M.0至M7.7全部复位。
寄存器如表4所示:
表4 对应寄存器表
P
M2.3、M6.1
L
M2.5、M6.3
C
M2.7、M6.5
B
M3.1、M6.7
E
M3.3、M7.1
F
M3.5、M7.3
1
M0.1、M5.7
2
M0.3、M5.5
(2),具体所建数据如图4所示:
图4 数据字典
(3)通信关联
关联方式如图5所示:
图5 通信关联
4.联合调试
当PLC运行的时候,打开组态王监控界面。通过虚拟界面实现对PLC的控制,图5和图6、7分别表示当PLC 启动、停止和复位,PLC与虚拟界面状态显示图。
图5 启动画面
2.硬件电路的设计
2.1I/O地址分配
根据课设要求,由于只是利用PLC控制数码管显示,所以在输入模块设计中只需要设计三个输入量,及启动、停止、复位,分别用I0.0、I0.1、I0.2表示,具体的输入模块分配表1所示。
表1 输入模块分配表
输入点
作用
I0.0
启动
I0.1
停止
I0.2
复位
根据课设要求,是在数码管上显示“1、2、3、4、5、6、7、8、9、P、L、C、B、E、F、9、8、7、6、5、4、3、2、1、P、L、C、B、E、F”,由于数码管是由七段LED灯控制,所以输出模块采用七个输出控制,具体分配如表2所示。
根据本次实验要求,程序流程图如图2所示:
。
。
图2 程序流程图
3.2PLC程序设计
组合电路——7段数码管显示驱动电路设计报告
实验一、组合电路——7段数码管显示驱动电路设计一、实验目的了解EDA实验箱7位八段数码管显示模块的工作原理,设计标准扫描驱动电路模块,以备后面实验用。
二、硬件要求主芯片为Cyclone V E,型号为EP4CE22F17C8,7位八段数码管显示器,四位拨码开关。
三、实验内容用四位拨码开关产生8421BCD码,用CPLD分别产生7段数码管扫描驱动电路,然后进行仿真,观察波形,正确后编程下载实验测试。
四、实验原理1、72、动信号a,b,c,d,e,f,g。
通过调节四位拨码开关的状态,数码管应显示与之对应的字符。
五、实验连线输入:将芯片管角a0~a3分别接4个拨码开关;输出:将芯片管角led7s0~7分别接到数码管7段驱动信号a、b、c、d、e、f、g上。
六、实验源程序:decl7s.vhdlibrary ieee;use ieee.std_logic_1164.all;entity decl7s isport(a:in std_logic_vector(3 downto 0);led7s:out std_logic_vector(6 downto 0));end;architecture one of decl7s isbeginprocess(a)begincase a iswhen "0000" => led7s<="0111111"; when "0001" => led7s<="0000110"; when "0010" => led7s<="1011011"; when "0011" => led7s<="1001111"; when "0100" => led7s<="1100110"; when "0101" => led7s<="1101101"; when "0110" => led7s<="1111101"; when "0111" => led7s<="0000111"; when "1000" => led7s<="1111111"; when "1001" => led7s<="1101111"; when "1010" => led7s<="1110111"; when "1011" => led7s<="1111100"; when "1100" => led7s<="0111001"; when "1101" => led7s<="1011110"; when "1110" => led7s<="1111001"; when "1111" => led7s<="1110001"; when others => null;end case;end process;end;七、波形仿真结果。
单片机指令编程实例数码管显示程序设计
单片机指令编程实例数码管显示程序设计在单片机的开发中,数码管是一种常见的输出设备。
通过编程控制数码管的显示,我们可以实现各种功能,如计时、计数、温度显示等。
本文将介绍一个简单的单片机指令编程实例,用于设计一个数码管显示程序。
一、概述数码管是一种由七段LED组成的显示器件,每个数码管可以显示0-9的数字。
通过合理的控制,可以将多个数码管连接起来并显示多位数值。
在这个实例中,我们将使用AT89C51单片机和共阳数码管进行程序设计。
二、硬件连接将数码管的七段LED引脚依次连接到单片机的GPIO引脚,并将共阳极引脚连接到单片机的VCC。
为了方便控制,可以利用74HC595芯片实现数码管的级联连接,这样只需要使用三个IO口即可控制多个数码管。
三、程序设计程序设计的主要逻辑是通过编写一系列的指令来控制数码管的显示。
以下是一个简单的实例程序:```#include <reg51.h>sbit SDA = P1^0; // 74HC595芯片的串行数据引脚sbit SCK = P1^1; // 74HC595芯片的时钟引脚sbit RCK = P1^2; // 74HC595芯片的输出使能引脚unsigned char code num[10] = {0xC0, // 数字0的显示码0xF9, // 数字1的显示码0xA4, // 数字2的显示码0xB0, // 数字3的显示码0x99, // 数字4的显示码0x92, // 数字5的显示码0x82, // 数字6的显示码0xF8, // 数字7的显示码0x80, // 数字8的显示码0x90 // 数字9的显示码};void delay(unsigned int t) {unsigned int i;while (t--) {for (i = 0; i < 1000; i++);}}void writeByte(unsigned char dat) {unsigned char i;for (i = 0; i < 8; i++) {SDA = (dat & 0x80) ? 1 : 0;dat <<= 1;SCK = 0;SCK = 1;}}void display(unsigned char n) {unsigned char i;for (i = 0; i < 8; i++) {writeByte(num[n]);RCK = 1;RCK = 0;delay(1); // 延时一段时间,使数码管显示出来}}void main() {unsigned char i;while (1) {for (i = 0; i < 10; i++) {display(i);delay(500); // 每个数字显示的时间间隔为500ms}}}```以上程序通过将各个数字的显示码存储在一个数组中,然后通过控制74HC595芯片的串行数据引脚、时钟引脚和输出使能引脚,来实现数码管的动态显示。
(完整)7段数码管显示电路
4.4 显示模块4。
4。
1 7段数码管的结构与工作原理7段数码管一般由8个发光二极管组成,其中由7个细长的发光二极管组成数字显示,另外一个圆形的发光二极管显示小数点。
当发光二极管导通时,相应的一个点或一个笔画发光。
控制相应的二极管导通,就能显示出各种字符,尽管显示的字符形状有些失真,能显示的数符数量也有限,但其控制简单,使有也方便.发光二极管的阳极连在一起的称为共阳极数码管,阴极连在一起的称为共阴极数码管,如图4.9所示.4。
4.2 7段数码管驱动方法发光二极管(LED 是一种由磷化镓(GaP)等半导体材料制成的,能直接将电能转变成光能的发光显示器件.当其内部有一一电流通过时,它就会发光.7段数码管每段的驱动电流和其他单个LED 发光二极管一样,一般为5~10mA ;正向电压随发光材料不同表现为1.8~2.5V 不等。
7段数码管的显示方法可分为静态显示与动态显示,下面分别介绍。
(1) 静太显示所谓静态显示,就是当显示某一字符时,相应段的发光二极管恒定地寻能可截止。
这种显示方法为每一们都需要有一个8位输出口控制。
对于51单片机,可以在并行口上扩展多片锁存74LS573作为静态显示器接口。
静态显示器的优点是显示稳定,在发光二极管导通电注一定的情况下显示器的亮度高,控制系统在运行过程中,仅仅在需要更新显示内容时,CPU 才执行一次显示更新子程序,这样大大节省了CPU 的时间,提高了CPU 的工作效率;缺点是位数较多时,所需I/O 口太多,硬件开销太大,因此常采用另外一种显示方式——动态显示。
(2)动态显示所谓动态显示就是一位一位地轮流点亮各位显示器(扫描),对于显示器的每一位而言,每隔一段时间点亮一次。
虽然在同一时刻只有一位显示器在工作(点亮),但利用人眼的视觉暂留效应和发光二极管熄 灭共阴极7段数码管内部字段LED 和引脚分 共阳极图4.9 7段数码管结构图时的余辉效应,看到的却是多个字符“同时”显示.显示器亮度既与点亮时的导通电流有关,也与点亮时间和间隔时间的比例有关。
6位7段LED数码管显示
目录1. 设计目的与要求..................................................... - 1 -1.1 设计目的...................................................... - 1 -1.2 设计环境...................................................... - 1 -1.3 设计要求...................................................... - 1 -2. 设计的方案与基本原理............................................... - 2 -2.1 6 位 8 段数码管工作原理....................................... - 2 -2.2 实验箱上 SPCE061A控制 6 位 8 段数码管的显示................... - 3 -2.3 动态显示原理.................................................. - 4 -2.4 unSP IDE2.0.0 简介............................................ - 6 -2.5 系统硬件连接.................................................. - 7 -3. 程序设计........................................................... - 8 -3.1主程序......................................................... - 8 -3.2 中断服务程序.................................................. - 9 -4.调试............................................................... - 12 -4.1 实验步骤..................................................... - 12 -4.2 调试结果..................................................... - 12 -5.总结............................................................... - 14 -6.参考资料........................................................... - 15 - 附录设计程序汇总.................................................... - 16 -1.设计目的与要求1.1 设计目的1. 了解 6 位 7 段 LED数码管的工作原理。
7段数码管显示电路
4.4显示模块4.4.1 7段数码管的结构与工作原理7段数码管一般由8个发光二极管组成,其中由7个细长的发光二极管组成 数字显示,另外一个圆形的发光二极管显示小数点。
当发光二极管导通时,相应的一个点或一个笔画发光。
控制相应的二极管导通,就能 显示出各种字符,尽管显示的字符形状有些失真,能显示的数符数量也有限, 但其控制简单,使有也方便。
发光二极管的阳极连在一起的称为共阳极数码管, 阴极连在一起的称为共阴极数码管,如图4.9所示。
共阴极4.4.2 7段数码 ___________________发光二极管(LED 图4.9 7段数码管结构图 体材料制成的,能直接将电能转变成光能的发光显示器件。
就会发光。
------------------------------ 7段数码管每段的驱动电流和其他单个 段LED 和引脚分布 向电压随发光材料不 7段数码管的 (1)静太显示所谓静态显示,就是当显示某一字符时,相应段的发光二极管恒定地寻能可截止。
这 种显示方法为每一们都需要有一个8位输出口控制。
对于 51单片机,可以在并行口上扩展多片锁存74LS573作为静态显示器接口。
静态显示器的优点是显示稳定,在发光二极管导通电注一定的情况下显示器的亮度高,控制系统在运行过程中,仅仅在需要更新显示内容时,CPU 才执行一次显示更新子程序,这样大大节省了 CPU 的时间,提高了 CPU 的工作效率;缺点是位数较多时,所需 I/O口太多,硬件开销太大,因此常采用另外一种显示方式一一动态显示。
(2)动态显示所谓动态显示就是一位一位地轮流点亮各位显示器(扫描),对于显示器的每一位而言,每隔一段时间点亮一次。
虽然在同一时刻只有一位显示器在工作(点亮) ,但利用人眼的视觉暂留效应和发光二极管熄灭时的余辉效应,看到的却是多个字符“同时”显示。
显示器亮度既与点亮时的导通电流有关, 也与点亮时间和间隔时间的比例有关。
调整电流和时间参烽,可实现亮度较高较稳定的显示。
七段数码管数字显示
永城职业学院项目设计七段数码管数字显示班 级:082班专 业:矿山机电姓名:倪开放指导老师:马红雷日期:2010年6月8日目录摘要 (2)关键词: (2)1、PLC概况 (3)1.1 PLC的特点 (3)1.2 PLC应用领域 (3)1.3 PLC的发展 (4)2、控制要求 (4)3、硬件控制设计 (4)3.1 PLC的选型 (4)3.2 I/O设备的选择 (5)4软件控制设计 (6)4.1I/O接线图及I/O分配图 (6)4.2波形图 (7)4.3逻辑表达式 (9)4.4梯形图 (9)4.5程序显示工作原理 (11)4.6流程图 (11)4.7助记符 (13)4.8程序的调试 (14)5、心得体会 (16)参考文献 (17)评分标准 (18)摘要七段数码管广泛应用于医院、学校及一些商业机构。
7段LED数码管,则在一定形状的绝缘材料上,利用单只LED组合排列成“8”字型的数码管,分别引出它们的电极,点亮相应的点划来显示出0-9的数字。
本次设计就是利用这个特点显示自己的学号,选用的是松下FP0系列进行控制的。
本次设机采用的是共阴极七段数码管数码管。
关键词:PLC 控制设计工作原理1、PLC概况1.1 PLC的特点PLC即可编程控制器(Programmable logic Controller,是指以计算机技术为基础的新型工业控制装置。
“PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。
它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。
具体特点如下:(1)可靠性高,抗干扰能力强(2)配套齐全,功能完善,适用性强(3)易学易用,深受工程技术人员欢迎(4)系统的设计、建造工作量小,维护方便,容易改造(5)体积小,重量轻,能耗低1.2 PLC应用领域目前,PLC在国内外已广泛应用于钢铁、石油、化工、电力、建材、机械制造、汽车、轻纺、交通运输、环保及文化娱乐等各个行业,使用情况大致可归纳为如下几类: a:开关量的逻辑控制b:模拟量控制c:运动控制d:过程控制e:数据处理f:通信与联网1.3 PLC的发展PLC技术的发展,其中有两个趋势方向,一方面,PLC已经不再是自成体系的封闭系统,而是迅速向开放式系统发展,各大品牌PLC除了形成自己各具特色的PLC系统,完成设备控制任务之外,还可以与上位计算机管理系统,实现信息交流,成为整个信息管理系统的一部分。
51单片机 电机控制 输入速度 七段数码管显示 汇编程序
51单片机电机控制输入速度七段数码管
显示汇编程序
简介
本文档介绍了使用51单片机控制电机的方法,以及如何通过输入设置速度,并使用七段数码管显示相关信息的汇编程序。
电机控制
在使用51单片机控制电机之前,需要连接合适的电机驱动模块,并将其与单片机进行连接。
通过控制电机驱动模块的引脚,可以实现电机的正转、反转、停止等功能。
输入速度
可以通过外部的输入设备(如按键、旋钮等)来设置电机的速度。
通过读取输入设备的状态,可以在程序中动态地调整电机的速度。
七段数码管显示
可以通过七段数码管来显示相关信息,如电机的速度、转速等。
通过控制七段数码管的引脚,可以实现在数码管上显示相应的数字
或字符。
汇编程序
使用51汇编语言编写程序,通过设置相应的控制寄存器和引
脚状态,可以实现电机的控制和数码管的显示。
汇编程序需要包括
以下几个方面的功能:
- 初始化相关引脚和寄存器
- 读取输入设备的状态
- 根据输入设备的状态设置电机的速度
- 控制电机的正转、反转、停止等操作
- 更新七段数码管显示的内容
总结
本文档介绍了51单片机控制电机的方法,以及通过输入设备
设置速度和使用七段数码管显示信息的汇编程序。
通过合理地编写
汇编程序,可以实现电机的精确控制和相关信息的显示。
以上是本文档的大致内容,希望对您有所帮助。
七段译码器设计(含程序)
七段译码器设计一、实验目的1、掌握7段数码管的使用方法,学习数字编码的规则;2、进一步熟悉VerilogHDL语言设计方法。
二、硬件、软件要求计算机、DE2-70开发板、Quartus II软件、电源适配器、下载电缆。
三、实验内容及实验原理(一)实验原理:7段数码管的实物图和笔段名称如图1-2.27所示:图1-2.27段数码管实物及笔段名称图七段译码器的作用就是实现8421BCD码到七段码的转换。
对应于共阴(阳)数码管,其真值表如表1-2.2所示:表1-2.2七段译码器真值表输入BCD码对应显示数字dp g f e d c b a(括号内为共阳编码)0000000111111(11000000)0001100000110(11111001)0010201011011(10100100)0011301001111(10110000)0100401100110(10011001)0101501101101(10010010)0110601111101(10000010)0111700000111(11111000)1000801111111(10000000)1001901100111(10011000)(二)实验内容:1、根据真值表,采用Verilog HDL语言自行设计七段译码器。
2、设计完成后,下载至开发板上实现。
(三)实验要求:1、采用Verilog HDL语言设计方法完成七段译码器设计,写出Verilog程序;2、对程序进行功能仿真,仿真无误后进行管脚分配(输入8421BCD码:SW0-SW3,输出七段码:HEX0_D[0]-HEX0_D[6]),编译后将编程文件下载到DE2-70开发板,进行功能验证,并观察实验结果。
程序设计如下:module decoder7(data_in,data_out);input[3:0]data_in;output[7:0]data_out;reg[7:0]data_out;always@(data_in)begincase(data_in)4'b0000:data_out=8'b01000000;4'b0001:data_out=8'b01111001;4'b0010:data_out=8'b00100100;4'b0011:data_out=8'b00110000;4'b0100:data_out=8'b00011001;4'b0101:data_out=8'b00010010;4'b0110:data_out=8'b00000011;4'b0111:data_out=8'b01111000;4'b1000:data_out=8'b00000000;4'b1001:data_out=8'b00011000;default:data_out=8'b01111111;endcaseend endmodule。
八位七段数码管动态显示电路设计
八位七段数码管动态显示电路的设计一七段显示器介绍七段显示器,在许多产品或场合上经常可见。
其内部结构是由八个发光二极管所组成,为七个笔画与一个小数点,依顺时针方向为A、B、C、D、E、F、G与DP等八组发光二极管之排列,可用以显示0~9数字及英文数A、b、C、d、E、F。
目前常用的七段显示器通常附有小数点,如此使其得以显示阿拉伯数之小数点部份。
七段显示器的脚位和线路图如下图4.1所示( 其第一支接脚位于俯视图之左上角)。
图4.1、七段显示器俯视图由于发光二极管只有在顺向偏压的时候才会发光。
因此,七段显示器依其结构不同的应用需求,区分为低电位动作与高电位动作的两种型态的组件,另一种常见的说法则是共阳极( 低电位动作)与共阴极( 高电位动作)七段显示器,如下图4.2所示。
( 共阳极) ( 共阴极)图4.2、共阳极(低电位动作)与共阴极(高电位动作)要如何使七段显示器发光呢?对于共阴极规格的七段显示器来说,必须使用“Sink Current ”方式,亦即是共同接脚COM为VCC,并由Cyclone II FPGA使接脚成为高电位,进而使外部电源将流经七段显示器,再流入Cyclone II FPGA的一种方式本实验平台之七段显示器模块接线图如下图4.5所示。
此平台配置了八组共阳极之七段显示器,亦即是每一组七段显示器之COM接脚,均接连至VCC电源。
而每一段发光二极管,其脚位亦均与Cyclone II FPGA接连。
四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。
八个数码管的a、b、c、d、e、f、g、h、dp都连在了一起,8个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。
图4.5、七段显示器模块接线图七段显示器之常见应用如下可作为与数值显示相关之设计。
⏹电子时钟应用显示⏹倒数定时器⏹秒表⏹计数器、定时器⏹算数运算之数值显示器二七段显示器显示原理七段显示器可用来显示单一的十进制或十六进制的数字,它是由八个发光二极管所构成的( 每一个二极管依位置不同而赋予不同的名称,请参见图4.1 ) 。
数码管显示控制设计—间隔1s依次显示数字0(PLC设计课件)
T5
TON
Time
IN
Q
PT
ET
T6
TON
Time
IN
Q
PT
ET
T7
TON
Time
IN
Q
PT
ET
T8
TON
Time
IN
Q
PT
ET
T9
TON
Time
IN
Q
PT
ET
二、梯形图设计-比较指令
M0.0
T#4S
T1
TON
Time
IN
Q
PT
ET
T1.ET
T1.ET
Q0.0
A灯
T#1S
T#2S
M0.0启动后,T1定时器开始定时,ET值开始发生变化;此时ET值小于2s,
01 01 01 01 01 01 01 01
16#55 T1.Q
16#aa T2.Q
16#ff
T3.Q 16#00
I0.1
T#1S
T1
T2
TON
Time
IN
Q
TON
Time
IN
Q
PT
ET
PT
ET
T#1S
T#1S
T3
TON
Time
IN
Q
PT
ET
项目四:数码管显示控制设计
任务一
间隔1s依次点亮各段
9876543210
9S 8S 7S 6S 5S 4S 3S 2S 1S
开 始
二、梯形图设计-知识回顾
M0.0 T1.Q
Q0.0
T2.Q T4.Q
T5.Q
使用多个定时器实现
试验四 7段数码显示译码器的设计
实验四七段数码显示译码器设计(一)[实验目的]1、用QuartusII完成基本组合电路的设计;2、学习7段数码显示译码器设计;3、学习VHDL的CASE语句应用及多层次设计方法。
*[实验仪器]PC机、EDA实验箱一台Quartus II 6.0软件[实验内容](1) 实验内容1:说明例6-1中各语句的含义,以及该例的整体功能。
在QuartusII上对该例进行编辑、编译、综合、适配、仿真,给出其所有信号的时序仿真波形。
提示:用输入总线的方式给出输入信号仿真数据,仿真波形示如图3-1所示。
(2) 实验内容2:引脚锁定及硬件测试。
建议选GW48系统的实验电路模式6,用数码8显示译码输出(PIO46-PIO40),键8、键7、键6和键5四位控制输入,硬件验证译码器的工作性能。
(3) 实验内容3:按图3-3的方式连接成顶层设计电路(用VHDL表述),图中的CNT4B是一个4位二进制加法计数器;模块DECL7S即为例6-1实体元件,重复以上实验过程。
注意图6-3的tmp是4位总线,led是7位总线。
对于引脚锁定和实验,建议选电路模式6,用数码8显示译码输出,用键3作为时钟输入(每按2次键为1个时钟脉冲),或直接接时钟信号clock0。
要求:1.2个数码管进行显示,并且都采用不带译码器进行显示;2.1个数码管显示当前计数器的值;3..另外1个数码管当前1个数码管显示1,3,5的时候,分别显示L,三,A.,其它情况下显示0.[实验原理]7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中来实现。
例6-18作为7段译码器,输出信号LED7S的7位分别接如图6-2数码管的7个段,高位在左,低位在右。
例如当LED7S输出为“1101101”时,数码管的7个段:g、f、e、d、c、b、a分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。
基于PLC的七段码显示数码管控制
基于PLC的七段码显示数码管控制【摘要】主要介绍了S7-200型PLC传输指令和移位指令的特点和使用方法,并以七段码显示为例,给出了应用不同类型的指令进行显示和编程的方法。
【关键词】传送指令;移位指令;程序设计;七段显示译码指令生活中,经常能见到电梯楼层显示、抢答器、交通灯剩余时间数码显示以及生产线上的显示系统,可以显示数字或字母,本文利用S7-200系列PLC的指令实现对七段显示数码管的控制。
在西门子S7-200系列PLC中,有多种方法可以实现七段码显示,其中比较常用的有基本指令、传送指令和七段显示译码指令SEG,笔者结合自己的工作经验,对几种控制七段码显示的指令进行比较,供大家学习和参考。
1.传输指令和七段码显示译码指令1.1 传输指令传送指令用于在各个编程元件之间进行数据传送[1]。
西门子S7-200系列PLC的传输指令包括单个传送指令和块传送指令。
单个传送指令助记符为MOV,当传送的数据长度不同时,助记符也不尽相同。
单个传送指令根据传送数据长度可以分为:字节传送指令MOVB,字传送指令MOVW,双字传送指令MOVDW,实数传送指令MOVR,利用传送指令可以在不改变原数据值的情况下将IN中的数据传送到OUT。
块传送指令用来进行一次传送多个数据。
单个传送指令的应用如图1所示图1 传送指令的应用在传送指令中,EN端为允许输入端;ENO端为允许输出端。
当输入I0.1为“1”时,传送指令将MB0中的字节传送给MB1,如果指令正确执行,则输出Q4.0为“1”,否则,如果输入I0.0为“0”,则数据不传送。
一旦传送成功,输出Q4.0将一直保持为1,直到将Q4.0复位。
在为变量赋初始值时,为了保证传送只执行一次,一般MOV方块指令和边缘触发指令联合使用。
1.2 移位指令移位指令是使位组合的字节数据、字数据或双字数据向指定方向移位的指令[2]。
根据移位的数据长度可分为字节型移位、字型移位、双字型移位。
还可以进行循环移位。
BCD-7段数码管显示译码器电路设计
BCD-7段显示译码器译码原理
• BCD-7段译码器的输入是4位BCD码(以D、C、B、A 表示),输出是数码管各段的驱动信号(以a~g表 示),也称4—7译码器。若用它驱动共阴LED数码 管,则输出应为高有效,即输出为高(1)时,相应 显示段发光。例如,当输入8421码DCBA=0100时, 应显示 ,即要求同时点亮b、c、f、g段,熄灭 a、d、e段,故译码器的输出应为a~g=0110011, 这也是一组代码,常称为段码。同理,根据组成 0~9这10个字形的要求可以列出8421BCD-7段译码 器的真值表,见表5.1。
-- 缺少 when条件语句
case value is -- 分支条件不包含2到15 when 0 => out_1 <= ‘1’ ; when 1 => out_1 <=‘0’ ;
end case ;
case value is -- 在5到10上发生重叠 when 0 to 10 => out_1 <= ‘1’ ; when 5 to 15 => out_1 <= ‘0’ ;
对std_logc, std_logic_vector数据类型要特 别注意使用others分支条件。
例:用case 语句描述四选一电路
例:case 语句的误用 signal value:integer range 0 to 15; signal out_1 : bit ;
case value is end case ;
转向控制语句
转向控制语句通过条件控制开关决定是否执 行一条或几条语句,或重得执行一条或几条语句, 或跳过一条或几条语句。
分为五种: if 语句、case 语句、 loop 语句、next 语句、 exit 语句
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
。
。
图2 程序流程图
3.2PLC程序设计
网络1为启动程序。
网络2至网络60为定时器定时程序,定时时间1秒。如“网络3”,数码管显示2。计时器由38至63、101至134。
网络61至67为数码管显示程序。如“网络61”,对应译码管A,译码表如表3所示:
表3 译码表
(2)数据字典的建立
根据课设要求建立数据字典,具体所建数据如图4所示:
图4 数据字典
(3)通信关联
关联方式如图5所示:
图5 通信关联
4.联合调试
当PLC运行的时候,打开组态王监控界面。通过虚拟界面实现对PLC的控制,图5和图6、7分别表示当PLC 启动、停止和复位,PLC与虚拟界面状态显示图。
图5 启动画面
七段数码管显示控制程序设计
xxxx大学
课 程 设 计
(论文)
题目七段数码管显示控制程序设计(三)
班 级
学 号
学 生 姓 名
指 导 教 师
七段数码管显示控制程序设计(三)
xxxxxxx大学自动化学院
摘要:本文主要设计一个西门子S7-200系列的PLC数码管显示与上位机监控。按照设计要求利用PLC做出相应的梯形程序图,然后通过合理的硬件线路连接将PLC运行的结果在数码管上正确的显示出来。通过上位机设计组态王监控界面,对PLC控制数码管的显示进行模拟,实现对PLC的监控功能。并对PLC和组态王的应用和特点做了相关介绍。关键字:西门子s7-200;数码管显示;组态王;监控系统。
1.3组态王
组态王开发监控系统软件,是新型的工业自动控制系统,它以标准的工业计算机软、硬平台构建的集成系统取代传统的封闭式系统。组态王具有适应性强、开放性好、易于扩展、经济、开发周期短等优点。方便地构成监控画面,并以动画方式显示控制设备的状态,具有报警窗口、实时趋势曲线等,可便利的生成各种报表。它还具有丰富的设备驱动程序和灵活的组态方式、数据链接功能。
1.总体方案设计
1.1控制要求
由PLC控制的七段数码管进行循环显示,数码管亮一秒,灭一秒。显示顺序如下:“1、2、3、4、5、6、7、8、9、P、L、C、B、E、F、9、8、7、6、5、4、3、2、1、P、L、C、B、E、F”。
硬件部分采用SIMATIC S7-200系列PLC,通过接线将PLC与数码管挂箱连接起来。
软件部分采用PLC专用的编程软件STEP7,监控系统采用组态王设计虚拟的监控界面,通过通信实时监测PLC的运行状态。
1.2S7-200的特点
S7-200系列具有极高的性能价格比。适用于各行各业,各种场合中的检测、监测及控制的自动化。其强大功能使其无论在独立运行中,或相连成网络皆能实现复杂控制功能。另外有极高的可靠性,极丰富的指令集,易于掌握,便捷的操作,丰富的内置集成功能,实时特性,强劲的通讯能力,丰富的扩展模块。
2.硬件电路的设计
2.1I/O地址分配
根据课设要求,由于只是利用PLC控制数码管显示,所以在输入模块设计中只需要设计三个输入量,及启动、停止、复位,分别用I0.0、I0.1、I0.2表示,具体的输入模块分配表1所示。
表1 输入模块分配表
输入点
作用
I0.0
启动
I0.1
停止
I0.2
复位
根据课设要求,是在数码管上显示“1、2、3、4、5、6、7、8、9、P、L、C、B、E、F、9、8、7、6、5、4、3、2、1、P、L、C、B、E、F”,由于数码管是由七段LED灯控制,所以输出模块采用七个输出控制,具体分配如表2所示。
数码管G段
P、B、E、F、2、3、4、5、6、8、9
网络68为停止程序。
网络69为复位程序。将M.0至M7.7全部复位。
寄存器如表4所示:
表4 对应寄存器表
P
M2.3、M6.1
L
M2.5、M6.3
C
M2.7、M6.5
B
M3.1、M6.7
E
M3.3、M7.1
F
M3.5、M7.3
1
M0.1、M5.7
2
M0.3、M5.5
表2 输出模块分配表
Q0.0
Q0.1
Q0.2
Q0.3
Q0.4
Q0.5
Q0.6
A
B
C
D
E
F
G
2.2硬件连接图
根据具体的输入模块和输出模块连接硬件线路图如图1所示:
图1 硬件连接图
3.软件设计
软件设计分为两部分,一部分是SIMATIC S7-200系列PLC程序设计,另一部分是组态王监控画面设计。
3.1程序流程图
段位
显示数字部分
数码管A段
P、C、B、E、F、2、3、5、7、8、9
数码管B段
P、B、1、2、3、4、7、8、9
数码管C段
B、1、3、4、5、6、7、8、9
数码管D段
L、C、B、E、F、2、3、5、6、8
数码管E段
P、L、C、B、E、F、2、6、8
数码管F段
P、L、C、B、E、F、4、5、6、8、9
根据课设要求及数据字典,绘制组态王监控界面,将数据字典与组态王界面上的相应模块关联在一起,然后进行对PLC运行程序的虚拟监控。界面开关量设计了三个,一个启动,一个停止,一个复位,可以在上位机界面运行的时候对PLC进行控制。如图3所示:
图3 控制界面
图中共有三个按钮,点击启动,数码管开始显示;点击停止,停止显示;点击复位,数码管清零变为初始状态;画面可显示时间日期。
3
M0.5、M5.3
4
M0.7、M5.1
5
M1.1、M4.7
6
M1.3、M4.5
7
M1.5、M4.3
8MLeabharlann .7、M4.19M2.1、M3.7
3.3组态王监控画面设计
(1)控制界面设计过程
首先启动浏览器,新建工程,新建名为“数码管”的工程,进入工程。然后定义外部设备,在工程浏览器的左侧选中“COM1”,在右侧双击“新建”,弹出“设备配置向导”对。在I/O设备列表显示区中,选中PLC设备,单击符号“+”将该节点展开,再选中“西门子”,依次选中“S7-200系列”设备,选中“PPI”。建立数据字典。
图6停止
图7复位清零
5.课设小结及进一步设想
通过这次PLC课程设计,我收获颇多,每天对着电脑,和同学探讨并查阅资料,感到有趣。短暂的单片机学习,有种意犹未尽之感,在这次课设中,加深了单片机相关知识的理解。
0.前言
随着科学技术的发展,工业控制系统有了飞速的发展。由于PLC具有结构简单、编程方便、可靠性高等优点,已广泛用于工业过程和位置的自动控制系统中。数码管作为最基本的工业控制和显示对象,在PLC的控制工程中也经常出现,并且控制技术也日趋完善。PLC应用领域极为广泛,覆盖所有与自动检测,自动化控制有关的工业及民用领域,包括各种机床、机械、电力设施、民用设施、环境保护设备等等。如:冲压机床,磨床,印刷机械,橡胶化工机械,中央空调,电梯控制,运动系统。本次课设采用的是SIMATIC S7-200系列PLC。本次课程设计能够较好的表达SIMATIC S7-200系列PLC对数码管的自动控制过程。