激光雕刻机制作单片机源程序单片机解密
单片机解密单片机源程序如下:
- /*********************************************************************************
- * 【版 本】: 1.0
- * 【实验平台】: QX-MCS51 单片机开发板
- * 【外部晶振】: 11.0592mhz
- * 【主控芯片】: STC89C52RC
- * 【编译环境】: Keil μVisio4
- * 【程序功能】: 通过串口接收电脑指令并控制相关执行机构完成激光雕刻过程
- * 【使用说明】: 比特率9600,校验位:无 停止位:1
- **********************************************************************************/
- /*【指令说明】/'A'雕刻指令////'B'x正转指令////'C'x反转指令////'D'y正转指令////'E'复位指令
- **********************************************************************************/
- /*预处理命令*/
- #include <reg52.h> //包含单片机寄存器的头文件
- #define uchar unsigned char
- #define uint unsigned int
- uchar num,a;
- int xfwjs,yfwjs; //复位步数计数
- int js2,js3; //复位计数
- sbit xmz1=P2^0; //X轴脉冲引脚1
- sbit xmz2=P2^1; //X轴脉冲引脚2
- sbit ymz1=P2^2; //Y轴脉冲引脚1
- sbit ymz2=P2^3; //Y轴脉冲引脚2
- sbit dykg=P2^7; //激光开关引脚
- uint xjs=0; //
- //
- uint yjs=0; //
- //
- void ms(uint ms)//延时函数
- {
- uint i,j;
- for(i=ms;i>0;i--)
- for(j=115;j>0;j--);
- }
- /*
- ********************************************************************************
- ** 函数名称 : main(void)
- ** 函数功能 : 主函数
- ********************************************************************************
- */
- void xf()//X正转函数
- {
- switch(xjs)
- {
- case 0:xjs=1;xmz1=1;xmz2=1; break;
- case 1:xjs=2;xmz1=1;xmz2=0; break;
- case 2:xjs=3;xmz1=0;xmz2=0; break;
- case 3:xjs=0;xmz1=0;xmz2=1; break;
- default:break;
- }
- ms(2);
- }
- void xz()//X反转函数
- {
-
- switch(xjs)
- {
- case 2:xjs=1;xmz1=1;xmz2=1; break;
- case 3:xjs=2;xmz1=1;xmz2=0; break;
- case 0:xjs=3;xmz1=0;xmz2=0; break;
- case 1:xjs=0;xmz1=0;xmz2=1; break;
- default:break;
- }
- ms(2);
- }
- void yf()//y正转函数
- {
-
- switch(yjs)
- {
- case 0:yjs=1;ymz1=1;ymz2=1; break;
- case 1:yjs=2;ymz1=1;ymz2=0; break;
- case 2:yjs=3;ymz1=0;ymz2=0; break;
- case 3:yjs=0;ymz1=0;ymz2=1; break;
- default:break;
- }
- ms(2);
- }
- void yz()//y反转函数
- {
- switch(yjs)
- {
- case 2:yjs=1;ymz1=1;ymz2=1; break;
- case 3:yjs=2;ymz1=1;ymz2=0; break;
- case 0:yjs=3;ymz1=0;ymz2=0; break;
- case 1:yjs=0;ymz1=0;ymz2=1; break;
- default:break;
- }
- ms(2);
- }
- void dk()//雕刻函数
- {
- dykg=0; //打开打印头
- ms(25); //灼烧时间
- dykg=1; //关闭打印头
- }
- void fw() //复位函数
- {
- for(js2=0;js2<xfwjs;js2++)
- {
- xf();
- }
- for(js3=0;js3<yfwjs;js3++)
- {
- yf();
- }
- xfwjs=0;
- yfwjs=0;
- }

芯片解密