📄 receive.c
字号:
//接收端程序
#include <mega16.h>
#include <delay.h>
#include "avryejing.c"
#define RD_PIN PINA.7
#define RD_ddr DDRA.7
#define RT_ddr DDRD.3
#define DataBus DDRC
unsigned char int0_cnt=0;
unsigned char temp;
unsigned char i=0;
bit flag=0;
unsigned char hang=0;
unsigned char lie=0;
bit bittemp;
unsigned char slow=0;
void deal(unsigned char data)
{
unsigned char tmp;
unsigned char gw,sw,bw;
tmp=data;
bw=tmp/100;
sw=tmp%100/10;
gw=tmp%10;
word(hang,lie,bw+16);
word(hang,lie+1,sw+16);
word(hang,lie+2,gw+16);
lie=lie+5;
if(lie>29)
{
hang++;
lie=0;
if(hang==16)
{
hang=0;
}
}
}
void main(void)
{
//ME_ddr=1;
RD_ddr=0;
RT_ddr=0;
DataBus=0xff;
resetlcd();
delay_ms(10);
MCUCR=0x02;
GICR=0x40;
SREG=0x80;
//ME=1;//接了反相器,
//word(0,0,16);
//ME_ddr=0;
while(1)
{
if(flag==1)
{
flag=0;
deal(temp);
}
}
}
interrupt [EXT_INT0] void int0(void)
{
bittemp=RD_PIN;
int0_cnt++;
temp=temp<<1;
if(bittemp==1)temp=temp|0x01;
if(int0_cnt==8)
{
flag=1;
int0_cnt=0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -