main.c

来自「单片机的多级通讯程序 包含有keil源程序 和proteus的仿真程序」· C语言 代码 · 共 86 行

C
86
字号

/*
****************************************************

		

****************************************************
*/

#include <reg52.H>
#include "Typedef.H"
#include "userdef.H"
#include "comu485.h"


/*  全局变量 */
INT8U comu_send[8];			//发送数据缓冲区
INT8U comu_send_len = 0;


#define P_ADR P0			//从机地址端口


/* 读取本机的通讯地址 */
INT8U myAadr(void)
{
	INT8U adr;

	adr = P_ADR;
	adr &= 0x0F;
	adr += '0';

	return adr;
}

/***************************************

	

****************************************/
void main(void)
	{
	//初始化
	TMOD = 0x11;
	TH0 = (INT8U)(KTDLY>>8);
	TL0 = (INT8U)(KTDLY);
	TR0 = 1;
	
	comu_init(myAadr());

	ET0 = 1;
 	EA = 1;

	while(TRUE)
		{
		/* 串口通讯处理 :对主机发来的数据直接Echo回应  */
		if (comu_recv_len != 0)
			{
			Rxbuf[0] = '0';		//将通讯地址改为主机
			comu485_send_packet(Rxbuf,comu_recv_len);
			comu_recv_len = 0;
			}
		}
	}




/*************************************

	定时器中断程序 

**************************************/
void int_t0(void) interrupt 1 using 1
	{
	static int cnt = 0;

	TH0 = (unsigned char)(KTDLY>>8);
	TL0 = (unsigned char)(KTDLY);

	cnt ++;

	}


⌨️ 快捷键说明

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