智能窗帘设计程序(51单片机控制步进电机)

合集下载

基于51单片机的智能窗帘控制系统设计与实现

基于51单片机的智能窗帘控制系统设计与实现

项目编号___201111 ___ 江南大学物联网工程学院大学生创新训练计划结题报告项目名称基于51单片机的智能窗帘控制系统设计与实现项目负责人晶所学专业电气工程及其自动化所在学院物联网工程学院(手机)电子信箱diamond-heartqq.项目起止年月2011/11-2012/05第一指导教师肖永松专业技术职务工程师(手机)电子信箱结题日期2012年5月江南大学物联网工程学院创新训练计划项目结题验收表学院名称:物联网工程学院填写日期:2012 年5 月大学生创新训练计划《基于AT89C51单片机的智能窗帘控制系统》成果精粹江南大学二○一二年五月简介随着物联网概念的发展,智能家居的理念也渐渐渗透到我们的生活中,受此启发,我们想尝试着做一个智能窗帘的控制系统,希望可以通过光强和时间来控制窗帘的开合。

恰好我们都进行了电路、模电数电的学习,也曾初步接触了单片机,我们想通过设计这个控制系统来加深我们对所学容的理解和掌握,更加熟悉使用protel等专业软件。

计划设计一个系统可以实现以下功能:在自动模式下,在设定的时间,如早成6点至晚上8点,晚上8点至早晨6点,时间控制,可以避免室开灯造成窗帘自动拉开。

通过光强控制,在设定光照强度围,窗帘拉开,超过设定强度,如夏日中午,为避免房间被光直射造成温度过高,窗帘关闭。

在手动模式下,通过按键来调整窗帘的开合状态。

最终设计使用STC89C51单片机,STC89C51有512字节的数据存储空间,是AT89C51的两倍,并且带有4K字节的EEPROM存储空间,可以断电后保存资料,可以直接使用串口下载,而AT89C51需要专用下载器。

控制系统可以实现对光信号的采集、转换、传输,并根据单片机接收到的信号,结合时钟电路的信号,对步进电机进行控制,通过控制步进电机转向及转动圈数,来实现对窗帘的打开及拉合控制。

设计时对硬件进行了模块化分析,以STC89C51作为主控芯片,光信号采集使用光敏模块,数模转换主要使用PCF8591芯片,显示模块采用1602液晶显示器,时钟电路采用DS1302芯片,电机驱动器主要使用ULN2003。

基于51单片机智能窗帘方案设计思路

基于51单片机智能窗帘方案设计思路

基于51单片机智能窗帘方案设计思路一、方案背景随着智能家居的发展,越来越多的家庭开始引入智能化的设备。

其中,智能窗帘作为一种常见的智能化设备,受到了越来越多人的关注。

本方案旨在设计一款基于51单片机的智能窗帘,实现自动控制和远程控制功能。

二、硬件设计1.电机驱动模块电机驱动模块是实现窗帘开合的核心部件。

本方案采用直流电机作为驱动电机,并通过L298N电机驱动模块来控制电机的正反转和速度。

同时,为了保证电机工作时稳定性和安全性,还需加入限位开关和过流保护模块。

2.传感器模块为了实现窗帘自动控制功能,需要加入温湿度传感器和光敏传感器。

温湿度传感器用于检测室内环境温度和湿度,并根据设定值自动调节窗帘开合程度;光敏传感器用于检测室内光照强度,并根据设定值自动调节窗帘开合程度。

3.通信模块为了实现窗帘的远程控制功能,需要加入通信模块。

本方案采用ESP8266 WiFi模块,通过WiFi连接路由器并与手机APP进行通信,实现窗帘的远程控制。

三、软件设计1.电机驱动程序设计电机驱动程序是实现窗帘开合的核心部分。

本方案采用C语言编写电机驱动程序,通过控制L298N电机驱动模块来控制电机的正反转和速度。

同时,在程序中加入限位开关和过流保护模块,保证电机工作时稳定性和安全性。

2.传感器数据处理程序设计传感器数据处理程序是实现窗帘自动控制功能的核心部分。

本方案采用C语言编写传感器数据处理程序,通过读取温湿度传感器和光敏传感器获取的数据,并根据设定值自动调节窗帘开合程度。

3.通信程序设计通信程序是实现窗帘远程控制功能的核心部分。

本方案采用C语言编写通信程序,通过ESP8266 WiFi模块连接路由器并与手机APP进行通信,接收来自APP的指令并执行相应操作。

四、系统测试1.硬件测试在完成硬件搭建后,需要进行硬件测试。

首先需要测试电机驱动模块是否正常工作,包括电机正反转和速度控制;其次需要测试传感器模块是否正常工作,包括温湿度传感器和光敏传感器的数据采集和处理;最后需要测试通信模块是否正常工作,包括ESP8266 WiFi模块连接路由器和与手机APP进行通信。

(完整版)基于51单片机的智能窗帘控制系统设计与实现毕业设计

(完整版)基于51单片机的智能窗帘控制系统设计与实现毕业设计

毕业设计(论文)题目:基于51单片机的智能窗帘控制系统设计与实现系部:信息系专业:电子信息二○一三年十二月基于51单片机的智能窗帘控制系统设计与实现摘要:随着现代电子技术和自动化技术的快速发展,人们越来越向往便捷,轻松的生活方式,人们对生活质量的要求越来越高。

家用电器产品也在不断的更新换代。

从始初的晶体管、到电子管;由模拟到数字;由分立元件到集成电路;从普通向高性能、多功能型;由手动控制向红外线遥控、向智能化发展。

这次的毕业设计智能窗帘控制系统的设计与实现是在这个的理念上设计的,本系统主要的模块有单片机驱动模块,电机驱动模块,光敏检测模块,无线收发模块和LED信号显示模块。

本系统分为两种模式,在智能模式下利用光敏电阻检测光照强度的变化,通过单片机驱动电机驱动模块中的电机的正反转实现窗帘的来回移动。

在手动模式下,利用遥控器中的无线发送模块发送信号,再通过单片机驱动电机。

本文设计中的智能遥控窗帘因为操作简单,功能实用和结构简单,所以它基本满足人们对窗帘的智能化的基本需求,也因为前景广泛而有研究的价值。

关键字:51单片机,智能,无线遥控,直流电机目录引言 (5)一、绪论 (5)1.1问题的提出 (5)1.2国外最新的研究成果 (6)1.2.1光控帘 (6)1.2.2隔音帘 (6)1.2.3节能帘 (7)1.2.4隐身帘 (7)1.2.5日能帘 (7)二、核心芯片和器件介绍 (8)2.1DC电源插口介绍 (8)2.2AT89S52单片机 (8)2. 2.1单片机特点和特性 (9)2.2.2单片机的引脚功能 (10)2.3SC2262编码解码芯片 (14)1.3.1SC2262的特点 (14)2.3.2 SC2262的应用范围 (15)2.3.3 SC2262的引脚和说明 (15)2.3.4 SC2262的功能描述 (16)2.3.5 SC2262的工作流程图 (17)2.4SC2272编码解码芯片 (17)2.4.1 SC2272的特点 (18)2.4.2 SC2272的应用范围 (18)2.4.3 SC2272的引脚和说明 (18)2.4.4 SC2272的功能描述 (20)2.4.5 SC2272的工作流程图 (21)2.5315M发射和接受模块 (21)2.5.1315M发射和接受模块应用范围 (22)2.5.2 315M无线发射模块介绍 (22)2.5.3 315M无线接收模块介绍 (23)三、硬件电路的设计 (24)3.1电源和单片机控制部分 (24)3.2继电器控制直流电机部分 (25)3.4光敏识别部分 (26)3.5无线接收和发射部分 (27)四、调试和实现设计 (28)五、软件和程序调试 (29)5.1工作流程图: (29)5.2管脚定义 (29)5.3主函数 (30)总结 (31)致谢 (32)参考文献 (33)附录一:硬件图正反照 (34)附录二:电路原理图和PCB图 (36)附录三:电路仿真图 (37)附录四:C语言程序 (29)引言人民生活水平的不断提高,人们对家庭生活舒适性的需求越来越强烈,窗帘作为每个家庭的家居必须用品,自然也需要满足人们更舒适性的需求。

基于51单片机的智能窗帘控制系统设计与实现

基于51单片机的智能窗帘控制系统设计与实现

项目编号___201111 ___ 江南大学物联网工程学院大学生创新训练计划结题报告项目名称基于51单片机的智能窗帘控制系统设计与实现项目负责人晶所学专业电气工程及其自动化所在学院物联网工程学院(手机)电子信箱diamond-heartqq.项目起止年月2011/11-2012/05第一指导教师肖永松专业技术职务工程师(手机)电子信箱结题日期2012年5月江南大学物联网工程学院创新训练计划项目结题验收表学院名称:物联网工程学院填写日期:2012 年5 月大学生创新训练计划《基于AT89C51单片机的智能窗帘控制系统》成果精粹江南大学二○一二年五月简介随着物联网概念的发展,智能家居的理念也渐渐渗透到我们的生活中,受此启发,我们想尝试着做一个智能窗帘的控制系统,希望可以通过光强和时间来控制窗帘的开合。

恰好我们都进行了电路、模电数电的学习,也曾初步接触了单片机,我们想通过设计这个控制系统来加深我们对所学容的理解和掌握,更加熟悉使用protel等专业软件。

计划设计一个系统可以实现以下功能:在自动模式下,在设定的时间,如早成6点至晚上8点,晚上8点至早晨6点,时间控制,可以避免室开灯造成窗帘自动拉开。

通过光强控制,在设定光照强度围,窗帘拉开,超过设定强度,如夏日中午,为避免房间被光直射造成温度过高,窗帘关闭。

在手动模式下,通过按键来调整窗帘的开合状态。

最终设计使用STC89C51单片机,STC89C51有512字节的数据存储空间,是AT89C51的两倍,并且带有4K字节的EEPROM存储空间,可以断电后保存资料,可以直接使用串口下载,而AT89C51需要专用下载器。

控制系统可以实现对光信号的采集、转换、传输,并根据单片机接收到的信号,结合时钟电路的信号,对步进电机进行控制,通过控制步进电机转向及转动圈数,来实现对窗帘的打开及拉合控制。

设计时对硬件进行了模块化分析,以STC89C51作为主控芯片,光信号采集使用光敏模块,数模转换主要使用PCF8591芯片,显示模块采用1602液晶显示器,时钟电路采用DS1302芯片,电机驱动器主要使用ULN2003。

基于51单片机的智能窗帘的设计与控制系统

基于51单片机的智能窗帘的设计与控制系统

98电子技术Electronic Technology电子技术与软件工程Electronic Technology & Software Engineering智能窗帘作为现代家居的一部分,在许多的发达国家应用都较为普遍,同时受到人们的喜爱。

随着技术的逐渐发展,人们收入增长,用户对智能家居的需求呈现出快速增长的态势,作为智能家居的一部分——智能窗帘,随着认识的深化,推广的普及,其发展呈现功能多样化、噪音更低化、产品高档化等趋势。

1 控制系统设计概述此设计是实现以STC89C52单片机[8]为控制的核心元件。

其它的外围模块围绕着单片机最小系统展开。

