芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片解密15w401单片机制作双脉冲点焊机

芯片解密|单片机源程序如下:
#include "reg51.h"       //此文件中定义了单片机的一些特殊功能寄存器
typedef unsigned int u16;//对数据类型进行声明定义
typedef unsigned char u8;//对数据类型进行声明定义
sbit P30=P1^0;                        //数码管第1位
sbit P31=P1^1;                        //数码管第2位
sbit k1=P1^6;        //将单片机的P3.2端口定义为时间加
sbit k2=P1^5;        //将单片机的P3.3端口定义为时间减
sbit k3=P1^7;        //将单片机的P3.4端口定义为检测点焊笔


sbit out=P1^4;       //驱动脉冲输出
//数码管真值表//
u8 code LED_CODE[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09}; //显示0~F的段码


u16 Cntms1=0,Cntms2=0,num1,num2;ke;


u8 num;                //定时变量=毫秒


void Delay(unsigned long int t)
{
        while(--t);
         
}


/*===加按键检测===*/
/*芯片解密|当此函数检测到有效按键时返回1,没有检测到有效值时返回0*/
bit skey0(void)
{
        static unsigned char a = 0;
        if(k1 == 0)                                        //如果检测到按键引脚有低电平,记数变量开始累加.
        {
                if(a < 50)                                //控制延时计数返0,因为当按键不松开时,j一直在累加
                        a++;                                //CPU每检测到一次按键引脚为低电平0,j就累加1次.
        }
        else                                                //如果按键没有按下或者按下后有高电平(抖动)j清0
                a = 0;
        
        if(a == 49)                                //如果变量j的值累加到49,说明按键已跨过抖动区.
                return 1;                                //返回1,说明已检测到按键有效值.
        else
                return 0;                                //返回0,说明没有检测到有效值.
}
/*===减按键检测===*/
/*当此函数检测到有效按键时返回1,没有检测到有效值时返回0*/
bit skey1(void)
{
        static unsigned char i = 0;        //定义静态变量,用来记录延时用.
        if(k2 == 0)                                        //如果检测到按键引脚有低电平,记数变量开始累加.
        {
                if(i < 50)                                //控制延时计数返0,因为当按键不松开时,i一直在累加.
                        i++;                                //CPU每检测到一次按键引脚为低电平0,i就累加1次.
        }
        else                                                //如果按键没有按下或者按下后有高电平(抖动)i清0
                i = 0;
        
        if(i == 49)                                //如果变量i的值累加到49,说明按键已跨过抖动区
                return 1;                                //返回1,说明已检测到按键有效值.
        else
                return 0;                                //返回0,说明没有检测到有效值.
}


bit skey2(void)
{
        static unsigned  int l = 0;        //定义静态变量,用来记录延时用.                   unsigned long int
        if(k3 == 0)                                //如果检测到按键引脚有低电平,记数变量开始累加.
        {
                if(l <5000)                                //控制延时计数返0,因为当按键不松开时,i一直在累加
                        l++;                                //CPU每检测到一次按键引脚为低电平0,i就累加1次.
        }
        else                                                //如果按键没有按下或者按下后有高电平(抖动)i清0
                l = 0;
        
        if(l == 4999)                                //如果变量i的值累加到4999,说明点焊笔已经做好准备,可以焊接了.
                return 1;                                //返回1,说明已检测到按键有效值.
        else
                return 0;                                //返回0,说明没有检测到有效值.
}


联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信