receive.c

来自「MSM6882,OKI公司MSK调制芯片」· C语言 代码 · 共 96 行

C
96
字号
 //接收端程序

#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 + =
减小字号Ctrl + -
显示快捷键?