其中包括,显示模块部分选用0.96寸OLED 液晶,可以同时显示年、月、日、时、分、控制模式、光照强度、温度等有关内容;时钟模块部分使用DS1302芯片,在它初始化之后,就会立即运行,单片机只需要对时间信息进行读取即可,根据读取到的时间,设置窗帘的定时打开和关闭;使用光敏电阻与模数转换芯片ADC0832组成光照检测电路,将模拟量光照强度通过芯片数字化处理后显示出来,将光照强度转换成电压,根据电压大小控制窗帘开闭程度;使用DS18B20温度传感器测量温度并显示,将采集温度转换成电压,根据电压大小控制窗帘开闭程度;窗帘使用TB6612FNG 驱动减速直流电机进行代替模拟,通过调节PWM 进行对电机的相应控制,同时配有两个LED 灯用来指示窗帘当前的开关状态;本设计还有5个按键作为操作输入设备,可以对当前时间进行调整设置和设置窗帘开关时间和光控阈值以及温度,切换窗帘控制模式,调节窗帘智能开闭程度;采用USB 5V 对系统进行供电以及程序烧录。

控制系统框图如图1所示。

2 系统电路设计2.1 控制器STC89C52是一款电压低,性能好的CMOS 8位微控制器,含有8k bytes 的能够重复进行擦写的Flash 只读程序存储器,同时拥有256 位的随机存取数据存储器(RAM ),其内部有通用8位中央处理器和Flash 存储单元,STC89C52为控制器有许多优点能够广泛地应用于不同的场景下。

基于51单片机电动窗帘的任务书

基于51单片机电动窗帘的任务书

基于51单片机电动窗帘的任务书电动窗帘在现代家居中越来越普遍,它不仅方便了人们的生活,还提高了生活质量。

本篇文章将以51单片机为基础,结合电动窗帘的特点和功能,制定一份任务书,以指导电动窗帘的制作和使用。

任务书将包括电动窗帘的基本原理、要求、具体步骤和测试方法等内容,以便读者可以更好地理解和应用。

一、任务书的背景和意义随着科技的不断发展,电动窗帘已成为现代家居的一种必备品。

采用了51单片机这种新一代的嵌入式控制技术,可以更好地实现智能化和自动化的控制。

因此,通过制定一份以51单片机为基础的电动窗帘任务书,可以更好地规范和指导电动窗帘的制作和使用,提高人们的生活质量。

二、电动窗帘的基本原理和要求电动窗帘是通过电机驱动窗帘的开合,其基本原理是利用电路控制电机的正反转和停止。

任务书将要求电动窗帘具有以下功能:1.手动、自动控制:可以通过遥控器或者手动开关实现窗帘的开合,也可以通过预设的自动模式实现定时开合;2.光线感应:可以根据光线强弱自动调整窗帘的开合,在强光下自动关窗帘,光线弱时自动开启窗帘;3.状态反馈:窗帘的状态可以通过显示屏或者指示灯实时反馈给用户,便于控制和监控;4.安全保护:电动窗帘在遇到阻力时能够自动停止并报警,保证用户的安全;三、电动窗帘的制作步骤和方法1.材料准备:准备好电机、遥控器、51单片机、传感器、显示屏、手动开关等相关电子元件和设备;2.电路设计:根据电动窗帘的要求,设计合适的电路连接方式,包括电机驱动、光线感应、状态反馈和安全保护等功能;3.硬件连接:按照电路设计图,将各个电子元件进行连接和固定,注意排线的顺序和方向,保证电路连接正确;4.程序编写:编写相应的控制程序,实现手动、自动控制、光线感应、状态反馈和安全保护等功能,需要考虑电机的启停、转向、速度等问题;5.调试测试:将制作好的电动窗帘进行调试测试,检查电路连接是否正确、程序是否稳定等,确保各项功能正常;6.安装使用:将调试通过的电动窗帘进行安装,连接电源,进行使用测试,确保满足要求。

基于51单片机的智能窗帘的研究与设计概要

目录摘要 (1)第1章绪论 (2)1.1 系统设计的背景及意义 (2)1.2 设计的基本内容 (2)1.3 实现的基本功能 (3)第2章总体电路设计与原理说明 (4)2.1 方案介绍 (4)2.2总体方案设计 (5)2.2.1 自动控制窗帘基本功能 (5)2.2.2 总体结构设计 (5)第3章硬件分析与设计 (7)3.1 单片机及相关电路设计 (7)3.1.1 89C51单片机概述 (7)3.1.2 晶振电路 (8)3.1.3 复位电路 (8)3.1.4 显示电路 (9)3.2 光敏传感器电路 (9)3.3 A/D转换电路 (11)3.4 步进电机电路 (12) (13)3.5 温度检测电路 (13)3.6 红外控制电路 (15)第4章程序分析设计 (18)4.1 主程序 (18)4.2 重要子程序设计 (18)第5章总结 (19)参考文献 (21)附录1 :原理图 (22)附录2 :部分子程序 (23)摘要自动控制技术是20世纪发展最快、影响最大的技术之一,也是21世纪最重要的高技术之一。

今天,技术、生产、军事、管理、生活等各个领域,都离不开自动控制技术。

就定义而言,自动控制技术是控制论的技术实现应用,是通过具有一定控制功能的自动控制系统,来完成某种控制任务,保证某个过程按照预想进行,或者实现某个预设的目标。

随着电子计算机技术和其他高技术的发展,自动控制技术的水平越来越高,应用越来越广泛,作用越来越重要。

尤其是在生产过程的自动化、工厂自动化、机器人技术、综合管理工程、航天工程、军事技术等领域,自动控制技术起到了关键作用。

当然,在智能家居方面,自动控制技术有较好的发展前景。

应用自动控制技术,将是家居环境更加智能化,人性化。

针对家居环境采光及避光问题,自动窗帘控制系统将取代手动控制,更加人性化。

本文综述了自动窗帘系统的设计与控制系统,介绍了设计制作一个完整的自动窗帘控制系统所需要做的理论分析,以及各环节功能的实现。

基于51单片机的智能窗帘设计

目录摘要 (1)关键词 (1)Abstract (1)Key words (1)1 绪论 (2)2 总体方案设计 (3)2.1 系统的基本功能 (4)2.2 系统的基本组成 (4)2.3 芯片介绍 (5)2.3.1 STC89C51芯片介绍 (5)2.3.2 SC2262/2272芯片介绍 (6)3 系统硬件模块组成 (7)3.1 基本控制系统 (7)3.1.1 时钟模块 (7)3.1.2 复位电路 (7)3.1.3 电源模块 (8)3.2 电机驱动模块 (8)3.3 光敏检测模块 (8)3.4 手动无线遥控模块 (10)4 软件设计 (12)4.1 模块化程序逻辑原理图 (12)4.2 模块程序设计 (12)4.2.1 直流步进电机程序设计 (12)4.2.2 无线发射和接收模块程序设计 (13)5 软件仿真 (14)6 硬件调试 (14)7 总结 (15)8 致谢 (16)参考文献 (16)附录 (17)基于51单片机的智能窗帘设计摘要:本论文设计的是智能控制窗帘的系统,由基于单片机结构和STC89C51单片机系统、以及较为成熟的电机驱动模块、较为先进的光敏检测模块、稳定的电源模块等组成。

基本的系统原理是在智能调控的模式下,光敏检测模块中的光敏电阻遭遇到外界光强的变化,在自身电阻因为光强的变化发生改变后,引起系统电压的变化,并且在电压大小发生改变后迅速将将信号的变化反馈给单片机结构,然后在电机接收到一系列因为光强变化而传递给单片机结构的信号后,经过电机驱动控制模块的指令来进行电机的启动和运作,然后表现为使得窗帘智能打开和智能关闭。

这样就可以实现对于窗帘的智能操控和手动操控这两种控制功能的运作,构成多功能自动窗帘控制系统,使得本设计更加智能化和人性化。

