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

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

?? console.c

?? YL9200開發板的測試代碼,詳細請下載后細看
?? C
字號:
#include "AT91RM9200.h"
#include "def.h"
#include "config.h"
#include "console.h"
#include "utils.h"

extern volatile U32 StTick;
void delay(U32 ms)
{
	//U16 i;
	
	//i = AT91C_BASE_TC0->TC_RC>>1;	//1000us/2
	
	//AT91C_BASE_TC0->TC_CCR = 4;	//復位為0,加計數
	
	while(ms--) {
		//while(AT91C_BASE_TC0->TC_CV<=i);
		//while(AT91C_BASE_TC0->TC_CV>i);
	}
}

void putchar(char c)
{	
	if(c=='\n') {
		while(!AT91F_US_TxReady((AT91PS_USART)AT91C_BASE_DBGU));
		AT91F_US_PutChar((AT91PS_USART)AT91C_BASE_DBGU, '\r');
		delay(1);
	}
	while(!AT91F_US_TxReady((AT91PS_USART)AT91C_BASE_DBGU));
	AT91F_US_PutChar((AT91PS_USART)AT91C_BASE_DBGU, c);
//	delay(1);
}

int getchar(void)
{
	while(!kbhit());
	return AT91F_US_GetChar((AT91PS_USART)AT91C_BASE_DBGU);
}

int getkey(void)
{
  if(kbhit())return AT91F_US_GetChar((AT91PS_USART)AT91C_BASE_DBGU);
  return 0;
}
//*----------------------------------------------------------------------------
//* \fn    puts
//* \brief This function is used to send a string through the DBGU channel (Very low level debugging)
//*----------------------------------------------------------------------------
void puts(char *buffer) // \arg pointer to a string ending by \0
{	
	while(*buffer != '\0') {		
		putch(*buffer++);
	}
}

int getyorn(void)
{
	char c;
	
	puts(" [y/n] ");
	while(1) {		
		c = getch();
		if((c=='y')||(c=='Y')||(c=='n')||(c=='N'))
			break;
	}
	putch(c);
	putch('\n');
	return c&1;	//y&Y are odd, n&N are even
}

#if	1	//#ifdef	SELF_BOOT
/*---------------------printf and support routines ---------------------*/
/* print c count times */
void PutRepChar(char c, int count)
{
  while (count--) putchar(c);
}

/* put string reverse */
void PutStringReverse(char *s, int index)
{
  while ((index--) > 0) putchar(s[index]);
}
/*
typedef struct {
	U32 q;
	U16 r;
}u_div_e;

static u_div_e u_div(U32 value, U16 radix)
{
	u_div_e e = {0, 0};
	
	while(value>=radix) {
		value -= radix;
		e.q++;
	}
	e.r = value;
	
	return e;	
}*/
/*-------------------------------------------------------------------------*/
/* 
   prints value in radix, in a field width width, with fill
   character fill
   if radix is negative, print as signed quantity
   if width is negative, left justify
   if width is 0, use whatever is needed
   if fill is 0, use ' '
 */

static void PutNumber(int value, int radix, int width, char fill)
{
  char buffer[40];
  int bi = 0;
  int unsigned uvalue;
  short int digit;
  short int left = FALSE;
  short int negative = FALSE;

  if (fill == 0) fill = ' ';

  if (width < 0) {
    width = -width;
    left = TRUE;
  }
  if (width < 0 || width > 80) width = 0;
  
  if (radix < 0) {
    radix = -radix;
    if (value < 0) {
      negative = TRUE;
      value = -value;
    }
  }
  uvalue = value;
  do {
    if (radix != 16) {
      digit = uvalue % radix ;
      uvalue = uvalue / radix ;
//      u_div_e result;
      
//      result = u_div(uvalue, radix);
//      digit  = result.r;
//      uvalue = result.q;
    }
    else {
      digit = uvalue & 0xf;
      uvalue = uvalue >> 4;
    }
    buffer[bi] = digit + ((digit <= 9) ? '0' : ('A' - 10));
    bi++;

    if (uvalue != 0) {
      if ((radix==10)&&((bi==3)||(bi==7)||(bi==11)|(bi==15))) {
	buffer[bi++]=',';
      }
    }
  } while (uvalue != 0);

  if (negative) {
    buffer[bi] = '-';
    bi += 1;
  }
  if (width <= bi) PutStringReverse(buffer, bi);
  else {
    width -= bi;
    if (!left) PutRepChar(fill, width);
    PutStringReverse(buffer, bi);
    if (left) PutRepChar(fill, width);
  } 
}

