当前位置: 首页 > wzjs >正文

c net做的网站广州seo外包

c net做的网站,广州seo外包,易语言用客户端和服务器做网站,做网站兰州设计目标 1、设计一交通灯控制,控制东西方向的红、黄、绿灯和南北方向的红、黄、绿灯。 2、可手动控制和自动控制,设置两个输入控制开关。 手动/自动开关,通过P11的按键输入控制 3、手动:设置开关P11,两种情况&#x…

设计目标

1、设计一交通灯控制,控制东西方向的红、黄、绿灯和南北方向的红、黄、绿灯。
2、可手动控制和自动控制,设置两个输入控制开关。
手动/自动开关,通过P11的按键输入控制
3、手动:设置开关P11,两种情况:红灯管制(各方向)红灯,和各个方向都是黄灯闪烁(周期2S)
4、自动:东西绿灯亮5S,南北红灯亮5S;东西黄灯亮3S,南北红灯亮3S;东西红灯亮5S,南北绿灯亮5S;东西红灯亮3S,南北黄灯亮3S:然后重复刚才过程,不断循环。

硬件设计

东西向:红灯:P2_0 绿灯:P2_1 黄灯:P2_2

南北向:红灯:P2_5 绿灯:P2_6 黄灯:P2_7

按键: P1_0 P1_1

代码实现

软件延时

void Delay20ms(void)	//@11.0592MHz,用于按键消抖
{unsigned char data i, j;i = 216;j = 37;do{while (--j);} while (--i);
}

按键部分

void key_read()
{if(P1_0 == 0){Delay20ms();if(P1_0 == 0){mode++;time = 0;sec = 0;}while(!P1_0);}if(P1_1 == 0){Delay20ms();if(P1_1 == 0){flag++;time = 0;sec = 0;}while(!P1_1);}
}

定时器计时部分


void Timer0_Init(void)		//定时器初始化,10ms
{TMOD &= 0xF0;			//设置定时器模式TMOD |= 0x01;			//设置定时器模式TL0 = 0xF0;				//设置定时初始值TH0 = 0xD8;				//设置定时初始值TF0 = 0;				//清除TF0标志TR0 = 1;				//定时器0开始计时ET0 = 1;				//使能定时器0中断EA = 1;					//使能总中断
}void Timer0_Isr(void) interrupt 1
{TL0 = 0xF0;				//设置定时初始值TH0 = 0xD8;				//设置定时初始值
}

总代码

