您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 51单片机机械手控制C程序
//包含所需头文件#includereg51.h#defineucharunsignedchar/***************------宏定义------*******************/sbitqigang_left=P0^0;//气缸sbitqigang_right=P0^1;sbitqigang_up=P0^2;sbitqigang_down=P0^3;sbitqigang_behind=P0^4;sbitqigang_front=P0^5;sbitqigang_grasp=P0^6;sbitqigang_loose=P0^7;sbitjourney_left=P1^0;//传感器开关sbitjourney_right=P1^1;sbitjourney_up=P1^2;sbitjourney_down=P1^3;sbitjourney_behind=P1^4;sbitjourney_front=P1^5;sbitflag_start=P3^2;//启动按钮/***************中断****************************/voidt0(void)interrupt0using0//按键按下触发中断服务程序{//flag_start=1;}/***************延时函数S***********************/voiddelay(unsignedcharm)//延时子m秒子程序{unsignedchari,j,k;m=m*100;for(i=m;i0;i--)for(j=20;j0;j--)for(k=248;k0;k--);}/*******************主函数*********************/voidmain(){qigang_left=1;qigang_right=1;qigang_front=1;qigang_behind=1;qigang_up=1;qigang_down=1;qigang_grasp=1;qigang_loose=1;/***************中断初始化******************/IT0=1;//下降沿触发EX0=1;EA=1;if(flag_start==0){while(1){qigang_left=0;//机械手左移while(1)//左移死循环,等待下面的传感器开关{if(journey_left==0)//左面的传感器开关接通{qigang_left=1;//停止左移qigang_front=0;//机械手前移while(1)//前移死循环,等待前面的传感器开关{if(journey_front==0)//前面的传感器开关接通{qigang_front=1;//停止前移qigang_down=0;//机械手下降while(1)//下降死循环,等待下面的传感器开关{if(journey_down==0)//下面的传感器开关接通{qigang_down=1;//停止下降qigang_grasp=0;//机械手抓取delay(1);//抓取延时qigang_up=1;//开始上升while(1)//上升死循环,等待上面的传感器开关{if(journey_up==0)//上面的传感器开关接通{qigang_up=1;//停止上升qigang_right=0;//向右移动while(1){if(journey_right==0){qigang_right=1;qigang_behind=0;while(1){if(journey_behind==0){qigang_behind=1;qigang_down=0;while(1){if(journey_down==0){qigang_down=1;qigang_loose=0;delay(1);qigang_up=1;while(1){if(journey_up==0){qigang_up=1;break;}}break;}}break;}}break;}}break;}}break;}}break;}}break;}}}}}
本文标题:51单片机机械手控制C程序
链接地址:https://www.777doc.com/doc-5442702 .html