📄 displayled.c
字号:
#include <iom128v.h>
#include <macros.h>
#include <d:\ycttest\1302BUSCORE\main.h>
#include <d:\ycttest\1302BUSCORE\displayled.h>
#include <d:\ycttest\1302BUSCORE\p8583.h>
void TRIG_CK(unsigned char location)
{
unsigned char i;
switch(location)
{
case 1:
CLEAR_CK1();
SET_CK1();
for(i=0;i<5;i++);
CLEAR_CK1();
break;
case 2:
CLEAR_CK2();
SET_CK2();
for(i=0;i<5;i++);
CLEAR_CK2();
break;
case 3:
CLEAR_CK3();
SET_CK3();
for(i=0;i<5;i++);
CLEAR_CK3();
break;
case 4:
CLEAR_CK4();
SET_CK4();
for(i=0;i<5;i++);
CLEAR_CK4();
break;
case 5:
CLEAR_CK5();
SET_CK5();
for(i=0;i<5;i++);
CLEAR_CK5();
break;
case 6:
CLEAR_CK6();
SET_CK6();
for(i=0;i<5;i++);
CLEAR_CK6();
break;
case 7:
CLEAR_CK7();
SET_CK7();
for(i=0;i<5;i++);
CLEAR_CK7();
break;
case 8:
CLEAR_CK8();
SET_CK8();
for(i=0;i<5;i++);
CLEAR_CK8();
break;
case 9:
CLEAR_CK9();
SET_CK9();
for(i=0;i<5;i++);
CLEAR_CK9();
break;
case 10:
CLEAR_CK10();
SET_CK10();
for(i=0;i<5;i++);
CLEAR_CK10();
break;
case 11:
CLEAR_CK11();
SET_CK11();
for(i=0;i<5;i++);
CLEAR_CK11();
break;
case 12:
CLEAR_CK12();
SET_CK12();
for(i=0;i<5;i++);
CLEAR_CK12();
break;
case 13:
CLEAR_CK13();
SET_CK13();
for(i=0;i<5;i++);
CLEAR_CK13();
break;
default:
break;
}
}
void dis_1(unsigned char data,unsigned char loca,unsigned char di_flag)
{
switch(data)
{
case 0:
DDRA=0x3F;
break;
case 1:
DDRA=0x06;
break;
case 2:
DDRA=0x5B;
break;
case 3:
DDRA=0x4F;
break;
case 4:
DDRA=0x66;
break;
case 5:
DDRA=0x6D;
break;
case 6:
DDRA=0x7D;
break;
case 7:
DDRA=0x07;
break;
case 8:
DDRA=0x7F;
break;
case 9:
DDRA=0x6F;
break;
case 10:
DDRA=0x40;
break;
case 11:
DDRA=0;
break;
default:
break;
}
if(di_flag)
DDRA=DDRA|0x80;
TRIG_CK(loca);
}
void dis_line(unsigned int lines)
{
unsigned char line_1,line_2,line_3;
line_1=lines/100;
line_2=(lines%100)/10;
line_3=(lines%100)%10;
if(line_1!=0)
dis_1(line_1,1,0);
else dis_1(11,1,0);
if(line_1!=0||line_2!=0)
dis_1(line_2,2,0);
else dis_1(11,2,0);
dis_1(line_3,3,0);
}
void dis_cost(unsigned int costs)
{
unsigned char cost_1,cost_2,cost_3,cost_4;
cost_1=costs/1000;
cost_2=(costs%1000)/100;
cost_3=((costs%1000)%100)/10;
cost_4=((costs%1000)%100)%10;
if(cost_1==0)
dis_1(11,4,0);
else
dis_1(cost_1,4,0);
dis_1(cost_2,5,1);
dis_1(cost_3,6,0);
dis_1(cost_4,7,0);
}
void dis_time(unsigned char hours,unsigned char minutes)
{
unsigned char hours_1,hours_2;
unsigned char minutes_1,minutes_2;
hours_1=hours/16;
hours_2=hours%16;
minutes_1=minutes/16;
minutes_2=minutes%16;
dis_1(11,8,0);
dis_1(hours_1,9,0);
dis_1(hours_2,10,0);
dis_1(10,11,0);
dis_1(minutes_1,12,0);
dis_1(minutes_2,13,0);
}
void dis_balance(unsigned long balance)
{
unsigned char balance_1,balance_2,balance_3;
unsigned char balance_4,balance_5,balance_6;
balance_1=balance/100000;
balance_2=(balance%100000)/10000;
balance_3=((balance%100000)%10000)/1000;
balance_4=(((balance%100000)%10000)%1000)/100;
balance_5=((((balance%100000)%10000)%1000)%100)/10;
balance_6=((((balance%100000)%10000)%1000)%100)%10;
if(balance_1!=0)
dis_1(balance_1,8,0);
if(balance_1!=0||balance_2!=0)
dis_1(balance_2,9,0);
else dis_1(11,9,0);
if(balance_3!=0||balance_1!=0||balance_2!=0)
dis_1(balance_3,10,0);
else dis_1(11,10,0);
dis_1(balance_4,11,1);
dis_1(balance_5,12,0);
dis_1(balance_6,13,0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -