刚接触FPGA那会儿总觉得交通灯项目太“教科书“,真自己动手才发现时序控制藏着不少坑。这次咱们用Verilog搞个带特殊左转信号的交通灯系统,直接上干货 📅 发布时间:2026/7/5 6:06:24 👁️ 浏览次数: 基于fpga的交通灯设计要求A通道绿灯亮30S黄灯亮5S左拐灯亮15S黄灯亮5S这个过程中B通道一直亮红灯之后A通道亮红灯B通道绿灯亮40S之后黄灯亮5S之后左拐灯亮15S之后黄灯亮5S之后A通道转为绿灯B通道转为红灯。 提供quartus以及modelsim工程以及仿真结果文档可以上板先看核心状态机设计拿always块搭了个交通指挥官reg [3:0] state; parameter A_GREEN 4b0001, A_YELLOW 4b0010, A_LEFT 4b0100, A_Y2 4b1000, B_GREEN 4b0001, B_YELLOW 4b0010, B_LEFT 4b0100, B_Y2 4b1000; // 状态持续时间设定 reg [5:0] counter; parameter A_G_TIME 30, A_Y_TIME 5, A_L_TIME 15, B_G_TIME 40, B_Y_TIME 5, B_L_TIME 15;这里用独热码编码状态每个通道独立的状态参数看起来有点重复但实测比合并编码更易维护。注意counter用6位足够存最大40秒的计数值。计时控制是重点看这段always块always (posedge clk_1hz) begin case(state) A_GREEN: begin if(counter A_G_TIME-1) begin state A_YELLOW; counter 0; end else begin counter counter 1; end } // 其他状态类似... default: state A_GREEN; endcase end这里有个细节counter判断用AGTIME-1而不是AGTIME因为从0开始计数。用1Hz时钟源是关键在顶层模块做了分频// 50MHz转1Hz reg [25:0] div_cnt; always (posedge clk_50m) begin if(div_cnt 50_000_000-1) begin clk_1hz ~clk_1hz; div_cnt 0; end else begin div_cnt div_cnt 1; end end分频计数器位宽算清楚26位足够存5千万次计数。注意这里用取反生成时钟实际项目建议用使能信号更稳定。输出控制部分最考验位运算assign A_light (state A_GREEN) ? 3b100 : (state A_YELLOW) ? 3b010 : (state A_LEFT) ? 3b001 : 3b010; assign B_red (state inside {A_GREEN, A_YELLOW, A_LEFT, A_Y2}) ? 1b1 : 0;这里用三元运算符实现状态到灯光的映射。注意B通道红灯在A通道所有状态期间保持亮起用inside操作符简化判断。Modelsim仿真抓个波形图基于fpga的交通灯设计要求A通道绿灯亮30S黄灯亮5S左拐灯亮15S黄灯亮5S这个过程中B通道一直亮红灯之后A通道亮红灯B通道绿灯亮40S之后黄灯亮5S之后左拐灯亮15S之后黄灯亮5S之后A通道转为绿灯B通道转为红灯。 提供quartus以及modelsim工程以及仿真结果文档可以上板!仿真波形显示状态切换时间准确A通道绿灯持续30个时钟周期后跳转黄灯从波形可见A通道绿灯计数到290开始后切黄灯完全符合设计。B通道在A活动期间保持红灯切换后立即变绿。上板时要注意引脚分配建议这样配置set_location_assignment PIN_B14 -to clk_50m set_location_assignment PIN_A13 -to A_light[0] # 左转灯 set_location_assignment PIN_B13 -to A_light[1] # 黄灯 set_location_assignment PIN_A14 -to A_light[2] # 绿灯 # B通道类似...实测时发现个有趣现象机械继电器控制的信号灯在切换时会有轻微延迟加入10ms的消抖逻辑后问题解决。这也提醒我们真实硬件和仿真环境确实存在差异。完整工程已经打包包含Quartus项目文件、仿真脚本和约束文件。直接烧录到Cyclone IV开发板就能看到红绿灯按设计节奏跳动。下次试试加入紧急车辆感应功能用红外传感器触发优先通行应该挺有意思。
【Spring Boot】Spring AOP中的环绕通知 目录 一、什么是AOP?二、AOP 的环绕通知 2.1 切点以及切点表达式2.2 连接点2.3 通知(Advice)2.4 切面(Aspect)2.5 不同通知类型的区别 2.5.1 正常情况下2.5.2异常情况下 2.6 统一管理切点PointCut 一、什么是AOP Aspect Oriented Programming&#… 2026/5/17 10:24:31
写毕业论文必看:好用 AI 工具合集 以下是 2026 年最主流、适合毕业论文的 AI 写作工具,按全流程全能、中文专项、英文 / 润色、免费 / 轻量四大类整理,直接对应毕业论文从选题到定稿的全环节需求。一、全流程全能型(一站式搞定论文)适合:本科 / 硕博毕业… 2026/7/3 2:49:46
医疗AI场景下算法编程的深度解析(2026新生培训讲稿)(总结) 项目总结与完整Python程序 通过本书的学习,我们从医疗AI的基础知识出发,系统掌握了经典机器学习算法的原理与医疗应用,深入探讨了数据处理、特征工程、模型评估、可解释性、不平衡问题处理、模型融合等进阶技术,并在第16章中以ICU败血症早期预警系统为例,完整演示了从问题… 2026/7/4 8:05:07
密评与等保双合规!2026年企业如何一次投入两项达标 一道新考题:密评加等保双合规2026年,很多企业安全负责人突然发现自己面临一道新考题:以前只需要做等保测评,现在监管部门要求密评和等保两项都必须通过。这可不是简单的多做一套卷子,而是涉及技术架构改造、管理制度完… 2026/7/5 14:12:18
碳捕捉、利用与封存(CCUS):双碳目标下,高耗能产业脱碳的长期路径 在迈向碳中和的进程中,有一个现实不容回避:部分高耗能行业的碳排放难以通过电气化或可再生能源替代完全消除。钢铁高炉中的焦炭还原反应、水泥窑中碳酸盐的分解、化工厂的工艺过程排放——这些“过程排放”与能源消耗无关,而是化学反应本身的… 2026/7/5 14:08:17
时空视觉引擎赋能多源步态比对与人体行为深度分析白皮书 一体化步态预警研判系统|配套部署测评·四年运维全套服务 远距离无感步态生物识别·非接触式人员心理健康筛查平台 编制单位:镜像视界浙江科技有限公司 联合研发:镜像视界浙江普陀时空大数据应用技术联合研究院 课题资质:国家“十四五”时空大数据与视频孪生重点课题成果 权威认证:河南省电检院全工况精度检测、GB/T41773步态隐私合规认证、信创… 2026/7/5 14:08:17
TPS65263与STM32F107VC嵌入式电源管理方案详解 1. 为什么选择TPS65263与STM32F107VC组合在现代嵌入式系统设计中,电源管理方案的选择往往决定了整个系统的稳定性和能效表现。TPS65263作为TI(德州仪器)推出的三路同步降压转换器,与ST(意法半导体)的STM32F… 2026/7/5 14:08:17
Inter字体系统:为什么顶尖科技公司都选择这款开源字体作为秘密武器? Inter字体系统:为什么顶尖科技公司都选择这款开源字体作为秘密武器? 【免费下载链接】inter The Inter font family 项目地址: https://gitcode.com/gh_mirrors/in/inter 战略价值模块:数字时代的技术决策矩阵 在数字产品竞争白热化的… 2026/7/5 13:56:15
98.可直接投产!IEC61131-3 ST 物料分拣系统|状态机 + 超时保护 摘要 可编程逻辑控制器(PLC)作为工业自动化的核心控制单元,其编程能力直接决定了产线效率与系统可靠性。本文从PLC的硬件架构与扫描周期原理出发,深入剖析IEC 61131-3标准下的五种编程语言,重点聚焦结构化文本(ST)与梯形图(LD)的混合编程方法。通过一个完整的物料分拣… 2026/7/5 13:56:15
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/5 0:01:32
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/5 0:01:32
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/5 0:05:36
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/5 0:01:32
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/5 0:01:32
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/5 0:05:36