/*-------------------------------------------------------------------------*/
static char *FormatItem(char *f, int a)
{
  char c;
  int fieldwidth = 0;
  int leftjust = FALSE;
  int radix = 0;
  char fill = ' ';

  if (*f == '0') fill = '0';
  while ((c = *f++)!=0) {
    if (c >= '0' && c <= '9') {
      fieldwidth = (fieldwidth * 10) + (c - '0');
    }
    else switch (c) {
    case '\000': return(--f);
    case '%': putchar('%');
      return(f);
    case '-': leftjust = TRUE;
      break;
    case 'c': {
      if (leftjust) putchar(a & 0x7f);
      if (fieldwidth > 0) PutRepChar(fill, fieldwidth - 1);
      if (!leftjust) putchar(a & 0x7f);
      return(f);
    }
    case 's': {
      if (leftjust) PutString((char *) a);
      if (fieldwidth > strlen((char *) a))
	PutRepChar(fill, fieldwidth - strlen((char *)a));
      if (!leftjust) PutString((char *) a);
      return(f);
    }
    case 'd': 
    case 'i': radix = -10;break;
    case 'u': radix = 10;break;
    case 'x': radix = 16;break;
    case 'X': radix = 16;break;
    case 'o': radix = 8;break;
    default : radix = 3;break;/* unknown switch! */
    }
    if (radix) break;
  }
  if (leftjust) fieldwidth = -fieldwidth;
  PutNumber(a, radix, fieldwidth, fill);
  return(f);
}

#define vaStart(list, param) list = (char*)((int)&param + sizeof(param))
#define vaArg(list, type) ((type *)(list += sizeof(type)))[-1]
#define vaEnd(list)

void printf(char *f, ...)       /* variable arguments */
{
//  U32 mode ;
  char *argP;

  /* disable IRQs and FIQs */
//  mode = uHALir_ReadMode() ;
//  uHALir_WriteMode(mode | NoFIQ | NoIRQ) ;

  vaStart(argP,f);		/* point at the end of the format string */
  while (*f) {			/* this works because args are all ints */
    if (*f == '%') f = FormatItem(f + 1, vaArg(argP, int));
    else putchar(*f++);
  }
  vaEnd(argP);

  /* restore the previous mode */
//  uHALir_WriteMode(mode) ;
}

#else

#include <stdarg.h>
#include <string.h>
#include <stdlib.h>

//If you don't use vsprintf(), the code size is reduced very much.
typedef int *__va_list[1];
int vsprintf(char * /*s*/, const char * /*format*/, __va_list /*arg*/);

void printf(char *fmt,...)
{
	va_list ap;
	char string[256];
	
	va_start(ap,fmt);
	vsprintf(string,fmt,ap);
	puts(string);
	va_end(ap);
}

#endif



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成人av一区二区三区| 久久婷婷色综合| 国产精品久久久久久久久搜平片| 免费在线观看一区| 欧美精品久久一区| 日本欧美一区二区| 欧美精品高清视频| 五月天激情小说综合| 欧美日韩夫妻久久| 日韩1区2区日韩1区2区| 777精品伊人久久久久大香线蕉| 亚洲一区二区四区蜜桃| 欧美精品一卡二卡| 日韩电影在线看| 国产午夜精品久久久久久免费视 | 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美性猛交xxxx乱大交退制版| 中文字幕在线观看一区二区| 91香蕉视频污| 国产欧美一区二区精品婷婷| 99九九99九九九视频精品| 一区二区三区中文在线| 欧美日韩视频在线第一区| 午夜精品久久一牛影视| 3d成人h动漫网站入口| 激情久久五月天| 国产精品嫩草影院com| 91福利小视频| 蜜桃精品视频在线| 欧美国产精品久久| 在线观看一区不卡| 美女看a上一区| 日韩欧美在线综合网| 国产精品一区免费在线观看| 日韩制服丝袜av| 欧美va亚洲va香蕉在线| 91蝌蚪porny九色| 秋霞影院一区二区| 中文子幕无线码一区tr| 成人免费视频caoporn| 一区二区成人在线| 久久综合色鬼综合色| 99热国产精品| 另类小说色综合网站| 国产精品国产三级国产普通话99| 色婷婷精品久久二区二区蜜臀av| 日本aⅴ精品一区二区三区| 亚洲国产精品成人久久综合一区| 欧美性极品少妇| 国产毛片精品国产一区二区三区| 亚洲精品菠萝久久久久久久| 欧美成人乱码一区二区三区| 91美女在线看| 国产一区二区三区在线观看免费视频| 亚洲女人小视频在线观看| 欧美xxxx老人做受| 波多野结衣欧美| 久久国产精品露脸对白| 亚洲一区在线观看免费| 国产农村妇女精品| 欧美色图天堂网| 波多野结衣的一区二区三区| 日本一不卡视频| 亚洲精品网站在线观看| 精品美女被调教视频大全网站| 在线观看亚洲精品| 懂色av一区二区三区蜜臀| 日韩制服丝袜av| 一区二区三区蜜桃| 中文字幕一区二区三区av | 日本韩国欧美一区| 国产成人自拍在线| 成人性生交大片免费看在线播放| 丰满岳乱妇一区二区三区| 3atv一区二区三区| 欧洲精品在线观看| 欧美视频自拍偷拍| 欧美丝袜丝交足nylons图片| 欧美性受xxxx| 欧美精品粉嫩高潮一区二区| 91精品国产色综合久久不卡电影| 欧美日韩亚洲另类| 欧美一区二区精品| 精品乱人伦一区二区三区| 久久人人97超碰com| 久久无码av三级| 国产欧美精品一区二区色综合朱莉| 久久在线观看免费| 欧美激情中文字幕| 亚洲日穴在线视频| 亚洲精品高清视频在线观看| 天堂va蜜桃一区二区三区漫画版| 午夜精品久久久久久久| 日韩高清欧美激情| 久久狠狠亚洲综合| www.av亚洲| 欧美日韩一卡二卡三卡 | 91视频在线看| 欧美日韩精品一区二区三区| 欧美一区二区三区免费观看视频| 日韩欧美亚洲一区二区| 国产亚洲欧洲一区高清在线观看| 国产精品久久久久久福利一牛影视| 国产精品久久久久久亚洲毛片 | 久久久综合视频| 国产精品美女www爽爽爽| 亚洲另类在线制服丝袜| 日本午夜一本久久久综合| 国产成人亚洲综合a∨婷婷| 色猫猫国产区一区二在线视频| 欧美日韩国产免费一区二区 | 亚洲欧美综合网| 图片区小说区国产精品视频| 国内成+人亚洲+欧美+综合在线| av在线播放一区二区三区| 欧美男男青年gay1069videost| 久久网这里都是精品| 亚洲综合无码一区二区| 久草在线在线精品观看| 色综合天天综合网国产成人综合天 | 日韩一级二级三级精品视频| 国产天堂亚洲国产碰碰| 亚洲午夜精品在线| 国产成人免费9x9x人网站视频| 一本一道波多野结衣一区二区 | 欧美精品久久久久久久多人混战| 国产女人18水真多18精品一级做| 性感美女久久精品| 国产aⅴ精品一区二区三区色成熟| 欧美亚洲一区二区在线观看| 久久精品日产第一区二区三区高清版| 亚洲电影你懂得| 成人动漫一区二区| 日韩三级视频在线看| 依依成人精品视频| 粉嫩蜜臀av国产精品网站| 欧美一级二级在线观看| 亚洲激情第一区| aaa国产一区| 久久婷婷成人综合色| 日本sm残虐另类| 欧美日精品一区视频| 国产精品国产三级国产普通话99 | 欧美亚洲尤物久久| 国产精品久久久久久久裸模| 久久99国产精品免费| 欧美日高清视频| 一区二区在线观看免费视频播放| 国产成人免费视频精品含羞草妖精| 欧美日韩电影一区| 亚洲精品久久久久久国产精华液| 成人福利电影精品一区二区在线观看| 精品欧美一区二区三区精品久久| 亚洲成精国产精品女| 在线视频欧美精品| 日韩一区在线播放| 丁香亚洲综合激情啪啪综合| www激情久久| 美女在线观看视频一区二区| 欧美日韩一区二区在线视频| 亚洲综合无码一区二区| 在线影视一区二区三区| 亚洲伊人伊色伊影伊综合网| 成人黄页毛片网站| 国产精品网站在线观看| 成人精品视频一区二区三区| 国产视频一区二区三区在线观看| 久久99精品网久久| 久久久久国产精品麻豆| 国产一区欧美日韩| 亚洲国产精品传媒在线观看| 成人自拍视频在线观看| 国产亚洲精品中文字幕| 成人小视频免费在线观看| 中文字幕av资源一区| www.日韩大片| 一区二区三区毛片| 欧美人与性动xxxx| 麻豆极品一区二区三区| 久久品道一品道久久精品| 国产精品69毛片高清亚洲| 国产精品欧美一级免费| 91同城在线观看| 亚洲一卡二卡三卡四卡无卡久久| 欧美午夜电影网| av日韩在线网站| 国产精品久久久久久久久免费相片| 99久久精品国产观看| 一区二区成人在线观看| 日韩一区二区电影| 国产精品一区二区无线| 国产精品二区一区二区aⅴ污介绍| 91黄视频在线| 久久电影网站中文字幕| 国产精品欧美极品| 欧美日本在线看| 福利电影一区二区| 亚洲一区二区视频在线| 久久免费看少妇高潮| 91丨九色丨国产丨porny|