📄 final.c
字号:
#include <Absacc.h>
#include <reg51.h>
#include <math.h>
#include <ADC0809.h>
#include <DISP7289.h>
#include <SJA1000.h>
main()
{
uint v_value,a,b,c;
ST_0809=0;
SJA_INI();
while(END_0809==1);
{
v_value=ST_0809;
SEND(v_value);
v_value=v_value*100/255;
a=v_value/100;
b=v_value%100/10;
c=v_value%100%10;}
LED_DELAY_DISP();
LED_DISP(3,a);
LED_DISP(2,b);
LED_DISP(1,c);
LED_DISP(8,0x0c);
}
void LED_SEND(unsigned char Send_Value)
{
unsigned char BIT_CNT;
BIT_CNT=0x08;
LED_DELAY_LONG();
while( BIT_CNT!=0)
{
DIO=((Send_Value>>(BIT_CNT-1))&0x01);
CLK=1;
LED_DELAY_SHORT();
CLK=0;
LED_DELAY_SHORT();
BIT_CNT--;
}
}
void LED_DISP(unsigned char Led_Number,unsigned char Send_Value)
{
unsigned char Disp_BUF;
if(Led_Number==1)
Led_Number=FIRST_LED;
if(Led_Number==2)
Led_Number=SECOND_LED;
if(Led_Number==3)
Led_Number=THIRD_LED;
if(Led_Number==4)
Led_Number=FOURTH_LED;
if(Led_Number==5)
Led_Number=FIFTH_LED;
if(Led_Number==6)
Led_Number=SIXTH_LED;
if(Led_Number==7)
Led_Number=SEVENTH_LED;
if(Led_Number==8)
Led_Number=EIGHTH_LED;
CS=0;
LED_DELAY_SHORT();
Disp_BUF=Led_Number;
LED_SEND(Disp_BUF);
LED_DELAY_SHORT();
LED_DELAY_LONG();
Disp_BUF=Send_Value;
LED_SEND(Disp_BUF);
CS=1;
LED_DELAY_LONG();
}
void LED_DELAY_SHORT(void) //短延时
{
unsigned char j;
for(j=0;j<20;j++);//for(j=0;j<5*10;j++);
}
void LED_DELAY_LONG(void) //长延时
{
unsigned char j;
for(j=0;j<160;j++)//for(j=0;j<25*10;j++)
{;}
}
void LED_TEST(void)
{
CS=0;
LED_DELAY_SHORT();
SEND_BUF=0XBF;
LED_SEND(SEND_BUF);
LED_DELAY_SHORT();
LED_DELAY_LONG();
CS=1;
LED_DELAY_LONG();
}
void LED_RESET(void)
{
CS=0;
LED_DELAY_SHORT();
SEND_BUF=0XC4;
LED_SEND(SEND_BUF);
LED_DELAY_SHORT();
LED_DELAY_LONG();
CS=1;
LED_DELAY_LONG();
}
void LED_DELAY_DISP(void) //延时
{
unsigned int j;
for(j=0;j<25000;j++);//for(j=0;j<25*10;j++)
}
void SEND(unsigned int v_value)
{
uint i;
i=SR;
while (i&0x10!=0)
{;}
i=SR;
while (i&0x08==1)
{;}
i=SR;
while (i&0x04==0)
{;}
TXB0=0x81;
TXB1=0xFF;
TXB2=0xFF;
TXB3=0xFF;
TXB4=0xFF;
TXB5=v_value;
CMR=0x01;
}
void SJA_INI(void)
{
MODE=0x09;
CDR=0x88;
IER=0x0E;
ACR0=0xFF;
ACR1=0xFF;
ACR2=0xFF;
ACR3=0xFF;
AMR0=0xFF;
AMR1=0xFF;
AMR2=0xFF;
AMR3=0xFF;
BTR0=0x03;
BTR1=0xFF;
OCR=0xAA;
RBSA=0x00;
TXERR=0x00;
ECC=0x00;
MODE=0x08;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -