交通灯实验电路搭建与驱动程序设计
基于口袋机综合实验设计
一、实验目的
二、实验设备
三、实验原理
四、实验代码解析
五、实验步骤
六、实验现象
七、拓展思考
八、应用领域
一、实验目的
了解EDA软件。程序的下载和仿真
了解如何正确分配和配置单片机的I/O口
熟悉和使用步进电机的驱动。
二、实验设备
口袋机
口袋机下载线
JC-PM7模块
JC-PM15实验扩展板
三、实验设备
实验器件简介:
交通灯有两种,给机动车看的叫机动车灯,通常指由红、黄、绿(绿为蓝绿)三种颜色灯组成用来指挥交通通行的信号灯。
绿灯亮时,准许车辆通行,黄灯闪烁时,已越过停止线的车辆可以继续通行;没有通过的应该减速慢行到停车线前停止并等待,红灯亮时,禁止车辆通行。给行人看的叫人行横道灯,通常指由红、绿(绿为蓝绿)二种颜色灯组成用来指挥交通通行的信号灯,红灯停,绿灯行。
三、实验原理
交通灯实验模块原理图:
原理图说明
采用4个三个红绿黄三个LED灯,两个LED为一组,并联控制
功能说明
使用6个GPIO控制4个三色LED灯
三、实验原理
实验原理:
上下两个连接器就是排针
一个LED内部集成了3个LED分别是红色黄色绿色
6个三极管时为了增大驱动电流
三极管工作在饱和区,R2给高电平,Q1三极管导通,和三极管连接的两个LED就被点亮
三、实验原理
程序分析:
绿色注释部分就是模块的端口定义
用到了6个端口
gpio_init(GPIO_P1,GPIO_Pin_3,GPIO_OUT_PP);
全部设置成推挽模式
三、实验原理
程序分析:
voidstart_test_fun(void)是所有灯的测试函数
上电后运行一次,用于判断所有灯的好坏
三、实验原理
程序分析:
voidtest_mode(void)是模拟真实交通灯的运行函数
主循环之前是两个函数
digitron_gpio_init();//端口初始化
start_test_fun();//所有灯依次上电用于自检
四、实验原理
模块引脚说明:
四、参考代码分析
交通灯配置函数
详细配置函数见参考程序
五、参考代码分析
主函数
时钟初始化
开始
外设初始化
交通灯运行
结束
五、实验步骤
1、将实验模块插在扩展模块的位置4,如下图
2、打开程序
3、下载程序
六、实验现象
上电后全部LED红,绿,黄,分别亮1秒,用于开机LED测试
然后按照真实红绿灯控制。
七、拓展思考
怎么样编写程序能够实现快速的改变红绿灯的等待时间。
八、应用领域
十字路口
感谢大家的认真学习!
祝大家生活、工作愉快!