@@ -66,24 +66,54 @@ STATIC mp_obj_t wiznet5k_make_new(const mp_obj_type_t *type, size_t n_args, size
66
66
return wiznet5k_create (args [0 ], args [1 ], args [2 ]);
67
67
}
68
68
69
+ //| .. attribute:: connected
70
+ //|
71
+ //| is this device physically connected?
72
+ //|
73
+
69
74
STATIC mp_obj_t wiznet5k_connected_get_value (mp_obj_t self_in ) {
70
75
(void )self_in ;
71
76
return mp_obj_new_bool (wizphy_getphylink () == PHY_LINK_ON );
72
77
}
73
78
STATIC MP_DEFINE_CONST_FUN_OBJ_1 (wiznet5k_connected_get_value_obj , wiznet5k_connected_get_value );
74
79
75
- //| .. attribute:: connected
76
- //|
77
- //| is this device physically connected?
78
- //|
79
-
80
80
const mp_obj_property_t wiznet5k_connected_obj = {
81
81
.base .type = & mp_type_property ,
82
82
.proxy = {(mp_obj_t )& wiznet5k_connected_get_value_obj ,
83
83
(mp_obj_t )& mp_const_none_obj ,
84
84
(mp_obj_t )& mp_const_none_obj },
85
85
};
86
86
87
+ //| .. attribute:: dhcp
88
+ //|
89
+ //| is DHCP active on this device? (set to true to activate DHCP, false to turn it off)
90
+ //|
91
+
92
+ STATIC mp_obj_t wiznet5k_dhcp_get_value (mp_obj_t self_in ) {
93
+ (void )self_in ;
94
+ return mp_obj_new_bool (wiznet5k_check_dhcp ());
95
+ }
96
+
97
+ STATIC MP_DEFINE_CONST_FUN_OBJ_1 (wiznet5k_dhcp_get_value_obj , wiznet5k_dhcp_get_value );
98
+
99
+ STATIC mp_obj_t wiznet5k_dhcp_set_value (mp_obj_t self_in , mp_obj_t value ) {
100
+ (void )self_in ;
101
+ if (mp_obj_is_true (value )) {
102
+ wiznet5k_start_dhcp ();
103
+ } else {
104
+ wiznet5k_stop_dhcp ();
105
+ }
106
+ return mp_const_none ;
107
+ }
108
+ STATIC MP_DEFINE_CONST_FUN_OBJ_2 (wiznet5k_dhcp_set_value_obj , wiznet5k_dhcp_set_value );
109
+
110
+ const mp_obj_property_t wiznet5k_dhcp_obj = {
111
+ .base .type = & mp_type_property ,
112
+ .proxy = {(mp_obj_t )& wiznet5k_dhcp_get_value_obj ,
113
+ (mp_obj_t )& wiznet5k_dhcp_set_value_obj ,
114
+ (mp_obj_t )& mp_const_none_obj },
115
+ };
116
+
87
117
//| .. method:: ifconfig(...)
88
118
//|
89
119
//| Called without parameters, returns a tuple of
@@ -121,6 +151,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(wiznet5k_ifconfig_obj, 1, 2, wiznet5k
121
151
STATIC const mp_rom_map_elem_t wiznet5k_locals_dict_table [] = {
122
152
{ MP_ROM_QSTR (MP_QSTR_ifconfig ), MP_ROM_PTR (& wiznet5k_ifconfig_obj ) },
123
153
{ MP_ROM_QSTR (MP_QSTR_connected ), MP_ROM_PTR (& wiznet5k_connected_obj ) },
154
+ { MP_ROM_QSTR (MP_QSTR_dhcp ), MP_ROM_PTR (& wiznet5k_dhcp_obj ) },
124
155
};
125
156
126
157
STATIC MP_DEFINE_CONST_DICT (wiznet5k_locals_dict , wiznet5k_locals_dict_table );
0 commit comments