📄 ht1623.i
字号:
#line 12 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 15 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 16 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 17 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 18 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 19 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 20 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 24 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 25 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 26 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 27 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 28 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 31 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 32 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 33 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 34 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 35 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 38 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 39 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 40 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 41 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 42 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 43 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 45 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 46 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 47 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 48 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 49 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 50 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 51 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 52 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 56 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 57 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 58 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 59 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 62 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 63 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 64 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 65 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 67 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 68 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 69 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 72 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 73 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 74 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 75 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 78 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 79 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 80 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 81 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 82 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 83 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 84 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 85 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 86 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 87 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 88 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 89 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 90 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 91 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 92 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 96 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 100 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 101 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 103 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 104 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 106 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 107 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 109 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 110 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 112 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 113 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 114 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 115 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 116 "./PIC18F6720_PERIPHERYDEVICE.h"
#line 20 "HT1623.C"
#line 26 "HT1623.C"
#line 27 "HT1623.C"
#line 28 "HT1623.C"
#line 29 "HT1623.C"
#line 31 "HT1623.C"
#line 32 "HT1623.C"
#line 33 "HT1623.C"
#line 34 "HT1623.C"
#line 35 "HT1623.C"
#line 36 "HT1623.C"
#line 37 "HT1623.C"
#line 38 "HT1623.C"
#line 39 "HT1623.C"
#line 40 "HT1623.C"
#line 41 "HT1623.C"
#line 42 "HT1623.C"
#line 43 "HT1623.C"
#line 44 "HT1623.C"
#line 45 "HT1623.C"
#line 46 "HT1623.C"
#line 47 "HT1623.C"
#line 49 "HT1623.C"
#line 50 "HT1623.C"
void InitHT1623Port(void)
{
LATDbits.LATD2 = 1;
LATDbits.LATD1 = 1;
LATDbits.LATD0 = 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
}
unsigned char RdHT1623OneByte(unsigned char Id_addr)
{
unsigned char redata = 0,i;
unsigned int tmep = 0;
INTCONbits.GIE = 0 ;
DDREbits.RE7 = 0;
LATEbits.LATE7 = 1;
LATDbits.LATD1 = 1;
LATDbits.LATD2 = 0;
tmep |= 0xc0 ;
tmep <<= 2;
tmep |= Id_addr;
tmep <<= 6;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
for(i=0;i<10;i++)
{
LATDbits.LATD0 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
if(tmep & 0x08000)
LATEbits.LATE7 = 1;
else
LATEbits.LATE7 = 0;
tmep = tmep << 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
LATDbits.LATD0 = 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
}
DDREbits.RE7 = 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
for(i=0;i<4;i++)
{
LATDbits.LATD1 = 0;
redata = redata >> 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
LATDbits.LATD1 = 1;
if(PORTEbits.RE7 == 1)
{
redata |= 0X08;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
}
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
}
InitHT1623Port();
INTCONbits.GIE = 1 ;
return redata;
}
void WrHT1623OneByte(unsigned char Toid_addr,unsigned char Todata)
{
unsigned int tmep = 0;
unsigned char i;
INTCONbits.GIE = 0 ;
tmep |= 0xa0 ;
tmep = tmep << 2;
tmep |= Toid_addr;
tmep = tmep << 4;
tmep |= Todata;
tmep = tmep << 2;
DDREbits.RE7 = 0;
LATEbits.LATE7 = 1;
LATDbits.LATD2 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
for(i=0;i<10;i++)
{
LATDbits.LATD0 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
if(tmep & 0x08000)
LATEbits.LATE7 = 1;
else
LATEbits.LATE7 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
LATDbits.LATD0 = 1;
tmep = tmep << 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
}
for(i=0;i<4;i++)
{
LATDbits.LATD0 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
if(tmep & 0x01000)
LATEbits.LATE7 = 1;
else
LATEbits.LATE7 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
LATDbits.LATD0 = 1;
tmep = tmep >> 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
}
LATEbits.LATE7 = 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
InitHT1623Port();
INTCONbits.GIE = 1 ;
}
void SentCmdToHT1623(unsigned char ht1623cmd )
{
unsigned int tmepcmd=0,i;
INTCONbits.GIE = 0 ;
tmepcmd = tmepcmd | 0x80 ;
tmepcmd = tmepcmd << 3;
tmepcmd = tmepcmd | ht1623cmd;
tmepcmd = tmepcmd << 5;
DDREbits.RE7 = 0;
LATEbits.LATE7 = 1;
LATDbits.LATD2 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
for(i=0;i<12;i++)
{
LATDbits.LATD0 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
if(tmepcmd & 0x8000)
LATEbits.LATE7 = 1;
else
LATEbits.LATE7 = 0;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
LATDbits.LATD0 = 1;
tmepcmd = tmepcmd << 1;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY();Delay1TCY() ;
}
LATEbits.LATE7 = 1;
InitHT1623Port();
INTCONbits.GIE = 1 ;
}
void Endisplay(void)
{
INTCONbits.GIE = 0 ;
InitHT1623Port();
SentCmdToHT1623(0x01);
Delay10KTCYx(200);
Delay10KTCYx(200);
SentCmdToHT1623(0x03);
Delay1TCY();
SentCmdToHT1623(0x1C);
SentCmdToHT1623(0x05);
SentCmdToHT1623(0x04);
SentCmdToHT1623(0x08);
INTCONbits.GIE = 1 ;
}
void Dsdisplay(void)
{
INTCONbits.GIE = 0 ;
SentCmdToHT1623(0x00);
SentCmdToHT1623(0x02);
SentCmdToHT1623(0x1C);
INTCONbits.GIE = 1 ;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -