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

📄 main.c

📁 汽车仪表板开发
💻 C
字号:

#include <stdio.h>
#include <string.h>
#include "config.h"
#include  "lcd.h"
#include  "sd.h"
#include  "vs1003.h"
#include "TM7843.h"



uint8 Y;

extern INT32U 	Index; 
extern INT8U  	deName[8];
extern INT8U  	deExtension[3];
extern uint16  VOL;
extern INT32U fsize[10];

extern INT8U  fname[10][8];
extern INT8U  fext[10][3];
extern INT8U  fcount;

extern unsigned char const ASCII[95][16];
extern  unsigned char const Image1[512];
extern  unsigned char const Image2[512];



void  Time0Init(void)
{   /* Fcclk = Fosc*5 = 11.0592MHz*5 = 55.296MHz
	   Fpclk = Fcclk/2 = 55.296MHz/2 = 27.698MHz
	*/
    T0PR = 99;			    					// 设置定时器0分频为100分频,得276980Hz
	T0MCR = 0x03;		   						// 匹配通道0匹配中断并复位T0TC
	T0MR0 = 276980;	    						// 比较值(1S定时值)
	T0TCR = 0x03;		   						// 启动并复位T0TC
	T0TCR = 0x01; 
}




//====以下,目标板用户初始化子程序================================================
void TargetInit(void)
{

  // IRQEnable();
}

void InitialiseUART0(uint32 bps)
{  	
    uint16 Fdiv;
    
    PINSEL0 = (PINSEL0 & 0xfffffff0) | 0x05;    /* Select the pins for Uart 选择管脚为UART0 */

    U0LCR = 0x80;                               /* Enable to access the frequenc regecter 	
												允许访问分频因子寄存器 */
    Fdiv = (Fpclk / 16) / bps;                  /* Set the baudrate设置波特率 */
    U0DLM = Fdiv / 256;							
	U0DLL = Fdiv % 256;						
    U0LCR = 0x03;                               /* Disable to access the frequenc regecter 
												禁止访问分频因子寄存器 */
                                                /* set to 8,1,n 且设置为8,1,n */
	U0IER = 0x00;                               /* Disable interrupt禁止中断 */
    U0FCR = 0x00;                               /* initial FIFO 初始化FIFO */
}

void UART0_SendByte(uint8 data)
{
   U0THR = data;
   while((U0LSR&0x40)==0);
 }
 
 
uint8 UART0_RcvByte()
{
   uint8 data;
   while((U0LSR&0x01)==0);
   data =U0RBR;
   return(data);
 }
 
 

 
void Lcd_MusicPrint(unsigned short x,unsigned short y,unsigned short color,unsigned char num)
  {  
     char temp;
     x=x-2;
     temp=(num+1)/10+0x30;
     Lcd_putchar(x,y,color,&temp);
     x+=8;
     temp=(num+1)%10+0x30;
     Lcd_putchar(x,y,color,&temp);
     x+=8;
     Lcd_putchar(x,y,color,".");
     x+=8;
     x = Lcd_Print(x,y,color,&(char)fname[num][0],8);
     Lcd_putchar(x,y,color,".");
     x+=8;
     Lcd_Print(x,y,color,&(char)fext[num][0],3);
   }

 


int main (void)
{
uint8 temp;
uint16 j,k;
char *c= "Kenn Player";
unsigned char i;
Y=62;


Time0Init();
InitialiseUART0(9600);
UART0_SendByte('O');
UART0_SendByte('K');

SD_Init();
SD_Init();
Fat_Init();
Lcd_Init();
SPI0_Init(512);

Index=0;

GetMusicFile();
Lcd_FillBlack(0);
TouchScreed();

Lcd_putstr(76,22,0xffff,c);


for(i=0;i<fcount;i++)
{
Lcd_MusicPrint(30,Y+i*20,0xffff,i);
Lcd_image(6, Y+i*20,2);
}



VS1003_Init();

VS1003_Play();
/*
while(1)
{
if(!TM_INT_STATE)
{
k=60000;
while(k--);
j= ReadTouch(0x90);
temp=j>>8;
UART0_SendByte(temp);
temp=j;
UART0_SendByte(temp);

j= ReadTouch(0xd0);
UART0_SendByte(j>>8);
UART0_SendByte(j);

}
}
*/


}

⌨️ 快捷键说明

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