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

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

?? light.c

?? dsp交通燈例程 dsp交通燈例程 dsp交通燈例程
?? C
字號:
#include "ICETEK-C6713-A.h"

#define nStatusNSGreenEWRed 160
#define nStatusNSFlashEWRed 184
#define nStatusNSYellowEWRed 200
#define nStatusNSRedEWYellow 216
#define nStatusNSRedEWGreen 376
#define nStatusNSRedEWFlash 400
#define nStatusNSRedEWYellow1 416
#define nStatusNSYellowEWRed1 432
#define nTotalTime 448
#define nStatusHold 160

#define statusNSGreenEWRed 0
#define statusNSFlashEWRed 1
#define statusNSYellowEWRed 2
#define statusNSRedEWYellow 3
#define statusNSRedEWGreen 4
#define statusNSRedEWFlash 5
#define statusHold 6

void InitDSP();
void InitInterrupt();
void SetLEDArray1(int nNumber);		// 修改顯示內容
void RefreshLEDArray();			// 刷新顯示

unsigned int uWork,nTimeCount;
unsigned short int uLightStatusEW,uLightStatusSN;
unsigned int bHold;
unsigned char ledbuf[8],ledx[8];
unsigned char mled[40]=
{
	0x7E,0x81,0x81,0x7E,0x00,0x02,0xFF,0x00,
	0xE2,0x91,0x91,0x8E,0x42,0x89,0x89,0x76,
	0x38,0x24,0x22,0xFF,0x4F,0x89,0x89,0x71,
	0x7E,0x89,0x89,0x72,0x01,0xF1,0x09,0x07,
	0x76,0x89,0x89,0x76,0x4E,0x91,0x91,0x7E
};
main()
{
	int nWork1,nWork2,nWork3,nWork4;
	int nNowStatus,nOldStatus,nOldTimeCount,nSaveTimeCount,nSaveStatus;
	unsigned int nScanCode;
	
	nTimeCount=0; bHold=0;
	uLightStatusEW=uLightStatusSN=0;
	nNowStatus=0; nOldStatus=1; nOldTimeCount=0;
    init_emif();	// 初始化emif
    InitCTR();		// 初始化ICETEK-CTR
    CTRGR=2;		// IOPE=1 打開I/O端口控制指示燈功能, 見ICETEK-CTR的全局控制寄存器描述
    CTRLR=0x0c1;	// 打開發光二極管陣列
	// 清除顯示
	for ( nWork1=0;nWork1<8;nWork1++ )
	{
		ledbuf[nWork1]=0x0ff;		// 顯示為空白
		ledx[nWork1]=(nWork1<<4);	// 生成顯示列控制字
	}
	RefreshLEDArray();
	InitInterrupt();
	// 根據計時器計數切換狀態
	// 根據狀態設置計數和交通燈狀態
	while ( 1 )			
	{
		if ( bHold && nNowStatus==statusHold )	
		{
			if ( nTimeCount>=nStatusHold )
			{
				nNowStatus=nSaveStatus;
				nTimeCount=nSaveTimeCount;
				bHold=0;
			}
		}
		else if ( nTimeCount<nStatusNSGreenEWRed )	nNowStatus=statusNSGreenEWRed;
		else if ( nTimeCount<nStatusNSFlashEWRed )	nNowStatus=statusNSFlashEWRed;
		else if ( nTimeCount<nStatusNSYellowEWRed )	nNowStatus=statusNSYellowEWRed;
		else if ( nTimeCount<nStatusNSRedEWYellow )	nNowStatus=statusNSRedEWYellow;
		else if ( nTimeCount<nStatusNSRedEWGreen )	nNowStatus=statusNSRedEWGreen;
		else if ( nTimeCount<nStatusNSRedEWFlash )	nNowStatus=statusNSRedEWFlash;
		else if ( nTimeCount<nStatusNSRedEWYellow1 )	nNowStatus=statusNSRedEWYellow;
		else if ( nTimeCount<nStatusNSYellowEWRed1 )	nNowStatus=statusNSYellowEWRed;
		if ( nNowStatus==nOldStatus )
		{
			switch ( nNowStatus )
			{
				case statusNSFlashEWRed:
					nWork1=nTimeCount-nStatusNSGreenEWRed;
					nWork2=nStatusNSYellowEWRed-nStatusNSFlashEWRed;
					nWork3=nWork2/3;
					nWork4=nWork3/2;
					if ( nWork1>=0 && nWork2>0 && nWork3>0 && nWork4>0 )
						uLightStatusSN=( (nWork1%nWork3)<=nWork4 )?(0x49):(0x40);
					break;
				case statusNSRedEWFlash:
					nWork1=nTimeCount-nStatusNSRedEWGreen;
					nWork2=nStatusNSRedEWYellow1-nStatusNSRedEWFlash;
					nWork3=nWork2/3;
					nWork4=nWork3/2;
					if ( nWork1>=0 && nWork2>0 && nWork3>0 && nWork4>0 )
						uLightStatusEW=( (nWork1%nWork3)<=nWork4 )?(0x09):(0x00);
					break;
				case statusNSGreenEWRed:
					nWork1=nStatusNSGreenEWRed/20;
					if ( nWork1>0 )
					{
						nWork2=20-nTimeCount/nWork1;
						if ( bHold )
						{
							if ( nWork2>10 )
							{
								nTimeCount=nWork1*10;
								nWork2=10;
							}
						}
						if ( nOldTimeCount!=nWork2 )
						{
							nOldTimeCount=nWork2;
							SetLEDArray1(nWork2);
						}
					}
					break;
				case statusNSRedEWGreen:
					nWork1=(nStatusNSRedEWGreen-nStatusNSRedEWYellow)/20;
					if ( nWork1>0 )
					{
						nWork2=20-(nTimeCount-nStatusNSRedEWYellow)/nWork1;
						if ( bHold )
						{
							if ( nWork2>10 )
							{
								nTimeCount=nStatusNSRedEWYellow+nWork1*10;
								nWork2=10;
							}
						}
						if ( nOldTimeCount!=nWork2 )
						{
							nOldTimeCount=nWork2;
							SetLEDArray1(nWork2);
						}
					}
					break;
				case statusHold:
					nWork1=nStatusHold/20;
					if ( nWork1>0 )
					{
						nWork2=20-nTimeCount/nWork1;
						if ( nOldTimeCount!=nWork2 )
						{
							nOldTimeCount=nWork2;
							SetLEDArray1(nWork2);
						}
					}
					break;
			}
		}
		else
		{
			if ( bHold )
			{
				nSaveStatus=nNowStatus;
				nSaveTimeCount=nTimeCount;
				nNowStatus=statusHold;
				nTimeCount=0;
				if ( nSaveStatus==statusNSFlashEWRed || nSaveStatus==statusNSYellowEWRed )
				{
					nSaveStatus=statusNSRedEWGreen;
					nSaveTimeCount=nStatusNSRedEWYellow;
				}
				else if ( nSaveStatus==statusNSRedEWFlash || nSaveStatus==statusNSRedEWYellow )
				{
					nSaveStatus=statusNSGreenEWRed;
					nSaveTimeCount=0;
				}
			}
			nOldStatus=nNowStatus;
			switch ( nNowStatus )
			{
				case statusNSGreenEWRed:
					uLightStatusEW=0x24; uLightStatusSN=0x49;
					SetLEDArray1(20);
					break;
				case statusNSFlashEWRed:
					uLightStatusEW=0x24; uLightStatusSN=0x49;
					SetLEDArray1(0);
					break;
				case statusNSYellowEWRed:
					uLightStatusEW=0x24; uLightStatusSN=0x52;
					SetLEDArray1(20);
					break;
				case statusNSRedEWYellow:
					uLightStatusEW=0x12; uLightStatusSN=0x64;
					SetLEDArray1(20);
					break;
				case statusNSRedEWGreen:
					uLightStatusEW=0x09; uLightStatusSN=0x64;
					SetLEDArray1(20);
					break;
				case statusNSRedEWFlash:
					uLightStatusEW=0x09; uLightStatusSN=0x64;
					SetLEDArray1(0);
					break;
				case statusHold:
					uLightStatusEW=0x24; uLightStatusSN=0x64;
					SetLEDArray1(20);
					break;
			}
		}
		CTRLR=uLightStatusEW; CTRLR=uLightStatusSN;	// 設置交通燈狀態	
		RefreshLEDArray();	// 刷新發光二極管顯示
		nScanCode=CTRKEY;	// 讀鍵盤掃描碼
		nScanCode&=0x0ff;
		if ( nScanCode==SCANCODE_Enter )	break;
	}
	CloseCTR();
	exit(0);
}

// 定時器中斷服務程序,進行時鐘計數
void interrupt Timer()
{
	nTimeCount++;
	nTimeCount%=nTotalTime;
}

// 設置發光二極管顯示內容
void SetLEDArray1(int nNumber)
{
	int i,k,kk,kkk;
	
	kkk=nNumber; 
	k=kkk/10*4; kk=kkk%10*4;
	for ( i=0;i<4;i++ )
	{
		ledbuf[7-i]=~mled[k+i];
		ledbuf[3-i]=~mled[kk+i];
	}
}

void InitInterrupt()
{
	// 設置中斷控制寄存器
	CSR&=0xfffffffe;	// 關中斷 GIE=0
	ISTP=0x00000c00;	// 重置中斷向量表到0C00h
   	IMH=0x08000000;		// 指定Timer1產生int15中斷
   	IML=0x0a0;			// 指定xint5中斷
   	ICR=0xff;			// 清除等待的中斷
	IER=0x8023;			// 使能int15、xint5中斷
	// 設置定時器產生中斷信號的頻率
	TIMER1PRD=781250;	// 定時器1的周期=781250, 0.25s
	TIMER1CTL=0x3c0;	// 開始計數
	CSR=CSR|1; 			// 開中斷
}

void interrupt XINT5(void)	// XINT2中斷服務程序
{
	bHold=1;
}





