Beruflich Dokumente
Kultur Dokumente
Code Provided)
by ICStation
Download
5 Steps
Intro
Designed by ICStation
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
#define HC_DATA_H digitalWrite(data, HIGH) // data line output high
#define HC_DATA_L digitalWrite(data, LOW) //date line output low
#define HC_RCK_H digitalWrite(rck, HIGH) // rck output high
#define HC_RCK_L digitalWrite(rck, LOW) // rck output low
#define HC_SCK_H digitalWrite(sck, HIGH) // sck output high
#define HC_SCK_L digitalWrite(sck, LOW) // sck output low
}
void HC_data_analyze(char LED_number,unsigned char
LED_display,unsigned char LED_dp)
{
// data analyse
unsigned int HC_DISP = 0,HC_LEDCODE,HC_LEDCODE_temp=0;
if(LED_display > 15) LED_display = 0;
HC_LEDCODE = LED_BCD[LED_display] ; //get BCD code
for(unsigned char i=0; i < 8;++i)
{
HC_LEDCODE_temp <<=1;
if(HC_LEDCODE&0x01) HC_LEDCODE_temp |= 0x01;
HC_LEDCODE >>=1;
}
if(LED_dp) HC_LEDCODE_temp &= 0xfe;
HC_DISP = HC_LEDCODE_temp;
switch(LED_number)
{
case 0: HC_DISP |= 0x8000;break;
case 1: HC_DISP |= 0x4000;break;
case 2: HC_DISP |= 0x2000;break;
case 3: HC_DISP |= 0x1000;break;
}
write_74HC595(HC_DISP); //74HC595 shifting register data transfer
}
void write_74HC595( unsigned int data_a) //communication with 74HC595
{
char look =0;
HC_RCK_L; //latch open
HC_SCK_L;