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

📄 main.c

📁 一个使用ARM7控制16*32点阵LED的程序,主控芯片为2131
💻 C
字号:
/****************************************大LED显示屏程序**************************************************
**
**							   重庆工学院  山东2006年电子设计竞赛A题
**
**----------------------------------------文件信息------------------------------------------------------
**文   件   名: main.c
**创   建   人: 王庆飞
**最后修改日期: 2006年11月  日
**描       述:  
**             
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 	王庆飞
** 版  本: 	v1.0
** 日 期: 	
** 描 述: 	原始版本
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人:	
** 日 期:   
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

#include "config.h"
//extern struct  KeyTabStruct;
extern uint8 FristHanzi[];
extern uint8 SecondHanzi[];
extern uint8 ThirdHanzi[];
extern uint8 FourthHanzi[];
extern uint8 Fristzimu[];
extern uint8 Secondzimu[];
extern uint8 Thirdzimu[];
extern uint8 Fourthzimu[];
extern uint8 Char[];

extern uint8 FristHanzi_H[];
extern uint8 SecondHanzi_H[];
extern uint8 ThirdHanzi_H[];
extern uint8 FourthHanzi_H[];

uint8 shiyan[]=
{
0x00,0x00,0x03,0x1C,0x07,0x00,0x00,0x00,0x04,0x3C,0xC4,0x40,0x40,0xE4,0x1C,0x04,
/*--  文字:  重  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x10,0x10,0x50,0x57,0x55,0x55,0x55,0xFF,0x95,0x95,0x95,0x97,0x10,0x10,0x10,0x00,
0x02,0x02,0x12,0xD2,0x52,0x52,0x52,0xFE,0x52,0x52,0x52,0xD2,0x12,0x02,0x02,0x00,

/*--  文字:  庆  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x00,0x3F,0x22,0x22,0x22,0x22,0xA3,0x7E,0x23,0x22,0x22,0x22,0x22,0x22,0x00,
0x02,0x0C,0xF0,0x02,0x04,0x08,0x30,0xC0,0x00,0x80,0x60,0x18,0x0C,0x06,0x04,0x00,
};

void Init()
{
	uint8 i,j=100;
	//uint16 char2;
	
	IO0SET |=0xFFFF;             //开机全亮
	LS138ON(0);
	while(j--)
	{
	for(i=0;i<16;i++)
		LS154ON(i);
	}
	LS138ON(1);
	j=100;
	while(j--)
	{
	for(i=0;i<16;i++)
		LS154ON(i);
	}
	j=100;	
	IO0CLR |=0xFFFF;            //开机全熄
	LS138ON(0);
	while(j--)
	{
	for(i=0;i<16;i++)
		LS154ON(i);
	}
	LS138ON(1);
	j=100;
	while(j--)
	{
	for(i=0;i<16;i++)
		LS154ON(i);
	}

}

/*
*******************************************************************************************************
** 函数名称 :main()
** 函数功能 :读取实时时钟的值,并显示。
*******************************************************************************************************
*/
int main (void)
{
	uint16 i;//key;
	//uint16 char2;
	//uint32 j;
	PINSEL0=0x00000000;
	PINSEL1=0x00000000;
	PINSEL2=PINSEL2 & (~0x08);      //设置P1.25-P1.16为GPIO
	
	IO0DIR=0xFFC0FFFF;              //设置P0.16-P0.21为输入口,其余为输出口
	IO1DIR=(0x1F<<16);              //设置P1.20-P1.16为输出口
	
	Init();
	
	
	//RTCInit();
	

	while(1)
	{
	
		//uart0();
		//while (0 == (ILR & 0x01));	// 等待RTC增量中断
		//ILR = 0x01;					// 清除中断标志
		//SendTimeRtc();
		//LEDPrintTime();
		//LEDPrintOneChar(0,0,1);     //显示小时

		key_main();                     //注释掉此句,使用下面一个while (1)语句,实现无键盘的调试操作

		//j=10;
		//while (j--)
		//{
		/*	for(i=0;i<16;i++)
	 		{
				LS154_0FF;
				char2=shiyan[(i*2)]+(shiyan[(2*i+1)]<<8);
				LS138ON(0);
				LEDPrintOneROW_16(char2);
				LS154ON(i);
	 		}
	 	//}
	 	//j=10;
	 	//while (j--)
		//{
			for(i=0;i<16;i++)
	 		{
				LS154_0FF;
				char2=shiyan[32+(i*2)]+(shiyan[32+(2*i+1)]<<8);
				LS138ON(1);
				LEDPrintOneROW_16(char2);
				LS154ON(i);
	 		}*/
	 	
	 	//}
 	
/* 		for(i=0;i<16;i++)
		{
			LS154_0FF;
			char2=Char[(520+i)];
			LS138ON(1);
			LEDPrintOneROW_8(char2);
			LS154ON(i);
		}*/
		

		
				
		//for(i=0;i<100;i++)                   //显示星期、时分秒
		
		/*
		for(i=0;i<1;i++)
		LEDPrintchinese(8,FristHanzi);     //显示1次第一组汉字
		
		for(i=0;i<1;i++)
		LEDPrintchinese(8,SecondHanzi);    //显示1次第二组汉字
		
		for(i=0;i<1;i++)
		LEDPrintchinese(8,ThirdHanzi);     //显示1次第三组汉字
		
		for(i=0;i<1;i++)
		LEDPrintchinese(8,FourthHanzi);    //显示1次第四组汉字
		*/
		
		//for(i=0;i<1;i++)                   //显示一组字母"ThisCQIT"
		//LEDPrintChar_H(0,0,Fristzimu);
		
		//for(i=0;i<1;i++)                   //显示一组字母
		//LEDPrintChar_H(0,0,Secondzimu);
		
		//for(i=0;i<1;i++)                   //显示一组字母
		//LEDPrintChar_H(0,0,Thirdzimu);
		
		//for(i=0;i<1;i++)                   //显示一组字母
		//LEDPrintChar_H(0,0,Fourthzimu);
		
		/*
		for(i=0;i<1;i++)
		LEDPrintchinese_H(8,SecondHanzi_H);    //显示1次第二组汉字
		
		for(i=0;i<1;i++)
		LEDPrintchinese_H(8,ThirdHanzi_H);     //显示1次第三组汉字
		
		for(i=0;i<1;i++)
		LEDPrintchinese_H(8,FourthHanzi_H);    //显示1次第四组汉字	
		
		for(i=0;i<1;i++)
		LEDPrintchinese_H(8,FristHanzi_H);     //显示1次第一组汉字
		*/

	}
	return (0);
}
/*********************************************************************************************************
**                            End Of File
********************************************************************************************************/

⌨️ 快捷键说明

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