Other Parts Discussed in Thread: TMDSDOCK28335, UNIFLASH
Tool/software: TI-RTOS
Hi, I'm a new at TMS320F28335 .
I tried to experiment for MicroC/OS II in my F28335.
I downloaded MicroC/OS from my co-worker and apply it to F28335 using CCS.
everything was OK at that time.
But After I modified app.c file in MicroC/OS that I added JUST A ONE task to , The Machine hasn't work anymore (even hello.c)
I killed three F28335 in the same way.
Please help me . I hope to revive it.
----Added task----
OSTaskCreateExt(App_Task5,
(void *)0,
(CPU_STK *)&App_TaskAttestStk[0],
(INT8U )APP_CFG_TASK_Attest_PRIO,
(INT16U )APP_CFG_TASK_Attest_PRIO,
(CPU_STK *)&App_TaskAttestStk[APP_CFG_TASK_STK_SIZE - 1u],
(INT32U )APP_CFG_TASK_STK_SIZE,
(void *)0,
(INT16U )(OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR));
static void App_Task5 (void *p_arg)
{
(void)&p_arg;
MD5_CTX context;
MD5_CTX context1;
INT32U i = 0;
INT16U j = 0;
INT16U *base = 0x00300000;
unsigned int rand_num;
unsigned long order;
unsigned char out[16];
INT16U key=0x1234;
INT32U time;
//INT16U key;
while (DEF_TRUE) {
printf("App_Task5 Start\n");
//scanf("%x", &key);
time = OSTimeGet();
char check[128] = {0, };
MD5Init(&context);
i = 0;
j = 0;
prng_seed_bytes(&key, 1);
while(i < 128){
prng_get_bytes(&rand_num, 1);
//rand_num = prng_get_octet();
order = rand_num % 256;
//printf("%x, %u, %x, %d\n", rand_num, rand_num, order, order);
if(check[order] == 0)
{
//printf("%d\n", order);
check[order] = 1;
i++;
MD5Update(&context, base + order*0x800, 0x800);
}
j++;
}
MD5Final(out, &context);
time = OSTimeGet() - time;
for (i = 0; i < 16; i++)
printf ("%02x", out[i]);
printf("\n");
printf("execution time(ms) : %lu\n", time);
printf("j : %d\n",j);
printf("App_Task5 Finish\n");
OSTimeDlyHMSM(0, 0, 10, 0);
}
}
---error message ---
C28xx: Flash Programmer: Error encountered when writing to flash memory
C28xx: File Loader: Memory write failed: Unknown error
C28xx: GEL: File: C:\Users\Oh\Desktop\Micrium (2)\Micrium\Examples\TI\TMDSDOCK28335\OS2\CCS\Debug\OS2.out: Load failed.