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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? serial-s3c44b0.c

?? 基于ARM7+UCOS平臺(tái)的簡(jiǎn)單的bootloader程序
?? C
字號(hào):
#include "..\inc\44b.h"
#include "..\inc\def.h"
#include "..\inc\drv\Serial.h"

/* flush serial input queue. returns 0 on success or negative error
 * number otherwise
 */
static int s3c44b0_serial0_flush_input(void)
{
	volatile U32 tmp;

	/* keep on reading as long as the receiver is not empty */
	while(rUTRSTAT0&0x01) {
		tmp = rURXH0;
	}
	return 0;
}




/* flush output queue. returns 0 on success or negative error number
 * otherwise
 */
static int s3c44b0_serial0_flush_output(void)
{
	/* wait until the transmitter is no longer busy */
	while(!(rUTRSTAT0&0x02));
	return 0;
}




/* initialise serial port at the request baudrate. returns 0 on
 * success, or a negative error number otherwise
 */
static int s3c44b0_serial0_init(int baud)
{
	int i;

	s3c44b0_serial0_flush_output();
	rUFCON0 = 0x0;
	rULCON0 = 0x03;
	rUCON0 = 0x05;
	rUBRDIV0 = ( (int)(MCLK/16./baud + 0.5) -1 );

	for(i=0; i<100; i++);
	return 0;
}



/* check if there is a character available to read. returns 1 if there
 * is a character available, 0 if not, and negative error number on
 * failure */
static int s3c44b0_serial0_poll(void)
{
	/* check for errors */
	if(rUERSTAT0&0x07)
		return -1;

	return (rUTRSTAT0&0x01);
}




/* read one character from the serial port. return character (between
 * 0 and 255) on success, or negative error number on failure. this
 * function is blocking */
static int s3c44b0_serial0_read(void)
{
	int rv;

	for(;;) {
		rv = s3c44b0_serial0_poll();

		if(rv < 0)
			return rv;

		if(rv > 0)
			return rURXH0;
	}
}




/* write character to serial port. return 0 on success, or negative
 * error number on failure. this function is blocking
 */
static int s3c44b0_serial0_write(int c)
{
	/* wait for room in the transmit FIFO */
	while(!(rUTRSTAT0&0x02));

	rUTXH0 = c;

	return 0;
}




/* export serial driver */
serial_driver_t s3c44b0_serial0_driver = {
	s3c44b0_serial0_init,
	s3c44b0_serial0_read,
	s3c44b0_serial0_write,
	s3c44b0_serial0_poll,
	s3c44b0_serial0_flush_input,
	s3c44b0_serial0_flush_output
};


static int s3c44b0_serial1_flush_input(void)
{
	volatile U32 tmp;

	/* keep on reading as long as the receiver is not empty */
	while(rUTRSTAT1&0x01) {
		tmp = rURXH1;
	}
	return 0;
}




/* flush output queue. returns 0 on success or negative error number
 * otherwise
 */
static int s3c44b0_serial1_flush_output(void)
{
	/* wait until the transmitter is no longer busy */
	while(!(rUTRSTAT1&0x02));
	return 0;
}




/* initialise serial port at the request baudrate. returns 0 on
 * success, or a negative error number otherwise
 */
static int s3c44b0_serial1_init(int baud)
{
	int i;

	s3c44b0_serial1_flush_output();
	rUFCON1 = 0x0;
	rULCON1 = 0x03;
	rUCON1 = 0x05;
	rUBRDIV1 = ( (int)(MCLK/16./baud + 0.5) -1 );

	for(i=0; i<100; i++);
	return 0;
}



/* check if there is a character available to read. returns 1 if there
 * is a character available, 0 if not, and negative error number on
 * failure */
static int s3c44b0_serial1_poll(void)
{
	/* check for errors */
	if(rUERSTAT1&0x07)
		return -1;

	return (rUTRSTAT1&0x01);
}




/* read one character from the serial port. return character (between
 * 0 and 255) on success, or negative error number on failure. this
 * function is blocking */
static int s3c44b0_serial1_read(void)
{
	int rv;

	for(;;) {
		rv = s3c44b0_serial1_poll();

		if(rv < 0)
			return rv;

		if(rv > 0)
			return rURXH1;
	}
}




/* write character to serial port. return 0 on success, or negative
 * error number on failure. this function is blocking
 */
static int s3c44b0_serial1_write(int c)
{
	/* wait for room in the transmit FIFO */
	while(!(rUTRSTAT1&0x02));

	rUTXH1 = c;

	return 0;
}




/* export serial driver */
serial_driver_t s3c44b0_serial1_driver = {
	s3c44b0_serial1_init,
	s3c44b0_serial1_read,
	s3c44b0_serial1_write,
	s3c44b0_serial1_poll,
	s3c44b0_serial1_flush_input,
	s3c44b0_serial1_flush_output
};

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
天堂久久一区二区三区| 欧美精品丝袜中出| 亚洲精品久久嫩草网站秘色| 欧美午夜精品久久久久久超碰| 国产一区二区三区免费| 亚洲午夜av在线| 国产精品传媒在线| 欧美成va人片在线观看| 欧美日韩在线亚洲一区蜜芽| 国产精品一区久久久久| 亚洲成人综合在线| 国产精品国产自产拍高清av| 欧美一区二区私人影院日本| 91年精品国产| 国产成人午夜精品影院观看视频 | 蜜臂av日日欢夜夜爽一区| 亚洲日本青草视频在线怡红院| 日韩精品一区二区三区老鸭窝| 欧美性xxxxxxxx| 91在线观看视频| 国产成人精品亚洲日本在线桃色| 日本中文字幕一区二区视频| 一个色综合av| 亚洲欧美日韩小说| 国产精品网友自拍| 国产亚洲欧美在线| 精品日韩一区二区三区免费视频| 欧美猛男超大videosgay| 色中色一区二区| 99re热视频这里只精品| 成人深夜福利app| 国产精品综合在线视频| 韩国精品免费视频| 麻豆传媒一区二区三区| 日韩精品亚洲一区二区三区免费| 一区二区免费在线| 一区二区三区不卡视频 | www成人在线观看| 欧美大片在线观看| 精品欧美一区二区久久| 欧美岛国在线观看| 久久夜色精品国产噜噜av| 精品国产精品网麻豆系列| 日韩午夜精品电影| 欧美电视剧免费全集观看| 欧美成人video| 久久色中文字幕| 国产午夜精品理论片a级大结局| 精品999久久久| 国产人成一区二区三区影院| 久久九九影视网| 欧美国产国产综合| 中文字幕一区在线观看| 亚洲私人影院在线观看| 亚洲最大成人网4388xx| 亚洲成av人影院| 日韩成人免费在线| 久久不见久久见中文字幕免费| 久久av资源网| 成人性视频免费网站| av网站一区二区三区| 91电影在线观看| 7777精品伊人久久久大香线蕉| 日韩视频一区二区三区在线播放| 精品国精品自拍自在线| 国产精品久久一级| 亚洲一区二区三区视频在线| 爽好多水快深点欧美视频| 激情图区综合网| 本田岬高潮一区二区三区| 91国产丝袜在线播放| 欧美一级在线视频| 国产欧美一区二区精品性色超碰| 国产精品久久毛片av大全日韩| 国产在线精品一区二区不卡了| 国产一区不卡视频| 91丨九色丨蝌蚪丨老版| 6080国产精品一区二区| 久久亚洲影视婷婷| 一区二区高清免费观看影视大全| 午夜av一区二区三区| 国产精品一区二区x88av| 色呦呦网站一区| 精品嫩草影院久久| 亚洲精品视频观看| 精品中文字幕一区二区小辣椒| av在线综合网| 91精品在线观看入口| 欧美国产精品中文字幕| 亚洲18色成人| 成人久久18免费网站麻豆| 欧美蜜桃一区二区三区| 亚洲国产精品国自产拍av| 日韩精品一区第一页| 成人aa视频在线观看| 日韩美一区二区三区| 亚洲裸体xxx| 国内精品嫩模私拍在线| 欧美日韩一区高清| 国产精品欧美经典| 另类的小说在线视频另类成人小视频在线 | 555www色欧美视频| 中文字幕亚洲综合久久菠萝蜜| 丝袜脚交一区二区| 色婷婷国产精品久久包臀| 久久九九久久九九| 日韩电影一区二区三区| 色菇凉天天综合网| 日本一二三不卡| 国产在线播精品第三| 91精品国产欧美一区二区成人| 亚洲六月丁香色婷婷综合久久| 国产精品综合av一区二区国产馆| 欧美一区二区三区色| 亚洲一区在线观看网站| www.欧美色图| 久久久不卡网国产精品二区| 麻豆精品视频在线观看免费| 欧美日韩亚洲综合一区| 亚洲精品免费电影| av不卡免费电影| 国产精品久久精品日日| 国产精选一区二区三区| 亚洲精品一区二区精华| 日韩av不卡在线观看| 5月丁香婷婷综合| 亚洲va欧美va人人爽午夜| 在线免费不卡电影| 一区二区三区影院| 91在线观看视频| 亚洲欧洲制服丝袜| 91论坛在线播放| 亚洲欧美另类小说| 色综合久久中文字幕综合网| 最新国产精品久久精品| 91香蕉国产在线观看软件| 国产精品国产三级国产aⅴ中文 | 国产精品国产三级国产a| 日韩一区二区视频| 天天影视涩香欲综合网| 欧美日韩一二三| 日韩国产欧美在线观看| 在线播放欧美女士性生活| 日韩一区精品字幕| 日韩视频中午一区| 精品一二线国产| 久久久久国产精品麻豆ai换脸| 国产精品亚洲专一区二区三区| 久久五月婷婷丁香社区| 国产成人啪午夜精品网站男同| 中文字幕欧美三区| 91视频国产资源| 亚洲成a天堂v人片| 欧美成人激情免费网| 国产精品一级在线| 成人欧美一区二区三区黑人麻豆| 91麻豆福利精品推荐| 婷婷夜色潮精品综合在线| 日韩欧美在线网站| 国产很黄免费观看久久| 亚洲欧美在线另类| 在线观看日韩毛片| 热久久一区二区| 久久综合中文字幕| 97久久超碰精品国产| 亚洲主播在线播放| 欧美一区二区三区视频| 国产·精品毛片| 一区2区3区在线看| 日韩欧美在线影院| 不卡区在线中文字幕| 亚洲成人动漫在线观看| 精品88久久久久88久久久| 成人av免费观看| 天天综合天天综合色| 久久蜜臀中文字幕| 在线观看一区二区视频| 韩国毛片一区二区三区| 亚洲欧美成人一区二区三区| 日韩欧美亚洲一区二区| 99re视频这里只有精品| 男男成人高潮片免费网站| 亚洲国产精品精华液2区45| 欧美人伦禁忌dvd放荡欲情| 国产一区二区美女诱惑| 夜夜嗨av一区二区三区网页| 欧美刺激脚交jootjob| 色综合久久综合网欧美综合网 | 亚洲国产视频在线| 久久久久国产成人精品亚洲午夜| 在线中文字幕不卡| 国产精品自在在线| 视频一区二区欧美| 国产精品国产三级国产普通话蜜臀| 91精品国产综合久久福利软件 | 91捆绑美女网站| 国产在线国偷精品免费看| 亚洲国产精品久久人人爱蜜臀| 五月综合激情网| 国产精品久久久久一区二区三区|