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

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

单片机+DS18B20温度控制程序仿真芯片解密

芯片解密单片机源程序如下:
#include<reg52.h>         //芯片解密51单片机的头文件
#include<intrins.h>   //函数程序中需要使用到空指令
/***_crol_ 字符循环左移
    _cror_ 字符循环右移
    _irol_ 整数循环左移
    _iror_ 整数循环右移
    _lrol_ 长整数循环左移
    _lror_ 长整数循环右移
    _nop_ 空操作 (相当于8051 NOP 指令)
    _testbit_ 测试并清零位 (相当于8051 JBC 指令) ***/
#define dm P0          //段码输出口
#define uchar unsigned char //宏定义,用uchar来代替unsigned char(无符号字符型变量,也即是无符号的8位变量),                                         
//宏定义的原因就是书写方便,宏定义后,uchar可直接用来定义变量
#define uint unsigned int  //原因同上,不过要注意,unsigned int为无符号的整型变量
//sbit是用来管脚的。
sbit DQ=P1^0;          //温度输入口
sbit w0=P2^4;          //数码管4
sbit w1=P2^5;          //数码管3
sbit w2=P2^6;          //数码管2
sbit w3=P2^7;          //数码管1
sbit beep=P2^0;   //蜂鸣器
sbit jidianqi=P2^1; //继电器
sbit yellow=P3^5;          //加热指示灯
sbit led=P3^6;            //高温指示灯
sbit zc=P3^7;         //系统运行正常指示灯
sbit set=P3^4;                     //选择设置
sbit add=P3^3;                  //加
sbit dec=P3^2;                  //减
int temp1=0;//最高温度和最低温度标志位         
uint h;
uint temp;        //温度函数
uchar r;
uchar high=30,low=28;        //开机默认最高温度和最低温度
uchar sign;
uchar q=0;
uchar tt=0;
uchar scale;
uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};          //共阳小数断码表
uchar code table_dm[12]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff,0xbf};          //共阳LED段码表"0""1""2""3""4""5""6""7""8""9""不亮""-"
uchar code table_dm1[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};        //共阳个位带小数点的断码表
uchar data temp_data[2]={0xff,0xff};//读出温度暂放
uchar data display[5]={0xff,0xff,0xff,0xff,0xff};//显示单元数据,共四个数据和一个运算暂用
/***************11us延时函数***************/
void delay(uint t)
{
        for(;t>0;t--);
}
/***************数码管显示***************/
void scan()
{
        int j;
        for(j=0;j<4;j++)
        {
                switch(j)
                {
                        case 0:
                        dm=table_dm[display[0]];;
                        w0=0;  //打开数码管显示小数数字的数码管位选端
                        delay(50);
                        w0=1;        //关闭数码管显示小数数字的数码管位选端
                        case 1:
                        dm=table_dm1[display[1]];
                        w1=0;  //打开数码管显示个位数字的数码管位选端
                        delay(50);
                        w1=1;        //关闭数码管显示个位数字的数码管位选端
                        case 2:
                        dm=table_dm[display[2]];
                        w2=0;        //打开数码管显示十位数字的数码管位选端
                        delay(50);
                        w2=1;        //关闭数码管显示十位数字的数码管位选端
                        case 3:
                        dm=table_dm[display[3]];
                        w3=0;        //打开数码管显示百位数字的数码管位选端
                        delay(50);
                        w3=1;        //关闭数码管显示百位数字的数码管位选端
                }
        }
}


联系方式

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

在线客服
热线电话

企业微信