//自分のドライブを追加
#include <1302.h>
の#include <DS18B20.h>
U16ドゥアンコード[] = {は0x3F、0x06,0x5b、0x4F、0x66,0x6d、0x7D、0x07の、
から0x7F、0x6F、0x77,0x7c、0x39,0x5e、0x79 、0x71,0x00,0X40};
U8李、ER、サン、シリコン、呉、劉、チー、BA;
U8 shizhongshezhicishu = 0 ;? // OUシース??????
U8 naozhong [3] = {0、 } 0,0;
U16のdingshishijian;
U16のdingshishijian1;
U8 kongzhishanshuo;
U8のnaozhongcishu;
U8甲、建;
U8のchucunshijian [3];
U8カイ;
ボイドDelay1ms();
ボイドディスプレイ();
の#include <DS18B20.h>
U16ドゥアンコード[] = {は0x3F、0x06,0x5b、0x4F、0x66,0x6d、0x7D、0x07の、
から0x7F、0x6F、0x77,0x7c、0x39,0x5e、0x79 、0x71,0x00,0X40};
U8李、ER、サン、シリコン、呉、劉、チー、BA;
U8 shizhongshezhicishu = 0 ;? // OUシース??????
U8 naozhong [3] = {0、 } 0,0;
U16のdingshishijian;
U16のdingshishijian1;
U8 kongzhishanshuo;
U8のnaozhongcishu;
U8甲、建;
U8のchucunshijian [3];
U8カイ;
ボイドDelay1ms();
ボイドディスプレイ();
ボイドDelay200ms()//@11.0592MHz
{
unsigned char型I、J、K。
{
unsigned char型I、J、K。
_nop_()。
_nop_()。
I = 9;
J = 104。
K = 139。 { 行う { 一方(--k)。 }一方(--j)。 }一方(--I)。 }
_nop_()。
I = 9;
J = 104。
K = 139。 { 行う { 一方(--k)。 }一方(--j)。 }一方(--I)。 }
空Timer0Init(無効)//[email protected]
{
AUXR | = 0x80を; // ????? 1T?
TMOD&= 0xF0が、// ???????
TL0 = 0xCD。// ??????
TH0 =は0xD4; // ??????
TF0 = 0; // ?? TF0 ??
TR0 = 0;
EA = 1。
ET0 = 1; // ??? 0 ????
TMOD&= 0x0Fの。// ???????
TL1 = 0xCD。// ??????
TH1 =は0xD4; // ??????
TF1 = 0; // ?? TF1 ??
TR1 = 0;
ET1 = 1。
}
{
AUXR | = 0x80を; // ????? 1T?
TMOD&= 0xF0が、// ???????
TL0 = 0xCD。// ??????
TH0 =は0xD4; // ??????
TF0 = 0; // ?? TF0 ??
TR0 = 0;
EA = 1。
ET0 = 1; // ??? 0 ????
TMOD&= 0x0Fの。// ???????
TL1 = 0xCD。// ??????
TH1 =は0xD4; // ??????
TF1 = 0; // ?? TF1 ??
TR1 = 0;
ET1 = 1。
}
ボイドDelay10ms()//@11.0592MHz
{
unsigned char型I、J。
{
unsigned char型I、J。
I = 108。
J = 145;
実行
{
一方(--j)。
}一方(--I)。
}
ボイドDelay1ms()//@11.0592MHz
{
unsigned char型I、J。
J = 145;
実行
{
一方(--j)。
}一方(--I)。
}
ボイドDelay1ms()//@11.0592MHz
{
unsigned char型I、J。
_nop_()。
_nop_()。
_nop_()。
I = 11;
J = 190;
実行
{
一方(--j)。
}一方(--I)。
}
ボイドallinit()
{
P2 = 0xA0を。
P0 = 0x00の。
P2 = 0x80を。
P0 = 0xffで。
}
無効表示()//陏??1?醸???
{
P2 = 0xc0から。
P0 = 0x80を;
P2 = 0xFFを、
P0 =〜ドゥアン[BA]。
Delay1ms();
P2 = 0xc0から。
P0 = 0x40の。
P2 = 0xFFを、
P0 =〜ドゥアン[気]。
Delay1ms(); P2 = 0xc0から。
P0 = 0x20の。
P2 = 0xFFを、
P0 =〜ドゥアン[劉]。
Delay1ms(); P2 = 0xc0から。
P0 = 0x10を;
P2 = 0xFFで、
P0 =〜ドゥアン[ウー];
Delay1ms(); P2 = 0xC0の、
P0 = 0x08に、
P2 = 0xFFで、
P0 =〜ドゥアン[シリコン];
Delay1ms(); P2 = 0xC0の、
P0 = 0x04を、
P2 = 0xFFで、
P0 =〜ドゥアン[サン];
Delay1ms();
P2 = 0xC0の、
P0 = 0x02の;
P2 = 0xFFで、
P0 =〜ドゥアン[ER];
Delay1ms();
P2 = 0xC0の、
P0 = 0x01で、
P2 = 0xFFで;
ドゥアン=〜P0 [イル];
Delay1ms();
}
_nop_()。
_nop_()。
I = 11;
J = 190;
実行
{
一方(--j)。
}一方(--I)。
}
ボイドallinit()
{
P2 = 0xA0を。
P0 = 0x00の。
P2 = 0x80を。
P0 = 0xffで。
}
無効表示()//陏??1?醸???
{
P2 = 0xc0から。
P0 = 0x80を;
P2 = 0xFFを、
P0 =〜ドゥアン[BA]。
Delay1ms();
P2 = 0xc0から。
P0 = 0x40の。
P2 = 0xFFを、
P0 =〜ドゥアン[気]。
Delay1ms(); P2 = 0xc0から。
P0 = 0x20の。
P2 = 0xFFを、
P0 =〜ドゥアン[劉]。
Delay1ms(); P2 = 0xc0から。
P0 = 0x10を;
P2 = 0xFFで、
P0 =〜ドゥアン[ウー];
Delay1ms(); P2 = 0xC0の、
P0 = 0x08に、
P2 = 0xFFで、
P0 =〜ドゥアン[シリコン];
Delay1ms(); P2 = 0xC0の、
P0 = 0x04を、
P2 = 0xFFで、
P0 =〜ドゥアン[サン];
Delay1ms();
P2 = 0xC0の、
P0 = 0x02の;
P2 = 0xFFで、
P0 =〜ドゥアン[ER];
Delay1ms();
P2 = 0xC0の、
P0 = 0x01で、
P2 = 0xFFで;
ドゥアン=〜P0 [イル];
Delay1ms();
}
空juzhen()// ??????
{
U8 DAT。
会= 0;
JIA = 0;
建= 0;
IF(P30 == 0)
{
Delay10ms()。
IF(P30 == 0)
{
DAT = 4;カイ= 1。
}
一方(P30 == 0)
{
}
}
もし(P31 == 0)
{
Delay10ms()。
(P31 == 0)であれば
{
DAT = 3。
カイ= 1。
}
一方(P31 == 0)
{
}
}
もし(P32 == 0)
{
Delay10ms()。
IF(P32 == 0)
{
DAT = 2;カイ= 1。
}
一方、(P32 == 0)
{
}
}
もし(P33 == 0)
{
Delay10ms()。
(P33 == 0)であれば
{
DAT = 1。
カイ= 1。
}
{
U8 DAT。
会= 0;
JIA = 0;
建= 0;
IF(P30 == 0)
{
Delay10ms()。
IF(P30 == 0)
{
DAT = 4;カイ= 1。
}
一方(P30 == 0)
{
}
}
もし(P31 == 0)
{
Delay10ms()。
(P31 == 0)であれば
{
DAT = 3。
カイ= 1。
}
一方(P31 == 0)
{
}
}
もし(P32 == 0)
{
Delay10ms()。
IF(P32 == 0)
{
DAT = 2;カイ= 1。
}
一方、(P32 == 0)
{
}
}
もし(P33 == 0)
{
Delay10ms()。
(P33 == 0)であれば
{
DAT = 1。
カイ= 1。
}
}
IF(DAT == 4 && naozhongcishu == 0)
{
{
P14 = 1;
P17 = 0;
。shizhongshezhicishu + = 1;
}
IF(shizhongshezhicishu == 4)
{
shizhongshezhicishu = 0;
}
(DAT == 3 && shizhongshezhicishu == 0)IF
{
naozhongcishu + = 1;
}
IF(naozhongcishu == 4)
{
= 0 naozhongcishu;
}
IF(DAT == 2)
{
甲= 1;
}
IF(!== DAT 1 &&(|| naozhongcishu shizhongshezhicishu = 0 = 0))
{
ながら(P33 == 0)
{
建1 =。
}
}
IF(P33 shizhongshezhicishu == 0 &&!= naozhongcishu 1 &&!= 1)
{
ながら(P33 == 0)
{
イー= 16; ER = 16;サン= 16;のSi = 16;ウー= 16;
DAT = zuizhong();
リュー= DAT / 100;チー= DAT / 10%10; BA = DAT 10%;
表示() ;
}
}
}
P17 = 0;
。shizhongshezhicishu + = 1;
}
IF(shizhongshezhicishu == 4)
{
shizhongshezhicishu = 0;
}
(DAT == 3 && shizhongshezhicishu == 0)IF
{
naozhongcishu + = 1;
}
IF(naozhongcishu == 4)
{
= 0 naozhongcishu;
}
IF(DAT == 2)
{
甲= 1;
}
IF(!== DAT 1 &&(|| naozhongcishu shizhongshezhicishu = 0 = 0))
{
ながら(P33 == 0)
{
建1 =。
}
}
IF(P33 shizhongshezhicishu == 0 &&!= naozhongcishu 1 &&!= 1)
{
ながら(P33 == 0)
{
イー= 16; ER = 16;サン= 16;のSi = 16;ウー= 16;
DAT = zuizhong();
リュー= DAT / 100;チー= DAT / 10%10; BA = DAT 10%;
表示() ;
}
}
}
ボイドshanshuo //()?E //
// {
//李= 16; ER = 16;サン= 16;のSi = 16;ウー= 16;劉= 16;チー= 16; BA = 16;
// }
ボイドshanshuo1()
{
chucunshijian [0] = chucunshijian [0] +甲-建;
TR0 = 1;
李= 16; ER = 16;サン= 17;のSi = chucunshijian [1] / 16;ウー= chucunshijian [1 】16%、劉= 17;チー= chucunshijian [2] / 16; BA = chucunshijian [2] 16%;
}
// {
//李= 16; ER = 16;サン= 16;のSi = 16;ウー= 16;劉= 16;チー= 16; BA = 16;
// }
ボイドshanshuo1()
{
chucunshijian [0] = chucunshijian [0] +甲-建;
TR0 = 1;
李= 16; ER = 16;サン= 17;のSi = chucunshijian [1] / 16;ウー= chucunshijian [1 】16%、劉= 17;チー= chucunshijian [2] / 16; BA = chucunshijian [2] 16%;
}
shanshuo2ボイド
(){TR0 = 1; [1] chucunshijian = chucunshijian +甲-建[1]。
(){TR0 = 1; [1] chucunshijian = chucunshijian +甲-建[1]。
YI = [0] / 16 chucunshijian ; ER = chucunshijian [0]%16;サン= 17; SI = 16;ウー= 16;劉= 17;チー= chucunshijian [2] / 16; BA = chucunshijian [2]% 16;
}
}
shanshuo3ボイド()
{TR0 = 1; chucunshijian [2] = chucunshijian [2] +甲、建。
{TR0 = 1; chucunshijian [2] = chucunshijian [2] +甲、建。
YI = chucunshijian [0] / 16 、ER = chucunshijian [0]%16;サン= 17; SI = chucunshijian [1] / 16;ウー= chucunshijian [1]%16;劉= 17;気= 16; BA = 16;
}
ボイドzhengchang()
{
イー= chucunshijian [0] / 16、ER = chucunshijian [0]%16;サン= 17;のSi = chucunshijian [1] / 16;ウー= chucunshijian [1]%16;リュー= 。17;チー= chucunshijian [2] / 16; BA = chucunshijian [2]%16;
}
ボイドzhengchang1()
{
イー= Shijian [0] / 16、ER = Shijian [0]%16;サン= 17;のSi = Shijian [1] / 16;ウーShijian = 16%[1];劉= 17;チー= Shijian [2] / 16; BA = Shijian [2] 16%;
}
}
ボイドzhengchang()
{
イー= chucunshijian [0] / 16、ER = chucunshijian [0]%16;サン= 17;のSi = chucunshijian [1] / 16;ウー= chucunshijian [1]%16;リュー= 。17;チー= chucunshijian [2] / 16; BA = chucunshijian [2]%16;
}
ボイドzhengchang1()
{
イー= Shijian [0] / 16、ER = Shijian [0]%16;サン= 17;のSi = Shijian [1] / 16;ウーShijian = 16%[1];劉= 17;チー= Shijian [2] / 16; BA = Shijian [2] 16%;
}
sanshanshuoボイド()
{
chucunshijian [0] = Shijian [0];
chucunshijian = Shijian; [1] [1]
chucunshijian [2] = Shijian [2];
スイッチ(shizhongshezhicishu)
{ケース1:
{
chucunshijian [0] = Shijian [0];
chucunshijian = Shijian; [1] [1]
chucunshijian [2] = Shijian [2];
スイッチ(shizhongshezhicishu)
{ケース1:
IF(kongzhishanshuo == 0)
{
shanshuo1();
}
そうIF(kongzhishanshuo == 1)
{
zhengchang();
}
BREAK;
2ケース:
IF(kongzhishanshuo == 0)
{
shanshuo2();
}
そうIF(= kongzhishanshuo 1 =)
{
zhengchang();
}
BREAK;
ケース3:
IF(kongzhishanshuo == 0)
{
shanshuo3();
}
。他IF(kongzhishanshuo == 1)
{
zhengchang();
}
BREAK;
}
書き込み(0x8Eが、$ 00) ;
書き込み(chucunshijian 0x80を、[0]);
WRITE(0x82と、chucunshijian [1]);
WRITE(0x84の、chucunshijian [2]);
WRITE(0x8Eが、0x80の);
}
ボイドnaozhongkongzhi()
{
イー= naozhong [0] / 10; ER = naozhong [0]%10;サン= 17;のSi = naozhong [1] / 10;
ウー= naozhong [1]%10;劉= 17;チー= naozhong [2] / 10; BAは= naozhong [ 2] 10%;
}
ボイドnaozhongxianshi()
{
TR0 = 1;
IF(naozhongcishu == 1 && kongzhishanshuo == 0)
{
naozhong [0] = naozhong [0] +甲-建;
naozhongkongzhi();
}
そうIF(naozhongcishu = == 1 && 1 kongzhishanshuo =)。
{
イー= 16; ER = 16;サン= 17;のSi = naozhong / 10 [1]。
ウー= naozhong [1]%10;劉= 17;チー= naozhong [2] / 10; BA = naozhong [2]%10;
}
IF(naozhongcishu == 2 && kongzhishanshuo == 0)
{
naozhong [1] = naozhong [ 1] +甲-建;
naozhongkongzhi();
}
そうIF(naozhongcishu == 2 && kongzhishanshuo == 1)
{
イー= naozhong [0] / 10、ER = naozhong [0]%10;サン= 17;のSi = 16。
= 16呉、劉= 17;チー= naozhong [2] / 10; BA = 10%と[2] naozhong;
}
IF(naozhongcishu kongzhishanshuo == == 0 && 3)
{
[2] = naozhong [2] + jia- naozhong建;
naozhongkongzhi();
}
そうIF(naozhongcishu == 3 && kongzhishanshuo == 1)
{
イー= naozhong [0] / 10、ER = naozhong [0]%10;サン= 17; Siは= naozhong / 10 [1]。
ウー= naozhong [1]%10;劉= 17;チー= 16; BA = 16;
}
}
ボイドnaozhongxiang()
{
P2 = 0xCF;
P0 = 0xFFで、
P2 = 0xFFで、
P0 = 0xFFで、
TR1 = 1;
一方( 1)
{
P2 = 0x80を、
P0 = 0x00で、
Delay200ms();
P2 = 0x80を、
P0 = 0xFFで、
Delay200ms();
Juzhen();
IF(カイ== 1)
{
BREAK;
}
}
dingshishijian = 0;
TR1 = 0 ;
}
ボイドメイン()
{
Timer0Init();
WR();
allinit();
一方、(1)
{
Juzhen();
のRe()。
IF(shizhongshezhicishu == 0 && naozhongcishu == 0)
{
zhengchang1();
}
他{
sanshanshuo();
naozhongxianshi();
}
// moshixuanze();
//のRe();
表示();
IF(Shijian [0] = naozhong = [0] && Shijian == naozhong && Shijian [2] == naozhong [2])[1] [1]
{
naozhongxiang();
}
}
}
ボイドding0(1)割り込み
{
{
0xCD = TL0; // ??????
TH0は=は0xD4;
dingshishijian ++;
IF(1,000 dingshishijian == == 0 && kongzhishanshuo)
{
kongzhishanshuo = 1;
dingshishijian = 0;
}
そうIF(dingshishijian == == 1000年&& kongzhishanshuo 1)
{
= 0 kongzhishanshuo;
dingshishijian = 0;
}
}
TH0は=は0xD4;
dingshishijian ++;
IF(1,000 dingshishijian == == 0 && kongzhishanshuo)
{
kongzhishanshuo = 1;
dingshishijian = 0;
}
そうIF(dingshishijian == == 1000年&& kongzhishanshuo 1)
{
= 0 kongzhishanshuo;
dingshishijian = 0;
}
}
3割り込みボイドding1()
{
TL1 = 0xCD。
TH1 =は0xD4;
// ??????
{
TL1 = 0xCD。
TH1 =は0xD4;
// ??????
++ dingshishijian1;
}