www.whkt.net > 基于vErilog的交通灯程序

基于vErilog的交通灯程序

不会,不知道交通灯接口,显示,电路.

我设计了一个,红灯30,绿灯60,黄灯3.我这不能仿真,试试吧.module traffic; reg clock,red,green,amber; parameter on=1, off=0, red_tics=30, green_tics=60, amber_tics=3; initial red=off; initial green=off; initial amber=off; always begin red=

//绿灯亮40秒,转黄灯;//黄灯亮5秒,转左转灯;//左转灯亮15秒,转黄灯;//黄灯亮5秒,转红灯;//红灯亮55秒,转绿灯;//lamp从高到低 分别接红灯 黄灯 绿灯 左转灯//account接2个数码管module traffic(clk,en,lamp,acount);output[7:0] acount;

你这个里面蛮多错哦图上复位信号reset是高电平有效的,语句中第一个划线的句子是有错的.信号sensor2既然位宽是3位为何输入定义为1位state <= nxstate是将状态机下一状态送给当前状态,因为状态机我们都是采用组合逻辑case(state) st0: nxstate=xxxxx st1: nxstate=xxxxxx 等等..如果当前状态为st0,满足条件的话肯定是下一拍才跳到另外一个状态,那么就要用到时序逻辑将当前状态nxstate复制给state. 这都是比较基本的状态机写法了,多看看波形,结合时序分析下就明白了

交通灯控制器 /* 信号定义与说明: CLK: 为同步时钟; EN: 使能信号,为1 的话,则控制器开始工作; LAMPA: 控制A 方向四盏灯的亮灭;其中,LAMPA0~LAMPA3,分别控制A 方向的 左拐灯、绿灯、黄灯和红灯; LAMPB: 控制B 方向

module TSPT_LIT(input sys_clk ,input sys_rst_n,output reg [1:0] man_s2n , //人行南北output reg [1:0] man_e2w , //人行东西output reg [1:0] car_s2n , //车行南北output reg [1:0] car_e2w , //车东西output reg [1:0] car_s2w , //车南北左转output

module traffic (clock, reset, sensor1, sensor2, red1, yellow1, green1, red2, yellow2, green2);input clock, reset, sensor1, sensor2;output red1, yellow1, green1, red2, yellow2, green2;// Define the statesparameter st0 = 0, st1 = 1, st2 = 2, st3 = 3, st4 =

如果有多个模块的话写个顶层模块,通过例化调用每个子模块就好了;

我们将问题分解为2部分,来自同步时钟域信号的处理和来自异步时钟域信号的处理.前者要简单许多,所以先讨论前者,再讨论后者. 1.同步时钟域信号的处理 一般来说,在全同步设计中,如果信号来自同一时钟域,各模块的输入不需要寄存

就用一个时钟. 两个状态: 等待和请求: 请求时候请求0809采样,同时转换为等待; 等待态收到0809有效信号后,读取数据,转为请求状态.

相关搜索:

网站地图

All rights reserved Powered by www.whkt.net

copyright ©right 2010-2021。
www.whkt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com