Exemple #1
0
void main(void)
{
	unsigned long int i;
	char str[18] ={0,};

	exp_memory_init();
	sci_init(SCI_NO_1, BitRate_type_br9600);
	sci_write_str(SCI_NO_1, "This is DRAM test!!\r\n");

	// 外部RAM確認
	*(short*)0x410000 = 0x5678;
	sci_write(SCI_NO_1, *(char*)(0x410000 + 0));
	sci_write(SCI_NO_1, *(char*)(0x410000 + 1));

	for(i = 0; i < 0x1FFFFF; i++)
	{
		*(char*)(0x400000 + i) = i % 0xFF;
	}

	for(i = 0; i < 0x1FFFFF; i++)
	{
		sci_write(SCI_NO_1, *(char*)(0x400000 + i));
	}

	while(1);
}
Exemple #2
0
void main_vec(softvec_type_t type, unsigned long sp)
{
	static char buf[32];
	static int i = 0;
	static char* entry_point;
	static void (*start)(void);
//	char str[32] = {0,};

	// 受信
	buf[i] = sci_read_byte_intr(SCI_NO_1);
	sci_write(SCI_NO_1, buf[i]);

	// スイッチ
	if(buf[i] == 0x0d)
	{

		buf[i] = '\0';

		if(!strncmp(buf, "dump", 4))
		{
//			getstring(str);
//			asciitobin(str, 4);

			for (i = 0; i < 128; i++)
				sci_write(SCI_NO_1, *((char*)0xffc520 + i));
		}
		else if(!strncmp(buf, "load", 4))
		{
			sci_write_str(SCI_NO_1, "  started!! XMODEM...\n\r");
			xmodem_start((char*)&buf_start);
			sci_write_str(SCI_NO_1, "  finish!! XMODEM\n\r");
			sci_write_str(SCI_NO_1, "    Transfer is Completed...\n\r");
		}
		else if(!strncmp(buf, "devlop", 6))
		{
			// RAM展開
			sci_write_str(SCI_NO_1, "  started!! devloping...\n\r");
			entry_point = elf_develop((char*) &buf_start);
			start = (void(*)(void)) entry_point;
			sci_write_str(SCI_NO_1, "  finish!! devloped...\n\r");
		}
		else if(!strncmp(buf, "start", 5))
		{
			// 開始
			start();
		}

		i = 0;
		sci_write_str(SCI_NO_1, "\n\rPINoC Console>_ ");
		return;
	}

	i++;
}
Exemple #3
0
void sci_puts(char *str)
{
	while(*str)
	{
		sci_write(*str++);
	}
}
Exemple #4
0
void main(void)
{
	char c;

	sci_init(SCI_NO_1, BitRate_type_br9600);

	sci_write(SCI_NO_1, 'A');
	sci_write_str(SCI_NO_1,"Hello world!!\n");

	while(1)
	{
		c = sci_read_byte(SCI_NO_1);
		sci_write(SCI_NO_1, c);
	}

}
int sci_puts(const char *data)
{
    const char *p;
    for (p = data; *p != '\0'; ++p) {
        ;
    }
    return sci_write(data, p - data);
}
Exemple #6
0
void sci_writen(char *buff, unsigned int n)
{
	unsigned int i;
	for(i = 0; i < n; ++i)
	{
		sci_write(buff[i]);
	}
}
Exemple #7
0
int16_t parse_cmd_ustream_test(char *cmd, char *output, uint16_t len)
{
  cs_low();
  sci_write(0x00, (1<<SM_TESTS)|(1<<SM_SDISHARE)|(1<<SM_STREAM)|(1<<SM_SDINEW));
  cs_high();

  vs1053_sinetest(120);
  return ECMD_FINAL_OK;
}
Exemple #8
0
 UINT32 com_send(unsigned char * buffer, UINT32 nLen)
{
	UINT32 i = 0;
	for(i = 0; i < nLen; i++)
	{
		sci_write(boot_uart_id, buffer[i]);
	}
	return  i ;
}
static void timer_handler(void)
{
    static int msec_counter = 0;
    static int sec_counter = 0;

    if (++msec_counter >= 1000) {
        char number_text;

        msec_counter = 0;
        ++sec_counter;
        if (sec_counter >= 10) {
            return;
        }

        number_text = '0' + sec_counter;
        sci_write(&number_text, 1);
        sci_write("\r\n", 2);
    }
}
Exemple #10
0
void sci_write_str(SCI_NO no,const char* _Str)
{
	volatile struct SCI* sci = regs[no].sci;

	while(*_Str)
	{
		sci_write(no, *_Str++);
	}

	// バッファの中身が全て送信されるまで待機
	while(!sci->SSR.BIT.TEND);
}
Exemple #11
0
UINT32 api_com_monitor()
{
	UINT8 i = 0;
	UINT8 ch = 0xff;
	UINT8 *comtest_command = "comtest";
	INT32 comtest_command_len = STRLEN(comtest_command) - 1;
	UINT8 sync = 0;
	UINT32 timeout = 1000;
	OSAL_T_CTSK t_ctsk;
	
	if (COM_MONITOR_CHECK_STBID &g_com_detect_flag)
	{
		i = 0;
		while(sci_read_tm(SCI_FOR_RS232, &ch, timeout) == SUCCESS)
		{
			if((i <= comtest_command_len) && (comtest_command[i] == ch))
			{
				timeout = 1000 * 100;
				sci_write(SCI_FOR_RS232, ch);
				i++;
				if (i > comtest_command_len) /* Is a comtest command string, wait for serial id trans */
				{					
					t_ctsk.stksz = 0x2000;
					t_ctsk.quantum = 10;
					t_ctsk.itskpri = OSAL_PRI_NORMAL;
					t_ctsk.name[0] = 'A';
					t_ctsk.name[1] = 'S';
					t_ctsk.name[2] = 'H';
					t_ctsk.task = (FP)lib_ash_shell;
					if(g_com_ash_id != OSAL_INVALID_ID)
					{
						osal_task_delete(g_com_ash_id);					
					}
					g_com_ash_id = osal_task_create(&t_ctsk);
					if (g_com_ash_id == OSAL_INVALID_ID)
						return 1;
					
					api_set_com_check_flag(COM_MONITOR_CHECK_PAUSE);
					break;
				}
			}
			else
				break;
		}
	}

	return 0;
}
Exemple #12
0
int main(void)
{
    const char message[] = "hello.\r\n";

    imask_initialize();
    clock_initialize();
    sci_initialize(INTERRUPT_PRIORITY_COMMUNICATION, 38400);
    set_imask_exr(0);

    sci_write(message, sizeof(message) - 1);
    sci_puts("start\r\n");

    while (1) {
        ;
    }
}
Exemple #13
0
int main(void)
{
    imask_initialize();
    clock_initialize();
    sci_initialize(INTERRUPT_PRIORITY_COMMUNICATION, 38400);
    timer_initialize(INTERRUPT_PRIORITY_TIMER);
    set_imask_exr(0);

    timer_set_interval_function(timer_handler);
    timer_start();

    sci_write("0\r\n", 3);

    while (1) {
        ;
    }
}
Exemple #14
0
void getstring(char* buf)
{

	int i;
	int cnt = 0;
	for (i = 0; i < 30; i++)
	{
		buf[cnt] = tolower(sci_read_byte(SCI_NO_1));
		sci_write(SCI_NO_1, buf[cnt]);

		if (buf[cnt] == 0x0d)
		{
			buf[cnt] = 0x00;
			break;
		}
		cnt++;
	}
}
Exemple #15
0
UINT32 com_send2back_tm(unsigned char * buffer, UINT32 nLen, UINT32 nTimeOut)
{
	UINT32 i;
	INT8 tmp;

	for(i=0;i<nLen;i++)
	{
		sci_write(p2p_uart_id, buffer[i]);

		if(sci_read_tm(p2p_uart_id, &tmp, nTimeOut * 1000)!=SUCCESS)
		{
			return !SUCCESS;
		}
		if(tmp!= buffer[i])
		{
			return !SUCCESS;
		}
	}
	return SUCCESS;
}
Exemple #16
0
/********************************************
TransmitTask - pends on the Transmit flag, when flag is posted
transmitts message typed.
uses: sci_write, sci_open, MessageCheckSum();
*********************************************/
static void TransmitTask(void *p_arg)
{
    INT8U err;
    INT8U var = 'M';
    INT8U sourcea = '1';
    INT8U sourceb = '1';
    INT8U sourcec = '7';
    INT8U send_message[16];
    INT8U counter = 0x00;
    INT8U checksum[2];
    (void)p_arg;
    sci_open();

    FOREVER()
    {
        OSSemPend(TransmitFlag, 0, &err);
        DBUG_PORT |= PP1;
        sci_write(var);
        sci_write(sourcea);
        sci_write(sourceb);
        sci_write(sourcec);
        GetMessage(&send_message);
        while(counter != 0x10)
        {
            sci_write(send_message[counter]);        
            counter++;
        }
        counter = 0x00;
        MessageCheckSum(&checksum,sourcea,sourceb,sourcec);
        sci_write(checksum[0]);
        sci_write(checksum[1]);
        DBUG_PORT &= ~PP1;
        
    }
      
}
Exemple #17
0
void charput(char c)
{
	sci_write(SCI_NO_1, c);
}