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

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

?? peripheral_test.c

?? 基于fpga和sopc的用VHDL語言編寫的EDA的32位Nios CPU嵌入式系統軟硬件設計
?? C
字號:


#include "peripheral_test.h"
#include "excalibur.h"


//
// This "Peripheral Test" is only
// meaningful on the Nios32 Reference
// design. If you build a Nios system
// with a different collection of
// peripherals, then parts of this
// code will no longer apply, and
// might not even compile.
//


// --------------------------------------
// Menu Utility Routines

void MenuBegin(char *title)
	{
	printf("\n\n");
	printf("----------------------------------\n");
	printf("Nios Peripheral Test\n");
	printf("----------------------------------\n");
	printf(" %s\n",title);
	}

void MenuEntry(char letter,char *string)
	{
	printf("     %c:  %s\n",letter,string);
	}

int MenuEnd(char lowLetter,char highLetter)
	{
	int c;
	c = 23;
	printf("     q:  Exit\n");

	printf("----------------------------------\n");
	printf("\nSelect Choice (%c-%c): ",lowLetter,highLetter);

here:
	while((c = rGetChar()) < 0)
		;

	if(c >= 'A' && c <= 'Z')
		c += 'a' - 'A';
	
	if(c == 27)
		c = 'q';
	
	if(c == 'q' || (c >= lowLetter && c <= highLetter))
		{
		printf("%c\n",c);
		return (char)c;
		}

	goto here;
	}

#define MenuCase(letter,proc) case letter:proc(); break;


void *gReturnToMonitor;	// referenced by rGetChar, so any <RETURN> goes there.

int main(void)
	{
	int c;
	register void *returnToMonitor;

    setbuf(stdout,0);  // turn off printf buffering

	//
	// Set up a global return-address, so that
	// rGetChar can return to the monitor at ANY time
	// if user presses <RETURN>.
	//
	// Normally, main's return (or any call to exit())
	// executes a TRAP 0. But we want this program in flash,
	// to a TRAP 0 would just rerun itself. In this particular
	// case, we want to return to the caller.
	//
	// nr_setup puts the caller's return address in %i5 for us.
	//

	asm ("mov %0,%%i5" : "=r" (returnToMonitor) );
	gReturnToMonitor = returnToMonitor;

	printf("\n(Return address is 0x%08x\n",(int)gReturnToMonitor * 2);

    //
    // Clear the UART of buffered characters
    //
    nr_delay(100);
    while(nr_uart_rxchar(0) >= 0)
        {
        nr_delay(10);
        }

	//
	// Print a welcome message
	//

	printf("\n\n\n");
	printf("-------------------------------------\n");
	printf("Welcome to the Nios development board\n");
	printf("-------------------------------------\n");
	printf("\n");

mainMenu:
	MenuBegin("MAIN MENU");
	MenuEntry('a',"Timer");
	MenuEntry('b',"UART");
	MenuEntry('c',"Buttons & Switches");
	MenuEntry('d',"LED");
	MenuEntry('e',"Seven Segment Display");
	MenuEntry('f',"Bus & Memory");

	c = MenuEnd('a','g');

	switch(c)
		{
		MenuCase('a',DoTimerMenu);
		MenuCase('b',DoUARTMenu);
		MenuCase('c',DoButtonsMenu);
		MenuCase('d',DoLEDMenu);
		MenuCase('e',DoSevenSegMenu);
		MenuCase('f',DoMemoryMenu);
		}

	if(c != 'q')
		goto mainMenu;

	// else, exit

	ExitPeripheralTest();
	}


// |
// | Turn off timer and uart irqs, just in case
// |

void ExitPeripheralTest(void)
	{
	// Set the 7-seg back to all-on
	na_seven_seg_pio->np_piodata = 0;

	DoUARTDisableInterruptHandler();
	DoDisableTimerInterrupt();

	exit(0);
	}

void DoButtonsMenu(void)
	{
	int c;
	long delay;
	int buttons,buttonsLast;
	int j;
	np_pio *pio = na_button_pio;

	pio->np_piodirection = 0;	// all input

menu:
	MenuBegin("BUTTONS PIO MENU");
	MenuEntry('a',"Show Buttons");

	c = MenuEnd('a','a');

	switch(c)
		{
		case 'a':
			printf("\n\nButtons shown when changed. <Esc> to exit.\n\n");
			buttonsLast = 0x5555;
			while(rGetChar() != 27)
				{
				buttons = pio->np_piodata;
				if(buttons != buttonsLast)
					{
					printf("buttons: %02x/%1x \n",
						(buttons >> 4) & 0xff,
						buttons & 0xf);

					buttonsLast = buttons;
					}
				}
		}
	}

