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

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

?? uart.c

?? 周立功的MGGIC2410的UCOSII移植試驗串行通信實驗
?? C
字號:
/****************************************Copyright (c)**************************************************
**                               Guangzhou ZHIYUAN electronics Co.,LTD.
**                                     
**                                 http://www.zyinside.com
**
**--------------File Info-------------------------------------------------------------------------------
** File Name: UART.c
** Last modified Date: 2005-12-31 
** Last Version: v1.0
** Description: S3C2410的串口軟件包 (查詢控制方式)
**
**------------------------------------------------------------------------------------------------------
** Created By: 黃紹斌
** Created date: 2005-12-31 
** Version: v1.0
** Descriptions:
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Description:
**
********************************************************************************************************/
#define  IN_UART
#include  "config.h"


// 串口選擇 (為0時表示串口0,否則為串口1)
static uint8   g_uart_sel = 0;



/*********************************************************************************************************
** Function name: UART_Select
** Descriptions: 選擇要操作的串口。(UART0--0,UART1--1)
**               選擇串口后,必需調用一次UART_Init()進行初始化(只需要一次)。
** Input: no    要使用的串口
** Output: 返回上一次選用的串口
** Created by: 黃紹斌
** Created Date: 2005-12-31 
**-------------------------------------------------------------------------------------------------------
** Modified by:
** Modified Date: 
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
int  UART_Select(uint8  no)
{	
	int  ret;
	
	ret = g_uart_sel;
	g_uart_sel = no;
	return(ret);
}



/*********************************************************************************************************
** Function name: UART_Init
** Descriptions: 初始化串口。設置為8位數據位,1位停止位,無奇偶校驗,波特率為UART_BPS
** Input: 無
** Output: 無
** Created by: 黃紹斌
** Created Date: 2005-12-31 
**-------------------------------------------------------------------------------------------------------
** Modified by:
** Modified Date: 
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void  UART_Init(uint32 UART_BPS)
{  	
	int  i;

	if(g_uart_sel)			// 判斷是否為串口1
	{	
		// IO口設置 (GPH5,GPH4)
		rGPHUP = rGPHUP | (0x03<<4);
		rGPHCON = (rGPHCON & (~0x00000F00)) | (0x00000A00);	
	
		// 串口模式設置
		rUFCON1 = 0x00;   	// 禁止FIFO功能
		rUMCON1 = 0x00;   	// AFC(流控制)禁能
		rULCON1 = 0x03; 	// 禁止IRDA,無奇偶校驗,1位停止位,8位數據位
		rUCON1  = 0x245; 	// 使用PCLK來生成波特率,發送中斷為電平觸發模式,接收中斷為邊沿觸發模式,
	                    	// 禁止接收超時中斷,使能接收錯誤中斷,正常工作模式,中斷或查詢方式(非DMA)	
		// 串口波特率設置
		rUBRDIV1=(int)(PCLK/16.0/UART_BPS + 0.5) -1; 
	}
	else
	{	
		// IO口設置 (GPH3,GPH2)
		rGPHUP = rGPHUP | (0x03<<2);
		rGPHCON = (rGPHCON & (~0x000000F0)) | (0x000000A0);	
	
		// 串口模式設置
		rUFCON0 = 0x00;   	// 禁止FIFO功能
		rUMCON0 = 0x00;   	// AFC(流控制)禁能
		rULCON0 = 0x03; 	// 禁止IRDA,無奇偶校驗,1位停止位,8位數據位
		rUCON0  = 0x245; 	// 使用PCLK來生成波特率,發送中斷為電平觸發模式,接收中斷為邊沿觸發模式,
	                    	// 禁止接收超時中斷,使能接收錯誤中斷,正常工作模式,中斷或查詢方式(非DMA)	
		// 串口波特率設置
		rUBRDIV0=(int)(PCLK/16.0/UART_BPS + 0.5) -1; 
	}
	
   	for(i=0;i<100;i++);
}



/*********************************************************************************************************
** Function name: UART_SendByte
** Descriptions: 向串口發送字節數據,并等待發送完畢。
** Input: data		要發送的數據
** Output: 無
** Created by: 黃紹斌
** Created Date: 2005-12-31 
**-------------------------------------------------------------------------------------------------------
** Modified by:
** Modified Date: 
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void  UART_SendByte(uint8 data)
{  	
	int  i;
   
    if(g_uart_sel)
    {	
    	while(!(rUTRSTAT1 & 0x02));	// 等待發送器THR為空
   		for(i=0; i<10; i++);
   		rUTXH1 = data;				// 發送數據
    }
    else
   	{	
   		while(!(rUTRSTAT0 & 0x02));	// 等待發送器THR為空
   		for(i=0; i<10; i++);
   		rUTXH0 = data;				// 發送數據
   	}   	
}



/*********************************************************************************************************
** Function name: UART_SendStr
** Descriptions: 向串口發送一字符串。
**              對于'\n'字符,發送時會加入'\r'字符。
** Input: str		要發送的字符串的指針
** Output: 無
** Created by: 黃紹斌
** Created Date: 2005-12-31 
**-------------------------------------------------------------------------------------------------------
** Modified by:
** Modified Date: 
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void  UART_SendStr(char const *str)
{ 	
	while(*str != '\0')
   	{ 	
   		if(*str == '\n') UART_SendByte('\r');   	  
     	  UART_SendByte(*str++);	    // 發送數據
   	}
}



/*********************************************************************************************************
** Function name: UART_GetKey
** Descriptions: 從UART口讀取一字節按鍵數據。
**               會一直等待,直到接收到1字節數據。
** Input: 無
** Output: 返回值即是讀出值
** Created by: 黃紹斌
** Created Date: 2005-12-31 
**-------------------------------------------------------------------------------------------------------
** Modified by:
** Modified Date: 
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
int  UART_GetKey(void)
{  	
	int	 i;

	if(g_uart_sel)
	{	
		while(!(rUTRSTAT1 & 0x1));
		for(i=0; i<10; i++);
		return(rURXH1);
	}
	else	
	{	
		while(!(rUTRSTAT0 & 0x1));
		for(i=0; i<10; i++);
		return(rURXH0);
	}
}

/*********************************************************************************************************
**                            End Of File
********************************************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美自拍丝袜亚洲| 91精品国产欧美一区二区| 国产在线视频一区二区三区| 亚洲另类中文字| 国产精品美女久久久久久| 日韩一区二区免费在线观看| 色www精品视频在线观看| 懂色中文一区二区在线播放| 日韩电影在线看| 视频一区在线视频| 亚洲成人激情社区| 午夜日韩在线电影| 五月天久久比比资源色| 婷婷开心激情综合| 天天做天天摸天天爽国产一区| 亚洲一二三四在线| 亚洲第一二三四区| 免费看日韩精品| 麻豆视频一区二区| 精品一区二区久久| 九九精品一区二区| 国产成人无遮挡在线视频| 波多野结衣91| 99久久精品免费看国产免费软件| 成人动漫一区二区| 欧美在线短视频| 精品国免费一区二区三区| 久久亚洲精华国产精华液 | 久久91精品国产91久久小草| 奇米影视一区二区三区| 国产毛片一区二区| jlzzjlzz欧美大全| 欧美一区日本一区韩国一区| 26uuu精品一区二区三区四区在线| 国产欧美久久久精品影院| 一区二区三区不卡在线观看| 日韩国产在线观看一区| 国产一区啦啦啦在线观看| 99精品久久免费看蜜臀剧情介绍| 欧美精品视频www在线观看| 国产色婷婷亚洲99精品小说| 一区二区三区在线视频观看58| 蜜桃av一区二区在线观看| 国产99久久久国产精品潘金网站| 欧美中文一区二区三区| 国产午夜亚洲精品理论片色戒| 亚洲夂夂婷婷色拍ww47| 国产成人精品免费看| 欧美群妇大交群的观看方式| 国产精品久线观看视频| 久久国产福利国产秒拍| 欧美日韩一区二区在线观看视频| 国产欧美一区二区精品性色| 青青青爽久久午夜综合久久午夜| 97se狠狠狠综合亚洲狠狠| 国产日韩欧美麻豆| 久久国产精品无码网站| 欧美日韩亚洲综合在线| 亚洲激情男女视频| 91丨九色丨国产丨porny| 久久综合视频网| 久久99久久久久久久久久久| 日韩网站在线看片你懂的| 男女性色大片免费观看一区二区| 精品视频免费在线| 亚洲国产综合91精品麻豆| 91在线视频免费观看| 国产精品对白交换视频 | 丁香另类激情小说| 国产丝袜美腿一区二区三区| 国产精品一区二区视频| 国产日本亚洲高清| 99久免费精品视频在线观看 | 亚洲日本护士毛茸茸| 色94色欧美sute亚洲线路一ni| 亚洲尤物在线视频观看| 91精品国产综合久久国产大片 | 东方欧美亚洲色图在线| 一区二区三区中文免费| 欧美福利视频导航| 激情六月婷婷久久| 国产精品麻豆视频| 欧美网站大全在线观看| 久久精品国产亚洲aⅴ| 国产精品入口麻豆原神| 色综合久久综合中文综合网| 日韩高清不卡一区二区| 欧美精品一区二区三区蜜桃 | 亚洲成人免费av| 中文文精品字幕一区二区| 欧美日韩亚洲丝袜制服| 国内精品自线一区二区三区视频| **欧美大码日韩| 日韩美女视频一区二区在线观看| 成人短视频下载| 久久99日本精品| 亚洲视频一区在线观看| 精品久久久久久久人人人人传媒| 色av一区二区| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 国产成人小视频| 午夜久久电影网| 亚洲黄色录像片| 国产精品久久久久久久久免费丝袜| 日韩美女一区二区三区| 欧美三级蜜桃2在线观看| 99精品视频在线观看免费| 国产经典欧美精品| 美女免费视频一区| 午夜精品久久久久久久| 亚洲久本草在线中文字幕| 中文字幕av一区二区三区免费看 | 国产精品久久精品日日| 2023国产精品自拍| 精品国产乱码久久久久久久 | 欧美高清在线视频| 欧美精彩视频一区二区三区| 日韩精品最新网址| 欧美videos中文字幕| 91麻豆精品91久久久久久清纯| 色成人在线视频| 欧美少妇xxx| 欧美疯狂做受xxxx富婆| 欧美一区二区成人6969| 欧美不卡一区二区三区四区| 精品久久久久久最新网址| 久久免费偷拍视频| 欧美经典一区二区| 综合久久一区二区三区| 亚洲资源在线观看| 天天综合色天天| 国产一区二区三区四区五区入口| 国产69精品久久99不卡| 91免费国产在线观看| 精品视频资源站| 久久久国产精品午夜一区ai换脸| 亚洲色图在线视频| 免费在线观看一区二区三区| 蜜臀av性久久久久av蜜臀妖精| 国产资源在线一区| 精品视频999| 国产精品国产三级国产aⅴ无密码| 一区二区三区四区激情| 国产老妇另类xxxxx| 欧美性感一区二区三区| 欧美精品一区二区三区四区 | 综合精品久久久| 国产真实精品久久二三区| 99精品一区二区| 精品va天堂亚洲国产| 亚洲黄色小说网站| 国产精品影音先锋| 欧美电影一区二区| 国产精品高潮久久久久无| 麻豆91在线播放免费| www.成人在线| 久久久久久久久蜜桃| 免费不卡在线观看| 欧美三级日韩三级国产三级| 亚洲男女一区二区三区| 国产一区二区福利| 久久久久九九视频| 老鸭窝一区二区久久精品| 777xxx欧美| 日本成人在线视频网站| 欧美精品aⅴ在线视频| 亚洲国产一二三| 欧美最新大片在线看| 亚洲五码中文字幕| 在线观看视频一区二区| 亚洲国产美女搞黄色| 欧美日韩一本到| 日本麻豆一区二区三区视频| 日韩视频免费直播| 国产乱子轮精品视频| 中文字幕精品三区| 粉嫩一区二区三区在线看| 精品久久国产字幕高潮| 精品影视av免费| 99久久伊人网影院| 欧美一区二区三区在线| 亚洲在线观看免费视频| 欧美videofree性高清杂交| 91美女片黄在线观看| 国产精品一区二区久久精品爱涩 | 色天天综合色天天久久| 久久av资源网| 日韩中文字幕91| 亚洲综合色自拍一区| 国产精品私房写真福利视频| 91精品国产综合久久香蕉的特点 | 久久精品在这里| 91精品国产综合久久香蕉的特点| 国产成人自拍网| 日本在线不卡一区| 亚洲美女视频一区| 日本一区二区三区在线观看| 5566中文字幕一区二区电影 | 国产精品亚洲成人| 日韩av一区二区在线影视|