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

北京网站建设策划解决方案wordpress 二次开发

北京网站建设策划解决方案,wordpress 二次开发,网站信息优化的方式,网站任务界面1、项目概述 功能描述#xff1a; 检测靠近时#xff0c;垃圾桶自动开盖并伴随滴一声#xff0c;2s后关盖。 发生震动时#xff0c;垃圾桶自动开盖并伴随滴一声#xff0c;2s后关盖。 按下按键时#xff0c;垃圾桶自动开盖并伴随滴一声#xff0c;2s后关盖。 硬件说明…1、项目概述 功能描述 检测靠近时垃圾桶自动开盖并伴随滴一声2s后关盖。 发生震动时垃圾桶自动开盖并伴随滴一声2s后关盖。 按下按键时垃圾桶自动开盖并伴随滴一声2s后关盖。 硬件说明 c52单片机、sg90舵机、超声波模块、震动传感器、蜂鸣器 接线说明 舵机控制口 P1.1 超声波 Trig 接 P1.5口 Echo 接 P1.6口 蜂鸣器接 P2.0口 震动传感器接 P3.2口外部中断INT0 2、编程实现 开发步骤 1、舵机和超声波代码整合 舵机用定时器0 超声波用定时器1 手册中高 4 位管定时器 1 低 4 位管定时器 0。0x0FF四个一保持低四位不变高四位全部为00x10低四位不变使高四位M0变为16位定时器 实现物体靠近自动滴一声开盖2s后关盖 2、查询法实现按键控制 3、查询法实现震动控制 4、使用外部中断0配合震动控制 3、优化 解决靠近超2s抽搐问题 添加延时关盖 优化关盖震动控制开盖问题 #include reg52.h #include intrins.h//距离小于10cmD5亮D6灭反之相反sbit SW1 P2^1; //按键开关接口 sbit D5 P3^7; sbit D6 P3^6; sbit Trig P1^5; sbit Echo P1^6; sbit sg90_con P1^1; //舵机 sbit vibrate P3^2; //振动传感器(外部中断) sbit beep P2^0; //蜂鸣器(低电平响)//int换为char,节省空间 char jiaodu; char jiaodu_bak; char cnt 0; char mark_vibrate 0; //外部中断标志位void Delay2000ms() //11.0592MHz {unsigned char i, j, k;_nop_();i 15;j 2;k 235;do{do{while (--k);} while (--j);} while (--i); }void Delay150ms() //11.0592MHz {unsigned char i, j, k;_nop_();i 2;j 13;k 237;do{do{while (--k);} while (--j);} while (--i); }void Delay10us() //11.0592MHz {unsigned char i;i 2;while (--i); }void startHC() {Trig 0;Trig 1;Delay10us();Trig 0; }//定时器0初始化 void Time0Init() {TMOD 0xF0; //设置定时器 0 模式TMOD | 0x01; TL0 0x33; //给初值定一个0.5msTH0 0xFE; ET0 1; //打开定时器0中断 EA 1; //打开总中断EATR0 1; //开始计时TF0 0; }//定时器1初始化 void Time1Init() {TMOD 0x0F; //设置定时器 1 模式TMOD | 0x10;TH1 0;TL1 0;//设置定时器0工作模式1初值设定为0开始数数不着急启动定时器 }/* 十进制左移一位相当于乘以10。例2左移一位为20 二进制左移一位相当于乘以2. 例1左移一位为10十进制的2 左移8位相当于乘以2的8次方 256 */double get_distance() //封装函数距离 {double time;//时间//定时器数据清零方便下一次测距TH1 0;TL1 0;startHC(); //给TRIG一个10us的高电平while(Echo 0); //ECHO由**低电平跳转到高电平**表示开始发送波TR1 1; //波发送时启动定时器while(Echo 1); //ECHO由**高电平跳转到低电平**表示波返回TR1 0; //波回来时关闭定时器time (TH1 * 256 TL1)*1.085; //计算中间经过的时间,以 um 为单位return (time * 0.017);//距离时间*波的速度340m/s/ 2 ; 340m/s 34cm/ms 0.034cm/us }void openStatuslight() //封装函数状态灯开D5亮开盖 {D5 0;D6 1; }void closeStatuslight() //封装函数状态灯关D5灭关盖 {D5 1;D6 0; }void initSG90_0() //封装函数舵机角度 {jiaodu 1; //初始化角度0°0.5ms的高电平cnt 0; //角度变化cnt从0计算sg90_con 1;//给高电平 }void openDustbin()//封装函数舵机转动角度--打开垃圾桶 {char n;jiaodu 4;//爆表4次0.5*42ms高电平转135度if(jiaodu_bak ! jiaodu){cnt 0;beep 0; //蜂鸣器响for(n 0;n 2;n);Delay150ms();beep 1;Delay2000ms(); //每隔两秒转一次}jiaodu_bak jiaodu;}void closeDustbin()//封装函数舵机转动角度--关闭垃圾桶 {jiaodu 1;jiaodu_bak jiaodu;cnt 0;Delay150ms(); }void EX0_Init() //封装函数外部中断 {EX0 1; //打开外部中断 (下降沿触发IT0/TCON.0 1 低电平触发IT0/TCON.0 0 )IT0 0; //低电平触发 }void main() {double dis;//距离Time0Init();//定时器0初始化Time1Init();//定时器1初始化EX0_Init();initSG90_0();//舵机角度while(1){dis get_distance();//超声波测距if(dis 10 || SW1 0 || mark_vibrate 1){ //小于10cm或者sw1按键被按下或者震动产生//振动产生有可能发生在延时期间电频转变急促不稳定所以要使用外部中断INIT0 openStatuslight(); //D5亮开盖openDustbin(); //打开垃圾桶mark_vibrate 0; //恢复}else{closeStatuslight(); //D5灭关盖closeDustbin(); //关闭垃圾桶}}} //定时器0中断 void Time0Handler() interrupt 1 {cnt; //统计爆表的次数TL0 0x33; //重新给初值TH0 0xFE;if(cnt jiaodu){ //PWM波形控制sg90_con 1;}else{sg90_con 0;}if(cnt 40){ //爆表40次经过20mscnt 0; //重新计算cntsg90_con 1;} }//外部中断 void EX0_Handler() interrupt 0 {mark_vibrate 1; }
http://www.pierceye.com/news/337807/

相关文章:

  • 网站一年的 运营费用一般企业网站建设合同
  • 九龙坡集团网站建设贵阳网站建设推广
  • 架设网站 自己购买服务器无锡seo网站推广费用
  • 网站关键词长度开平 做一网站
  • 青海制作网站可以网站可以做免费的文案广告
  • 深圳维特网站建设有彩虹代刷源码怎么做网站
  • 有了自己的网站怎样做后台食品建设网站前的市场分析
  • 制作伪装网站微餐饮网站建设
  • 泰州做网站软件哈尔滨网站建设市场分析
  • 手机网站建设口碑好网站的技术建设
  • 论坛类网站备案wordpress分享qq
  • 做化工的在哪个网站做平台好长期做网站应该购买稳定的空间
  • 网站建设 推广找山东博达制作网页难吗
  • 临安网站设计海口h5建站模板
  • 网站建设济南云畅网络技术有限公司厦门最新通告
  • ozon电商平台seo关键词搜索和优化
  • 网站收录查询情况科技网站导航
  • 如何做有后台的网站模板网站和定制网站的优劣势对比
  • 在360网站做公告怎么弄南平建设企业网站
  • 网站建设电影动漫制作专业什么电脑最适合
  • 企业做网站公司有哪些wordpress登陆不了一直返回首页
  • 汽车网站建设公司哪家好长春做网站多少钱
  • 雄安移动网站建设php网站用什么软件
  • 网站开发税收分类山东平台网站建设制作
  • 企业自助建站网手机怎么制作钓鱼网站
  • 家乡ppt模板免费下载网站x wordpress 视差 主题
  • 淄博张店外贸建站公司手机微信网页版
  • 网站建设全域云网站建设流程详解
  • 梅州市五华县建设银行网站写作网站招聘
  • 博物馆网站建设情况工业互联网龙头公司排名