問題探討解決.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
問題探討amp;解決.ppt

問題探討解決 (6/6) 使用感光的的信號轉換使89S51動作 專題照片 智慧型自動曬衣架 指導老師:黃永發 組員:李柏樵 吳俊佑 廖昱貿 賴弋威 目錄 開發動機 功能描述 系統架構 動作原理 主要元件 實驗與成果 問題探討解決 未來預計目標 目標規劃 專題價值 結語 開發動機 現代人生活越來越繁忙,每一件事情都會想用最短的時間完成,不想耗太多時間,曬衣服也是其中一種,如果當天天氣不好對上班族可能會相當頭痛,不曬衣服不是,要曬也不是,所以我們想出了一個以天氣狀況來控制曬衣架的機器,讓生活可以更加方便。 主要功能描述 1.當衣服推出室外,滴到水珠時即自動將衣服回收至室內,避免淋雨,並起動風扇吹乾衣服。 2.當衣服推出室外,光敏電組偵測光線強度,當光線暗下來時即自動將衣服回收至室內,風扇不轉動。 系統架構 動作原理 光敏電阻、雨水感測器都是要讓接收器收到指令,接收器收到指令的時候就會啟動馬達轉動的功能,讓曬衣系統運作。 當光敏電阻偵測到光時,就會觸發曬衣系統,而如果是晴天又下雨,依然會收回曬衣架。雨水控制的權力是最高的,只要偵測到雨水就會使馬達反轉收起曬衣架並觸發風扇電路進行風乾。 主要元件 感光器(光敏電阻) 雨水感測器 風扇 89S51單晶片 雨水感測器 用雨水感測電路,此動作原理為此電路原先為斷路,一但被雨水滴到就會使電路導通(短路)此時給單晶片89S51的訊號就會從LOW轉成HIGH,當89S51收到此訊號就會驅動馬達反轉。 實驗與成果(1/3) 光敏電阻控制馬達 實驗與成果(2/3) 風扇電路 實驗與成果(3/3) 透過燒錄器將程式燒進89S51晶片中,透過89S51晶片與電路的搭配控制直流馬達的正反轉。 #include reg51.h sbit motor1 = P1^0;// 宣告直流馬達位置 sbit motor2 = P1^1;// 宣告直流馬達位置 sbit PB0 = P2^0; // 宣告按鈕開關位置 sbit PB1 = P2^1; // 宣告按鈕開關位置 void delay1ms(int); // 宣告延遲函數 main() { motor1=0; // 關閉直流馬達 motor2=0; // 關閉直流馬達 PB0=1; // 設定PB0 PB1=1; // 設定PB1 while(1) // 無窮迴圈 { if (PB0==0 PB1==1) // 若按下PB0,且PB1未按下 { motor1=0; // 設定直流馬達轉向 motor2=1; // 開啟直流馬達轉向 delay1ms(500); // 旋轉0.5秒 motor2=0;} // 關閉直流馬達 程式介紹(1/2) if (PB0==1 PB1==0) // 若按下PB1,且PB0未按下 { motor1=1; // 設定直流馬達轉向 motor2=0; // 開啟直流馬達轉向 delay1ms(500); // 旋轉0.5秒 motor1=0;} // 關閉直流馬達 } } // 結束 void delay1ms(int x) { int i,j; for (i=0;ix;i++) // 外迴圈 for (j=0;j120;j++); // 內迴圈 } // 延遲函數結束 #includereg51.h sbit mo1=P1^0; sbit mo2=P1^1; sbit light=P2^0; sbit water=P2^1; void delaylms(int); main() { mo1=0; //馬達停止 mo2=0; //馬達停止 light=1; //開關0導通 water=1; //開關0導通 while(1) if(light==1water==0) { mo1=0; mo2=1; delaylms(500); //馬達逆時針動作0.5秒 mo2=0; //馬達停止 goto exit_loop; } 程式介紹(2/2) exit_loop: if(light==1water==1) mo1=1; mo2=0; delaylms(500); mo1=0; } { if(light==0water==0) mo1=0; mo2=0; goto exit_loop1; } exit_loop1: if(light==0wa

文档评论(0)

ailuojue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档