⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 将接收到的韦根26格式的数据转换为RS232格式
💻 C
字号:
/* ----- Editor by xiao_gd@126.com ----- */

//======================================
//韦根26 转 RS232 程序  晶振:11.0592MHz
//======================================
#include "at89x52.h"

unsigned char Current,Data[4];

void Send_Char(unsigned char);
void Send_Data(void);

void main (void)
{
	SCON = 0x50;
	TMOD = 0x21;
	IE   = 0x87;
	TH0  = 0xEE;
	TL0  = 0x0;
	TH1  = 0xFD;
	TL1  = 0xFD;
	TCON = 0x55;

	while(1)
	{
		if(Current == 26)
		{
			Current = 0;
			EA = 0;
			Send_Data();
			EA = 1;
		}
	}
}

void Ex0(void) interrupt 0
{
	Data[(25 - Current) / 8] &= ~(0x1 << ((25 - Current) % 8));
	TH0 = 0xEE;
	TL0 = 0x0;
	Current++;
}

void Ex1(void) interrupt 2
{
	Data[(25 - Current) / 8] |= 0x1 << ((25 - Current) % 8);
	TH0 = 0xEE;
	TL0 = 0x0;
	Current++;
}

void Timer0(void) interrupt 1
{
	TH0 = 0xEE;
	TL0 = 0x0;
	Current = 0;
}

void Send_Char(unsigned char buf)
{
	SBUF = buf;
	while(TI == 0);
	TI = 0;
}

void Send_Data(void)
{
	Send_Char(0x55);
	Send_Char(Data[3]);
	Send_Char(Data[2]);
	Send_Char(Data[1]);
	Send_Char(Data[0]);
	Send_Char(0xAA);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -