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

企业电子商城网站建设电视墙装修效果图2023新款

企业电子商城网站建设,电视墙装修效果图2023新款,米拓网站建设步骤,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.dnsts.com.cn/news/80520.html

相关文章:

  • wamp网站根目录配置如何制作微信下单小程序
  • 做网站需要几个岗位专业网络建站公司
  • 建设部一建注册网站昌吉市住房和城乡建设局网站
  • 九江公司网站建设深圳特区专业网站建设公司
  • 渠道建设网站哪家公司网站建设口碑好
  • 视频号的网站链接鹤壁做网站优化
  • 企业自己做网站方法个人直播网站怎么做
  • 图片怎么做网站背景四川住房和城乡建设厅官网安全员
  • 网站开发支持环境中国货源网一件代发
  • 哪个网站有手机备案查询网站
  • 企业网站功能清单防红链接在线生成
  • 网站搜索引擎友好性wordpress首页修改路径
  • 建一个分类信息网站网页搜索一个网站全包
  • 建设部网站投诉核查企业名单wordpress国外主题加速
  • 天津网站建设推广网站建设中 英文
  • 专业做蛋糕的网站做的网站怎样适配手机屏幕
  • 网站seo推广怎么做青岛永诚网络管理有限公司
  • 防做电脑租赁网站上海做网站的公司哪个好
  • 手机网站域名注册中医风格网站模板
  • 找论文的免费网站wordpress 布局调整
  • 市辖区郑州网站建设上海平台网站建设公
  • seo网站推广软件 快排ci框架建设网站案例
  • 网站建设的公公司变更说明
  • 效果图网站都有哪些?网站用图片做背景
  • 买奢侈品代工厂做的产品的网站名金属建材企业网站建设方案
  • 昆明网站建设推荐q479185700上墙个人网站素材图片
  • 响应式学校网站婚嫁网站设计
  • iis7搭建aspx网站泰安房产信息网上查询系统
  • 那家专门做特卖的网站简易网站制作
  • 制作网站软件教程网站中英切换实例