关键词:单片机;红外遥控;智能家居The intelligent curtain design based on 51MCUAbstract:The design of this paper is an intelligent control curtain system, based on the structure of the single-chip microcomputer and STC89C51 single-chip microcomputer system, as well as the more mature motor drive module, more advanced photosensitive detection module, stable power supply module and other components. Is the basic principle of system in intelligent control mode, the photosensitive detection module of photosensitive resistance encountered outside the change of light intensity, resistance because of the change of light intensity change in itself, cause the change of system voltage, and rapidly after will change in the size of the voltage to the change of the feedback signal to microcontroller structure, and then receives a series because of the light intensity changes in motor and passed to the single chip microcomputer after the structure of the signal, through the motor drive control module instruction for motor starting and operation, and then show the closed curtains intelligent open and intelligent. This can realize the intelligent control of the curtain and manual control of the operation of the two control functions, constitute a multi-functional automatic curtain control system, making the design more intelligent and humanized.Key words:STC89C51SCM;Infrared remote control;Smart home1 绪论新世纪是信息时代,各行各业基于信息技术,推出了各自的智能产品,例如智能家居,智能办公、智能驾驶等,这些智能产品都和当今的互联网技术以及控制系统紧密相连。

基于51单片机的蓝牙智能光控窗帘

基于51单片机的蓝牙智能光控窗帘一、设计思路系统选用 STC12C5A60S2 作为主控芯片,用以完成对系统执行机构的控制、信息处理和液晶显示。

单片机控制直流减速电机实现窗帘、窗户的控制。

光照强度、温湿度信号均通过无线蓝牙模块传输至单片机,经处理后实现电机对窗户、窗帘的自动控制。

根据设计方案和要求,可将电路分为 5 部分,分别为无线蓝牙遥控,传感器数据采集,电机驱动控制,单片机主控和电源部分。

二、系统结构此方案控制采用51单片机的最小系统来驱动步进电动机控制窗户和窗帘的拉开和关闭。

家居推拉窗及窗帘控制系统可以利用蓝牙无线模块根据室外环境亮度实现环境亮度光控。

以及光控状态下环境亮度的控制参数的调整等等。

该控制设计可谓是一款多功能的推拉窗及窗帘控制系统设计方案。

51单片机光电传感器温湿度传感器蓝牙模块A/D 转换器电源模块电机驱动系统软件设计框图如下:1. 光强度传感器 BH1750FVI不区分光源数字型环境光强度传感器BH1750FVI 是日本RHOM 株式会社近些年推出的一种两线式串行总线接口的集成电路,可以根据收集的光线强度数据来进行环境监测,其具有1~65535x的高分辨率,可支持较大范围的光照强度变化。

BH1750FVI 结构框图如图1所示。

图1 BH1750FVI 结构框图从结构框图可容易看出,外部光照被接近人眼反应的 高精度光敏二极管P传感器控制单片机中央控制程序电机驱动D探测到后,通过集成运算放大器将PD电流转换为PD电压,由模数转换器获取16位数字数据,然后被逻辑和IC界面进行数据处理与存储。

OSC为内部的振荡器提供内部逻辑时钟,通过相应的指令操作即可读取出内部存储的光照数据。

数据传输使用标准的I2C总线,按照时序要求操作起来也非常方便。

2.温湿传感器:DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。

它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。

基于51单片机的智能窗帘设计

基于51单片机的智能窗帘设计无法剔除格式错误和删除明显有问题的段落,因为没有提供原始文章。

但是可以给出以下建议来小幅度改写每段话:1.标题:如何养一只快乐的宠物狗?改写建议:想让你的宠物狗快乐?这些方法或许能帮助你。

2.宠物狗的生活需要关注的方面很多,包括饮食、锻炼、卫生等等。

改写建议:作为狗主人,我们需要关注宠物狗的饮食、锻炼和卫生等方面,以确保它们的健康和快乐。

3.饮食方面,我们需要为宠物狗提供均衡的营养,避免过度喂食或喂食不当的食物。

改写建议:宠物狗的饮食应该均衡,避免过度喂食或喂食不适当的食物,以确保它们的健康。