void DoLEDMenu(void)
	{
	int c;
	np_pio *pio = na_led_pio;

	pio->np_piodirection = 3;

menu:
	MenuBegin("LED MENU");
	MenuEntry('a',"LED 0 on/off");
	MenuEntry('b',"LED 1 on/off");

	c = MenuEnd('a','b');

	switch(c)
		{
		case 'a':
			pio->np_piodata ^= 1;
			break;
			
		case 'b':
			pio->np_piodata ^= 2;
			break;
		}
	if(c != 'q')
		goto menu;
	}

void DoSevenSegMenu(void)
	{
	int c;
	long delay;
	int i;
	long j;

menu:
	MenuBegin("SEVEN SEGMENT MENU");
	MenuEntry('a',"Count Slowly");
	MenuEntry('b',"Count Rapidly");
	MenuEntry('c',"Control Segments");

	c = MenuEnd('a','c');

	switch(c)
		{
		case 'a':
			delay = 150000;
		count:
			printf("\n\n\nCounting on seven segment display... (*) ");
			for(i = 0; i <= 0xff; i++)
				{
				printf("%02x ",i);
				for(j = 0; j < delay; j++)
					{
					// Pressing a key aborts this tedious process.
					if(rGetChar() > 0)
						goto doneCount;

					nr_pio_showhex(i);
					}
				}
		doneCount:
			printf("(*) Done.\n\n\n");
			break;

		case 'b':
			delay = 8000;
			goto count;

		case 'c':
			DoSevenSegSegmentControls();
			break;
		}
	if(c != 'q')
		goto menu;

	}