#include <REGX52.H>
#include "intrins.h"/宏定义/
sbit WE_RED = P2^0;//WE相关的为东西向
sbit WE_GREEN = P2^1;
sbit WE_YELLOW = P2^1;
sbit NS_RED = P2^5;//NS相关的为南北向
sbit NS_GREEN = P2^6;
sbit NS_YELLOW = P2^7;/变量定义区/
unsigned char temp = 0;
unsigned char mode = 0;//手动/自动模式切换标志位
unsigned char flag = 0;//手动模式中两个模式切换标志位
unsigned int time,sec;//函数声明区//
void Timer0_Init(void);
void Delay20ms(void);
void key_read();void main()
{Timer0_Init();while(1){	key_read();if(mode == 1){if(flag == 0){WE_RED = 0;NS_RED = 0;WE_GREEN = 1;WE_YELLOW = 1;NS_GREEN = 1;NS_YELLOW = 1;}}if(mode == 2)mode = 0;if(flag == 2)flag = 0;}
}void Timer0_Init(void)		//10毫秒@12.000MHz
{TMOD &= 0xF0;			//设置定时器模式TMOD |= 0x01;			//设置定时器模式TL0 = 0xF0;				//设置定时初始值TH0 = 0xD8;				//设置定时初始值TF0 = 0;				//清除TF0标志TR0 = 1;				//定时器0开始计时ET0 = 1;				//使能定时器0中断EA = 1;
}void Timer0_Isr(void) interrupt 1
{TL0 = 0xF0;				//设置定时初始值TH0 = 0xD8;				//设置定时初始值time++;if(time == 100){sec++;time = 0;}if(mode == 0){if(sec<=5&&sec>0){WE_RED = 0;NS_RED = 1;WE_GREEN = 1;WE_YELLOW = 1;NS_GREEN = 1;NS_YELLOW = 1;}if(sec <= 10 && sec >5){WE_RED = 1;NS_RED = 0;			}if(sec <= 13 && sec > 10){NS_RED = 1;WE_YELLOW = 0;			}if(sec <= 16 && sec > 13){WE_YELLOW = 1;NS_RED = 0;}if(sec <= 21 && sec > 16){NS_RED = 1;WE_RED = 0;}if(sec <= 26 && sec > 21){WE_RED = 1;NS_RED = 0;}if(sec <= 29 && sec > 26){NS_RED = 1;WE_RED = 0;}if(sec <= 32 && sec > 29){WE_RED = 1;NS_YELLOW = 0;}if(sec > 32){NS_YELLOW = 1;sec = 0;}}if(mode == 1&&flag == 1){if(sec<=2){NS_YELLOW = 0;WE_YELLOW = 0;NS_GREEN = 1;WE_GREEN = 1;WE_RED = 1;NS_RED = 1;}if(sec>2 && sec <= 4){NS_YELLOW = 1;WE_YELLOW = 1;}if(sec>4)sec = 0;}
}void key_read()
{if(P1_0 == 0){Delay20ms();if(P1_0 == 0){mode++;time = 0;sec = 0;}while(!P1_0);}if(P1_1 == 0){Delay20ms();if(P1_1 == 0){flag++;time = 0;sec = 0;}while(!P1_1);}
}void Delay20ms(void)	//@11.0592MHz
{unsigned char data i, j;i = 216;j = 37;do{while (--j);} while (--i);
}

代码目前在硬件上面没有问题,由于社区上传视频较为麻烦,稍后更新Proteus仿真,大家可以将代码烧入仿真里面进行相关实验,也可以自己搭建硬件电路进行测试,后面会给大家更新相关的硬件电路以及其他小项目

http://www.dtcms.com/wzjs/458258.html

相关文章:

  • 万全做网站wl17581英语seo什么意思
  • 网站建设目录结构设计seo的主要工作内容
  • 山东思达建筑公司排名山西seo和网络推广
  • 网站模板系统网站快照优化公司
  • 广东网络公司网站建设seo推广哪家公司好
  • 宿迁网站建设公司网站排名优化工具
  • 网站和小程序的区别网络营销主要特点有哪些
  • iis打开网站变成下载企业网站的推广方法有哪些
  • 夏邑县百城建设提质网站google首页
  • 自己建网站程序媒介
  • 网站如何做外链每日一则新闻摘抄
  • 新手建设html5网站广告联盟广告点击一次多少钱
  • 网站建设应该怎么做webview播放视频
  • 哈尔滨精致网站建设企业文化理念
  • wordpress数据库主机名武汉seo哪家好
  • 免费ppt模板大全免费下载网站百度电脑网页版
  • 搜索引擎优化实训心得账号seo是什么
  • 卖高仿名牌手表网站seocms
  • 深圳网站设计哪家快聊城疫情最新消息
  • 网站优化两大核心要素是什么seo优化的方法
  • 做冻品海鲜比较大的网站有哪些快速开发网站的应用程序
  • 宁波网站建设公司哪家好掌门一对一辅导官网
  • 德州哪里做网站seo网站免费优化软件
  • 建设银行网站会员有什么用找索引擎seo
  • 做网站设计师优化推广网站推荐
  • 网站 策划友情链接的网站图片
  • 安陆网站建设seo课程总结怎么写
  • 怎么做淘客网站推广网站推广策划思路
  • 深圳贷款网站建设百度后台登录
  • 新企业网站应该怎么做SEO优化网络服务提供商是指