//////////////////////////////////////
創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)與策劃設(shè)計(jì),金林網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:金林等地區(qū)。金林做網(wǎng)站價(jià)格咨詢:18980820575
//晶振頻率為6MHz 一個(gè)機(jī)器周期2us //
//實(shí)現(xiàn)按鍵地址碼、指令碼的數(shù)碼管顯示//
//2010-06-01 //
//////////////////////////////////////
#includereg52.h
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
bit overflag,dataover;//開(kāi)始接收數(shù)據(jù),數(shù)據(jù)處理完畢
uchar timedata;//定時(shí)器0溢出次數(shù)
uchar chubus[33];//33Byte數(shù)據(jù) timedata組成的數(shù)組
uchar jieguos[4];//地址碼,地址反碼,數(shù)據(jù)碼,數(shù)據(jù)反碼;
void initial()//初始化
{
IT0=1;EX0=1;//負(fù)邊沿觸發(fā)
TMOD=0x01;ET0=1;TR0=1;//模式1,十六位定時(shí)器
TH0=0xff;TL0=0x06;//0.5ms溢出
EA=1; //開(kāi)總中斷
}
void time0() interrupt 1//定時(shí)器0中斷
{TH0=0xff;TL0=0x06;
timedata++;
}
void ex0() interrupt 0//外部中斷0,接收數(shù)據(jù)
{
static bit startflag;//開(kāi)始接收
static uchar i;
if(startflag)
{
if(timedata32timedata=16) i=0;
chubus[i]=timedata;
timedata=0;
i++;
if(i==33){overflag=1;i=0;}
}
else
{
startflag=1;
timedata=0;
}
}
void chulidata()
{
uchar chubu;//初步數(shù)據(jù)
uchar jieguo;//結(jié)果數(shù)據(jù)
uchar x,y,z=1;
for(x=0;x4;x++)//處理四組數(shù)據(jù)
{
for(y=1;y=8;y++)//處理一組數(shù)據(jù)8Byte
{
chubu=chubus[z];
jieguo=jieguo1;
if(chubu3) jieguo=jieguo|0x80;//大于1.5mS為1
z++;
}
jieguos[x]=jieguo;
jieguo=0;
}
dataover=1;
}
void delay(uint z)
{
uint x ,y;
for(x=z;x0;x--)
for(y=110;y0;y--);
}
void display()
{
uchar gao,gao1;
uchar di,di1;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
gao1=table[jieguos[0]/16];
di1=table[jieguos[0]%16];
gao=table[jieguos[2]/16];
di=table[jieguos[2]%16];
dula=1;
P0=gao1;
dula=0;
P0=0xff;
wela=1;
P0=0x7e;
wela=0;
delay(2);
dula=1;
P0=di1;
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delay(2);//地址碼
dula=1;
P0=gao;
dula=0;
P0=0xff;
wela=1;
P0=0x77;
wela=0;
delay(2);
dula=1;
P0=di;
dula=0;
P0=0xff;
wela=1;
P0=0x6f;
wela=0;
delay(2);//指令碼
}
void main()
{
initial();//初始化
while(1)
{
if(overflag)//數(shù)據(jù)接收完畢
{
chulidata();//處理數(shù)據(jù),完成標(biāo)志dataover
overflag=0;
}
if(dataover)
{
display();//數(shù)碼管顯示
}
}
}
J2ME是基于JVM的操作,外設(shè)方面都沒(méi)辦法控制的,可以用C語(yǔ)言以及匯編。單晶片那方面的知識(shí)
紅外遙控編碼
應(yīng)用中的各種紅外遙控系統(tǒng)的原理都大同小異,區(qū)別只是在于各系統(tǒng)的信號(hào)編碼格式不同。
紅外遙控發(fā)射器組成了鍵掃描、編碼、發(fā)射電路。當(dāng)按下遙控器上任一按鍵時(shí),TC9012即產(chǎn)生一串脈沖編碼。
建議看一下《簡(jiǎn)單談一下JAVA和紅外線》??梢酝ㄟ^(guò)可編程接收器來(lái)做
這不是一個(gè)人能做的 這設(shè)計(jì)到多個(gè)領(lǐng)域:
要為你這個(gè)功能寫(xiě)一個(gè)app應(yīng)用,就是一個(gè)小工具,一般是用java
單片機(jī)編程和開(kāi)發(fā),和藍(lán)牙模塊通訊,和紅外通訊,一般用C和匯編開(kāi)發(fā)
如果涉及藍(lán)牙協(xié)議和通訊格式 還需要處理android系統(tǒng),在linux平臺(tái)操作
你一個(gè)人是做不了這么多事情的,方案公司做這個(gè)東東都要一個(gè)月
當(dāng)前題目:紅外線java代碼 JaVa猜數(shù)字的代碼
標(biāo)題路徑:http://www.rwnh.cn/article40/hicjeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、定制網(wǎng)站、網(wǎng)站導(dǎo)航、、域名注冊(cè)、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容