51单片机红外线解码的程序
实际上如果ir_code[2]是8位二进制数的话 ir_code[2]/16,结果就只剩低4 位有效了再进行&0x0f;还是取低4位没意义了 如 0XA8/16=0X0A 0X0A &0x0f=0X0Air_code[2]&0x0f有意义 是 将高4位清0只取低4位估计你的表格里只有16个七段码 因此查表时只能对高4位和低4位(都不大于15)分别处理和显示/16和数学的除法相似,不过只取整数部分,不理会余数 如 15/16=0 17/16=1 18/16=132/16=2 35/16=20x0f化成二进制是 0000 1111 另一个二进制数xxxx xxxx和它相“与” 则高4位全为0低4位不变,即(xxxx xxxx)&(0000 1111 )=0000 xxxx另外,/2相当于把这个二进制数向右移1 位(高位补0)/4相当于把这个二进制数向右移2 位/16相当于把这个二进制数向右移4 位,原来的高4位就跑到了现在的低4 位上,现在高4 位就全成了0所以C 语言中常见>>4 >>8 和/16 /256是等价的
如果单片机程序是加密的怎样解密?
单片机解密的常用方法及如何应对单片机解密单片机解密的常用方法及应对单片机芯片解密的方法如下单片机芯片的解密方法如下,其实,一般的人也还是破解不开的,能破解的单片机都是小芯片/小程序(直接说就是模仿其功能而新开发新程序)或解密成本比开发还高,只要用以下几种解密方法来设计产品: 1:让原芯片厂家将芯片的封装脚位全部调换; 2:将HTXXXX的印字印为MDTXXXX的,将PICXXX的印为ATXXXX.......。
3:使用四层板(故意多走一些线); 4:用环氧树脂 酶(xxx酶:可增加硬度,如将其弄开后芯片就报废了)将测试好的线路板密封上; 5:将芯片的程序里加入芯片保护程序,EMXXX如2脚有电压输入时就将所有芯片的内容清除......; 6:最好使用裸片来做产品; 7:将部分端口用大电流熔断......。
8:一般单片机解密也是犯法的,现在国家也正在打击这些人,如盗版光蝶;软件;书.....;查到都要罚款及判刑的,在欧盟抓到就发几十万到几十亿欧元。
摘要:介绍了单片机程序解密的常用方法,重点说明了侵入型攻击/物理攻击单片机解密方法的详细步骤,最后,从应用角度出发,提出了对付单片机解密的几点建议。
关键词: 单片机解密,单片机解密软件,单片机解密工具,单片机解密器,单片机解密方法,单片机解密价格,pic单片机解密,stc单片机解密,单片机解密软件下载, 三星单片机解密,motorola单片机解密,单片机解密论坛,AVR单片机解密,单片机程序解密,单片机解密方案,单片机加密解密 1 引言 单片机(Microcontroller)一般都有内部ROM/EEPROM/Flash供用户存放程序。
为了防止未经授权访问或拷贝单片机的机内程序,大部分单片机都带有加密锁定位或者加密字节,以保护单片机片内程序。
如果在编程时单片机加密锁定位被使能(锁定),就无法用普通编程器直接读取单片机内的程序,这就是所谓拷贝保护或者说锁定功能。
事实上,这样的保护措施很脆弱,很容易被破解。
单片机攻击者借助专用设备或者自制设备,利用单片机芯片设计上的漏洞或软件缺陷,通过多种技术手段,就可以从芯片中提取关键信息,获取单片机内程序。
因此,作为电子产品的设计工程师非常有必要了解当前单片机攻击的最新技术,做到知己知彼,心中有数,才能有效防止自己花费大量金钱和时间辛辛苦苦设计出来的产品被人家一夜之间仿冒的事情发生。
2 单片机攻击技术 目前,攻击单片机主要有四种技术,分别是: (1)软件攻击 该技术通常使用处理器通信接口并利用协议、加密算法或这些算法中的安全漏洞来进行攻击。
软件攻击取得成功的一个典型事例是对早期Atmel AT89 系列单片机的攻击。
攻击者利用了该系列单片机擦除操作时序设计上的漏洞,使用自编程序在擦除加密锁定位后,停止下一步擦除片内程序存储器数据的操作,从而使加过密的单片机变成没加密的单片机,然后利用编程器读出片内程序。
(2) 电子探测攻击 该技术通常以高时间分辨率来监控处理器在正常操作时所有电源和接口连接的模拟特性,并通过监控它的电磁辐射特性来实施攻击。
因为单片机是一个活动的电子器件,当它执行不同的指令时,对应的电源功率消耗也相应变化。
这样通过使用特殊的电子测量仪器和数学统计方法分析和检测这些变化,即可获取单片机中的特定关键信息。
(3)过错产生技术 该技术使用异常工作条件来使处理器出错,然后提供额外的访问来进行攻击。
使用最广泛的过错产生攻击手段包括电压冲击和时钟冲击。
低电压和高电压攻击可用来禁止保护电路工作或强制处理器执行错误操作。
时钟瞬态跳变也许会复位保护电路而不会破坏受保护信息。
电源和时钟瞬态跳变可以在某些处理器中影响单条指令的解码和执行。
(4)探针技术 该技术是直接暴露芯片内部连线,然后观察、操控、干扰单片机以达到攻击目的。
为了方便起见,人们将以上四种攻击技术分成两类,一类是侵入型攻击(物理攻击),这类攻击需要破坏封装,然后借助半导体测试设备、显微镜和微定位器,在专门的实验室花上几小时甚至几周时间才能完成。
所有的微探针技术都属于侵入型攻击。
另外三种方法属于非侵入型攻击,被攻击的单片机不会被物理损坏。
在某些场合非侵入型攻击是特别危险的,这是因为非侵入型攻击所需设备通常可以自制和升级,因此非常廉价。
大部分非侵入型攻击需要攻击者具备良好的处理器知识和软件知识。
与之相反,侵入型的探针攻击则不需要太多的初始知识,而且通常可用一整套相似的技术对付宽范围的产品。
因此,对单片机的攻击往往从侵入型的反向工程开始,积累的经验有助于开发更加廉价和快速的非侵入型攻击技术。
3 侵入型攻击的一般过程 侵入型攻击的第一步是揭去芯片封装。
有两种方法可以达到这一目的:第一种是完全溶解掉芯片封装,暴露金属连线。
第二种是只移掉硅核上面的塑料封装。
第一种方法需要将芯片绑定到测试夹具上,借助绑定台来操作。
第二种方法除了需要具备攻击者一定的知识和必要的技能外,还需要个人的智慧和耐心,但操作起来相对比较方便。
芯片上面的塑料可以用小刀揭开,芯片周围的环氧树脂可以用浓硝酸腐蚀...
51单片机红外解码C程序
展开全部 单片机采用外部中断P3.3管脚和红外接收头的信号线相连,中断方式为边沿触发方式。
并用定时器0计算中断的间隔时间,来区分前导码、二进制的“1”、“0”码。
并将8位操作码提取出来在数码管上显示。
// 解码值在Im[2]中,当IrOK=1时解码有效。
/* 51单片机红外遥控解码程序 *///用遥控器对准红外接收头,按下遥控器按键,在数码管前两位上就会显示对应按键的编码#include #define uchar unsigned char sbit dula=P2^6;sbit wela=P2^7;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};uchar f;#define Imax 14000 //此处为晶振为11.0592时的取值, #define Imin 8000 //如用其它频率的晶振时,#define Inum1 1450 //要改变相应的取值。
#define Inum2 700 #define Inum3 3000unsigned char Im[4]={0x00,0x00,0x00,0x00};uchar show[2]={0,0};unsigned long m,Tc;unsigned char IrOK;void delay(uchar i){ uchar j,k; for(j=i;j>0;j--) for(k=125;k>0;k--);}void display(){ dula=0; P0=table[show[0]]; dula=1; dula=0; wela=0; P0=0xfe; wela=1; wela=0; delay(5); P0=table[show[1]]; dula=1; dula=0; P0=0xfd; wela=1; wela=0; delay(5);} //外部中断解码程序void intersvr1(void) interrupt 2 using 1{ Tc=TH0*256+TL0; //提取中断时间间隔时长 TH0=0; TL0=0; //定时中断重新置零 if((Tc>Imin)&&(TcInum1&&Tc>1|0x80; m++; } if(Tc>Inum2&&Tc>1; m++; //取码 } if(m==32) { m=0; f=0; if(Im[2]==~Im[3]) { IrOK=1; } else IrOK=0; //取码完成后判断读码是否正确 } //准备读下一码 }}/*演示主程序*/void main(void){ unsigned int a; m=0; f=0; EA=1; IT1=1;EX1=1; TMOD=0x11; TH0=0;TL0=0; TR0=1;//ET0=1; while(1) { if(IrOK==1) { show[1]=Im[2] & 0x0F; //取键码的低四位 show[0]=Im[2] >> 4; IrOK=0; } for(a=100;a>0;a--) { display(); } }}解码程序这个就能实现
c51单片机红外线发射编码、接收解码程序编写。
这个程序太简单了,我之前写过红外发射程序的,接收程序也很简单,你这个项目我2个小时都能帮你解决,但是89C52单片机发射38K不准需要把晶振加大,提高单片机的运行速度。
你的项目只要主机A发射红外协议后面加一个地址,单片机B接收的时候全部进入接收状态,判接收的地址是否符合对于单片机B的地址,如果地址符合,那就先回应一个数据例如:55FF55,主机接收到55FF55后后面开始接收数据,把接收到的数据直接写入单片机内EEPRM里面!http://hi.baidu.com/332475754/item/d36b8a3abc3a12fde7bb7a09
单片机stc89c52用什么软件下载程序
展开全部 硬件解码跟软件解码我们通常称为硬解跟软解,是通过移动设备观看视频时会碰到的一个概念。
首先来说下两者的区别:硬件解码:硬件解码从字面意思很容易理解,就是通过硬件进行视频的解码工作,其中硬件解码是由GPU来进行的,使用GPU解码能够降低CPU的工作负荷,降低功耗。
软件解码:软件解码则是通过软件本身占用的CPU进行解码,所以会增加CPU工作负荷,提升功耗,硬解及软解的优点跟缺点:硬解优点:播放出来的视频较为流畅,并且能够延长移动设备播放视频的时间;硬解缺点:所解码视频格式收到GPU影响,无法部分全部视频,画质也不够清晰。
软解优点:软解能够解码所有视频格式文件,且画质更加清晰;软解缺点:由于软解加大CPU工作负荷,会占用过多的移动CPU资源,如果CPU能力不足,则软件也将受到影响。
...
转载请注明出处51数据库 » 单片机软件解码程序大全
巴黎的铁塔在思绪8170187