【ARM+51单片机开发板套件试用体验】 4、交通灯试验

  • hehung
  • LV5工程师
  • |      2018-04-04 10:11:52
  • 浏览量 947
  • 回复:0
今天看到开发板上面还有一个交通灯模块,于是就试了一下交通灯控制。 首先打开原理图,搜索交通灯,如下: 从上图中可以看出,所有的LD灯都是接在VCC上面的,所以LED灯的接法是共阳极的,需要给控制引脚一个低电平才可以触发。 这是交通灯的电路排布: 我的接线 JP1 --- P0 J22 --- P2.1|P2.0 交通定的原理应该大家都知道了吧,就不多作解释了。直接上程序:
#include 



#define uchar unsigned char 

#define uint  unsigned int

	

//我的接线	JP1 --- P0     J22 --- P2.1|P2.0



//上面红灯亮

#define RED1 	0x5e		//01011110

#define RED1_	0x02		//10



//黄灯亮

#define RED2 	0x6d		//01101101

#define RED2_	0x02		//10



//右边红灯亮

#define RED3 	0xB3		//10110011

#define RED3_	0x01		//01



//延时函数

void delay_ms(uint ms)

{

	uchar kk;

	for(;ms>0;ms--)

		for(kk=110;kk>0;kk--);

}



int main()

{

	P0 = 0;

	P2 = 0;

	while(1)

	{

		P0 = RED1;

		P2 = RED1_;

		delay_ms(5000);

		P0 = RED2;

		P2 = RED2_;

		delay_ms(2000);

		P0 = RED3;

		P2 = RED3_;

		delay_ms(5000);

	}

}
最终的实现结构图: 由于手机像素比较渣,拍出来不太容易看出效果,这是在提示我该换手机了;P 好了,交通灯的试验就到这里了,其实还可以加上数码管计时显示的。期望大家支持:)
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:0
x
收藏成功!点击 我的收藏 查看收藏的全部帖子