⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 leddemo.c

📁 武汉创维特的arm培训例程试验程序
💻 C
字号:
/****************************************************************************/
/*文件名称: LEDSEG7.C                                                      */
/*实验现象: 数码管依次显示出0、1,2、……9、a、b、C、d、E、F               */
/****************************************************************************/
#define U8 unsigned char
unsigned char seg7table[16] = {
    /* 0       1       2       3       4       5       6      7*/
    0xc0,   0xf9,   0xa4,   0xb0,   0x99,   0x92,   0x82,   0xf8,

    /* 8       9      A        B       C       D       E      F*/
    0x80,   0x90,   0x88,   0x83,   0xc6,   0xa1,   0x86,   0x8e,
};
void Delay(int time);
/****************************************************************************/
/* 函数说明: JXARM9-2410 7段构共阳数码管测试                                     */
/* 功能描述: 依次在7段数码管上显示0123456789ABCDEF                         */
/* 返回代码: 无                                                             */
/* 参数说明: 无                                                             */
/****************************************************************************/
void Test_Seg7(void) {    
	int i; 	
	
	*((U8*) 0x10000006) = 0x00;	
	 
	for( ; ; )	{
		/* 数码管从0到F依次将字符显示出来 */
	    for(i=0;i<0x10;i++)		{
			/* 查表并输出数据 */
	    	*((U8*) 0x10000004) = seg7table[i];    
	    	Delay (100000);   	   
   		}
		
		/* 数码管从F到0依次将字符显示出来 */
		for(i=0xf;i>=0x0;i--)		{
	   		/* 查表并输出数据 */
	   		*((U8*) 0x10000004) = seg7table[i];    
	   		Delay (100000);		
	 	}
	 }
}
/****************************************************************************/
/* Function name : 循环延时子程序                                           */
/* Description : 循环 'time' 次                                             */
/* Return type :void                                                       */
/* Argument      : 循环延时计数器                                           */
/****************************************************************************/
void Delay(int time) {
    int i;
	int delayLoopCount=1000;


    for(;time>0;time--);
		for(i=0;i<delayLoopCount;i++);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -