Changeset 364 for asp3_tinet_ecnl_rx/trunk/app6_hot_water_pot/src
- Timestamp:
- Feb 1, 2019, 9:57:09 PM (5 years ago)
- Location:
- asp3_tinet_ecnl_rx/trunk/app6_hot_water_pot/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
asp3_tinet_ecnl_rx/trunk/app6_hot_water_pot/src/echonet_main.c
r351 r364 318 318 } 319 319 320 bool_t started = false;321 322 320 void echonet_change_netif_link(uint8_t link_up, uint8_t up) 323 321 { … … 327 325 return; 328 326 329 if (up && !started) { 330 started = true; 331 332 /* ECHONETミドルウェアを起動 */ 333 ret = ecn_sta_svc(); 334 if (ret != E_OK) 335 return; 336 337 /* ECHONETミドルウェアを起動するのを待つ */ 338 dly_tsk(100); 327 if (up) { 328 /* インスタンスリスト通知の送信 */ 329 ret = ecn_ntf_inl(); 330 if (ret != E_OK) { 331 syslog(LOG_ERROR, "ecn_ntf_inl"); 332 } 339 333 } 340 334 … … 342 336 uint8_t data[2]; 343 337 data[0] = 0x01; 344 data[1] = up ? 0x01 : 0x02;345 338 ret = ecn_brk_wai(data, sizeof(data)); 346 339 if (ret != E_OK) { … … 351 344 352 345 enum main_state_t{ 346 main_state_start, 353 347 main_state_idle, 354 348 main_state_search, … … 357 351 358 352 int main_timer = TMO_FEVR; 359 enum main_state_t main_state = main_state_ idle;353 enum main_state_t main_state = main_state_start; 360 354 int main_retry; 361 355 … … 377 371 sil_wrb_mem((uint8_t *)0x0008C02A, 0x7F); 378 372 379 /* 1秒後にブザーを検索*/380 main_state = main_state_s earch;373 /* ECHONETミドルウェアを起動するのを待つ */ 374 main_state = main_state_start; 381 375 main_timer = 1000 * 1000; 382 376 … … 390 384 main_btn2_state = (btn2 & 0x80) != 0; 391 385 386 /* メインタスクを起動 */ 392 387 ER ret = act_tsk(MAIN_TASK); 393 388 if (ret != E_OK) { … … 557 552 558 553 switch(main_state){ 554 case main_state_start: 555 /* ECHONETミドルウェアを起動 */ 556 ret = ecn_sta_svc(); 557 if (ret != E_OK) { 558 syslog(LOG_ERROR, "ecn_sta_svc"); 559 } 560 561 /* 1秒後にブザーを検索 */ 562 main_state = main_state_search; 563 main_timer = 1000 * 1000; 564 break; 559 565 case main_state_idle: 560 566 syslog(LOG_ERROR, "timeout faild on main_state_idle"); -
asp3_tinet_ecnl_rx/trunk/app6_hot_water_pot/src/main.c
r359 r364 79 79 80 80 ID ws_api_mailboxid = MAIN_DATAQUEUE; 81 #ifndef NOUSE_MPF_NET_BUF 81 82 ID ws_mempoolid = MPF_NET_BUF_256; 83 #endif 82 84 83 85 #ifdef IF_ETHER_BTUSB … … 111 113 static void main_timeout(); 112 114 115 extern int ntshell_exit; 116 113 117 int uart_read(char *buf, int cnt, void *extobj) 114 118 { 115 return serial_rea_dat(SIO_PORTID, (char *)buf, cnt); 119 struct main_t *obj = (struct main_t *)extobj; 120 int result; 121 ER ret; 122 int timer; 123 124 obj->prev = obj->now; 125 126 /* タイマー取得 */ 127 timer = main_get_timer(); 128 129 /* 待ち */ 130 ret = serial_trea_dat(SIO_PORTID, buf, cnt, timer); 131 if ((ret < 0) && (ret != E_OK) && (ret != E_TMOUT)) { 132 syslog(LOG_NOTICE, "tslp_tsk ret: %s %d", itron_strerror(ret), timer); 133 ntshell_exit = 1; 134 return -1; 135 } 136 result = (int)ret; 137 138 ret = get_tim(&obj->now); 139 if (ret != E_OK) { 140 syslog(LOG_NOTICE, "get_tim ret: %s", itron_strerror(ret)); 141 ntshell_exit = 1; 142 return -1; 143 } 144 145 /* 時間経過 */ 146 int elapse = obj->now - obj->prev; 147 main_progress(elapse); 148 149 /* タイムアウト処理 */ 150 main_timeout(); 151 152 return result; 116 153 } 117 154 … … 119 156 { 120 157 return serial_wri_dat(SIO_PORTID, buf, cnt); 121 }122 123 unsigned char ntstdio_xi(struct ntstdio_t *handle)124 {125 char buf[1];126 if(serial_rea_dat(SIO_PORTID, buf, 1) != 1)127 return -EIO;128 return buf[0];129 }130 131 void ntstdio_xo(struct ntstdio_t *handle, unsigned char c)132 {133 char buf[1];134 buf[0] = c;135 serial_wri_dat(SIO_PORTID, buf, 1);136 158 } 137 159 … … 150 172 main_initialize(); 151 173 152 ntshell_init(&ntshell, uart_read, uart_write, cmd_execute, NULL);174 ntshell_init(&ntshell, uart_read, uart_write, cmd_execute, &main_obj); 153 175 ntshell_set_prompt(&ntshell, "NTShell>"); 154 176 ntshell_execute(&ntshell); … … 168 190 ER ret; 169 191 170 ntshell_task_init(); 192 #ifdef TOPPERS_OMIT_TECS 193 serial_opn_por(SIO_PORTID); 194 #endif 195 serial_ctl_por(SIO_PORTID, IOCTL_FCSND | IOCTL_FCRCV); 196 197 ntshell_task_init(uart_read, uart_write, &main_obj); 171 198 172 199 main_obj.timer = TMO_FEVR; -
asp3_tinet_ecnl_rx/trunk/app6_hot_water_pot/src/main.cfg
r342 r364 54 54 INCLUDE("tinet/tinet_asp.cfg"); 55 55 INCLUDE("tinet_main.cfg"); 56 INCLUDE("netinet/ip_igmp.cfg");57 56 58 57 /* DHCP クライアント */ … … 77 76 INCLUDE("ffarch.cfg"); 78 77 78 /* mbed */ 79 INCLUDE("mbed_api.cfg"); 80 79 81 #ifdef IF_ETHER_BTUSB 80 82 INCLUDE("usb_hbth.cfg");
Note:
See TracChangeset
for help on using the changeset viewer.