コード例 #1
0
ファイル: quick_tests.c プロジェクト: cargabsj175/yaffs2
void init_quick_tests(int argc, char *argv[])
{
	int trace=0;
	int new_option;
	//int x=0;	
	do{
		new_option=getopt_long(argc,argv,short_options,long_options,NULL);		
		if (new_option=='h'){
			printf("help\n");
			printf("-h will print the commands available\n");
			printf("-c will continue after a test fails else the program will exit\n");
			printf("-v will print all messages\n");
			printf("-q quiet mode only the number of tests passed and failed will be printed\n");
			printf("-t [number] set yaffs_trace to number\n");
			printf("-n [number] sets the number of random loops to run after the the test has run\n");
			exit(0);
		} else if (new_option=='c') {
			set_exit_on_error(0);
		} else if (new_option=='q') {
			set_print_level(-3);
		} else if (new_option=='t') {
			trace = atoi(optarg);
		}  else if (new_option=='v') {
			set_print_level(5);
		} else if (new_option=='n') {
			number_of_random_tests=atoi(optarg);
		}

	}while (new_option!=-1);
	yaffs_start_up();
	yaffs_set_trace(trace);

}
コード例 #2
0
ファイル: yaffs_tester.c プロジェクト: hanfeng/rtems-yaffs2
void init(char *yaffs_test_dir,char *yaffs_mount_dir,int argc, char *argv[]){
	char output=0;
	int x=0;
	int seed=-1;
	FILE *log_handle;
	/*these variables are already set to zero, but it is better not to take chances*/
	message_buffer.head=0;				 
	message_buffer.tail=0;


	log_handle=fopen(LOG_FILE,"w");
	if (log_handle!=NULL){
		fputs("log file for yaffs tester\n",log_handle);
		fclose(log_handle);
	}
	add_to_buffer(&message_buffer,"welcome to the yaffs tester",MESSAGE_LEVEL_BASIC_TASKS,PRINT);/* print boot up message*/	
	yaffs_start_up();
    	yaffs_mount(yaffs_mount_dir);
	for (x=0;x<argc;x++){
//		add_to_buffer(&message_buffer,"argv ",MESSAGE_LEVEL_BASIC_TASKS,PRINT);
//		add_to_buffer(&message_buffer,argv[x],MESSAGE_LEVEL_BASIC_TASKS,PRINT);
		if (strcmp("-seed",argv[x])==0){			/*warning only compares the length of the strings, quick fix*/
			seed= atoi(argv[x+1]);
			/*add_to_buffer(&message_buffer,"setting seed to ",MESSAGE_LEVEL_BASIC_TASKS,NPRINT);
			append_int_to_buffer(&message_buffer,seed,MESSAGE_LEVEL_BASIC_TASKS,NPRINT);			
			append_to_buffer(&message_buffer,"\n",MESSAGE_LEVEL_BASIC_TASKS,PRINT);*/
		}
	}
	if (seed==-1){
		seed=time(NULL);
		srand(seed); 
	}
	else {
	srand(seed);
	}
	add_to_buffer(&message_buffer,"setting seed to ",MESSAGE_LEVEL_BASIC_TASKS,NPRINT);
	append_int_to_buffer(&message_buffer,seed,MESSAGE_LEVEL_BASIC_TASKS,PRINT);/* print boot up message*/	

	if (yaffs_access(yaffs_test_dir,0))	/* if the test folder does not exist then create it */
	{
		add_to_buffer(&message_buffer,"creating dir: ",MESSAGE_LEVEL_BASIC_TASKS,NPRINT);
		append_to_buffer(&message_buffer,yaffs_test_dir,MESSAGE_LEVEL_BASIC_TASKS,PRINT);	
		output=yaffs_mkdir(yaffs_test_dir,S_IREAD | S_IWRITE);
		yaffs_check_for_errors(output, &message_buffer,"could not create dir","created dir\n\n");
	}
	
}
コード例 #3
0
ファイル: test_1_yaffs_mount.c プロジェクト: Blackrose/yaffs2
int main()
{
	int output = 0;
	int output2 = 0;
	yaffs_start_up();

	printf("\n\n starting test\n");
	yaffs_set_trace(0);
	output = yaffs_mount(YAFFS_MOUNT_POINT);

	if (output>=0){  
		printf("yaffs mounted: %s\n",YAFFS_MOUNT_POINT); 
	} else {
		printf("error\n yaffs failed to mount: %s\nerror\n",YAFFS_MOUNT_POINT);
		return (0);
	}
	//now create a file.
	output = yaffs_open(FILE_PATH,O_CREAT | O_RDWR, S_IREAD | S_IWRITE);
	if (output>=0){  
		printf("file created: %s\n",FILE_PATH); 
	} else {
		printf("error\n yaffs failed to create the file: %s\nerror\n",FILE_PATH);
		return (0);
	}
	output2 = yaffs_close(output);
	if (output2>=0){  
		printf("file closed: %s\n",FILE_PATH); 
	} else {
		printf("error\n yaffs failed to close the file: %s\nerror\n",FILE_PATH);
		return (0);
	}
	//unmount and remount the mount point.
	output = yaffs_unmount(YAFFS_MOUNT_POINT);
	if (output>=0){  
		printf("yaffs unmounted: %s\n",YAFFS_MOUNT_POINT); 
	} else {
		printf("error\n yaffs failed to unmount: %s\nerror\n",YAFFS_MOUNT_POINT);
		return (0);
	}
	output = yaffs_mount(YAFFS_MOUNT_POINT);
	if (output>=0){  
		printf("yaffs mounted: %s\n",YAFFS_MOUNT_POINT); 
	} else {
		printf("error\n yaffs failed to mount: %s\nerror\n",YAFFS_MOUNT_POINT);
		return (0);
	}
	//now open the existing file.
	output = yaffs_open(FILE_PATH, O_RDWR, S_IREAD | S_IWRITE);
	if (output>=0){  
		printf("file created: %s\n",FILE_PATH); 
	} else {
		printf("error\n yaffs failed to create the file: %s\nerror\n",FILE_PATH);
		return (0);
	}
	//close the file.
	output2 = yaffs_close(output);
	if (output2>=0){  
		printf("file closed: %s\n",FILE_PATH); 
	} else {
		printf("error\n yaffs failed to close the file: %s\nerror\n",FILE_PATH);
		return (0);
	}

	//unmount the mount point.
	output = yaffs_unmount(YAFFS_MOUNT_POINT);
	if (output>=0){  
		printf("yaffs unmounted: %s\n",YAFFS_MOUNT_POINT); 
	} else {
		printf("error\n yaffs failed to unmount: %s\nerror\n",YAFFS_MOUNT_POINT);
		return (0);
	}

	printf("test passed. yay!\n");
	
}
コード例 #4
0
ファイル: user_main.c プロジェクト: waitig/GasSub_LPC1788
/*********************************************************************************************************
** Function name:           taskStart	   
** Descriptions:            Start task	
** input parameters:        *parg
** output parameters:       ?      
** Returned value:          ? 
*********************************************************************************************************/
static void TaskStart (void  *parg)
{

		INT8U err;
		UserRS485Send ussend;
	
    (void)parg;


	
    #if OS_TASK_STAT_EN > 0
    OSStatInit();                                                       /*  Enable statistics           */
    #endif
	
		/* Init the file system */
	
	optionSaveStruct.masterIP[1]=0xaa;
	
	EEPROM_WriteStruct(optionSaveStruct);
	
    yaffs_start_up();	
		File_Init();
		
		KeyInit();
   	KeyQueueHead=OSQCreate(KeyMsg,KEYQSIZE);		//创建按键消息队列 在优先级较高的任务中执行
		
		ConfigQueueHead = OSQCreate( ConfigMsg, CONFIGQSIZE );
		UploadQueueHead = OSQCreate( UploadMsg, UPLOADQSIZE );
	
		EquipmentTaskSem = OSSemCreate(0);
		UartRcvTaskSem   = OSSemCreate(1);
		sem_tcp_init_done = OSSemCreate(0);
		UartSendTaskSem = OSSemCreate(1);
		
		tcpip_init(tcpip_init_done, NULL);
    OSSemPend(sem_tcp_init_done, 0, &err);

    eth_netif_init(ipConfig);
		
		TCPTest();
 
    err = OSTaskCreate((void (*)(void *)) Equipment_Task,				
                          (void          * ) 0,							
                          (OS_STK        * )&TaskEquipmentStk[TASK_KEY_STK_SIZE - 1],		
                          (INT8U           ) TASK_EQUIPMENT_PRIO  );  				/*	Create Equipment Task */
		
		//printf("Equipment_Task: err = %d\n", err );
	
		err = OSTaskCreate((void (*)(void *)) UartRcv_Task,				
                          (void          * ) 0,							
                          (OS_STK        * )&TaskUartRcvStk[TASK_KEY_STK_SIZE - 1],		
                          (INT8U           ) TASK_UART_RCV_PRIO  );  				  /*	Create Equipment Task */
													
		//printf("UartRcv_Task: err = %d\n", err );
													
		err = OSTaskCreate((void (*)(void *)) FileReceive_Task,				
                          (void          * ) 0,							
                          (OS_STK        * )&TaskFileRcvStk[TASK_FILERCV_STK_SIZE - 1],		
                          (INT8U           ) TASK_FILE_RCV_PRIO  );  			  	/*	Create FileReceive Task */
		
		//printf("FileReceive_Task: err = %d\n", err );
				
		err = OSTaskCreate((void (*)(void *)) hvsftpd_main,				
                          (void          * ) 0,							
                          (OS_STK        * )&TaskFtpStk[TASK_FTP_STK_SIZE - 1],		
                          (INT8U           ) TASK_FTP_PRIO  );  			  	/*	Create FileReceive Task */
		
		printf(" hvsftpd_Task: err = %d\n", err );
													
	
		err = OSTaskCreate ((void (*)(void	*))Menu_Task, 
						   (void 	*)0,   
						   (OS_STK	*)&Gstk2[MENU_TASK_STK_SIZE-1],
						   (INT8U	 )MENU_TASK_PRIO  	);                           /*  Create Menu Task     */ 	
							 
/*		err = OSTaskCreate ((void (*)(void	*))Test_Key, 
						   (void 	*)0,   
						   (OS_STK	*)&TestStk[511],
						   (INT8U	 )44  	);                           /  Create Menu Task     */ 	
			
		App_KeyTaskCreate();						  /* Create Task Key */

#if	FRMB_DEBUG
		ussend.address=0x00;
		ussend.ctrl=0x01;
		ussend.data[0]=0xaa;
		ussend .len=1;
		ussend.CRCH=0x00;
		ussend.CRCL=0x11;
#else

//		err=OSTaskCreate((void (*)(void *))FMB_Task,
//											(void *)0,
//											(OS_STK *)&FMBStk[FMB_TASK_STK_SIZE-1],
//											(INT8U )FMB_TASK_PRIO	);
//											
//		err=OSTaskCreate((void (*)(void *))FMB_Poll_Task,
//											(void *)0,
//											(OS_STK *)&FMBPollStk[FMB_TASK_STK_SIZE-1],
//											(INT8U )FMB_POLL_TASK_PRIO	);									
											
		
		
	
#endif

		while (1) 
		{
#if	FRMB_DEBUG
			RS485Send_Struct(RS485_UART0,&ussend);
			RS485Send_Struct(RS485_UART2,&ussend);
			RS485Send_Struct(RS485_UART3,&ussend);
			RS485Send_Struct(RS485_UART4,&ussend);
#else			
 			
			
			
#endif
			//OSTimeDly(500);		
			OSTaskSuspend(OS_PRIO_SELF);                                    /*  The start task can be pended*/
                                                                        /*  here. ??????????  */			
		}
}