Exemple #1
0
int main(void)
{
	WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer
	uart_timer_configure();
	uart_init();
    _enable_interrupts();

    uart_puts("\n\r***************\n\r");
    uart_puts("MSP430 SunV2\n\r");
    uart_puts("***************\n\r\n\r");

    uint8_t c;

    // Timeshare between UART and dimming
    while(1) {
        if(uart_getc(&c)) {
            if(c == '\r') {
                 uart_putc('\n');
                 uart_putc('\r');
            } else {
                uart_putc('[');
                uart_putc(c);
                uart_putc(']');
            
                // Clear UART configuration
                _disable_interrupts();
                timer_deconfigure();
                uart_disable();
                uart_timerA_disable();
                switch (c)
                {
                    case 'w':
                        turnOn();
                        break;
                    case 's':
                        turnOff();
                        break;
                    case 'r':
                        remember();
                        break;
                    case 'd':
                        dimUp();
                        break;
                    case 'a':
                        dimDown();
                        break;
                }
                // UART configuration
                art_init();
                timer_deconfigure();
                uart_timer_configure();
                uart_timerA_enable();
                _enable_interrupts();
            }
        }
    }
}
Exemple #2
0
void	sys_init()
{
	char	*p,buf[LN_buf+1];
	char	t;
	time_t	e,s;

	ch.frug.called=0;
	ch.frug.monitor=1;
	ch.frug.esc=0;
	ch.fp=NULL;
	sys.rs=FALSE;
/*	ch.env=NULL;*/

/*	debug_start();*/
	ed_init();
	sion_init();
	nowvar=varinit(LN_str,MAX_var);
	sys.var=varinit(LN_str,MAX_var);
	sys.result=varinit(LN_result,MAX_var);

	strcpy(sys.home,".");
	op_system();
	if (sion_sr("config","system")==0)
		{
		 exit(1);
		}
	sion_read(sys.var);
	sion_sr("config","result");
	sion_read(sys.result);

	sion_close();

	sys.execute=atoi(getvar("execute",sys.var))+1;
	sys.logon  =atoi(getvar("logon",sys.var));
	sys.post   =atoi(getvar("post",sys.var));

	sys.t_logon=atoi(getvar("tdlogon",sys.var));
	sys.t_post =atoi(getvar("tdpost",sys.var));

	strjncpy(sys.netname,getvar("netname",sys.var),LN_title);
	strjncpy(sys.netid,getvar("netid",sys.var),LN_netid);
	strjncpy(sys.home ,getvar("home",sys.var),LN_dirs);
	strjncpy(sys.temp ,getvar("temp",sys.var),LN_dirs);
	pool.max=atoi(getvar("poolmax",sys.var));

	copyright();

	p=getvar("opentime",sys.var);
	tzset();	/* 時空関数がまだ現れていないので呼ぶ必要あり */

	if (p==NULL)
		{
		 sys.opentime=DT_daytime;
		 sys.starttime=0;
		}else
		{
		 p=pull(buf,p);
		 t=atoi(buf);
		 p=pull(buf,p);
		 s=(t*60+atoi(buf))*60;
		 p=pull(buf,p);
		 t=atoi(buf);
		 p=pull(buf,p);
		 e=(t*60+atoi(buf))*60;
/*dbprintf("s:%ld,e:%ld",s,e);*/
		 sys.opentime=e+(e<s?DT_daytime:0)-s;
		 sys.starttime=DT_daytime-s;
/*dbprintf("o:%ld,s:%ld",sys.opentime,sys.starttime);*/
		}

	stack_init();
	where_init();
	user_init();
	art_init();
	pool_init();

	sys.rs=rs_init();
/*	sys_log("●システム起動");*/
}