##// END OF EJS Templates
Sync
Sync

File last commit:

r86:ac0656f4856d dev_alexis
r99:3b41c9708f77 dev_alexis
Show More
main.c
138 lines | 3.2 KiB | text/x-c | CLexer
#include <stdio.h>
#include <fat32.h>
#include <gpio.h>
#include <uart.h>
#include <bsp.h>
#include <core.h>
#include <bsp.h>
#include <spi.h>
#include <fat32.h>
#include <ucdirent.h>
#include <string.h>
#include <unistd.h>
#include <terminal.h>
#include <stdarg.h>
#include <malloc.h>
extern streamdevice* __opnfiles__[];
extern void test_Block_Move(LCD_t* LCD,int x,int y,int w,int h,int color);
extern void test_address(LCD_t* LCD);
extern void printRootClustersChain(FAT32fs* sdcard2FAT32part);
char buffer[512];
//void streamdevicePrint(streamdevice* dev, const char* format,...)
//{
// char str_buffer[512]="";
// int i;
// va_list ap;
// va_start(ap,format);
// vasprintf(str_buffer,format,ap);
// va_end(ap);
// i=strlen(str_buffer);
// dev->ops->write(dev,(void*)str_buffer,1,i);
//}
int _write(int file, char *ptr, int len)
{
if(file<__MAX_OPENED_FILES__ && __opnfiles__[file]!=NULL)
{
if(__opnfiles__[file]->ops->write(__opnfiles__[file],ptr,1,len)) return len;
}
return len;
}
int _write_r (struct _reent *r, int file, char * ptr, int len)
{
return _write(file, ptr, len);
}
//int printf(const char *format,...)
//{
// char str_buffer[512]="";
// for(int i =0;i<512;i++)str_buffer[i]='\0';
// int i;
// va_list ap;
// va_start(ap,format);
// vasprintf(str_buffer,format,ap);
// va_end(ap);
// i=strlen(str_buffer);
// __opnfiles__[1]->ops->write(__opnfiles__[1],(void*)str_buffer,1,i);
//}
void lcd_print()
{
lcd0.paintFilRect(&lcd0,10,10,100,100,0,0,0x0F0F);
// __opnfiles__[1]->ops->write(__opnfiles__[1],(void*)"hello",1,5);
}
void playFile(ucdirent* file,FAT32fs* part)
{
extern volatile vs10XXDev audioCodec0;
char direntName[]=" \n";
uint32_t fileLba,nextLba;
int i=0;
fat32getdirentname(file,direntName);
//gpioset(LCD_BACKL);
printf("%s\n",direntName);
nextLba=fat32getdirentlba(file);
//printf("Streaming File\n");
//gpioclr(LCD_BACKL);
}
void listFiles()
{
extern FAT32fs sdcard2FAT32part1,sdcard2FAT32part2,sdcard2FAT32part3,sdcard2FAT32part4;
ucdirent root;
if(DIRENT_noErr==fat32mkdirent(&sdcard2FAT32part1,&root))
{
printf("Reading on SDCARD2 part1\n");
if(DIRENT_noErr==fat32getrootfirstent(&root))
{
do{
playFile(&root,&sdcard2FAT32part1);
}while (DIRENT_noErr==fat32nextdirent(&root));
}
}
gpioset(LED2);
if(DIRENT_noErr==fat32mkdirent(&sdcard2FAT32part2,&root))
{
printf("Reading on SDCARD2 part2\n");
if(DIRENT_noErr==fat32getrootfirstent(&root))
{
do{
playFile(&root,&sdcard2FAT32part2);
}while (DIRENT_noErr==fat32nextdirent(&root));
}
}
}
int libuc_main2()
{
printRootClustersChain(&sdcard2FAT32part1);
}
int libuc_main()
{
char in[255];
//lcd_print();
printf("hello world\n");
delay_100us(10000);
// streamdevicePrint(__opnfiles__[1],"test Hello %d %f \n",1234567,8.96);
listFiles();
// lcd0.paintText(&lcd0,"A",10,100,&ComicSansMS_18,0x0);
// while(1)test_address(&lcd0);
// while (scanf("%c",in))
// {
sleep(5);
// }
}