Changeset 125 for uKadecot/trunk/src


Ignore:
Timestamp:
Jul 23, 2015, 3:21:02 PM (9 years ago)
Author:
coas-nagasima
Message:

ECHONET Lite規格に準拠していない動作を修正。
WebSocketの接続先URLを/webapi.ashxから/webapiに変更。
DHCPのリトライ処理が行われていなかったのを修正。
DHCPの有効/無効設定を追加し、固定IPアドレスを設定できるよう変更。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uKadecot/trunk/src/ukadecot/main.c

    r108 r125  
    6565
    6666uint8_t mac_addr[6] = { 0x12, 0x34, 0x56, 0x78, 0x9A, 0xB8 };
     67bool_t dhcp_enable = true;
    6768
    6869#define MAKER_CODE      0x00, 0x00, 0xB3        /* TOPPERSプロジェクト */
     
    339340                /* 応答電文待ちの割り込みの場合 */
    340341                else if (ret == E_BRK) {
    341                         ECN_FBS_ID msg = { (T_ECN_FST_BLK       *)esv };
     342                        ECN_FBS_ID msg = { (T_ECN_FST_BLK *)esv };
    342343                        bool_t rel_msg = true;
    343344                        switch (msg.ptr->hdr.type) {
     
    433434static void main_initialize()
    434435{
     436        extern u8_t my_ip[4];
     437        extern u8_t my_netmask[4];
     438        extern u8_t my_default_router[4];
    435439        uint8_t btn1, btn2;
    436440        uint8_t data[32], c;
     
    443447
    444448        ret = data_flash_init();
    445 
    446449        while(ret == E_OK){
    447450                ret = data_flash_read(0, data);
     
    452455                dflt_addr = false;
    453456                memcpy(mac_addr, data, sizeof(mac_addr));
     457                dhcp_enable = data[sizeof(mac_addr)] != 0;
     458                memcpy(my_ip, &data[sizeof(mac_addr) + 1], sizeof(my_ip));
     459                memcpy(my_netmask, &data[sizeof(mac_addr) + 5], sizeof(my_netmask));
     460                memcpy(my_default_router, &data[sizeof(mac_addr) + 9], sizeof(my_default_router));
    454461                break;
    455462        }
     
    464471        data[--j] = '\0';
    465472
    466         syslog(LOG_INFO, "mac_addr %s %s", data, dflt_addr ? "default" : "flash-rom");
     473        syslog(LOG_INFO, "mac_addr %s %s %s", data, dflt_addr ? "default" : "flash-rom", dhcp_enable ? "dhcp" : "static");
    467474
    468475        /* uIPを開始 */
Note: See TracChangeset for help on using the changeset viewer.