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

📄 serial.c

📁 基于无线单片机24e1的组网程序。在无线传感器之类的应用中的成功案例。
💻 C
字号:
//========================================================
//深圳奥特迅电力设备有限公司
//电池监控系统用无线传输模块
//文件名:serial.h
//描述:串口操作
//By:Andylee 2006-6-13
//anssett@163.com
//=========================================================
#include<battery.h>

bit jz_req;						//上位机校正请求
bit jz_over;					//校正确认结束。
bit adc_monitor;				//实时监视标志位
bit addrSet;					//上位机配置模块地址标志
bit addrEcho;					//配置地址回显标志

unsigned char idata inCnt;			//串口接收计数器
unsigned char xdata inBuf[17];			//用于接收串口信息(1154)放大了1000倍的通道输入标准值

void UartISR (void) interrupt 4 
{
//	unsigned char temp;
	

	if(RI)
	{	RI = 0;
		inBuf[inCnt++]=SBUF;

		switch(inBuf[0])
		{
			case '%':					//通道校正
				jz_req=1;			//业已收到有效的校正请求,
				if(inCnt==17)
				{
				 	inCnt=0;
				 	jz_over=0;			//且,通道标准输入业已传来了
				 	adc_monitor=0;
					addrSet=0;					
				}
				break;
			case '*':					//模块地址配置请求命令
				if(inCnt==9)
				{
					inCnt=0;
					jz_req=0;
					jz_over=0;
					adc_monitor=0;
					addrSet=1;
				}
				break;
			case '@':					//校正确认,校正参数保存命令
				jz_req=0;
				jz_over=1;
				adc_monitor=0;
				addrSet=0;
				inCnt=0;
				break;
			case '$':					//采样值监视命令
				jz_req=0;
				jz_over=0;
				adc_monitor=1;
				inCnt=0;
				addrSet=0;
				break;
			case '!':					//模块地址回显命令
				jz_req=0;
				jz_over=0;
				adc_monitor=0;
				inCnt=0;
				addrSet=0;
				addrEcho=1;
				break;
			case 'o'://上位机复位,放弃操作
				jz_req=0;
				jz_over=0;
				adc_monitor=0;
				inCnt=0;
				addrSet=0;
				addrEcho=0;
				break;
			default:
				break;
	
		}
	}
	if(TI)
	{
	   
	   TI = 0;
	}

	
}

⌨️ 快捷键说明

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