P6-交通灯控制系统的设计概要课件

上传人:_impsvz****pswzcf... 文档编号:243147538 上传时间:2024-09-16 格式:PPT 页数:39 大小:2.81MB
返回 下载 相关 举报
P6-交通灯控制系统的设计概要课件_第1页
第1页 / 共39页
P6-交通灯控制系统的设计概要课件_第2页
第2页 / 共39页
P6-交通灯控制系统的设计概要课件_第3页
第3页 / 共39页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,EDA,技术应用,南京信息职业技术学院,电子信息学院,P6,交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,6.1,有限状态机的设计原理,6.2,单向交通灯控制系统的设计,6.3,双向,交通灯控制系统的设计,习题,6.1,有限状态机的设计原理,实际设计中比较复杂的时序逻辑电路的设计通常采用有限状态机实现。,有限状态机的特征:,1,)用有限个状态概括系统整个工作过程;,2,)各状态可根据条件进行相互转换;,3,)各状态均有相应输出信号;,4,)系统复位时指定具体初始状态。,有限状态机(,Finited,State Machine),的特征:,P6,交通灯控制系统的设计,EDA,技术应用,根据是否具有外部输入控制信号,有限状态机可以分为:,1,),米勒型,(,mealy,),状态机,,,状态的转移由当前状态、时钟与外部输入控制信号共同控制,;,2,),摩尔型,(,moore,),状态机,,,状态的转移只受当前状态和时钟的控制,。,EDA,技术应用,P6,交通灯控制系统的设计,6.1,有限状态机的设计原理,有限状态机的分类:,该状态机共有,3,个状态(,S,0,、,S,1,、,S,2,),,X,为外部控制信号,,Y,为输出控制信号。,EDA,技术应用,P6,交通灯控制系统的设计,6.1,有限状态机的设计原理,米勒型状态机举例,:,LIBRARY IEEE,;,USE IEEE.STD_LOGIC_1164.ALL,;,ENTITY mealy IS,PORT,(x,,,clk,:,IN BIT,;,y,:,OUT BIT),;,END mealy,;,ARCHITECTURE behave OF mealy IS,TYPE,fmst,IS (s0,,,s1,,,s2),;,SIGNAL state,:,fmst,;,EDA,技术应用,P6,交通灯控制系统的设计,6.1,有限状态机的设计原理,米勒型状态机,VHDL,语言实现,:,BEGIN,P1:,PROCESS(clk,),BEGIN,IF,clkevent,AND,clk,=1THEN,CASE state IS,WHEN s0= IF x=0 THEN state=s0;,ELSE state IF x =0 THEN state=s0;,ELSE state IF x =0 THEN state=s0;,ELSE state y IF state=s2 THEN y=1,;,ELSE y=0,;,END IF,;,END CASE,;,END PROCESS P2,;,END behave,;,EDA,技术应用,P6,交通灯控制系统的设计,6.1,有限状态机的设计原理,米勒型状态机,VHDL,语言实现,:,设计一个单方向交通灯控制系统;,设计指标:,1,)控制红黄绿三盏灯交替工作,数码管显示倒计时时间;,2,)绿灯时间为,30,秒,(S,0,),,黄灯时间为,3,秒,(S,1,),,红灯时间为,20,秒,(S,2,),;,3,)能通过按键复位;,设计要求:,EDA,技术应用,P6,交通灯控制系统的设计,6.2,单向交通灯控制系统的设计,分频模块:对外部时钟信号进行分频得到,1Hz,信号;,系统控制模块:控制交通灯状态的转换,并输出相应控制信号;,显示模块:控制数码管及发光二极管;,系统原理框图,6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,分频模块的设计,外部输入脉冲为,12MHz,,分频后输出信号为,1Hz,。(分频模块设计详见数字钟设计部分),6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,系统控制模块的设计,系统控制模块由倒计时模块和状态机模块构成,;,倒计时模块主要实现数码管倒计时信号的控制;,状态机模块主要实现交通灯各状态间的转换。,6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,LIBRARY IEEE;,USE IEEE.STD_LOGIC_1164.ALL;,USE IEEE.STD_LOGIC_ARITH.ALL;,USE IEEE.STD_LOGIC_UNSIGNED.ALL;,ENTITY SM IS,PORT,(CLK: IN STD_LOGIC;,CR: IN STD_LOGIC;,LAMP: OUT STD_LOGIC_VECTOR(2 DOWNTO 0);,LEDM: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);,LEDS: OUT STD_LOGIC_VECTOR(3 DOWNTO 0),);,END SM;,系统控制模块的,VHDL,实现,库文件,定义实体,6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,ARCHITECTURE BEHAVIORAL OF SM IS,TYPE STATES IS (S2,S1,S0);,SIGNAL STATE: STATES:=S0;,SIGNAL NEXT_STATE: STATES:=S0;,SIGNAL SEC: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL MIN: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL DATAS: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL DATAM: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL LIGHT: STD_LOGIC_VECTOR(2 DOWNTO 0);,SIGNAL LOAD: STD_LOGIC;,BEGIN,定义状态,定义信号,系统控制模块的,VHDL,实现,6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,倒计时结束,转为下一状态,倒计时结束,为倒计时模块赋初值,倒计时程序,系统控制模块的,VHDL,实现,6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,P1:PROCESS(CLK,CR,LOAD),BEGIN,IF CR=0 THEN,SEC=0000;,MIN=0000;,ELSIF RISING_EDGE(CLK)THEN,IF LOAD=1 THEN,SEC=DATAS;,MIN=DATAM;,ELSE,IF SEC=0000 THEN,SEC=1001;,ELSE,SEC=SEC-1;,END IF;,IF SEC=0000 THEN,MIN=MIN-1;,END IF;,END IF;,END IF;,END PROCESS P1;,P2:PROCESS(CLK),BEGIN,IF (FALLING_EDGE(CLK) THEN,IF(SEC=0000) AND (MIN=0000)THEN,LOAD=1;,STATE=NEXT_STATE;,ELSE,LOAD LIGHT=100; -GREEN 30S,NEXT_STATE=S1; -NEXT YELLOW,DATAM=0010;,DATAS LIGHT=010; -YELLOW 3S,NEXT_STATE=S2; -NEXT RED,DATAM=0000;,DATAS LIGHT=001; -RED 20S,NEXT_STATE=S0; -NEXT GREEN,DATAM=0001;,DATAS=“1001;,END CASE;,END PROCESS P3;,LAMP=LIGHT;,LEDM=MIN;,LEDS SEG_OUT SEG_OUT SEG_OUT SEG_OUT SEG_OUT SEG_OUT SEG_OUT SEG_OUT SEG_OUT SEG_OUT NULL;,END CASE;,END PROCESS;,END BIN27SEG;,单向交通灯控制器顶层结构图,6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,系统控制模块的波形仿真,6.2,单向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,项目要求 :,模仿,6.2,单向交通灯控制系统方法,设计双向交通灯控制系统;,项目技术指标:,1,)设计一个双向(南北向、东西向)交通灯控制系统;,2,)控制南北向和东西向红黄绿三盏灯交替工作,两个二位数码管显示倒计时时间;,3,)要求南北向和东西向红黄绿灯时间相互协调。,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,双向交通灯控制系统工作原理,交通灯通常有东、西、南、北四个方向,其中东西方向完全一致,南北方向也完全一致,因此只需两个控制器来控制;,每组交通灯共有红、黄、绿三盏灯和数码管组成,按绿灯黄灯红灯绿灯顺序变化,并通过数码管显示倒计时时间;,交通灯控制系统可简单看作摩尔型状态机,可分为,4,种不同状态,详见下表;,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,表,1,交通灯的,4,种状态,状 态,东 西 方 向,南 北 方 向,绿 黄 红,绿 黄 红,1,1 0 0,0 0 1,2,0 1 0,0 0 1,3,0 0 1,1 0 0,4,0 0 1,0 1 0,双向交通灯控制系统工作原理,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,交通灯时间分配:,1,)东西向绿灯时间,30,秒,黄灯,3,秒,红灯,20,秒;,2,)南北向红灯时间,33,秒,黄灯,3,秒,绿灯,17,秒。,双向交通灯控制系统工作原理,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,交通灯状态,:,1,)东西向绿灯(,S,0,);,2,)东西向黄灯(,S,1,);,3,)南北向绿灯(,S,2,);,4,)南北向黄灯(,S,3,)。,双向交通灯控制系统工作原理,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,LIBRARY IEEE;,USE IEEE.STD_LOGIC_1164.ALL;,USE IEEE.STD_LOGIC_ARITH.ALL;,USE IEEE.STD_LOGIC_UNSIGNED.ALL;,ENTITY SM4 IS,PORT,(CLK: IN STD_LOGIC;,-,时钟信号,CR: IN STD_LOGIC;,-,复位信号,LAMP: OUT STD_LOGIC_VECTOR(5 DOWNTO 0);,-,红黄绿灯信号,WELED1: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);,-,东西向倒计时十位信号,WELED0: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);,-,东西向倒计时个位信号,NSLED1: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);,-,南北向倒计时十位信号,NSLED0: OUT STD_LOGIC_VECTOR(3 DOWNTO 0),-,南北向倒计时个位信号,);,END SM4;,双向交通灯控制系统状态机,VHDL,实现,库文件,定义实体,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,ARCHITECTURE BEHAVIORAL OF SM4 IS,TYPE STATES IS(S3,S2,S1,S0);,SIGNAL STATE: STATES:=S0;,SIGNAL NEXT_STATE: STATES:=S0;,SIGNAL COUNT0:STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL COUNT1:STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL CDATA0: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL CDATA1: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL WESEC0: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL WESEC1: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL WEDATA0: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL WEDATA1: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL NSSEC0: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL NSSEC1: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL NSDATA0: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL NSDATA1: STD_LOGIC_VECTOR(3 DOWNTO 0);,SIGNAL LIGHT: STD_LOGIC_VECTOR(5 DOWNTO 0);,SIGNAL LOAD:STD_LOGIC;,BEGIN,定义状态,定义信号,双向交通灯控制系统状态机,VHDL,实现,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,P1: PROCESS(CLK,CR,LOAD),BEGIN,IF CR=0 THEN,COUNT0=0000;,COUNT1=0000;,ELSIF RISING_EDGE(CLK)THEN,IF LOAD=1THEN,COUNT0=CDATA0;,COUNT1=CDATA1;,ELSE,IF COUNT0=0000 THEN,COUNT0=1001;,ELSE,COUNT0=COUNT0-1;,END IF;,IF COUNT0=0000THEN,COUNT1=COUNT1-1;,END IF;,END IF;,END IF;,END PROCESS P1;,倒计时器复位,倒计时结束,为倒计时模块赋初值,倒计时程序,双向交通灯控制系统状态机,VHDL,实现,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,P2: PROCESS(CLK),BEGIN,IF(FALLING_EDGE(CLK)THEN,IF(COUNT0=0000)AND(COUNT1=0000)THEN,LOAD=1;,STATE=NEXT_STATE;,ELSE,LOADLIGHT=100001;,NEXT_STATE=S1;,CDATA1=0010;CDATA0LIGHT=010001;,NEXT_STATE=S2;,CDATA1=0000;CDATA0LIGHT=001100;,NEXT_STATE=S3;,CDATA1=0001;CDATA0LIGHT=001010;,NEXT_STATE=S0;,CDATA1=0000;CDATA0,WEDATA1=0010;WEDATA0=1001;,NSDATA1=0011;NSDATA0,WEDATA1=0000;WEDATA0,WEDATA1=0001;WEDATA0=1001;,NSDATA1=0001;NSDATA0,NSDATA1=0000;NSDATA0=0010;,END CASE;,END PROCESS P4;,根据不同状态为两个方向的倒计时计数器赋初值,东西向绿灯(,S0,),东西向黄灯(,S1,),南北向绿灯(,S2,),南北向黄灯(,S3,),双向交通灯控制系统状态机,VHDL,实现,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,P5: PROCESS(CLK,LOAD,STATE),BEGIN,IF RISING_EDGE(CLK)THEN,IF (LOAD=1)AND(NOT(STATE=S3)THEN,WESEC0=WEDATA0;,WESEC1=WEDATA1;,ELSE,IF WESEC0=0000 THEN,WESEC0=1001;,ELSE,WESEC0=WESEC0-1;,END IF;,IF WESEC0=0000THEN,WESEC1=WESEC1-1;,END IF;,END IF;,END IF;,END PROCESS P5;,东西向交通灯倒计时器,双向交通灯控制系统状态机,VHDL,实现,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,P6: PROCESS(CLK,LOAD),BEGIN,IF RISING_EDGE(CLK)THEN,IF (LOAD=1)AND (NOT(STATE=S1)THEN,NSSEC0=NSDATA0;,NSSEC1=NSDATA1;,ELSE,IF NSSEC0=0000 THEN,NSSEC0=1001;,ELSE,NSSEC0=NSSEC0-1;,END IF;,IF NSSEC0=0000THEN,NSSEC1=NSSEC1-1;,END IF;,END IF;,END IF;,END PROCESS P6;,南北向交通灯倒计时器,双向交通灯控制系统状态机,VHDL,实现,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,LAMP=LIGHT;,WELED1=WESEC1;,WELED0=WESEC0;,NSLED1=NSSEC1;,NSLED0=NSSEC0;,END BEHAVIORAL;,将寄存器信号赋给输出结束结构体,双向交通灯控制系统状态机,VHDL,实现,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,双向交通灯控制系统状态机仿真,6.3,双向交通灯控制系统的设计,EDA,技术应用,P6,交通灯控制系统的设计,EDA,技术应用,习 题,P6,交通灯控制系统的设计,十字路口的示意图如图,6-1,所示,在主干道和支干,道的两个方向上都安装有红、黄、绿三色信号灯,,Cx,和,Cy,分别是安装在主干道和支干道上的传感器,,输出高电平说明有车需要通过,设计要求为:,1,、如果只有一个方向有灯时,则保持该方向畅,通;当两个方向有车时,主干道和支干道交替通,行。,2,、在只有主干道有车时,主干道亮绿灯、支干道,亮红灯;当只有支干道有车时,支干道亮红灯、主,干道亮绿灯。,3,、在两个方向都有车时,轮流点亮绿灯和红灯,,主干道每次亮绿灯,40s,,支干道每次亮绿灯,20s,,在,由绿灯转红灯之间亮,5s,的黄灯。,EDA,技术应用,习 题,P6,交通灯控制系统的设计,图,6-2,为交通灯控制系统结构框图,控制系,统由控制器和定时器两部分构成,定时器,用于亮灯时间控制。,CNT,是定时的值,,LD,是,定时值的同步预置信号,高电平有效,,ST,是定时器的状态信号,当定时结束时,,ST,输出为,1,,,clk,是周期为秒的时钟信号,,reset,是复位信号,低电平有效。,根据交通灯控制系统的技术要求和结构图,完成以下内容:,1,)画出控制器的,ASM,图;,2,)用,VHDL,语言对定时器和控制器进行描述;,3,)设计交通灯控制系统的顶层原理图;,4,)完成实际电路制作。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!