亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? netgapuart.c

?? 雙串口于單片機通訊
?? C
字號:
#include<reg51.h>
#include<intrins.h>
#include<absacc.h>
#include "netgapuart.h"

#define uint unsigned int
#define uchar unsigned char
#define WAIT 160
#define WAITFLICK 40
bit bdata bUart0RFlag, bUart1RFlag, bUart2RFlag, bUartRFlag;
/** receiving memory of upper machine, read data while Uart0RFlag=1 */
uchar idata Uart0RBuf,Uart1RBuf,Uart2RBuf;uchar idata OldUart0RBuf,OldUart1RBuf,OldUart2RBuf;
/** upper machine sends state flag, '1' means com port 'busy'
 * (sending data to sub com port, just sending new data to sending buffer of 
 * sub comport. '0' means idle, user application should set 'TI=1' to launch
 * data sending of sub comport
 */
bit bdata bUartBusy;		
/* upper request flag of sending instruction. Before sending upper machine must 
 * put instruction to be transmitted into 'InstructBuf'. Then set this flag to 
 * '1', after this flag being changed to '0', this process could be done again
*/							
bit bdata bInstructFlag;	

uchar idata InstructBuf;	//指令緩沖(用戶可將設置SP2328/SP2338的指令放入
							//該寄存器,由驅動程序自動完成指令發(fā)送)
uchar idata UartPointer;	//子串口發(fā)送數(shù)據(jù)指針,中斷服務程序通過該指針輪詢
							//發(fā)送數(shù)據(jù)到各子串口,保證各子串口的數(shù)據(jù)不丟失

uchar idata Uart0Tbuf[8]; 	/* sub Uart 0 data sending buffer*/
uchar idata Uart1TBuf[8]; 	/* sub Uart 1 data sending buffer*/
uchar idata Uart2TBuf[8]; 	/* sub Uart 2 data sending buffer*/
//uchar idata Uart0RBuf,Uart1RBuf,Uart2RBuf;	//上位機接收子串口數(shù)據(jù)緩
							//沖存儲器,上位機通過判斷"bUart0RFlag"等標志
							//是否為"1",來決定是否讀取該寄存器的數(shù)據(jù)
uchar idata Uart0TNum,Uart1TNum,Uart2TNum;	//等待發(fā)送到各
							//子串口的字節(jié)數(shù),"0"表示相應子串口發(fā)送緩沖區(qū)"空"
							//主程序可以通過判斷該標志是否為"0"來決定是否向
							//相應子串口發(fā)送后續(xù)數(shù)據(jù)
sbit	AdrOut0=P1^2;		
sbit	AdrOut1=P1^3;
sbit 	AdrIn0 =P1^0;	
sbit	AdrIn1 =P1^1;		
	
uint data pcstate0 = 0;							
uint data pcstate1 = 0;
uint data localstate0 = UNINIT; //local single chip state
uint data localstate1 = UNINIT;

uint data buffer0=0;  //定時器計數(shù)變量
uint data buffer1=0;
uint data bufferdelay=0 ;

sbit green0=P1^4;           
sbit red0=P1^5;
sbit green1=P1^6;           
sbit red1=P1^7;

void delay(uint i)
{
	bufferdelay=0;
	while(bufferdelay<i);		
}