?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本欧美大码aⅴ在线播放| 国产精品白丝av| 欧美国产成人在线| 欧美男人的天堂一二区| 高清视频一区二区| 日本免费新一区视频| 一区二区三区中文在线| www欧美成人18+| 91麻豆精品国产91久久久使用方法| 成人午夜电影网站| 另类小说图片综合网| 亚洲国产一区二区三区青草影视| 久久青草国产手机看片福利盒子| 欧美日韩国产综合一区二区 | 国产91精品精华液一区二区三区 | 久久你懂得1024| 欧美裸体bbwbbwbbw| 99精品国产视频| 福利一区二区在线| 国产乱子伦视频一区二区三区 | 久久久久久久电影| 欧美一区二区在线免费观看| 欧美视频在线一区| 91精彩视频在线| 91麻豆自制传媒国产之光| 福利电影一区二区| 国产成人啪午夜精品网站男同| 狠狠色丁香婷婷综合| 久久精品国产免费| 免费成人在线影院| 免费成人av资源网| 蜜臀av一区二区在线观看| 日本特黄久久久高潮| 日韩成人午夜电影| 奇米888四色在线精品| 奇米888四色在线精品| 日韩激情一区二区| 裸体一区二区三区| 久久国产尿小便嘘嘘| 久久99国内精品| 韩国一区二区三区| 国产电影精品久久禁18| 成人污视频在线观看| 懂色av一区二区夜夜嗨| 成人免费视频视频在线观看免费| 丁香六月久久综合狠狠色| 成人sese在线| av中文字幕不卡| 欧洲激情一区二区| 欧美精品v国产精品v日韩精品 | 国产精品午夜免费| 亚洲欧美国产77777| 亚洲自拍与偷拍| 日日噜噜夜夜狠狠视频欧美人 | 亚洲午夜在线视频| 亚洲风情在线资源站| 日韩福利视频网| 激情文学综合网| 成人性生交大片免费看中文 | 日韩成人午夜电影| 国产主播一区二区三区| 国产传媒一区在线| 99在线精品免费| 欧美撒尿777hd撒尿| 日韩一二三四区| 亚洲国产高清aⅴ视频| 亚洲精品欧美综合四区| 日日夜夜免费精品| 国产经典欧美精品| 色琪琪一区二区三区亚洲区| 91精品在线免费观看| 国产日韩亚洲欧美综合| 亚洲免费观看高清完整版在线观看| 亚洲高清免费观看高清完整版在线观看| 日本一区中文字幕| 国产电影一区在线| 欧美三级乱人伦电影| 久久免费视频色| 亚洲一区二区精品视频| 国精产品一区一区三区mba桃花 | 国产精品91xxx| 91高清视频免费看| 日韩精品一区二区三区视频在线观看| 国产欧美一区二区精品仙草咪| 综合色中文字幕| 美女mm1313爽爽久久久蜜臀| 不卡视频在线观看| 91精品国产综合久久小美女| 国产精品水嫩水嫩| 青青国产91久久久久久| a级高清视频欧美日韩| 日韩一级大片在线| 一区二区三区在线视频免费观看 | av亚洲精华国产精华精华 | 久久亚洲影视婷婷| 亚洲国产日韩a在线播放| 国产一区视频导航| 欧美日韩电影在线| 亚洲天堂网中文字| 国内不卡的二区三区中文字幕| 色偷偷久久一区二区三区| 久久亚洲春色中文字幕久久久| 亚洲一区二区不卡免费| 懂色av一区二区三区免费看| 91麻豆精品国产自产在线观看一区| 专区另类欧美日韩| 国产在线国偷精品免费看| 欧美日韩国产一级片| 亚洲欧美日韩一区二区| 国产成人综合网站| 日韩三级高清在线| 亚洲国产精品久久人人爱蜜臀| 波多野结衣亚洲一区| 久久久亚洲国产美女国产盗摄 | 91亚洲国产成人精品一区二三| 日韩精品专区在线| 日韩国产高清影视| 欧美日韩日日摸| 亚洲精品视频一区二区| 不卡视频一二三| 欧美国产精品一区二区三区| 精久久久久久久久久久| 91精品在线麻豆| 亚洲高清中文字幕| 精品视频色一区| 一区二区国产视频| 91网站最新地址| 最新国产の精品合集bt伙计| 国产成人av电影在线| 久久久亚洲午夜电影| 国产一区三区三区| 久久综合给合久久狠狠狠97色69| 久久精品72免费观看| 欧美不卡一区二区三区四区| 日韩成人免费电影| 日韩一区二区在线观看视频播放| 日韩精品电影在线| 日韩欧美亚洲国产精品字幕久久久 | 国产精品18久久久久久久久 | 亚洲欧美一区二区三区久本道91| aaa亚洲精品一二三区| 一区二区中文字幕在线| av欧美精品.com| 亚洲乱码国产乱码精品精的特点| 91农村精品一区二区在线| 一区二区在线观看免费| 在线影视一区二区三区| 亚洲mv大片欧洲mv大片精品| 91精选在线观看| 国产一区在线不卡| 亚洲国产精品成人久久综合一区| 99精品久久免费看蜜臀剧情介绍| 亚洲乱码一区二区三区在线观看| 欧美午夜精品电影| 日本不卡视频在线观看| 欧美精品一区二区三区久久久| 国产麻豆精品一区二区| 一色桃子久久精品亚洲| 欧美色精品在线视频| 麻豆精品久久精品色综合| 国产欧美综合在线观看第十页 | 26uuuu精品一区二区| jlzzjlzz亚洲女人18| 亚洲曰韩产成在线| 精品国精品自拍自在线| 成人黄色在线看| 亚洲伊人色欲综合网| 正在播放亚洲一区| 丁香网亚洲国际| 亚洲一区二区高清| 久久这里只有精品视频网| 97久久久精品综合88久久| 亚洲国产wwwccc36天堂| 久久久久久久免费视频了| 成人深夜在线观看| 亚洲444eee在线观看| 久久综合视频网| 欧美伊人久久久久久久久影院 | 欧美性感一类影片在线播放| 琪琪久久久久日韩精品| 国产精品久久国产精麻豆99网站| 欧美日韩国产综合一区二区三区| 国产精品一区2区| 亚洲一区影音先锋| 久久综合九色欧美综合狠狠| 91麻豆产精品久久久久久| 狠狠色2019综合网| 亚洲永久精品大片| 国产精品视频在线看| 日韩一区二区在线免费观看| 99久久久国产精品免费蜜臀| 蜜桃视频在线观看一区| 日韩毛片视频在线看| 日韩精品一区二区三区视频播放| 91理论电影在线观看| 国产麻豆午夜三级精品| 日韩影院免费视频| 亚洲人成人一区二区在线观看| 精品精品欲导航| 欧美美女视频在线观看|