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

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

?? uart.c

?? uCOS-II 移植到ARM7上
?? C
字號:
#include "..\startup\def.h"
#include "..\startup\44b.h"
#include "..\ucos-ii\includes.h"

#include "isr.h"
#include "uart.h"

OS_EVENT *Uart0_Rev_mbox=NULL;                   //Uart0 receive mail box
OS_EVENT *Uart1_Rev_mbox=NULL;                   //Uart1 receive mail box

U8 Uart0_Buffer[UART0_REVBUFFER_SIZE],Uart1_Buffer[UART1_REVBUFFER_SIZE];

static U8* pUart0_rev=Uart0_Buffer,	//Uart0 接收緩沖區指針
		*pUart0_read=Uart0_Buffer;	//Uart0 讀緩沖區指針

static U8* pUart1_rev=Uart1_Buffer,	//Uart1 接收緩沖區指針
		*pUart1_read=Uart1_Buffer;	//Uart1 讀緩沖區指針

static int nRev_Uart0=1,nRev_Uart1=1;	//設定的Uart接收字符數

void irq_OSRevUart1()
{
	int nrev;

	if(!(rUTRSTAT1 & 0x1))
		return;

	//Receive data
	*pUart1_rev=RdURXH1();
	pUart1_rev++;
	if(pUart1_rev==Uart1_Buffer+UART1_REVBUFFER_SIZE)
		pUart1_rev=Uart1_Buffer;

	nrev=pUart1_rev-pUart1_read;

	if(nrev>=nRev_Uart1)
		OSMboxPost(Uart1_Rev_mbox, (void*)nrev);
}

void irq_OSRevUart0()
{
	int nrev;

	if(!(rUTRSTAT0 & 0x1))
		return;

	//Receive data
	*pUart0_rev=RdURXH0();
	pUart0_rev++;
	if(pUart0_rev==Uart0_Buffer+UART0_REVBUFFER_SIZE)
		pUart0_rev=Uart0_Buffer;

	nrev=pUart0_rev-pUart0_read;

	if(nrev>=nRev_Uart0)
		OSMboxPost(Uart0_Rev_mbox, (void*)nrev);
}

/*************************
	讀串口0的數據
	返回值,實際讀取的數據
****************************/
int OSReadUart0(U8 data[], int num, int ntimeout)
{
	int i;
	INT8U err;
	int nrev;

	nRev_Uart0=num;	//設置Uart1接收數據數

	nrev=pUart0_rev-pUart0_read;
	if(nrev<0)//循環緩沖區調整
		nrev+=UART0_REVBUFFER_SIZE;

	if(nrev<num){
		while((nrev=(int)OSMboxPend(Uart0_Rev_mbox, ntimeout,&err))<num){
			if(err==OS_TIMEOUT){
				num=nrev;
				break;
			}
		}
	}

	for(i=0;i<num;i++){
		data[i]=*pUart0_read;
		pUart0_read++;
		if(pUart0_read==Uart0_Buffer+UART0_REVBUFFER_SIZE)
			pUart0_read=Uart0_Buffer;
	}
	return nrev;
}

/*************************
	讀串口1的數據
	返回值,實際讀取的數據
****************************/
int OSReadUart1(U8 data[], int num, int ntimeout)
{
	int i;
	INT8U err;
	int nrev;

	nRev_Uart1=num;	//設置Uart1接收數據數

	nrev=pUart1_rev-pUart1_read;
	if(nrev<0)//循環緩沖區調整
		nrev+=UART1_REVBUFFER_SIZE;

	if(nrev<num){
		while((nrev=(int)OSMboxPend(Uart1_Rev_mbox, ntimeout,&err))<num){
			if(err==OS_TIMEOUT){
				num=nrev;
				break;
			}
		}
	}

	for(i=0;i<num;i++){
		data[i]=*pUart1_read;
		pUart1_read++;
		if(pUart1_read==Uart1_Buffer+UART1_REVBUFFER_SIZE)
			pUart1_read=Uart1_Buffer;
	}
	return nrev;
}

/*************************
	等待串口1的數據
****************************/
void OSWartUart1()
{
	INT8U err;
	OSMboxPend(Uart1_Rev_mbox, 0,&err);
}

/*************************
	等待串口0的數據
****************************/
void OSWartUart0()
{
	INT8U err;
	OSMboxPend(Uart0_Rev_mbox, 0,&err);
}

void OSInitUart()
{
	if(Uart0_Rev_mbox==NULL)
		Uart0_Rev_mbox=OSMboxCreate((void*)NULL);

	if(Uart1_Rev_mbox==NULL)
		Uart1_Rev_mbox=OSMboxCreate((void*)NULL);
}

/*************************
	開啟串口0接收中斷
****************************/
void OpenUart0Rev()
{
	U32 temp;
	SetISR_Interrupt(INT_URXD0_OFFSET,irq_OSRevUart0, 0);

/*	temp=rINTMSK;
	rINTMSK=0xffffffff;

	rI_ISPC=BIT_URXD0;
	rINTMSK=(~BIT_URXD0)&temp;*/

}

/*************************
	開啟串口1接收中斷
****************************/
void OpenUart1Rev()
{
	U32 temp;
	SetISR_Interrupt(INT_URXD1_OFFSET,irq_OSRevUart1,0);

/*	temp=rINTMSK;
	rINTMSK=0xffffffff;

	rI_ISPC=BIT_URXD1;
	rINTMSK=(~BIT_URXD1)&temp;*/
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区精品在线| 亚洲码国产岛国毛片在线| 在线免费视频一区二区| 99视频一区二区三区| 成人理论电影网| 中文字幕精品在线不卡| 亚洲欧美精品午睡沙发| 国产欧美日韩综合| 亚洲一区在线观看网站| 一区二区三国产精华液| 欧美日韩亚洲不卡| 欧美色图片你懂的| 欧美日韩视频在线一区二区| 欧美日韩免费视频| 欧美高清视频不卡网| 欧美一级片在线观看| 精品国产乱码久久久久久1区2区| 亚洲精品在线观看网站| 久久久精品影视| 国产精品久久久久国产精品日日| 亚洲欧美精品午睡沙发| 午夜久久福利影院| 精品一区二区三区影院在线午夜| 国产+成+人+亚洲欧洲自线| 91在线视频在线| 欧美日本高清视频在线观看| 日韩免费高清视频| 国产精品理伦片| 日日摸夜夜添夜夜添精品视频| 久久精品国产在热久久| 99久久99精品久久久久久| 欧美日韩一区精品| 久久久亚洲高清| 亚洲一区二区三区三| 另类小说综合欧美亚洲| aaa欧美日韩| 日韩一区二区三区三四区视频在线观看| 久久久久久久精| 亚洲二区视频在线| 国产a区久久久| 欧美理论电影在线| 国产精品伦理在线| 看电视剧不卡顿的网站| 色综合久久久久综合| 精品国产不卡一区二区三区| 亚洲精品免费播放| 国产成人午夜片在线观看高清观看| 色综合久久久久综合体桃花网| 久久先锋影音av鲁色资源网| 亚洲一区二区三区四区的| 成人av免费在线观看| 精品国产一区二区三区忘忧草| 一区二区高清免费观看影视大全| 国产原创一区二区三区| 欧美日韩精品一区二区三区| 亚洲老妇xxxxxx| 成人做爰69片免费看网站| 欧美大黄免费观看| 午夜精品免费在线观看| 一本到不卡免费一区二区| 国产欧美精品一区二区色综合| 老司机免费视频一区二区| 欧美精品日韩一本| 一区二区三区在线视频播放| 成人av网址在线| 国产精品成人免费在线| 国产精品1区2区3区在线观看| 51精品国自产在线| 日本欧美韩国一区三区| 欧美三级资源在线| 一区二区三区欧美亚洲| 99久久精品国产导航| 国产精品久久久久精k8| 99精品在线免费| 亚洲色图色小说| 91丨九色丨蝌蚪富婆spa| 欧美国产日韩在线观看| 成人国产精品免费观看| 国产精品免费久久| bt欧美亚洲午夜电影天堂| 国产精品久线在线观看| av一二三不卡影片| 一区二区三区中文字幕电影| 欧美影院一区二区三区| 午夜影视日本亚洲欧洲精品| 欧美日本一道本| 秋霞电影一区二区| 久久亚洲综合色| 国产成人在线电影| 亚洲欧美一区二区在线观看| 95精品视频在线| 午夜精品久久久久久久久| 欧美一区二区视频观看视频| 精品一区二区三区在线视频| 久久精品人人做人人爽人人| www.亚洲免费av| 一区二区在线看| 欧美一区二区视频免费观看| 国内精品视频666| 国产精品无码永久免费888| 91猫先生在线| 日本成人中文字幕| 国产精品久久久久婷婷| 欧美日韩一区国产| 国产一区二区三区四区五区美女 | 国产精品不卡视频| 欧美四级电影在线观看| 久久精品国产精品青草| 国产精品麻豆99久久久久久| 欧美日韩一级二级三级| 国产成人高清在线| 亚洲综合在线电影| 亚洲精品一区二区在线观看| 97精品国产露脸对白| 美女视频黄免费的久久| 中文字幕亚洲欧美在线不卡| 日韩一区二区三区电影在线观看| 99在线精品视频| 久久99精品视频| 亚洲综合视频在线| 久久精品人人做| 91精品国产91综合久久蜜臀| 成人激情午夜影院| 免费看日韩a级影片| 亚洲色图视频免费播放| 国产调教视频一区| 欧美一区二区三区成人| 在线观看日韩国产| 成人性生交大片免费看视频在线| 日韩高清在线一区| 樱桃国产成人精品视频| 国产网站一区二区| 日韩免费视频线观看| 欧美人与性动xxxx| 99久久久国产精品| 成人免费视频一区| 国产乱对白刺激视频不卡| 五月婷婷久久综合| 亚洲综合视频在线| 亚洲欧美另类久久久精品| 国产精品毛片久久久久久| 久久久久国产免费免费 | 久久99久久精品| 亚洲午夜一区二区| 亚洲精品日韩一| 亚洲视频一区二区在线| 亚洲欧美中日韩| 中文字幕在线不卡| 亚洲男同性恋视频| 亚洲精品午夜久久久| 亚洲欧美经典视频| 夜夜揉揉日日人人青青一国产精品| 欧美极品少妇xxxxⅹ高跟鞋 | 日本aⅴ亚洲精品中文乱码| 一区二区三区四区五区视频在线观看| 中文字幕一区二区三区在线观看| 国产欧美日韩综合| 国产精品欧美综合在线| 国产精品国产三级国产普通话三级 | 樱花影视一区二区| 亚洲最大的成人av| 亚洲国产日韩一区二区| 亚洲韩国一区二区三区| 日韩专区欧美专区| 日本一不卡视频| 国产一区二区三区黄视频| 国产一区二区三区四区在线观看| 国产美女一区二区三区| 成人美女视频在线观看| 色香色香欲天天天影视综合网| 91黄色免费网站| 欧美精品久久天天躁| www欧美成人18+| 亚洲色图在线播放| 五月天精品一区二区三区| 国产一区二区中文字幕| 成人a免费在线看| 欧美在线观看你懂的| 91精品国产欧美日韩| 国产午夜亚洲精品理论片色戒| 一色屋精品亚洲香蕉网站| 一区二区欧美在线观看| 麻豆91精品91久久久的内涵| 国产九色精品成人porny| 91农村精品一区二区在线| 欧美日韩成人综合在线一区二区 | 国产精品丝袜91| 午夜久久久影院| 成人精品免费看| 91精品国产一区二区人妖| 国产欧美精品一区二区色综合朱莉 | 成人国产视频在线观看| 欧美日韩另类国产亚洲欧美一级| 精品国产乱码久久久久久老虎 | 寂寞少妇一区二区三区| 色婷婷av一区二区三区之一色屋| 欧美电视剧免费全集观看| 亚洲综合成人在线| 国产mv日韩mv欧美| 91精品啪在线观看国产60岁|