/*串口服務子程序*/
serial () interrupt 4
{
	if(RI)
	{
		RI=0;                   //準備解析剛接收到的數(shù)據(jù)來自于哪個子串口
		bUartRFlag=1;           //產生串口中斷標志位
		if(AdrIn1){				//子串口2接收到一個字節(jié)(未用)
			Uart2RBuf=SBUF;		//緩存子串口2收到的數(shù)據(jù),以便接收后續(xù)數(shù)據(jù)
			bUart2RFlag=1;		//置子串口2收到數(shù)據(jù)標志,便于主程序查詢
		} else if(AdrIn0){		//子串口1接收到一個字節(jié)
			Uart1RBuf=SBUF;		//緩存子串口1收到的數(shù)據(jù),以便接收后續(xù)數(shù)據(jù)
			pcstate1 = (Uart1RBuf & 0xc0)>>6;
			bUart1RFlag=1;		//置子串口1收到數(shù)據(jù)標志,便于主程序查詢
			buffer1 = 1;
		} else {					//子串口0接收到一個字節(jié)
			Uart0RBuf=SBUF;		//緩存子串口0收到的數(shù)據(jù),以便接收后續(xù)數(shù)據(jù)
			pcstate0 = (Uart0RBuf & 0xc0)>>6;
			bUart0RFlag=1;		//置子串口0收到數(shù)據(jù)標志,便于主程序查詢
			buffer0 = 0;
		}
	}
	if(TI)
	{
	//	TI=0;							//已經產生發(fā)送中斷,準備解析下一個需要發(fā)送的數(shù)據(jù)
	//	AdrOut0 = 0;
	//	AdrOut1 = 0;
	//	SBUF = 'x';
	/*	switch(UartPointer){			//判斷即將向哪個子串口發(fā)送數(shù)據(jù)?
			case 0:{					//準備向子串口0發(fā)送數(shù)據(jù)
				AdrOut0=0;			//有數(shù)據(jù)需要發(fā)送,則選通子串口0的地址
				AdrOut1=0;
				SBUF=Uart1RBuf;		//將串口0發(fā)送緩存中的一個字節(jié)
				break;				//由子串口0發(fā)送到下位機
			}
			case 1:{				//準備向子串口1發(fā)送數(shù)據(jù)
				AdrOut0=1;			//有數(shù)據(jù)需要發(fā)送,則選通子串口1的地址
				AdrOut1=0;
				SBUF=Uart0RBuf;		//將串口1發(fā)送緩存中的一個字節(jié)
				break;				//由子串口1發(fā)送到下位機
			}						//而只能夠發(fā)送一條空指令用于時序配合
			case 2:{			//準備向子串口2發(fā)送數(shù)據(jù)
				AdrOut0=0;			//有數(shù)據(jù)需要發(fā)送,則選通子串口2的地址
				AdrOut1=1;
				SBUF=Uart0TBuf;	//將串口2發(fā)送緩存中的一個字節(jié)
				break;						//由子串口2發(fā)送到下位機
			}								//而只能夠發(fā)送一條空指令用于時序配合

			default:{
				else {bUartBusy=0;break;}//若所有子串口數(shù)據(jù)都已經發(fā)送完畢,則立即
			}	//清除"串口忙"標志(主程序將根據(jù)該標志來決定是否執(zhí)行"TI=1"這條指令)
			bUartBusy=0;
		}*/

/*		switch(UartPointer){			//判斷即將向哪個子串口發(fā)送數(shù)據(jù)?
			case 0:{					//準備向子串口0發(fā)送數(shù)據(jù)
				UartPointer++;			//下一次發(fā)送中斷準備向子串口1發(fā)送數(shù)據(jù)
				if(Uart0TNum){			//串口0發(fā)送緩存區(qū)是否有數(shù)據(jù)需要發(fā)送?
					AdrOut0=0;			//有數(shù)據(jù)需要發(fā)送,則選通子串口0的地址
					AdrOut1=0;
					SBUF=Uart0Tbuf[--Uart0TNum];//將串口0發(fā)送緩存中的一個字節(jié)
					break;						//由子串口0發(fā)送到下位機
				}
				else goto T_NopInstruction;	//若子串口0沒有數(shù)據(jù)發(fā)送則準備發(fā)送空指令
			}

			case 1:{					//準備向子串口1發(fā)送數(shù)據(jù)
				UartPointer++;			//下一次發(fā)送中斷準備向串口2發(fā)送數(shù)據(jù)
				if(Uart1TNum){			//串口1發(fā)送緩存區(qū)是否有數(shù)據(jù)需要發(fā)送?
					AdrOut0=1;			//有數(shù)據(jù)需要發(fā)送,則選通子串口1的地址
					AdrOut1=0;
					SBUF=Uart1TBuf[--Uart1TNum];//將串口1發(fā)送緩存中的一個字節(jié)
					break;						//由子串口1發(fā)送到下位機
				}
				else goto T_NopInstruction;	//若子串口1沒有數(shù)據(jù)發(fā)送則準備發(fā)送空指令
			}								//而只能夠發(fā)送一條空指令用于時序配合

			case 2:{			//準備向子串口2發(fā)送數(shù)據(jù)
				UartPointer++;	//下一次發(fā)送中斷準備發(fā)送空指令
				if(Uart2TNum){			//串口2發(fā)送緩存區(qū)是否有數(shù)據(jù)需要發(fā)送?
					AdrOut0=0;			//有數(shù)據(jù)需要發(fā)送,則選通子串口2的地址
					AdrOut1=1;
					SBUF=Uart2TBuf[--Uart2TNum];//將串口2發(fā)送緩存中的一個字節(jié)
					break;						//由子串口2發(fā)送到下位機
				}
				else goto T_NopInstruction;	//若子串口2沒有數(shù)據(jù)發(fā)送則準備發(fā)送空指令
			}								//而只能夠發(fā)送一條空指令用于時序配合

			default:{
				UartPointer=0;			//下一次發(fā)送中斷準備向串口0發(fā)送數(shù)據(jù)
T_NopInstruction:
				AdrOut0=1;				//選通目串口準備發(fā)送空指令或者其他指令
				AdrOut1=1;
				if(bInstructFlag){		//判斷是否需要發(fā)送其他指令?
					bInstructFlag=0;	//清除指令發(fā)送標志
					SBUF=InstructBuf;	//將需要發(fā)送的指令發(fā)送到串口擴展IC
					break;
				}
				else if(Uart0TNum|Uart1TNum|Uart2TNum){//判斷所有子串口的數(shù)據(jù)是否
					SBUF=0;				//都已經全部發(fā)送完畢

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日韩av一区| 欧美三级欧美一级| 久久久噜噜噜久久人人看| 国内成+人亚洲+欧美+综合在线| 欧美一区日韩一区| 国产一区啦啦啦在线观看| 国产精品伦一区二区三级视频| jizzjizzjizz欧美| 亚洲综合一区二区精品导航| 欧美精品丝袜久久久中文字幕| 日韩中文字幕亚洲一区二区va在线| 日韩三级电影网址| 成人一区二区三区中文字幕| 亚洲精品一二三区| 日韩精品自拍偷拍| www.日本不卡| 日韩黄色免费电影| 中文字幕高清一区| 欧美日本一道本| 国产成人免费xxxxxxxx| 一区二区三区免费| 精品第一国产综合精品aⅴ| 播五月开心婷婷综合| 同产精品九九九| 亚洲国产成人私人影院tom| 欧美色综合天天久久综合精品| 精品一区二区三区日韩| 亚洲乱码一区二区三区在线观看| 日韩欧美区一区二| 91久久精品一区二区三区| 成人免费在线观看入口| 欧美日韩久久久一区| 国产精品亚洲第一| 亚洲超碰精品一区二区| 国产日韩综合av| 4hu四虎永久在线影院成人| www.亚洲精品| 国精产品一区一区三区mba桃花 | 中文一区一区三区高中清不卡| 欧美三区在线视频| 99久久久久久99| 国内精品国产三级国产a久久| 一区二区成人在线视频 | 欧美午夜寂寞影院| 粉嫩aⅴ一区二区三区四区| 午夜精品福利视频网站| 亚洲另类一区二区| 国产精品视频免费看| 欧美精品一区二区三区视频 | 另类中文字幕网| 日韩码欧中文字| www国产精品av| 欧美日本不卡视频| 91免费视频网| 成人动漫视频在线| 国产精品原创巨作av| 欧美96一区二区免费视频| 亚洲一线二线三线久久久| 成人免费一区二区三区在线观看| 国产亚洲综合在线| 久久综合狠狠综合久久综合88| 欧美一区二区女人| 欧美一区2区视频在线观看| 欧美另类变人与禽xxxxx| 91麻豆国产自产在线观看| 成人国产精品免费观看动漫 | 日本 国产 欧美色综合| 亚洲综合精品久久| 亚洲精品视频自拍| 一级日本不卡的影视| 亚洲黄色av一区| 国产精品一二三| 中文在线资源观看网站视频免费不卡 | 日韩一区二区在线看片| 欧美日韩情趣电影| 欧美在线短视频| 欧美日韩国产成人在线91| 欧美日韩高清影院| 91精品国产福利| 日韩三级精品电影久久久| 精品噜噜噜噜久久久久久久久试看 | 777奇米成人网| 欧美一区二区在线播放| 欧美一级片在线| 精品成人在线观看| 欧美激情资源网| 亚洲欧美日韩精品久久久久| 亚洲激情第一区| 日韩高清国产一区在线| 美女精品自拍一二三四| 国产尤物一区二区| 99v久久综合狠狠综合久久| 在线观看成人小视频| 91精品国产高清一区二区三区蜜臀 | 欧美精品色综合| www国产成人| 中文字幕综合网| 五月婷婷激情综合| 九九热在线视频观看这里只有精品| 国产电影一区二区三区| 99久久精品国产毛片| 欧美伦理电影网| 精品国产亚洲在线| 亚洲欧美自拍偷拍| 日本午夜精品一区二区三区电影| 激情五月婷婷综合| 色综合天天综合狠狠| 9191精品国产综合久久久久久| 久久一区二区三区四区| 亚洲丝袜自拍清纯另类| 国产成人精品免费看| 99久久er热在这里只有精品15| 欧美片在线播放| 国产校园另类小说区| 亚洲va韩国va欧美va| 国产高清亚洲一区| 欧美人xxxx| 中文字幕中文字幕中文字幕亚洲无线| 亚洲图片自拍偷拍| 岛国一区二区三区| 欧美一级高清大全免费观看| 国产精品免费看片| 久久精品国产一区二区| www.日韩大片| 久久综合狠狠综合久久综合88| 亚洲精品福利视频网站| 国内精品久久久久影院一蜜桃| 日本精品视频一区二区三区| 久久久久久久久久久久久夜| 亚洲成人1区2区| 99re这里只有精品视频首页| 337p粉嫩大胆噜噜噜噜噜91av | 在线电影院国产精品| 国产精品乱子久久久久| 免费在线观看精品| 欧美亚州韩日在线看免费版国语版| 日韩区在线观看| 午夜欧美视频在线观看| 成人性视频网站| 久久综合给合久久狠狠狠97色69| 亚洲国产aⅴ天堂久久| 99国产精品久久| 久久精品一区二区三区av| 麻豆成人在线观看| 337p亚洲精品色噜噜噜| 亚洲国产欧美日韩另类综合 | 亚洲国产日韩a在线播放性色| 久久成人免费网站| 欧美人牲a欧美精品| 色综合天天性综合| 精品99999| 日韩一区二区免费视频| 欧美色综合天天久久综合精品| 欧美精品一区二区在线播放 | 亚洲色图20p| 五月综合激情婷婷六月色窝| 亚洲美女淫视频| 成人久久久精品乱码一区二区三区| 成人理论电影网| 日韩午夜在线播放| 一二三四社区欧美黄| 国产在线精品一区二区三区不卡| 成人精品免费网站| 亚洲视频在线观看三级| 热久久国产精品| 国产成人免费视频一区| 91精品国产综合久久久久| 国产精品卡一卡二卡三| 精品亚洲porn| 一区二区在线免费观看| 婷婷久久综合九色综合绿巨人 | 久久99精品网久久| 91久久人澡人人添人人爽欧美 | 26uuu色噜噜精品一区二区| 亚洲一区精品在线| 91免费视频网| 国产欧美精品国产国产专区| 奇米一区二区三区av| 欧美日韩国产中文| 亚洲人精品一区| 97se亚洲国产综合自在线观| 26uuuu精品一区二区| 日韩av午夜在线观看| 精品视频一区二区不卡| 亚洲人123区| 91片黄在线观看| 成人欧美一区二区三区| 国产福利精品一区| 久久久久久久久久美女| 久久99久久精品| 精品国精品国产| 精品亚洲成av人在线观看| 欧美精品一区视频| 国内成人免费视频| 亚洲国产aⅴ成人精品无吗| 麻豆精品视频在线观看视频| 欧美三级在线视频| 亚洲一区二区三区在线播放| 一本色道久久综合精品竹菊| 亚洲视频精选在线|