By Mcuzone
调试串口波特率:115200-uart2
基于MDKK70-EK_T7硬件平台
程序:
**************************************************************************
*
* $FileName: test.c$
* $Version : 3.8.16.0$
* $Date : Oct-4-2011$
*
* Comments:
*
* Test application for trivial file system (TFS)
*
*END************************************************************************/
#include <mqx.h>
#include <bsp.h>
#include <tfs.h>
#if ! BSPCFG_ENABLE_IO_SUBSYSTEM
#error This application requires BSPCFG_ENABLE_IO_SUBSYSTEM defined non-zero in user_config.h. Please recompile BSP with this option.
#endif
#ifndef BSP_DEFAULT_IO_CHANNEL_DEFINED
#error This application requires BSP_DEFAULT_IO_CHANNEL to be not NULL. Please set corresponding BSPCFG_ENABLE_TTYx to non-zero in user_config.h and recompile BSP with this option.
#endif
extern const TFS_DIR_ENTRY tfs_data[];
extern void main_task(uint_32);
const TASK_TEMPLATE_STRUCT MQX_template_list[] =
{
/* Task Index, Function, Stack, Priority, Name, Attributes, Param, Time Slice */
{ 10L, main_task, 1400L, 8L, "Main", MQX_AUTO_START_TASK, 0, 0 },
{ 0 }
};
/*TASK*-------------------------------------------------------------------
*
* Task Name : main_task
* Comments :
*
*END*----------------------------------------------------------------------*/
void main_task
(
uint_32 dummy
)
{
MQX_FILE_PTR file1;
MQX_FILE_PTR file2;
int_32 result;
int_32 i;
uchar buffer[20];
uint_32 param;
uchar_ptr name;
result = _io_tfs_install ("tfs:", tfs_data);
printf ("\ninstall returned: %08x", result);
file1 = fopen("tfs:\\INDEX.html", "r");
printf ("\nfopen1 returned: %p", file1);
file2 = fopen("tfs:/", "r");
printf ("\nfopen2 returned: %p", file2);
file2 = fopen("tfs:/readme.txt", "r");
printf ("\nfopen2 returned: %p", file2);
result = fread(buffer, 1, 20, file1);
printf ("\nfread1 returned: %d and\n", result);
for (i=0;i<result;i++) printf ("%c",buffer );
result = ioctl(file1, IO_IOCTL_TFS_GET_ATTRIBUTES, ¶m);
printf ("\nioctl1 get flags returned: %08x and %08x", result, param);
result = ioctl(file2, IO_IOCTL_TFS_GET_NAME, &name);
printf ("\nioctl2 get name returned: %08x and %s", result, name);
result = ioctl(file2, IO_IOCTL_TFS_GET_LENGTH, ¶m);
printf ("\nioctl2 get length returned: %08x and %d", result, param);
result = fwrite(buffer, 1, 10, file2);
printf ("\nfwrite2 returned: %d", result);
result = ioctl(file2, IO_IOCTL_TFS_GET_LAST_ERROR, NULL);
printf ("\nioctl2 get last error returned: %08x", result);
result = fclose(file1);
printf ("\nfclose1 returned: %d", result);
result = fread(buffer, 1, 10, file2);
printf ("\nfread2 returned: %d and ", result);
for (i=0;i<result;i++) printf ("%c",buffer);
result = fread(buffer, 1, 10, file2);
printf ("\nfread2 returned: %d and ", result);
for (i=0;i<result;i++) printf ("%c",buffer);
result = fseek (file2, 0, IO_SEEK_END);
printf ("\nfseek2 to end returned: %08x", result);
result = fread(buffer, 1, 10, file2);
printf ("\nfread2 returned: %d and ", result);
for (i=0;i<result;i++) printf ("%c",buffer);
result = fseek (file2, 0, IO_SEEK_SET);
printf ("\nfseek2 to start returned: %08x", result);
printf ("\nfread2 complete file:\n");
do
{
result = fread(buffer, 1, 4, file2);
for (i=0;i<result;i++) printf ("%c",buffer);
} while (result != 0);
result = fclose(file2);
printf ("\nfclose2 returned: %d", result);
_task_block();
} /* Endbody */
/* EOF */
串口输出:
install returned: 00000000
fopen1 returned: 1fff3510
fopen2 returned: 0
fopen2 returned: 1fff3550
fread1 returned: 15 and
<HTML>
</HTML>
ioctl1 get flags returned: 00000000 and 00000000
ioctl2 get name returned: 00000000 and /Readme.txt
ioctl2 get length returned: 00000000 and 25
fwrite2 returned: 0
ioctl2 get last error returned: 00003013
fclose1 returned: 0
fread2 returned: 10 and Hi world!
fread2 returned: 10 and I am TFS
fseek2 to end returned: 00000000
fread2 returned: 0 and
fseek2 to start returned: 00000000
fread2 complete file:
Hi world! I am TFS file.
fclose2 returned: 0
基于MDKK70-EK_T7硬件平台
程序:
**************************************************************************
*
* $FileName: test.c$
* $Version : 3.8.16.0$
* $Date : Oct-4-2011$
*
* Comments:
*
* Test application for trivial file system (TFS)
*
*END************************************************************************/
#include <mqx.h>
#include <bsp.h>
#include <tfs.h>
#if ! BSPCFG_ENABLE_IO_SUBSYSTEM
#error This application requires BSPCFG_ENABLE_IO_SUBSYSTEM defined non-zero in user_config.h. Please recompile BSP with this option.
#endif
#ifndef BSP_DEFAULT_IO_CHANNEL_DEFINED
#error This application requires BSP_DEFAULT_IO_CHANNEL to be not NULL. Please set corresponding BSPCFG_ENABLE_TTYx to non-zero in user_config.h and recompile BSP with this option.
#endif
extern const TFS_DIR_ENTRY tfs_data[];
extern void main_task(uint_32);
const TASK_TEMPLATE_STRUCT MQX_template_list[] =
{
/* Task Index, Function, Stack, Priority, Name, Attributes, Param, Time Slice */
{ 10L, main_task, 1400L, 8L, "Main", MQX_AUTO_START_TASK, 0, 0 },
{ 0 }
};
/*TASK*-------------------------------------------------------------------
*
* Task Name : main_task
* Comments :
*
*END*----------------------------------------------------------------------*/
void main_task
(
uint_32 dummy
)
{
MQX_FILE_PTR file1;
MQX_FILE_PTR file2;
int_32 result;
int_32 i;
uchar buffer[20];
uint_32 param;
uchar_ptr name;
result = _io_tfs_install ("tfs:", tfs_data);
printf ("\ninstall returned: %08x", result);
file1 = fopen("tfs:\\INDEX.html", "r");
printf ("\nfopen1 returned: %p", file1);
file2 = fopen("tfs:/", "r");
printf ("\nfopen2 returned: %p", file2);
file2 = fopen("tfs:/readme.txt", "r");
printf ("\nfopen2 returned: %p", file2);
result = fread(buffer, 1, 20, file1);
printf ("\nfread1 returned: %d and\n", result);
for (i=0;i<result;i++) printf ("%c",buffer );
result = ioctl(file1, IO_IOCTL_TFS_GET_ATTRIBUTES, ¶m);
printf ("\nioctl1 get flags returned: %08x and %08x", result, param);
result = ioctl(file2, IO_IOCTL_TFS_GET_NAME, &name);
printf ("\nioctl2 get name returned: %08x and %s", result, name);
result = ioctl(file2, IO_IOCTL_TFS_GET_LENGTH, ¶m);
printf ("\nioctl2 get length returned: %08x and %d", result, param);
result = fwrite(buffer, 1, 10, file2);
printf ("\nfwrite2 returned: %d", result);
result = ioctl(file2, IO_IOCTL_TFS_GET_LAST_ERROR, NULL);
printf ("\nioctl2 get last error returned: %08x", result);
result = fclose(file1);
printf ("\nfclose1 returned: %d", result);
result = fread(buffer, 1, 10, file2);
printf ("\nfread2 returned: %d and ", result);
for (i=0;i<result;i++) printf ("%c",buffer);
result = fread(buffer, 1, 10, file2);
printf ("\nfread2 returned: %d and ", result);
for (i=0;i<result;i++) printf ("%c",buffer);
result = fseek (file2, 0, IO_SEEK_END);
printf ("\nfseek2 to end returned: %08x", result);
result = fread(buffer, 1, 10, file2);
printf ("\nfread2 returned: %d and ", result);
for (i=0;i<result;i++) printf ("%c",buffer);
result = fseek (file2, 0, IO_SEEK_SET);
printf ("\nfseek2 to start returned: %08x", result);
printf ("\nfread2 complete file:\n");
do
{
result = fread(buffer, 1, 4, file2);
for (i=0;i<result;i++) printf ("%c",buffer);
} while (result != 0);
result = fclose(file2);
printf ("\nfclose2 returned: %d", result);
_task_block();
} /* Endbody */
/* EOF */
串口输出:
install returned: 00000000
fopen1 returned: 1fff3510
fopen2 returned: 0
fopen2 returned: 1fff3550
fread1 returned: 15 and
<HTML>
</HTML>
ioctl1 get flags returned: 00000000 and 00000000
ioctl2 get name returned: 00000000 and /Readme.txt
ioctl2 get length returned: 00000000 and 25
fwrite2 returned: 0
ioctl2 get last error returned: 00003013
fclose1 returned: 0
fread2 returned: 10 and Hi world!
fread2 returned: 10 and I am TFS
fseek2 to end returned: 00000000
fread2 returned: 0 and
fseek2 to start returned: 00000000
fread2 complete file:
Hi world! I am TFS file.
fclose2 returned: 0
串口输出: