Skip to content

Commit 5a796dd

Browse files
committed
release packages for v1.12.6
1 parent 6ad787b commit 5a796dd

File tree

19 files changed

+526
-567
lines changed

19 files changed

+526
-567
lines changed

examples/mqtt/mqtt_subscribe.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import mqtt
2-
import PikaStdDevice
2+
import time
33

44
client = mqtt.MQTT('broker.emqx.io', port=1883,
55
clinetID='clientid', username='name_', password='passwd_')
@@ -38,7 +38,8 @@ def reconnect_mq(signal):
3838
client._fakeMsg("topic_pikapy_qos2", 2, "hello qos2")
3939

4040
# sleep wait for recv data
41-
T = PikaStdDevice.Time()
41+
# T = PikaStdDevice.Time()
42+
T = time
4243
# T.sleep_s(5)
4344

4445
out = client.listSubscribeTopic()

package/PikaStdDevice/pika_hal_table_rule.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@
7575
},
7676
#endif
7777

78+
7879
#if defined(PIKA_HAL_TABLE_PLATFORM_API)
7980
#define pika_hal_table_add(dev_name) \
8081
int pika_hal_platform_##dev_name##_open(pika_dev* dev, char* name); \

package/STM32/pika_hal_stm32_common.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
#include "pika_hal_stm32_common.h"
22

3+
#if !PIKASCRIPT_VERSION_REQUIRE_MINIMUN(1, 12, 6)
4+
#error pikascript-core and PikaStdLib version 1.12.6 or later is required.
5+
#endif
36

47
void mp_hal_gpio_clock_enable(GPIO_TypeDef *gpio) {
58
#if defined(STM32L476xx) || defined(STM32L496xx)

package/bluetooth/_bluetooth.c

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#include "_bluetooth_BLE.h"
2+
3+
int _bluetooth_BLE___init__(PikaObj* self) {
4+
pika_platform_printf("Init BLE\r\n");
5+
return 1;
6+
}
7+
8+
int _bluetooth_BLE_active(PikaObj* self) {
9+
pika_platform_printf("Active BLE\r\n");
10+
// esp_err_t ret = nvs_flash_init();
11+
// if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret ==
12+
// ESP_ERR_NVS_NEW_VERSION_FOUND) {
13+
// ESP_ERROR_CHECK(nvs_flash_erase());
14+
// ret = nvs_flash_init();
15+
// }
16+
// ESP_ERROR_CHECK(ret);
17+
18+
// ret = nimble_port_init();
19+
// if (ret != ESP_OK) {
20+
// printf("Failed to init nimble %d \n", ret);
21+
// return;
22+
// }
23+
return 0;
24+
}
25+
26+
int _bluetooth_BLE_test(PikaObj* self) {
27+
printf("test");
28+
return 0;
29+
}

package/bluetooth/_bluetooth.pyi

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
2+
class BLE:
3+
def __init__(self) -> int: ...
4+
5+
def test(self) -> int: ...
6+
7+
def active(self) -> int: ...
8+

package/bluetooth/bluetooth.py

Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
import _bluetooth
2+
# 需要额外注意类型转换
3+
4+
class BLE(_bluetooth.BLE):
5+
# last_adv_data = "" #广播内容
6+
# last_resp_data = "" #回应扫描内容
7+
# addr_mode = "" #地址类型
8+
# def __init__(self):
9+
# super().__init__()
10+
# pass
11+
12+
def test(self):
13+
pass
14+
15+
def active(self):
16+
# _bluetooth.BLE.active(self)
17+
# a = _bluetooth.BLE()
18+
# a.active()
19+
_ = super().active()
20+
# self.active()
21+
return print("bluetooth active")
22+
23+
# def config(self,param_name, /):
24+
# if(param_name=="mac"):
25+
# pass
26+
# elif(param_name=="addr_mode"):
27+
# pass
28+
# elif(param_name=="gap_name"):
29+
# pass
30+
# elif(param_name=="rxbuf"):
31+
# pass
32+
# elif(param_name=="mtu"):
33+
# pass
34+
# elif(param_name=="bond"):
35+
# pass
36+
# elif(param_name=="mitm"):
37+
# pass
38+
# elif(param_name=="io"):
39+
# pass
40+
# elif(param_name=="le_secire"):
41+
# pass
42+
# else:
43+
# print("there is not params")
44+
45+
# def config(self,*, mac,addr_mode,gap_name,rxbuf,mtu,bond,mitm,io,le_secire=False):
46+
# if gap_name != None:
47+
# super.config_name_update(gap_name)
48+
49+
# # TODO:如何进行事件处理函数
50+
# def irq():
51+
# pass
52+
53+
# """
54+
# interval_us:广告间隔时间, 为none则停止广播
55+
# adv_data: 包含在所有广播中, 是任何实现缓冲协议的类型(例如bytes, bytearray, str)
56+
# resp_data: 被发送以响应主动扫描, 是任何实现缓冲协议的类型(例如bytes, bytearray, str)
57+
58+
# """
59+
# def gap_advertise(self, interval_us, adv_data=None, *, resp_data=None, connectable=True):
60+
# # 停止广播
61+
# if interval_us is None:
62+
# return super.stop_advertise()
63+
64+
# if adv_data is None:
65+
# adv_data = self.last_adv_data
66+
# else :
67+
# self.last_adv_data = adv_data
68+
69+
# if resp_data is None:
70+
# resp_data = self.last_resp_data
71+
# else :
72+
# self.last_resp_data = resp_data
73+
74+
75+
# #TODO:active的作用是什么意思
76+
# """
77+
# 使用interval_us和window_us可选择配置占空比。扫描器将每interval_us微秒运行window_us 微秒,
78+
# 总共持续duration_ms毫秒。默认间隔和窗口分别为 1.28 秒和 11.25 毫秒(后台扫描)。
79+
# TODO:无法完全实现和micropython相同API
80+
# """
81+
# # def gap_scan(self, duration_ms, interval_us=1280000, window_us=11250, active=False, /):
82+
# # if duration_ms is None :
83+
# # super.gap_stop_scan()
84+
# # elif (duration_ms == 0):
85+
# # super.gap_scan_forever()
86+
# # else:
87+
# # super.gap_scan_forever()
88+
89+
# """
90+
# micropython:直接输入时间
91+
92+
# nimble: 按照单位算时间
93+
# duration:
94+
95+
# """
96+
# def gap_scan(self, duration_ms, interval_us=1280000, window_us=11250, active=False, /):
97+
# if duration_ms is None :
98+
# super.gap_stop_scan()
99+
# else:
100+
# duration = duration_ms / 10
101+
# super.gap_scan(duration_ms, interval_us, window_us, active)
102+
103+
# def gap_connect(self, addr_type, addr, scan_duration_ms=2000, /):
104+
# super.gap_connect(addr_type, addr,scan_duration_ms)
105+
# pass
106+
107+
# def gap_disconnect(self, conn_handle, /):
108+
# super.gap_disconnect()
109+
# pass
110+
111+
# def gatts_register_services(self, services_definition, /):
112+
# for service in services_definition:
113+
# service_uuid, characteristics = service
114+
115+
# print(f"Service UUID: {service_uuid}")
116+
117+
# # 遍历特征
118+
# for characteristic in characteristics:
119+
# char_uuid, flags = characteristic
120+
# print(f"Characteristic UUID: {char_uuid}")
121+
# print(f"Flags: {flags}")
122+
# super.register_a_service()
123+
124+
125+
# def gatts_read(value_handle, /):
126+
# pass
127+
128+
# def gatts_write(value_handle, data, send_update=False, /):
129+
# pass
130+
131+
# def gatts_notify(conn_handle, value_handle, data=None, /):
132+
# pass
133+
134+
# def gatts_indicate(conn_handle, value_handle, /):
135+
# pass
136+
137+
# def gatts_set_buffer(value_handle, len, append=False, /):
138+
# pass
139+
140+
# def gattc_discover_services(conn_handle, uuid=None, /):
141+
# pass
142+
143+
# def gattc_discover_characteristics(conn_handle, start_handle, end_handle, uuid=None, /):
144+
# pass
145+
146+
# def gattc_discover_descriptors(conn_handle, start_handle, end_handle, /):
147+
# pass
148+
149+
# def gattc_read(conn_handle, value_handle, /):
150+
# pass
151+
152+
# def gattc_write(conn_handle, value_handle, data, mode=0, /):
153+
# pass
154+
155+
# def gattc_exchange_mtu(conn_handle, /):
156+
# pass
157+

package/json/_json.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ Arg* json_encode_jsmn(jsmntok_t* t,
9191
break;
9292
}
9393
case JSMN_OBJECT: {
94-
PikaObj* ret = New_pikaDict();
94+
PikaObj* ret = New_PikaDict();
9595
int num_keys = t[*index].size;
9696
for (int i = 0; i < num_keys; i++) {
9797
(*index)++;

package/mqtt/_mqtt__MQTT.c

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -444,21 +444,15 @@ int _mqtt__MQTT_subscribe(PikaObj* self, char* topic, Arg* cb, int qos) {
444444
// __platform_printf("MQTT_subscribe Topic :%s Qos:%d OK\r\n",
445445
// topic,qos);
446446
if (cb != NULL) {
447-
char hash_str[32] = {0};
448-
memset(hash_str, 0, sizeof(hash_str));
449-
sprintf(hash_str, "C%d", hash_time33(topic_str));
450-
obj_newDirectObj(self, hash_str, New_TinyObj);
451-
PikaObj* eventHandler = obj_getPtr(self, hash_str);
452-
obj_setArg(eventHandler, "eventCallBack", cb);
453447
/* init event_listener for the first time */
454448
if (NULL == g_mqtt_event_listener) {
455449
pika_eventListener_init(&g_mqtt_event_listener);
456450
}
457451
uint32_t eventId = hash_time33(topic_str);
458452
// __platform_printf("hash_time33(topic_str):%d
459453
// \r\n",hash_time33(topic_str));
460-
pika_eventListener_registEvent(g_mqtt_event_listener, eventId,
461-
eventHandler);
454+
pika_eventListener_registEventCallback(g_mqtt_event_listener,
455+
eventId, cb);
462456
}
463457

464458
} else
@@ -561,8 +555,8 @@ int _mqtt__MQTT_setDisconnectHandler(PikaObj* self, Arg* cb) {
561555
// uint32_t eventId = hash_time33(topic_str);
562556
// __platform_printf("hash_time33(topic_str):%d
563557
// \r\n",hash_time33(topic_str));
564-
pika_eventListener_registEvent(g_mqtt_event_listener,
565-
MQTT_RECONNECTION_EVENT_ID, self);
558+
pika_eventListener_registEventHandler(g_mqtt_event_listener,
559+
MQTT_RECONNECTION_EVENT_ID, self);
566560

567561
return 0;
568562
}

package/pika_lua/_pika_lua.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,10 @@ Arg* _lua_val_to_arg(lua_State* L) {
5151
// 'key' is at index -2 and 'value' at index -1
5252
if (!get_list && !get_dict) {
5353
if (lua_isinteger(L, -2)) {
54-
ret = New_pikaList();
54+
ret = New_PikaList();
5555
get_list = PIKA_TRUE;
5656
} else {
57-
ret = New_pikaDict();
57+
ret = New_PikaDict();
5858
get_dict = PIKA_TRUE;
5959
}
6060
}

package/re/re-api-adapter.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -769,10 +769,10 @@ PikaObj* __findall(void* pattern__or__re,
769769
if (!vcs) {
770770
if (m_n < 0)
771771
return NULL;
772-
Any list = New_pikaList();
772+
Any list = New_PikaList();
773773
return list;
774774
}
775-
Any list = New_pikaList();
775+
Any list = New_PikaList();
776776
PikaTuple* tu;
777777
if (brackets == 1) {
778778
for (int i = 0; i < m_n; i++) {

0 commit comments

Comments
 (0)