找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 11785|回复: 12
打印 上一主题 下一主题
收起左侧

STM32F103简易交通灯程序设计源码

  [复制链接]
跳转到指定楼层
#
ID:250938 发表于 2018-4-11 08:08 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
交通灯功能实现:
1.        交通灯基本功能:包括绿灯倒计时、红灯倒计时、绿灯常亮、绿灯闪烁、黄灯亮、黄灯闪烁、红灯亮、红灯闪烁等功能及其衔接;
2.        要求在任意时刻,可以通过按键设置任意方向为红灯(或绿灯);
3.        红、绿灯持续时间可以通过按键设置;
4.        交通灯能够关闭,关闭类型有两种:
a)        所有灯全不亮;
b)       所有黄灯闪烁、其余灯不亮。
5.        模拟人行过街红绿灯(作为独立功能测试
a)        按下按键,对应方向车道开始绿灯倒计时(倒计时时间可以设置),时间到后,变黄灯,再变红灯;
b)       红灯倒计时时长可设置;
c)        红灯重新变为绿灯后,必选间隔特定时间(可设置)后,才能再次响应按键,否则不响应。


STM32F103单片机源程序如下:
  1. #include "traffic.h"
  2. #include "systick.h"
  3. #include "sys.h"
  4. u16 m=1000;//定义一个变量来设置交通灯时间加减
  5. void traffic_init(void)//初始化IO
  6. {
  7.         
  8.           //定义一个GPIO_InitTypeDef类型的结构体
  9.     GPIO_InitTypeDef GPIO_InitStructure;
  10.     //开启GPIOC的外设时钟
  11.     RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOE, ENABLE );
  12.     //选择需要控制的GPIO引脚
  13.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
  14.     //设置引脚模式为通用推挽输出
  15.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  16.     //设置引脚速率为50MHz
  17.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  18.     //调用函数库,初始化GPIO
  19.     GPIO_Init( GPIOE, &GPIO_InitStructure );
  20.         
  21.     GPIO_ResetBits(GPIOE, GPIO_Pin_All);  
  22.          
  23.         
  24. }


  25. void traffic_display(void)          //交通灯显示子函数
  26. {
  27.         

  28.         
  29.           R1=1;G2=1;
  30.           delay_ms(m); delay_ms(m); delay_ms(m);
  31.           delay_ms(m); delay_ms(m); delay_ms(m);
  32.                
  33.           Y2=1;delay_ms(1000);         
  34.           Y2=0;delay_ms(1000);
  35.           Y2=1;delay_ms(1000);         
  36.           Y2=0;delay_ms(1000);
  37.           Y2=1;delay_ms(1000);         
  38.           Y2=0;delay_ms(1000);
  39.         
  40.           R1=0;G2=0;
  41.         
  42.         
  43.           R2=1;G1=1;
  44.           delay_ms(m); delay_ms(m); delay_ms(m);
  45.           delay_ms(m); delay_ms(m); delay_ms(m);
  46.           Y1=1;delay_ms(1000);         
  47.           Y1=0;delay_ms(1000);
  48.           Y1=1;delay_ms(1000);         
  49.           Y1=0;delay_ms(1000);
  50.           Y1=1;delay_ms(1000);         
  51. ……………………

  52. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
仿真电路:无
原理图:无
Keil代码下载: Test 6.rar (280.17 KB, 下载次数: 291)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏5 分享淘帖 顶1 踩
回复

使用道具 举报

来自 12#
ID:699018 发表于 2020-2-29 20:22 | 只看该作者
程序不全,大家不要下载

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

来自 11#
ID:286761 发表于 2020-3-3 16:35 | 只看该作者
这个原理图不全,大家不要浪费分数了。程序还得等做的时候才知道能不能行了。。。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

10#
ID:250938 发表于 2020-3-17 10:43 | 只看该作者
51hdz3356619 发表于 2020-3-3 16:35
这个原理图不全,大家不要浪费分数了。程序还得等做的时候才知道能不能行了。。。

这个原理图只单就这一个模块的原理图,(可以不用浪费黑币下载查看)关于实物连线其实可完全基于你自己的代码设置,这个比较灵活。程序功能本人当时是用实物做过实验,应该可行。只能说提供一个参考吧。
回复

使用道具 举报

9#
ID:250938 发表于 2020-3-17 10:34 | 只看该作者
aaaaaa。 发表于 2020-3-2 09:32
楼主,有没有原工程

工程文件就是那个压缩包。
回复

使用道具 举报

8#
ID:511461 发表于 2020-3-2 09:32 | 只看该作者
楼主,有没有原工程
回复

使用道具 举报

7#
ID:529251 发表于 2019-5-7 09:45 | 只看该作者
刚刚好在找!感谢!
回复

使用道具 举报

6#
ID:367180 发表于 2018-12-20 22:25 | 只看该作者
欸这个电路图不完整吧
回复

使用道具 举报

5#
ID:450868 发表于 2018-12-20 16:50 | 只看该作者
很棒,一直在找
回复

使用道具 举报

地板
ID:380939 发表于 2018-7-30 16:19 | 只看该作者
太棒了,我一直在找资料
回复

使用道具 举报

板凳
ID:307765 发表于 2018-4-14 10:02 | 只看该作者
学习学习,做交通项目呢
回复

使用道具 举报

沙发
ID:250938 发表于 2018-4-11 17:08 | 只看该作者
原理图:

交通灯模块.pdf

94.11 KB, 下载次数: 128, 下载积分: 黑币 -5

回复

使用道具 举报

楼主
ID:1 发表于 2018-4-11 15:39 | 只看该作者
楼主能分享个原理图吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表