void DoSevenSegSegmentControls(void)
	{
	np_pio *pio = na_seven_seg_pio;
	long bits = 0xffff;
	long keyBit;
	char c;

	printf("\n");
	printf("\n");
	printf("         +-A--+     +-a--+\n");
	printf("         |    |     |    |\n");
	printf("         F    B     f    b\n");
	printf("         |    |     |    |\n");
	printf("         +-G--+     +-g--+\n");
	printf("         |    |     |    |\n");
	printf("         E    C     e    c\n");
	printf("         |    |     |    |\n");
	printf("         +-D--+ (H) +-d--+ (h)\n");
	printf("\n");
	printf("Press <Esc> to finish.\n");

	while((c = rGetChar()) != 27)
		{
		keyBit = 0;
		if(c >= 'a' && c <= 'g')
			keyBit = 1 << ('g' - c);
		else if(c == 'h')
			keyBit = 1 << 7;
		else if(c >= 'A' && c <= 'G')
			keyBit = 1 << ('G' - c + 8);
		else if(c == 'H')
			keyBit = 1 << 15;

		bits ^= keyBit;
		pio->np_piodata = bits;
		}
	}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道亚洲精品aⅴ| 一区二区三区在线视频观看58| 欧美一级电影网站| 国产亚洲成av人在线观看导航| 亚洲一区二区三区三| 国产精品一品视频| 欧美视频一区在线观看| 精品一区二区在线播放| 亚洲一区二区三区小说| 毛片基地黄久久久久久天堂| 丰满岳乱妇一区二区三区| 欧美二区三区的天堂| 中文字幕一区不卡| 国产精品69久久久久水密桃| 日韩三级高清在线| 日韩国产欧美在线播放| 色婷婷综合中文久久一本| 国产午夜精品美女毛片视频| 麻豆精品精品国产自在97香蕉| 欧美三区在线观看| 一区二区三区中文免费| 91啦中文在线观看| 亚洲欧美日韩国产中文在线| 99在线精品观看| 国产精品久久看| 成人免费视频视频| 精品日韩欧美在线| 97久久超碰国产精品| 久久嫩草精品久久久精品| 日本色综合中文字幕| 欧美日韩亚洲高清一区二区| 亚洲美女区一区| 91福利在线看| 亚洲成av人片| 日韩视频免费观看高清完整版在线观看 | 一区二区三区蜜桃| 91网站视频在线观看| 国产精品久久久久久久久免费相片 | 99精品久久只有精品| 国产日韩欧美一区二区三区乱码| 精品一区二区在线看| 精品国产一区二区三区av性色| 免费成人性网站| 日韩视频不卡中文| 国产在线不卡视频| 国产精品麻豆久久久| 91在线看国产| 亚洲成在线观看| 日韩三级伦理片妻子的秘密按摩| 激情五月婷婷综合网| 日本一区二区免费在线观看视频 | 亚洲精品伦理在线| 欧美人妖巨大在线| 韩国一区二区三区| 中文字幕中文乱码欧美一区二区| 色综合久久中文字幕综合网| 午夜欧美一区二区三区在线播放| 欧美精品亚洲二区| 国产麻豆精品一区二区| 日韩码欧中文字| 91精品久久久久久久99蜜桃 | 亚洲不卡一区二区三区| 欧美一区二区三级| 成人永久看片免费视频天堂| 亚洲精品日韩一| 日韩一区二区三区电影| 成人性生交大合| 艳妇臀荡乳欲伦亚洲一区| 精品国精品自拍自在线| 色综合久久久久综合体桃花网| 日韩制服丝袜av| 中文字幕欧美一| 日韩欧美专区在线| 色婷婷综合激情| 国产一二精品视频| 亚洲r级在线视频| 中文一区二区在线观看| 欧美精品在欧美一区二区少妇 | 久久国产精品72免费观看| 国产精品护士白丝一区av| 欧美乱熟臀69xxxxxx| 成人涩涩免费视频| 欧美中文字幕一二三区视频| 午夜视频久久久久久| 国产欧美精品区一区二区三区| 欧美老年两性高潮| 99久久精品免费| 极品美女销魂一区二区三区| 亚洲国产欧美一区二区三区丁香婷| 国产亚洲一区二区三区在线观看| 欧美日韩激情一区| 色婷婷综合久久久久中文一区二区| 激情亚洲综合在线| 亚洲高清免费观看| 亚洲老司机在线| 欧美国产精品专区| 日韩欧美激情在线| 3d成人动漫网站| 在线观看日韩一区| 91麻豆视频网站| a亚洲天堂av| 国产v综合v亚洲欧| 国产激情91久久精品导航 | 欧洲色大大久久| 精品盗摄一区二区三区| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 日韩欧美国产综合一区| 911精品国产一区二区在线| 在线观看视频91| 一本一道久久a久久精品| a4yy欧美一区二区三区| 成人精品一区二区三区中文字幕| 国产福利不卡视频| 国产成人免费高清| 国产99一区视频免费| 国产成人在线视频网站| 国产aⅴ综合色| 成人午夜在线播放| 97超碰欧美中文字幕| 99re成人精品视频| 色妹子一区二区| 一本大道久久a久久精品综合| 91视频一区二区| 欧美亚洲国产bt| 欧美丰满嫩嫩电影| 日韩三级av在线播放| 久久久蜜臀国产一区二区| 久久亚洲精品国产精品紫薇| 一区二区三区国产豹纹内裤在线| 国产日韩三级在线| 国产精品久久久久久久久久久免费看 | 国产精品视频观看| 亚洲人亚洲人成电影网站色| 亚洲影视在线观看| 日本不卡不码高清免费观看| 另类小说综合欧美亚洲| 国产精品一区二区视频| 成人福利电影精品一区二区在线观看| 99精品视频在线观看| 欧洲视频一区二区| 91精品国产品国语在线不卡| 精品国产乱码91久久久久久网站| 国产喂奶挤奶一区二区三区| 日韩一区欧美小说| 日韩在线a电影| 国产馆精品极品| 在线观看不卡视频| 欧美电影免费观看高清完整版在线 | 亚洲欧洲三级电影| 亚洲麻豆国产自偷在线| 视频一区在线播放| 国产精品中文字幕欧美| 91丨九色porny丨蝌蚪| 91精品国模一区二区三区| 国产女主播视频一区二区| 亚洲宅男天堂在线观看无病毒| 久草中文综合在线| 欧美在线小视频| 国产视频亚洲色图| 亚洲一区二区欧美激情| 韩国一区二区在线观看| 在线观看国产日韩| 国产日产亚洲精品系列| 午夜国产精品影院在线观看| 国产高清精品在线| 欧美精品v国产精品v日韩精品| 国产欧美日产一区| 蜜臀av国产精品久久久久| 91碰在线视频| 国产无遮挡一区二区三区毛片日本| 亚洲成av人影院在线观看网| 欧美少妇bbb| 亚洲免费av观看| 日韩高清不卡一区二区三区| 国产69精品久久久久毛片| 欧美精品一二三四| 亚洲理论在线观看| 成人免费视频视频在线观看免费| 日韩一区二区三区电影| 亚洲最新视频在线观看| heyzo一本久久综合| 久久久久久毛片| 蜜臀av一区二区在线观看| 欧美三级中文字| 亚洲综合色噜噜狠狠| av午夜精品一区二区三区| 国产欧美一区二区精品性色超碰| 日韩成人午夜电影| 欧美日韩综合不卡| 亚洲精品大片www| eeuss影院一区二区三区| 国产天堂亚洲国产碰碰| 国内精品第一页| wwwwxxxxx欧美| 久久超碰97中文字幕| 日韩一区二区在线看| 日本午夜精品视频在线观看| 欧美二区三区91| 男女男精品视频| 欧美成人官网二区|