4.锻炼方面,我们需要根据宠物狗的种类和年龄制定适当的运动计划,以帮助它们保持健康。

改写建议:根据宠物狗的种类和年龄,我们需要为它们制定适当的运动计划,以维持它们的健康。

5.卫生方面,我们需要定期为宠物狗洗澡、修剪毛发和清洁牙齿,以防止疾病和感染。

改写建议:为了防止疾病和感染,我们需要定期为宠物狗洗澡、修剪毛发和清洁牙齿。

2.3.1 STC89C51芯片介绍STC89C51芯片是一种高性能、低功耗的单片机,常用于嵌入式系统中。

其具有强大的处理能力和丰富的外设接口,能够满足各种应用场景的需求。

该芯片采用CISC结构,支持多种编程语言,如C语言、汇编语言等。

2.3.2 SC2262/2272芯片介绍SC2262/2272芯片是一种集成电路,主要用于无线遥控器的编码和解码。

其具有简单的接口和高度集成的特点,能够实现快速的数据传输和解析。

该芯片广泛应用于家电、汽车、安防等领域。

3系统硬件模块组成3.1基本控制系统基本控制系统由时钟模块和复位电路组成,是嵌入式系统的核心部分。

时钟模块提供精确的时钟信号,控制系统的运行节奏;复位电路在系统启动时进行初始化,确保系统处于正常工作状态。

3.1.1时钟模块时钟模块是嵌入式系统中的重要组成部分,其主要作用是提供精确的时钟信号,控制系统的运行节奏。

时钟模块一般由晶体振荡器、时钟分频器、时钟缓冲器等组成,能够满足不同应用场景的需求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}state=2;break;
case 3: switch(state)
{
case 0:move(3);break;
case 1:move(2);break;
case 2:move(1);break;
case 3:break;
}state=3;break;
}
}
main()
{
Init();
while(1)
case 2:reserve(1);break;
case 3:reserve(2);break;
}state=1;break;
case 2: switch(state)
{
case 0:move(2);break;
case 1:move(1);break;
case 2:break;
case 3:reserve(1);break;
{
P1=~9;
delay(200);
P1=~0x0c;
delay(200);
P1=~0x06;
delay(200);
P1=~0x03;
delay(200);
}
}
void movesetp(unsigned char level)
{
switch(level)
{
case 0: switch(state)
{
case 0:break;
case 1:reserve(1);break;
case 2:reserve(2);break;
case 3:reserve(3);break;
}state=0;break;
case 1: switch(state)
{
case 0:move(1);break;
case 1:break;
#include<reg51.h>
unsigned int light;
unsigned char state=0;
sbit CLK=P3^2;
sbit START=P3^3;
sbit EOC=P3^0;
sbit OE=P3^1;
void delay(unsigned int j)
{
unsigned int i;
{
P1=~0x03;
delay(200);
P1=~0x06;
delay(200);
P1=~0x0c;
delay(200);
P1=~0x09;
delay(200);
}
}
void reserve(unsigned char step)
{
unsigned char i;
P1=0x0f;
for(i=0;i<step;i++)
}
void Init()
{
TMOD=0x01;
TH0=65530/256;
TL0=65530%256;
EA=1;
ET0=1;
TR0=1;
P1=0x0f;
}
void move(unsigned char step)
{
unsigned char i;
P1=0x0f;
for(i=0;i<step;i++)
{
//delay(10000);
transfer();
//P2=~light;
if(light>=0&&light<40)movesetp(0);
if(light>=45&&light<125)movesetp(1);
if(light>=130&&light<210)movesetp(2);
if(light>=215&&light<=255)movesetp(3);
for(i=0;i<j;i++);
}
timer0() interrupt 1
{
TH0=65530/256;
TL0=65530%256;
CLK=~CLK;
}
void transfer()
{
START=0;
OE=0;
delay(1);
while(!EOC);
OE=1;
light=P0;
OE=0;
START=1;
}
}
相关文档
最新文档