سلام دوستان .
من مدتیه درگیر یک پروژه هستم و یکسری اطلاعات رومی خوام بریزم تو فاش usb.تو این پروژه از کرنل RTX استفاده کردم. ولی یه جایی به یک مشکل اساسی خوردم اونم اینکه وقتی می خوام از دستورات flash-fs استفاده کنم سیستم هنگ می کنه. همین دستورات بدون کرنل کامل جواب میدن ولی وقتی تو تسک ها میارم هنگ می کنه سیستم. تعداد تسک ها و سایزشون رو هم بالا بردم نشد که نشد. مثلا در مثال زیر سیستم میاد و موقع رسیدن به دستور fopen هنگ میکنه!!
کد:
#include <RTL.h>
#include <rl_usb.h>

#include <stdio.h> 
#include <LPC177x_8x.h>
int i;
FILE *f;
#ifdef __cplusplus
extern "C" {
#endif
int __low_level_init(void); // Avoid "no ptototype" warning
#ifdef __cplusplus
 }
#endif
	 U32 retv;

int __low_level_init(void) {
	
 SystemCoreClockUpdate();  // Ensure, the SystemCoreClock is set

 return 1;
}
		__task void init(void);
  __task void usb_engine(void);
  __task void _rt(void); 
__task void init (void) { 
	usbh_engine_all();
	finit("U:");
	fformat("U:");
	while(1)
	{
		if(f==0)
		{
		
			f=fopen("test.txt","w");
			for (i=1;1000;i++) fprintf(f,"ok");
			fclose(f);
			
}
}
	}
int main (void) {

os_sys_init_prio(_rt,1); 

}

void usb_engine(void)
{
	while(1)
	{
	/*		usbh_engine_all();
		 os_dly_wait (20);*/

	}
}

void _rt(void)
{
os_tsk_create(init,1);
os_tsk_create(usb_engine,1);	/* Init RTX and start 'init'     */
		 //os_tsk_create(delayMs(uint8_t timer_num, uint32_t delayInMs),5);
 	os_tsk_delete_self();
}
دوستان اگه تا حالا با این مسیله مواجه شدن و راه حلی دارن ممنون می شم.