diff --git a/docs/API_reference/en/cloudlib/README.md b/docs/API_reference/en/cloudlib/README.md index 521809f152333eb6e1c3bac70b57f94e563a30af..22cd6f6b43afcea27898222f7d14dc41e20ed8f2 100644 --- a/docs/API_reference/en/cloudlib/README.md +++ b/docs/API_reference/en/cloudlib/README.md @@ -1,8 +1,8 @@ -# QuecPython IoT Platform +# QuecPython IoT Connection -> The QuecPython IoT platform library includes the Lwm2m platform. +> The QuecPython IoT platform library includes the AWS library. -## QuecPython IoT Platform Library List +## QuecPython IoT Connection Library List -- [Lwm2m IoT Platform](./Lwm2m.md) +- [Aws - AWS IoT Core Connection](./aws.md) diff --git a/docs/API_reference/en/cloudlib/aws.md b/docs/API_reference/en/cloudlib/aws.md new file mode 100644 index 0000000000000000000000000000000000000000..d1bae4034f2afacf1ae813d85544b7f7cb4f5e3d --- /dev/null +++ b/docs/API_reference/en/cloudlib/aws.md @@ -0,0 +1,235 @@ +# Aws - AWS IoT Core Connection + +A client for connecting to AWS IoT Core, managing MQTT connections, and handling device shadows. + +## Constructor + +### `Aws` +```python +class Aws(client_id,server,port,keep_alive,ssl,ssl_params) +``` +**Parameters:** + +- `client_id` (str) - The unique identifier for the IoT Thing. +- `server` (str) - The AWS IoT Core endpoint. +- `port` (int) - The MQTT port (default 8883 for TLS, 1883 for non-TLS). +- `keep_alive` (int) - The keep-alive interval in seconds (default: 60). +- `ssl` (bool) - Whether to use SSL/TLS (default: False. If True, encription is enabled, so we have to provide ssl_params). +- `ssl_params` (dict) - SSL parameters for secure connection. + +**Example** + +```python +>>> # Create Aws object +>>> import aws +>>> aws = aws.Aws(client_id, server, port, keep_alive=60,ssl=True,ssl_params={"cert": +certificate_content,"key": private_content}) +``` + +## **MQTT Communication** + +Uses umqtt library methods to establish connection and communication with cloud. + +### `aws.connect` + +```python +connect() +``` +This method establishes a connection to AWS IoT Core. + +**Return Value:** + +None + +### `aws.disconnect` + +```python +disconnect() +``` +This method disconnects from AWS IoT Core. + +**Return Value:** + +None + +### `aws.subscribe` + +```python +subscribe(topic) +``` +Method for mqtt subscribing to a topic. + +**Parameters:** + +- `topic` (str) - The MQTT topic to subscribe to. + +**Return Value:** + +None + +### `aws.publish` + +```python +publish(topic, payload) +``` +Method for mqtt publishing to a topic. + +**Parameters:** + +- `topic` (str) - The MQTT topic to publish to. +- `payload` (dict) - The message payload. + +**Return Value:** + +None + +## **Shadow Device Management** + +### `aws.create_shadow` + +```python +create_shadow(shadow_name="", state="") +``` +**Parameters:** + +- `shadow_name` (str) - The name of the shadow (optional). +- `state` (dict) - The initial state of the shadow (optional). + +**Return Value:** + +None + +### `aws.update_shadow` + +```python +update_shadow(shadow_name="", state="") +``` +**Parameters:** + +- `shadow_name` (str) - The name of the shadow. +- `state` (dict) - The new state of the shadow. + +**Return Value:** + + None + +### `aws.get_shadow` + +```python +get_shadow(shadow_name="") +``` +**Parameters:** + +- `shadow_name` (str) - The name of the shadow. + +**Return Value:** + +The current shadow state. + +### `aws.delete_shadow` + +```python +delete_shadow(shadow_name="") +``` +**Parameters:** + +- `shadow_name` (str) - The name of the shadow. + +**Return Value:** + +None + +### `aws.connect_shadow` + +```python +connect_shadow(shadow_name="", topics=None) +``` +**Parameters:** + +- `shadow_name` (str) - The name of the shadow (optional). +- `topics` (list) - List of MQTT topics related to the shadow (optional). + +**Return Value:** + +None + +### `aws.set_callback` + +```python +set_callback(topic_name, callback) +``` +**Parameters:** + +- `topic_name` (str) - The MQTT topic for which the callback is set. +- `callback` (function) - The function to be executed when a message is received. Prototype: + + callback_function(msg) + - Callback function parameter: + + - `msg`: dictionary type message. Already converted from JSON string to dictionary format. + +**Return Value:** + +None + +## **Python Example** +```python +import usr.aws as aws +import modem +import ujson +import sim # Check if PIN verification is needed for your SIM card +import net + +# AWS IoT credentials +certificate_content = """ +-----BEGIN CERTIFICATE----- + +-----END CERTIFICATE----- +""" + +private_content = """ +-----BEGIN RSA PRIVATE KEY----- + +-----END RSA PRIVATE KEY----- +""" + +client_id = 'qpthing' +server = 'abgka7vzgjoa0-ats.iot.eu-west-3.amazonaws.com' +port = 8883 + +def aws_callback(data): + print("HELLO from 1234 topic callback") + +def shadow_callback_get(data): + print("HELLO from get accepted callback") + +def shadow_callback_update(data): + print("HELLO from update accepted callback") + +def shadow_callback_delta(data): + print("HELLO from update delta callback") + +# Create AWS object +aws_obj = aws.Aws(client_id, server, port, keep_alive=60, ssl=True, + ssl_params={"cert": certificate_content, "key": private_content}) +print("Created AWS object") + +# Connect to AWS IoT +aws_obj.connect() +print("Connected to AWS IoT") + +# Subscribe and publish +aws_obj.set_callback("1234", aws_callback) +aws_obj.subscribe("1234") +aws_obj.publish("7777", "Hello from QuecPython") +aws_obj.start() + +# Shadow operations +aws_obj.create_shadow() +aws_obj.connect_shadow() +aws_obj.set_callback("$aws/things/qpthing/shadow/get/accepted", shadow_callback_get) +aws_obj.set_callback("$aws/things/qpthing/shadow/update/accepted", shadow_callback_update) +aws_obj.set_callback("$aws/things/qpthing/shadow/update/delta", shadow_callback_delta) +aws_obj.get_shadow() +aws_obj.update_shadow(state={"state": {"reported": {"welcome": "change reported"}}}) +``` diff --git a/docs/API_reference/en/peripherals/machine.Pin.md b/docs/API_reference/en/peripherals/machine.Pin.md index 19c005c2583c445883d97c244f9539c4c7ef1a29..83dd50657e814caff82bf17fa3a3a9a0766115f5 100644 --- a/docs/API_reference/en/peripherals/machine.Pin.md +++ b/docs/API_reference/en/peripherals/machine.Pin.md @@ -29,16 +29,23 @@ gpio1.get_dir() ### `machine.Pin` -```python -class machine.Pin(GPIOn, direction, pullMode, level) -``` - -**Parameter:** - -- `GPIOn` - Integer type. GPIO number. Click here to view the mapping relationship between GPIO pin numbers and physical pins. -- `direction` - Integer type. I/O mode. `IN` - Input mode. `OUT` - Output mode. -- `pullMode` - Integer type. Pull selection mode. Descriptions are as follows:
PULL_DISABLE - Floating mode
PULL_PU - Pull-up mode
PULL_PD - Pull-down mode -- `level` - Integer type. Pin level. `0` - Set pin to low level. `1`- Set pin to high level. +
+
+
class machine.Pin(GPIOn, direction, pullMode, level)
+
+

参数描述:

+ +
**Example:** @@ -52,101 +59,2461 @@ class machine.Pin(GPIOn, direction, pullMode, level) > Description of GPIO corresponding pin numbers: GPIO pin numbers provided in the document correspond to external pin numbers of the module. For example, for EC100Y-CN module, GPIO1 corresponds to pin22, which is an external pin number of the module. See the provided hardware documents for external pin numbers of the module. -
- Pin Correspondences of EC100Y Series Module
-GPIO1 – Pin22
GPIO2 – Pin23
GPIO3 – Pin38
GPIO4 – Pin53
GPIO5 – Pin54
GPIO6 – Pin104
GPIO7 – Pin105
GPIO8 – Pin106
GPIO9 – Pin107
GPIO10 – Pin178
GPIO11 – Pin195
GPIO12 – Pin196
GPIO13 – Pin197
GPIO14 – Pin198
GPIO15 – Pin199
GPIO16 – Pin203
GPIO17 – Pin204
GPIO18 – Pin214
GPIO19 – Pin215
-
- -
- Pin Correspondences of EC600S/EC600N Series Module -GPIO1 – Pin10
GPIO2 – Pin11
GPIO3 – Pin12
GPIO4 – Pin13
GPIO5 – Pin14
GPIO6 – Pin15
GPIO7 – Pin16
GPIO8 – Pin39
GPIO9 – Pin40
GPIO10 – Pin48
GPIO11 – Pin58
GPIO12 – Pin59
GPIO13 – Pin60
GPIO14 – Pin61
GPIO15 – Pin62
GPIO16 – Pin63
GPIO17 – Pin69
GPIO18 – Pin70
GPIO19 – Pin1
GPIO20 – Pin3
GPIO21 – Pin49
GPIO22 – Pin50
GPIO23 – Pin51
GPIO24 – Pin52
GPIO25 – Pin53
GPIO26 – Pin54
GPIO27 – Pin55
GPIO28 – Pin56
GPIO29 – Pin57
GPIO30 – Pin2
GPIO31 – Pin66
GPIO32 – Pin65
GPIO33 – Pin67
GPIO34 – Pin64
GPIO35 – Pin4
GPIO36 – Pin31
GPIO37 – Pin32
GPIO38 – Pin33
GPIO39 – Pin34
GPIO40 – Pin71
GPIO41 – Pin72
-
- -
- Pin Correspondences of EC600M Series Module -GPIO1 – Pin10
GPIO2 – Pin11
GPIO3 – Pin12
GPIO4 – Pin13
GPIO5 – Pin14
GPIO6 – Pin15
GPIO7 – Pin16
GPIO8 – Pin39
GPIO9 – Pin40
GPIO10 – Pin48
GPIO11 – Pin58
GPIO12 – Pin59
GPIO13 – Pin60
GPIO14 – Pin61
GPIO15 – Pin62
GPIO16 – Pin63
GPIO17 – Pin69
GPIO18 – Pin70
GPIO19 – Pin1
GPIO20 – Pin3
GPIO21 – Pin49
GPIO22 – Pin50
GPIO23 – Pin51
GPIO24 – Pin52
GPIO25 – Pin53
GPIO26 – Pin54
GPIO27 – Pin55
GPIO28 – Pin56
GPIO29 – Pin57
GPIO30 – Pin2
GPIO31 – Pin66
GPIO32 – Pin65
GPIO33 – Pin67
GPIO34 – Pin64
GPIO35 – Pin4
GPIO36 – Pin31
GPIO37 – Pin32
GPIO38 – Pin33
GPIO39 – Pin34
GPIO40 – Pin71
GPIO41 – Pin72
GPIO42 – Pin109
GPIO43 – Pin110
GPIO44 – Pin112
GPIO45 – Pin111
-
-
- Pin Correspondences of EC600U Series Module -GPIO1 – Pin61 (It cannot be used together with GPIO31.)
GPIO2 – Pin58 (It cannot be used together with GPIO32.)
GPIO3 – Pin34 (It cannot be used together with GPIO41.)
GPIO4 – Pin60 (It cannot be used together with GPIO34.)
GPIO5 – Pin69 (It cannot be used together with GPIO35.)
GPIO6 – Pin70 (It cannot be used together with GPIO36.)
GPIO7 – Pin123 (It cannot be used together with GPIO43.)
GPIO8 – Pin118
GPIO9 – Pin9 (It cannot be used together with GPIO47.)
GPIO10 – Pin1 (It cannot be used together with GPIO37.)
GPIO11 – Pin4 (It cannot be used together with GPIO38.)
GPIO12 – Pin3 (It cannot be used together with GPIO39.)
GPIO13 – Pin2 (It cannot be used together with GPIO40.)
GPIO14 – Pin54
GPIO15 – Pin57
GPIO16 – Pin56
GPIO17 – Pin12
GPIO18 – Pin33 (It cannot be used together with GPIO42.)
GPIO19 – Pin124 (It cannot be used together with GPIO44.)
GPIO20 – Pin122 (It cannot be used together with GPIO45.)
GPIO21 – Pin121 (It cannot be used together with GPIO46.)
GPIO22 – Pin48
GPIO23 – Pin39
GPIO24 – Pin40
GPIO25 – Pin49
GPIO26 – Pin50
GPIO27 – Pin53
GPIO28 – Pin52
GPIO29 – Pin51
GPIO30 – Pin59 (It cannot be used together with GPIO33.)
GPIO31 – Pin66 (It cannot be used together with GPIO1.)
GPIO32 – Pin63 (It cannot be used together with GPIO2.)
GPIO33 – Pin67 (It cannot be used together with GPIO30.)
GPIO34 – Pin65 (It cannot be used together with GPIO4.)
GPIO35 – Pin137 (It cannot be used together with GPIO5.)
GPIO36 – Pin62 (It cannot be used together with GPIO6.)
GPIO37 – Pin98 (It cannot be used together with GPIO10.)
GPIO38 – Pin95 (It cannot be used together with GPIO11.)
GPIO39 – Pin119 (It cannot be used together with GPIO12.)
GPIO40 – Pin100 (It cannot be used together with GPIO13.)
GPIO41 – Pin120 (It cannot be used together with GPIO3.)
GPIO42 – Pin16 (It cannot be used together with GPIO18.)
GPIO43 – Pin10 (It cannot be used together with GPIO7.)
GPIO44 – Pin14 (It cannot be used together with GPIO19.)
GPIO45 – Pin15 (It cannot be used together with GPIO20.)
GPIO46 – Pin13 (It cannot be used together with GPIO21.)
GPIO47 – Pin99 (It cannot be used together with GPIO9.)
-
-
- Pin Correspondences of EC200U Series Module -GPIO1 – Pin27 (It cannot be used together with GPIO31.)
GPIO2 – Pin26 (It cannot be used together with GPIO32.)
GPIO3 – Pin24 (It cannot be used together with GPIO33.)
GPIO4 – Pin25 (It cannot be used together with GPIO34.)
GPIO5 – Pin13 (It cannot be used together with GPIO17.)
GPIO6 – Pin135 (It cannot be used together with GPIO36.)
GPIO7 – Pin136 (It cannot be used together with GPIO44.)
GPIO8 – Pin133
GPIO9 – Pin3 (It cannot be used together with GPIO37.)
GPIO10 – Pin40 (It cannot be used together with GPIO38.)
GPIO11 – Pin37 (It cannot be used together with GPIO39.)
GPIO12 – Pin38 (It cannot be used together with GPIO40.)
GPIO13 – Pin39 (It cannot be used together with GPIO41.)
GPIO14 – Pin5
GPIO15 – Pin141
GPIO16 – Pin142
GPIO17 – Pin121 (It cannot be used together with GPIO5.)
GPIO18 – Pin65 (It cannot be used together with GPIO42.)
GPIO19 – Pin64 (It cannot be used together with GPIO43.)
GPIO20 – Pin139 (It cannot be used together with GPIO45.)
GPIO21 – Pin126 (It cannot be used together with GPIO46.)
GPIO22 – Pin127 (It cannot be used together with GPIO47.)
GPIO23 – Pin33
GPIO24– Pin31
GPIO25 – Pin30
GPIO26 – Pin29
GPIO27 – Pin28
GPIO28 – Pin1
GPIO29 – Pin2
GPIO30 – Pin4
GPIO31 – Pin125 (It cannot be used together with GPIO1.)
GPIO32 – Pin124 (It cannot be used together with GPIO2.)
GPIO33 – Pin123 (It cannot be used together with GPIO3.)
GPIO34 – Pin122 (It cannot be used together with GPIO4.)
GPIO35 – Pin42
GPIO36 – Pin119 (It cannot be used together with GPIO6.)
GPIO37 – Pin134 (It cannot be used together with GPIO9.)
GPIO38– Pin132 (It cannot be used together with GPIO10.)
GPIO39 – Pin131 (It cannot be used together with GPIO11.)
GPIO40 – Pin130 (It cannot be used together with GPIO12.)
GPIO41 – Pin129 (It cannot be used together with GPIO13.)
GPIO42 – Pin61 (It cannot be used together with GPIO18.)
GPIO43 – Pin62 (It cannot be used together with GPIO19.)
GPIO44 – Pin63 (It cannot be used together with GPIO7.)
GPIO45 – Pin66 (It cannot be used together with GPIO20.)
GPIO46 – Pin6 (It cannot be used together with GPIO21.)
GPIO47 – Pin23 (It cannot be used together with GPIO22.)
-
-
- Pin Correspondences of EC200A/UC200A Series Module -GPIO1 – Pin27
GPIO2 – Pin26
GPIO3 – Pin24
GPIO4 – Pin25
GPIO5 – Pin5
GPIO6 – Pin135
GPIO7 – Pin136
GPIO8 – Pin68
GPIO9 – Pin3
GPIO10 – Pin40
GPIO11 – Pin37
GPIO12 – Pin38
GPIO13 – Pin39
GPIO14 – Pin67
GPIO15 – Pin13
GPIO18 – Pin65
GPIO19 – Pin64
GPIO20 – Pin139
GPIO22 – Pin127
GPIO27 – Pin28
GPIO28 – Pin1
GPIO29 – Pin2
GPIO30 – Pin4
GPIO35 – Pin42
GPIO36 – Pin119
GPIO43 – Pin62
GPIO44 – Pin63
GPIO45 – Pin66
GPIO46 – Pin6
GPIO47 – Pin23
-
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin22
GPIO2Pin23
GPIO3Pin38
GPIO4Pin53
GPIO5Pin54
GPIO6Pin104
GPIO7Pin105
GPIO8Pin106
GPIO9Pin107
GPIO10Pin178
GPIO11Pin195
GPIO12Pin196
GPIO13Pin197
GPIO14Pin198
GPIO15Pin199
GPIO16Pin203
GPIO17Pin204
GPIO18Pin214
GPIO19Pin215
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin10
GPIO2Pin11
GPIO3Pin12
GPIO4Pin13
GPIO5Pin14
GPIO6Pin15
GPIO7Pin16
GPIO8Pin39
GPIO9Pin40
GPIO10Pin48
GPIO11Pin58
GPIO12Pin59
GPIO13Pin60
GPIO14Pin61
GPIO15Pin62
GPIO16Pin63
GPIO17Pin69
GPIO18Pin70
GPIO19Pin1
GPIO20Pin3
GPIO21Pin49
GPIO22Pin50
GPIO23Pin51
GPIO24Pin52
GPIO25Pin53
GPIO26Pin54
GPIO27Pin55
GPIO28Pin56
GPIO29Pin57
GPIO30Pin2
GPIO31Pin66
GPIO32Pin65
GPIO33Pin67
GPIO34Pin64
GPIO35Pin4
GPIO36Pin31
GPIO37Pin32
GPIO38Pin33
GPIO39Pin34
GPIO40Pin71
GPIO41Pin72
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin10
GPIO2Pin11
GPIO3Pin12
GPIO4Pin13
GPIO5Pin14
GPIO6Pin15
GPIO7Pin16
GPIO8Pin39
GPIO9Pin40
GPIO10Pin48
GPIO11Pin58
GPIO12Pin59
GPIO13Pin60
GPIO14Pin61
GPIO15Pin62
GPIO16Pin63
GPIO17Pin69
GPIO18Pin70
GPIO19Pin1
GPIO20Pin3
GPIO21Pin49
GPIO22Pin50
GPIO23Pin51
GPIO24Pin52
GPIO25Pin53
GPIO26Pin54
GPIO27Pin55
GPIO28Pin56
GPIO29Pin57
GPIO30Pin2
GPIO31Pin66
GPIO32Pin65
GPIO33Pin67
GPIO34Pin64
GPIO35Pin4
GPIO36Pin31
GPIO37Pin32
GPIO38Pin33
GPIO39Pin34
GPIO40Pin71
GPIO41Pin72
GPIO42Pin109
GPIO43Pin110
GPIO44Pin112
GPIO45Pin111
-
- Pin Correspondences of EC800N Module -GPIO1 – Pin30
GPIO2 – Pin31
GPIO3 – Pin32
GPIO4 – Pin33
GPIO5 – Pin49
GPIO6 – Pin50
GPIO7 – Pin51
GPIO8 – Pin52
GPIO9 – Pin53
GPIO10 – Pin54
GPIO11 – Pin55
GPIO12 – Pin56
GPIO13 – Pin57
GPIO14 – Pin58
GPIO15 – Pin80
GPIO16 – Pin81
GPIO17 – Pin76
GPIO18 – Pin77
GPIO19 – Pin82
GPIO20 – Pin83
GPIO21 – Pin86
GPIO22 – Pin87
GPIO23 – Pin66
GPIO24 – Pin67
GPIO25 – Pin17
GPIO26 – Pin18
GPIO27 – Pin19
GPIO28 – Pin20
GPIO29 – Pin21
GPIO30 – Pin22
GPIO31 – Pin23
GPIO32 – Pin28
GPIO33 – Pin29
GPIO34 – Pin38
GPIO35 – Pin39
GPIO36 – Pin16
GPIO37 – Pin78
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin61 (It cannot be used together with GPIO31.)
GPIO2Pin58 (It cannot be used together with GPIO32.)
GPIO3Pin34 (It cannot be used together with GPIO41.)
GPIO4Pin60 (It cannot be used together with GPIO34.)
GPIO5Pin69 (It cannot be used together with GPIO35.)
GPIO6Pin70 (It cannot be used together with GPIO36.)
GPIO7Pin123 (It cannot be used together with GPIO43.)
GPIO8Pin118
GPIO9Pin9 (It cannot be used together with GPIO47.)
GPIO10Pin1 (It cannot be used together with GPIO37.)
GPIO11Pin4 (It cannot be used together with GPIO38.)
GPIO12Pin3 (It cannot be used together with GPIO39.)
GPIO13Pin2 (It cannot be used together with GPIO40.)
GPIO14Pin54
GPIO15Pin57
GPIO16Pin56
GPIO17Pin12
GPIO18Pin33 (It cannot be used together with GPIO42.)
GPIO19Pin124 (It cannot be used together with GPIO44.)
GPIO20Pin122 (It cannot be used together with GPIO45.)
GPIO21Pin121 (It cannot be used together with GPIO46.)
GPIO22Pin48
GPIO23Pin39
GPIO24Pin40
GPIO25Pin49
GPIO26Pin50
GPIO27Pin53
GPIO28Pin52
GPIO29Pin51
GPIO30Pin59 (It cannot be used together with GPIO33.)
GPIO31Pin66 (It cannot be used together with GPIO1.)
GPIO32Pin63 (It cannot be used together with GPIO2.)
GPIO33Pin67 (It cannot be used together with GPIO30.)
GPIO34Pin65 (It cannot be used together with GPIO4.)
GPIO35Pin137 (It cannot be used together with GPIO5.)
GPIO36Pin62 (It cannot be used together with GPIO6.)
GPIO37Pin98 (It cannot be used together with GPIO10.)
GPIO38Pin95 (It cannot be used together with GPIO11.)
GPIO39Pin119 (It cannot be used together with GPIO12.)
GPIO40Pin100 (It cannot be used together with GPIO13.)
GPIO41Pin120 (It cannot be used together with GPIO3.)
GPIO42Pin16 (It cannot be used together with GPIO18.)
GPIO43Pin10 (It cannot be used together with GPIO7.)
GPIO44Pin14 (It cannot be used together with GPIO19.)
GPIO45Pin15 (It cannot be used together with GPIO20.)
GPIO46Pin13 (It cannot be used together with GPIO21.)
GPIO47Pin99 (It cannot be used together with GPIO9.)
-
- Pin Correspondences of BC25 Series Module -GPIO1 – Pin3
GPIO2 – Pin4
GPIO3 – Pin5
GPIO4 – Pin6
GPIO5 – Pin16
GPIO6 – Pin20
GPIO7 – Pin21
GPIO8 – Pin22
GPIO9 – Pin23
GPIO10 – Pin25
GPIO11 – Pin28
GPIO12 – Pin29
GPIO13 – Pin30
GPIO14 – Pin31
GPIO15 – Pin32
GPIO16 – Pin33
GPIO17 – Pin2
GPIO18 – Pin8
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin27 (It cannot be used together with GPIO31.)
GPIO2Pin26 (It cannot be used together with GPIO32.)
GPIO3Pin24 (It cannot be used together with GPIO33.)
GPIO4Pin25 (It cannot be used together with GPIO34.)
GPIO5Pin13 (It cannot be used together with GPIO17.)
GPIO6Pin135 (It cannot be used together with GPIO36.)
GPIO7Pin136 (It cannot be used together with GPIO44.)
GPIO8Pin133
GPIO9Pin3 (It cannot be used together with GPIO37.)
GPIO10Pin40 (It cannot be used together with GPIO38.)
GPIO11Pin37 (It cannot be used together with GPIO39.)
GPIO12Pin38 (It cannot be used together with GPIO40.)
GPIO13Pin39 (It cannot be used together with GPIO41.)
GPIO14Pin5
GPIO15Pin141
GPIO16Pin142
GPIO17Pin121 (It cannot be used together with GPIO5.)
GPIO18Pin65 (It cannot be used together with GPIO42.)
GPIO19Pin64 (It cannot be used together with GPIO43.)
GPIO20Pin139 (It cannot be used together with GPIO45.)
GPIO21Pin126 (It cannot be used together with GPIO46.)
GPIO22Pin127 (It cannot be used together with GPIO47.)
GPIO23Pin33
GPIO24Pin31
GPIO25Pin30
GPIO26Pin29
GPIO27Pin28
GPIO28Pin1
GPIO29Pin2
GPIO30Pin4
GPIO31Pin125 (It cannot be used together with GPIO1.)
GPIO32Pin124 (It cannot be used together with GPIO2.)
GPIO33Pin123 (It cannot be used together with GPIO3.)
GPIO34Pin122 (It cannot be used together with GPIO4.)
GPIO35Pin42
GPIO36Pin119 (It cannot be used together with GPIO6.)
GPIO37Pin134 (It cannot be used together with GPIO9.)
GPIO38Pin132 (It cannot be used together with GPIO10.)
GPIO39Pin131 (It cannot be used together with GPIO11.)
GPIO40Pin130 (It cannot be used together with GPIO12.)
GPIO41Pin129 (It cannot be used together with GPIO13.)
GPIO42Pin61 (It cannot be used together with GPIO18.)
GPIO43Pin62 (It cannot be used together with GPIO19.)
GPIO44Pin63 (It cannot be used together with GPIO7.)
GPIO45Pin66 (It cannot be used together with GPIO20.)
GPIO46Pin6 (It cannot be used together with GPIO21.)
GPIO47Pin23 (It cannot be used together with GPIO22.)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin27
GPIO2Pin26
GPIO3Pin24
GPIO4Pin25
GPIO5Pin5
GPIO6Pin135
GPIO7Pin136
GPIO8Pin68
GPIO9Pin3
GPIO10Pin40
GPIO11Pin37
GPIO12Pin38
GPIO13Pin39
GPIO14Pin67
GPIO15Pin13
GPIO18Pin65
GPIO19Pin64
GPIO20Pin139
GPIO22Pin127
GPIO27Pin28
GPIO28Pin1
GPIO29Pin2
GPIO30Pin4
GPIO35Pin42
GPIO36Pin119
GPIO43Pin62
GPIO44Pin63
GPIO45Pin66
GPIO46Pin6
GPIO47Pin23
-
- Pin Correspondences of BG95 Module -GPIO1 – Pin4
GPIO2 – Pin5
GPIO3 – Pin6
GPIO4 – Pin7
GPIO5 – Pin18
GPIO6 – Pin19
GPIO7 – Pin22
GPIO8 – Pin23
GPIO9 – Pin25
GPIO10 – Pin26
GPIO11 – Pin27
GPIO12 – Pin28
GPIO13 – Pin40
GPIO14 – Pin41
GPIO15 – Pin64
GPIO16 – Pin65
GPIO17 – Pin66
GPIO18 – Pin85
GPIO19 – Pin86
GPIO20 – Pin87
GPIO21 – Pin88
GPIO22 – Pin20
GPIO23 – Pin21
GPIO24 – Pin30
GPIO25 – Pin34
GPIO26 – Pin35
GPIO27 – Pin36
GPIO28 – Pin37
GPIO29 – Pin38
GPIO30 – Pin39 -
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin30
GPIO2Pin31
GPIO3Pin32
GPIO4Pin33
GPIO5Pin49
GPIO6Pin50
GPIO7Pin51
GPIO8Pin52
GPIO9Pin53
GPIO10Pin54
GPIO11Pin55
GPIO12Pin56
GPIO13Pin57
GPIO14Pin58
GPIO15Pin80
GPIO16Pin81
GPIO17Pin76
GPIO18Pin77
GPIO19Pin82
GPIO20Pin83
GPIO21Pin86
GPIO22Pin87
GPIO23Pin66
GPIO24Pin67
GPIO25Pin17
GPIO26Pin18
GPIO27Pin19
GPIO28Pin20
GPIO29Pin21
GPIO30Pin22
GPIO31Pin23
GPIO32Pin28
GPIO33Pin29
GPIO34Pin38
GPIO35Pin39
GPIO36Pin16
GPIO37Pin78
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin3
GPIO2Pin4
GPIO3Pin5
GPIO4Pin6
GPIO5Pin16
GPIO6Pin20
GPIO7Pin21
GPIO8Pin22
GPIO9Pin23
GPIO10Pin25
GPIO11Pin28
GPIO12Pin29
GPIO13Pin30
GPIO14Pin31
GPIO15Pin32
GPIO16Pin33
GPIO17Pin2
GPIO18Pin8
-
- Pin Correspondences of EG915U Series Module -GPIO1 – Pin4 (It cannot be used together with GPIO41.)
GPIO2 – Pin5 (It cannot be used together with GPIO36.)
GPIO3 – Pin6 (It cannot be used together with GPIO35.)
GPIO4 – Pin7 (It cannot be used together with GPIO24.)
GPIO5 – Pin18
GPIO6 – Pin19
GPIO7 – Pin1 (It cannot be used together with GPIO37.)
GPIO8 – Pin38
GPIO9 – Pin25
GPIO10 – Pin26
GPIO11 – Pin27 (It cannot be used together with GPIO32.)
GPIO12 – Pin28 (It cannot be used together with GPIO31.)
GPIO13 – Pin40
GPIO14 – Pin41
GPIO15 – Pin64
GPIO16 – Pin20 (It cannot be used together with GPIO30.)
GPIO17 – Pin21
GPIO18 – Pin85 (It cannot be reused when using the dual-SIM standby function.)
GPIO19 – Pin86 (It cannot be reused when using the dual-SIM standby function.)
GPIO20 – Pin30
GPIO21 – Pin88
GPIO22 – Pin36 (It cannot be used together with GPIO40.)
GPIO23 – Pin37 (It cannot be used together with GPIO38.)
GPIO24 – Pin16 (It cannot be used together with GPIO4.)
GPIO25 – Pin39
GPIO26 – Pin42 (It cannot be used together with GPIO27.)
GPIO27 – Pin78 (It cannot be used together with GPIO26.)
GPIO28 – Pin83 (It cannot be used together with GPIO33.)
GPIO29 – Pin84 (It cannot be reused when using the dual-SIM standby function.)
GPIO30 – Pin92 (It cannot be used together with GPIO16.)
GPIO31 – Pin95 (It cannot be used together with GPIO12.)
GPIO32 – Pin97 (It cannot be used together with GPIO11.)
GPIO33 – Pin98 (It cannot be used together with GPIO28.)
GPIO34 – Pin104
GPIO35 – Pin105 (It cannot be used together with GPIO3.)
GPIO36 – Pin106 (It cannot be used together with GPIO2.)
GPIO37 – Pin108 (It cannot be used together with GPIO4.)
GPIO38 – Pin111 (It cannot be used together with GPIO23.)
GPIO39 – Pin114
GPIO40 – Pin115 (It cannot be used together with GPIO22.)
GPIO41 – Pin116 (It cannot be used together with GPIO1.)
-
-
- Pin Correspondences of EC800M/EG810M Module -GPIO1 – Pin30
GPIO2 – Pin31
GPIO3 – Pin32
GPIO4 – Pin33
GPIO5 – Pin49
GPIO6 – Pin50
GPIO7 – Pin51
GPIO8 – Pin52
GPIO9 – Pin53
GPIO10 – Pin54
GPIO11 – Pin55
GPIO12 – Pin56
GPIO13 – Pin57
GPIO14 – Pin58
GPIO15 – Pin80
GPIO16 – Pin81
GPIO17 – Pin76
GPIO18 – Pin77
GPIO19 – Pin82
GPIO20 – Pin83
GPIO21 – Pin86(EG810M_EU unsupported)
GPIO22 – Pin87(EG810M_EU unsupported)
GPIO23 – Pin66
GPIO24 – Pin67
GPIO25 – Pin17
GPIO26 – Pin18
GPIO27 – Pin19
GPIO28 – Pin20
GPIO29 – Pin21
GPIO30 – Pin22
GPIO31 – Pin23
GPIO32 – Pin28
GPIO33 – Pin29
GPIO34 – Pin38
GPIO35 – Pin39
GPIO36 – Pin16
GPIO37 – Pin78
GPIO38 – Pin68
GPIO39 – Pin69
GPIO40 – Pin74
GPIO41 – Pin75
GPIO42 – Pin84(EG810M_EU unsupported)
GPIO43 – Pin85(EG810M_EU unsupported)
GPIO44 – Pin25
GPIO45 – Pin105
GPIO46 – Pin104
GPIO47 – Pin79
-
-
- Pin Correspondences of EG912N Module -GPIO1 – Pin4
GPIO2 – Pin5
GPIO3 – Pin6
GPIO4 – Pin7
GPIO5 – Pin18
GPIO6 – Pin19
GPIO7 – Pin1
GPIO8 – Pin16
GPIO9 – Pin25
GPIO10 – Pin26
GPIO11 – Pin27
GPIO12 – Pin28
GPIO13 – Pin40
GPIO14 – Pin41
GPIO15 – Pin64
GPIO16 – Pin20
GPIO17 – Pin21
GPIO18 – Pin30
GPIO19 – Pin34
GPIO20 – Pin35
GPIO21 – Pin36
GPIO22 – Pin37
GPIO23 – Pin38
GPIO24 – Pin39
GPIO25 – Pin42
GPIO26 – Pin78
GPIO27 – Pin83
GPIO28 – Pin92
GPIO29 – Pin95
GPIO30 – Pin96
GPIO31 – Pin97
GPIO32 – Pin98
GPIO33 – Pin103
GPIO34 – Pin104
GPIO35 – Pin105
GPIO36 – Pin106
GPIO37 – Pin107
GPIO38 – Pin114
GPIO39 – Pin115
GPIO40 – Pin116 -
-
- Pin Correspondences of EG912U Module -GPIO1 – Pin4(It cannot be used together with GPIO40)
GPIO2 – Pin5(It cannot be used together with GPIO36)
GPIO3 – Pin6(It cannot be used together with GPIO35)
GPIO4 – Pin7(It cannot be used together with GPIO8)
GPIO5 – Pin18
GPIO6 – Pin19
GPIO7 – Pin1(It cannot be used together with GPIO19)
GPIO8 – Pin16(It cannot be used together with GPIO4)
GPIO10 – Pin26(EG912UGuLAA unsupported)
GPIO11 – Pin27(It cannot be used together with GPIO31)
GPIO12 – Pin28(It cannot be used together with GPIO29)
GPIO13 – Pin40
GPIO14 – Pin41
GPIO15 – Pin64(EG912UGLAA unsupported)
GPIO16 – Pin20(It cannot be used together with GPIO28)
GPIO17 – Pin21
GPIO18 – Pin30
GPIO19 – Pin108(It cannot be used together with GPIO7)
GPIO20 – Pin88(EG912UGLAA unsupported)
GPIO21 – Pin36(It cannot be used together with GPIO39)
GPIO22 – Pin37(It cannot be used together with GPIO30)
GPIO23 – Pin38
GPIO24 – Pin39
GPIO25 – Pin42(It cannot be used together with GPIO26)
GPIO26 – Pin78(It cannot be used together with GPIO25)
GPIO27 – Pin83(It cannot be used together with GPIO32)
GPIO28 – Pin92(It cannot be used together with GPIO16)
GPIO29 – Pin95(It cannot be used together with GPIO12)
GPIO30 – Pin111(It cannot be used together with GPIO22)
GPIO31 – Pin97(It cannot be used together with GPIO11)
GPIO32 – Pin98(It cannot be used together with GPIO27)
GPIO34 – Pin104
GPIO35 – Pin105(It cannot be used together with GPIO3)
GPIO36 – Pin106(It cannot be used together with GPIO2)
GPIO38 – Pin114
GPIO39 – Pin115(It cannot be used together with GPIO21)
GPIO40 – Pin116(It cannot be used together with GPIO1) -
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin4
GPIO2Pin5
GPIO3Pin6
GPIO4Pin7
GPIO5Pin18
GPIO6Pin19
GPIO7Pin22
GPIO8Pin23
GPIO9Pin25
GPIO10Pin26
GPIO11Pin27
GPIO12Pin28
GPIO13Pin40
GPIO14Pin41
GPIO15Pin64
GPIO16Pin65
GPIO17Pin66
GPIO18Pin85
GPIO19Pin86
GPIO20Pin87
GPIO21Pin88
GPIO22Pin20
GPIO23Pin21
GPIO24Pin30
GPIO25Pin34
GPIO26Pin35
GPIO27Pin36
GPIO28Pin37
GPIO29Pin38
GPIO30Pin39
-
- Pin Correspondences of FCM362K Module -Pin6
Pin7
Pin8
Pin9
Pin14
Pin15
Pin16
Pin27
Pin28
Pin29
Pin30
Pin31
Pin34
Pin35
Pin37 -
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin4 (It cannot be used together with GPIO41.)
GPIO2Pin5 (It cannot be used together with GPIO36.)
GPIO3Pin6 (It cannot be used together with GPIO35.)
GPIO4Pin7 (It cannot be used together with GPIO24.)
GPIO5Pin18
GPIO6Pin19
GPIO7Pin1 (It cannot be used together with GPIO37.)
GPIO8Pin38
GPIO9Pin25
GPIO10Pin26
GPIO11Pin27 (It cannot be used together with GPIO32.)
GPIO12Pin28 (It cannot be used together with GPIO31.)
GPIO13Pin40
GPIO14Pin41
GPIO15Pin64
GPIO16Pin20 (It cannot be used together with GPIO30.)
GPIO17Pin21
GPIO18Pin85 (It cannot be reused when using the dual-SIM standby function.)
GPIO19Pin86 (It cannot be reused when using the dual-SIM standby function.)
GPIO20Pin30
GPIO21Pin88
GPIO22Pin36 (It cannot be used together with GPIO40.)
GPIO23Pin37 (It cannot be used together with GPIO38.)
GPIO24Pin16 (It cannot be used together with GPIO4.)
GPIO25Pin39
GPIO26Pin42 (It cannot be used together with GPIO27.)
GPIO27Pin78 (It cannot be used together with GPIO26.)
GPIO28Pin83 (It cannot be used together with GPIO33.)
GPIO29Pin84 (It cannot be reused when using the dual-SIM standby function.)
GPIO30Pin92 (It cannot be used together with GPIO16.)
GPIO31Pin95 (It cannot be used together with GPIO12.)
GPIO32Pin97 (It cannot be used together with GPIO11.)
GPIO33Pin98 (It cannot be used together with GPIO28.)
GPIO34Pin104
GPIO35Pin105 (It cannot be used together with GPIO3.)
GPIO36Pin106 (It cannot be used together with GPIO2.)
GPIO37Pin108 (It cannot be used together with GPIO4.)
GPIO38Pin111 (It cannot be used together with GPIO23.)
GPIO39Pin114
GPIO40Pin115 (It cannot be used together with GPIO22.)
GPIO41Pin116 (It cannot be used together with GPIO1.)
-
- Pin Correspondences of FCM360W Module -Pin6
Pin7
Pin8
Pin9
Pin10
Pin12
Pin13
Pin14
Pin15
Pin16
Pin19
Pin20
Pin21
Pin22
Pin23
Pin29
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin30
GPIO2Pin31
GPIO3Pin32
GPIO4Pin33
GPIO5Pin49
GPIO6Pin50
GPIO7Pin51
GPIO8Pin52
GPIO9Pin53
GPIO10Pin54
GPIO11Pin55
GPIO12Pin56
GPIO13Pin57
GPIO14Pin58
GPIO15Pin80
GPIO16Pin81
GPIO17Pin76
GPIO18Pin77
GPIO19Pin82
GPIO20Pin83
GPIO21Pin86(EG810M_EU不支持)
GPIO22Pin87(EG810M_EU不支持)
GPIO23Pin66
GPIO24Pin67
GPIO25Pin17
GPIO26Pin18
GPIO27Pin19
GPIO28Pin20
GPIO29Pin21
GPIO30Pin22
GPIO31Pin23
GPIO32Pin28
GPIO33Pin29
GPIO34Pin38
GPIO35Pin39
GPIO36Pin16
GPIO37Pin78
GPIO38Pin68
GPIO39Pin69
GPIO40Pin74
GPIO41Pin75
GPIO42Pin84(EG810M_EU unsupported)
GPIO43Pin85(EG810M_EU unsupported)
GPIO44Pin25
GPIO45Pin105
GPIO46Pin104
GPIO47Pin79
-
- Pin Correspondences of BC32 Module -GPIO1 – Pin12
GPIO2 – Pin13
GPIO3 – Pin41
GPIO4 – Pin42
GPIO5 – Pin21
GPIO6 – Pin22
GPIO7 – Pin23
GPIO8 – Pin24
GPIO9 – Pin26
GPIO10 – Pin43
GPIO11 – Pin44 -
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin4
GPIO2Pin5
GPIO3Pin6
GPIO4Pin7
GPIO5Pin18
GPIO6Pin19
GPIO7Pin1
GPIO8Pin16
GPIO9Pin25
GPIO10Pin26
GPIO11Pin27
GPIO12Pin28
GPIO13Pin40
GPIO14Pin41
GPIO15Pin64
GPIO16Pin20
GPIO17Pin21
GPIO18Pin30
GPIO19Pin34
GPIO20Pin35
GPIO21Pin36
GPIO22Pin37
GPIO23Pin38
GPIO24Pin39
GPIO25Pin42
GPIO26Pin78
GPIO27Pin83
GPIO28Pin92
GPIO29Pin95
GPIO30Pin96
GPIO31Pin97
GPIO32Pin98
GPIO33Pin103
GPIO34Pin104
GPIO35Pin105
GPIO36Pin106
GPIO37Pin107
GPIO38Pin114
GPIO39Pin115
GPIO40Pin116
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin4(It cannot be used together with GPIO40)
GPIO2Pin5(It cannot be used together with GPIO36)
GPIO3Pin6(It cannot be used together with GPIO35)
GPIO4Pin7(It cannot be used together with GPIO8)
GPIO5Pin18
GPIO6Pin19
GPIO7Pin1(It cannot be used together with GPIO19)
GPIO8Pin16(It cannot be used together with GPIO4)
GPIO10Pin26(EG912UGuLAA unsupported)
GPIO11Pin27(It cannot be used together with GPIO31)
GPIO12Pin28(It cannot be used together with GPIO29)
GPIO13Pin40
GPIO14Pin41
GPIO15Pin64(EG912UGLAA unsupported)
GPIO16Pin20(It cannot be used together with GPIO28)
GPIO17Pin21
GPIO18Pin30
GPIO19Pin108(It cannot be used together with GPIO7)
GPIO20Pin88(EG912UGLAA unsupported)
GPIO21Pin36(It cannot be used together with GPIO39)
GPIO22Pin37(It cannot be used together with GPIO30)
GPIO23Pin38
GPIO24Pin39
GPIO25Pin42(It cannot be used together with GPIO26)
GPIO26Pin78(It cannot be used together with GPIO25)
GPIO27Pin83(It cannot be used together with GPIO32)
GPIO28Pin92(It cannot be used together with GPIO16)
GPIO29Pin95(It cannot be used together with GPIO12)
GPIO30Pin111(It cannot be used together with GPIO22)
GPIO31Pin97(It cannot be used together with GPIO11)
GPIO32Pin98(It cannot be used together with GPIO27)
GPIO34Pin104
GPIO35Pin105(It cannot be used together with GPIO3)
GPIO36Pin106(It cannot be used together with GPIO2)
GPIO38Pin114
GPIO39Pin115(It cannot be used together with GPIO21)
GPIO40Pin116(It cannot be used together with GPIO1)
-
- Pin Correspondences of BC92 Module -GPIO1 – Pin12
GPIO2 – Pin13
GPIO3 – Pin41
GPIO4 – Pin42
GPIO5 – Pin21
GPIO6 – Pin22
GPIO7 – Pin23
GPIO8 – Pin24
GPIO9 – Pin26
GPIO10 – Pin43
GPIO11 – Pin44 -
- - -
- Pin Correspondences of EG915N Module -GPIO1 – Pin4
GPIO2 – Pin5
GPIO3 – Pin6
GPIO4 – Pin7
GPIO5 – Pin18
GPIO6 – Pin19
GPIO7 – Pin1
GPIO8 – Pin38
GPIO9 – Pin25
GPIO10 – Pin26
GPIO11 – Pin27
GPIO12 – Pin28
GPIO13 – Pin40
GPIO14 – Pin41
GPIO15 – Pin64
GPIO16 – Pin20
GPIO17 – Pin21
GPIO18 – Pin34
GPIO19 – Pin35
GPIO20 – Pin30
GPIO21 – Pin22
GPIO22 – Pin36
GPIO23 – Pin37
GPIO24 – Pin16
GPIO25 – Pin39
GPIO26 – Pin23
GPIO27 – Pin78
GPIO28 – Pin83
GPIO29 – Pin107
GPIO30 – Pin92
GPIO31 – Pin95
GPIO32 – Pin97
GPIO33 – Pin98
GPIO34 – Pin104
GPIO35 – Pin105
GPIO36 – Pin106
GPIO37 – Pin103
GPIO38 – Pin96
GPIO39 – Pin114
GPIO40 – Pin115
GPIO41 – Pin116 -
- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Pin number
Pin6
Pin7
Pin8
Pin9
Pin14
Pin15
Pin16
Pin27
Pin28
Pin29
Pin30
Pin31
Pin34
Pin35
Pin37
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Pin number
Pin6
Pin7
Pin8
Pin9
Pin10
Pin12
Pin13
Pin14
Pin15
Pin16
Pin19
Pin20
Pin21
Pin22
Pin23
Pin29
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin12
GPIO2Pin13
GPIO3Pin41
GPIO4Pin42
GPIO5Pin21
GPIO6Pin22
GPIO7Pin23
GPIO8Pin24
GPIO9Pin26
GPIO10Pin43
GPIO11Pin44
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin12
GPIO2Pin13
GPIO3Pin41
GPIO4Pin42
GPIO5Pin21
GPIO6Pin22
GPIO7Pin23
GPIO8Pin24
GPIO9Pin26
GPIO10Pin43
GPIO11Pin44
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO numberPin number
GPIO1Pin4
GPIO2Pin5
GPIO3Pin6
GPIO4Pin7
GPIO5Pin18
GPIO6Pin19
GPIO7Pin1
GPIO8Pin38
GPIO9Pin25
GPIO10Pin26
GPIO11Pin27
GPIO12Pin28
GPIO13Pin40
GPIO14Pin41
GPIO15Pin64
GPIO16Pin20
GPIO17Pin21
GPIO18Pin34
GPIO19Pin35
GPIO20Pin30
GPIO21Pin22
GPIO22Pin36
GPIO23Pin37
GPIO24Pin16
GPIO25Pin39
GPIO26Pin23
GPIO27Pin78
GPIO28Pin83
GPIO29Pin107
GPIO30Pin92
GPIO31Pin95
GPIO32Pin97
GPIO33Pin98
GPIO34Pin104
GPIO35Pin105
GPIO36Pin106
GPIO37Pin103
GPIO38Pin96
GPIO39Pin114
GPIO40Pin115
GPIO41Pin116
## Methods @@ -241,58 +2608,3164 @@ I/O mode of pins. ``` ## Constants +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +> + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.GPIO47GPIO47
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.GPIO47GPIO47
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO22GPIO22
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.GPIO47GPIO47
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
-| Constant | Module | Description | -| ---------------- | ------------------------------------------------------------ | -------------- | -| Pin.GPIO1 | EC600S / EC600N /EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO1 | -| Pin.GPIO2 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO2 | -| Pin.GPIO3 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO3 | -| Pin.GPIO4 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO4 | -| Pin.GPIO5 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO5 | -| Pin.GPIO6 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO6 | -| Pin.GPIO7 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO7 | -| Pin.GPIO8 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N//EG912U/BC32/BC92 | GPIO8 | -| Pin.GPIO9 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/BC32/BC92 | GPIO9 | -| Pin.GPIO10 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO10 | -| Pin.GPIO11 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/
EG915U/EC800M/EG912N/EG912U/BC32/BC92 | GPIO11 | -| Pin.GPIO12 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO12 | -| Pin.GPIO13 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO13 | -| Pin.GPIO14 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO14 | -| Pin.GPIO15 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO15 | -| Pin.GPIO16 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO16 | -| Pin.GPIO17 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC800N/BC25/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO17 | -| Pin.GPIO18 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/EC800N/BC25/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO18 | -| Pin.GPIO19 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO19 | -| Pin.GPIO20 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO20 | -| Pin.GPIO21 | EC600S / EC600N/EC600U/EC200U/EC800N/BG95M3/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO21 | -| Pin.GPIO22 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO22 | -| Pin.GPIO23 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO23 | -| Pin.GPIO24 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO24 | -| Pin.GPIO25 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO25 | -| Pin.GPIO26 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO26 | -| Pin.GPIO27 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO27 | -| Pin.GPIO28 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO28 | -| Pin.GPIO29 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO29 | -| Pin.GPIO30 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO30 | -| Pin.GPIO31 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO31 | -| Pin.GPIO32 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO32 | -| Pin.GPIO33 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N | GPIO33 | -| Pin.GPIO34 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO34 | -| Pin.GPIO35 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO35 | -| Pin.GPIO36 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO36 | -| Pin.GPIO37 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG912N | GPIO37 | -| Pin.GPIO38 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO38 | -| Pin.GPIO39 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO39 | -| Pin.GPIO40 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M/EG912N/EG912U | GPIO40 | -| Pin.GPIO41 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M | GPIO41 | -| Pin.GPIO42 | EC600U/EC200U/EC600M/EC800M | GPIO42 | -| Pin.GPIO43 | EC600U/EC200U/EC200A/EC600M/EC800M | GPIO43 | -| Pin.GPIO44 | EC600U/EC200U/EC200A/EC600M/EC800M | GPIO44 | -| Pin.GPIO45 | EC600U/EC200U/EC200A/EC600M | GPIO45 | -| Pin.GPIO46 | EC600U/EC200U/EC200A | GPIO46 | -| Pin.GPIO47 | EC600U/EC200U/EC200A | GPIO47 | -| Pin.IN | -- | Input mode | -| Pin.OUT | -- | Output mode | -| Pin.PULL_DISABLE | -- | Floating mode | -| Pin.PULL_PU | -- | Pull-up mode | -| Pin.PULL_PD | -- | Pull-down mode | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConstantDescription
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.INInput mode
Pin.OUTOutput mode
Pin.PULL_DISABLEFloating mode
Pin.PULL_PUPull-up mode
Pin.PULL_PDPull-down mode
diff --git a/docs/API_reference/en/sidebar.yaml b/docs/API_reference/en/sidebar.yaml index 5e045d6a571c682d2ebf1d86839fb8acab62ccfe..9151b94815a0b632c36bf6d119c131738a63ceb7 100644 --- a/docs/API_reference/en/sidebar.yaml +++ b/docs/API_reference/en/sidebar.yaml @@ -209,6 +209,11 @@ items: file: gnsslib/wifilocator.md - label: wifiScan - Wi-Fi Scan file: gnsslib/wifiScan.md +- label: IoT Connection + file: cloudlib/README.md + items: + - label: Aws - AWS IoT Core Connection + file: cloudlib/aws.md - label: Component Library file: componentlib/README.md items: diff --git a/docs/API_reference/zh/ailib/README.md b/docs/API_reference/zh/ailib/README.md new file mode 100644 index 0000000000000000000000000000000000000000..af8bebb661a5531da96566911f12f17a6e529886 --- /dev/null +++ b/docs/API_reference/zh/ailib/README.md @@ -0,0 +1,7 @@ +# QuecPython AI 聊天机器人 + +该部分内容主要介绍 QuecPython 支持的各 AI 聊天机器人功能的接口用法。 + +## QuecPython AI 聊天机器人库列表 + +- [TiktokRTC - 豆包火山 RTC 平台](./TiktokRTC.md) diff --git a/docs/API_reference/zh/ailib/TiktokRTC.md b/docs/API_reference/zh/ailib/TiktokRTC.md new file mode 100644 index 0000000000000000000000000000000000000000..1b52db4ea143428a9b02a87881d78761a606aca8 --- /dev/null +++ b/docs/API_reference/zh/ailib/TiktokRTC.md @@ -0,0 +1,101 @@ +# TiktokRTC - 火山实时对话式 AI + +火山实时对话式 AI,在实时音视频场景中,若你希望启动智能体提供语音聊天服务,可以通过调用此类实现。 + +> 支持模组型号:EC600M系列、EC800M系列、EG810M系列。 + +## 构造函数 + +### `TiktokRTC` + +```python +class TiktokRTC(time, callback=None) +``` + +初始化 TiktokRTC,并返回 tiktok 火山大模型对话对象。 + +**参数描述:** +- `time` - 房间无对话时,自动退出房间的超时时间。 +- `callback` - 回调函数,用于大模型连接状态改变通知。 + +**callback参数描述:** + +tuple类型,格式(event,msg) + +- `event` - 整性数值。 + - `1` - 大模型启动。 + - `2` - 大模型关闭。 + - `3` - TTS内容,播放声音内容的文本。 + - `4` - ASR内容,返回当前识别文本。 + - `5` - 异常事件,返回异常信息。 +- `msg` - 消息内容。 + + +**示例:** + +```python +import TiktokRTC + +tiktok = TiktokRTC(3000000) +``` + +## 方法 + +### `TiktokRTC.active([is_active])` + +```python +tiktok.active() +``` + +大模型连接激活状态配置/查询。 + +若传参则表示火山大模型连接状态配置,传参True/False开启/关闭火山大模型。 +若不传参则表示查询火山大模型连接状态,返回值True/False表示火山大模型开启/关闭。 + +**可选参数描述:** + +- `is_active` - bool类型,填True时表示启动火山大模型,为False则代表关闭火山大模型。返回0表示成功,返回其他值表示失败。 + + +### `TiktokRTC.config` + +```python +TiktokRTC.config('param') +TiktokRTC.config(param=value) +``` + +火山大模型参数查询/配置。 + +当只传参关键字时,接口查询,每次只能查询一个值。 +当传参赋值时,接口设置,返回True/False表示成功/失败,可以同时设置多个值。 + +**可选参数描述:** + +| 参数 | 类型 | 说明 | +| ---- | ---- |---------- | +| `StartVoiceChat` | `str` | 启动智能体url | +| `UpdateVoiceChat`| `str` | 更新智能体url | +| `StopVoiceChat` | `str` | 关闭智能体url | +| `BotId` | `str` | 智能体 ID | +| `VoiceId` | `str` | 音色编号。当前仅支持系统音色。| +| `volume` | `int` | 音量大小,0-11 默认 5。 | + +**示例:** +配置信息查询: +```python +# 查询音量大小 +TiktokRTC.config('volume') +``` +配置信息设置: +```python +# 配置音量大小 +TiktokRTC.config(volume=6) +``` + +### `TiktokRTC.interrupt()` + +```python +tiktok.interrupt() +``` + +打断智能体,语音过程中打断智能体讲话。 diff --git a/docs/API_reference/zh/cloudlib/README.md b/docs/API_reference/zh/cloudlib/README.md index 6afbfdd22185008d366fd1cc0b823863e6714e23..8ba5a29abce65a5c4e4630403a7fd6007e2b7b77 100644 --- a/docs/API_reference/zh/cloudlib/README.md +++ b/docs/API_reference/zh/cloudlib/README.md @@ -7,3 +7,4 @@ - [aLiYun - 阿里 IoT 平台](./aLiYun.md) - [TenCentYun- 腾讯 IoT 平台](./TenCentYun.md) +- [Aws - 亚马逊 IoT 平台](./aws.md) diff --git a/docs/API_reference/zh/cloudlib/aws.md b/docs/API_reference/zh/cloudlib/aws.md new file mode 100644 index 0000000000000000000000000000000000000000..b8d03d76b9b18321ab7c80581e8241b0027eadb4 --- /dev/null +++ b/docs/API_reference/zh/cloudlib/aws.md @@ -0,0 +1,244 @@ +# Aws - 亚马逊 IoT 平台 + +提供一个可接入亚马逊 Iot 平台的客户端,用于管理亚马逊 MQTT 连接和影子设备。 + +## 初始化客户端 + +### `Aws` +```python +class Aws(client_id,server,port,keep_alive,ssl,ssl_params) +``` +**参数:** + +- `client_id` (str) - 客户端唯一标识。 +- `server` (str) - 亚马逊 Iot 平台服务器地址。 +- `port` (int) - MQTT 服务端口(默认端口为 1883,TLS 默认端口 为 8883)。 +- `keep_alive` (int) - 客户端 keep-alive 超时值,单位:秒(默认 60 秒)。 +- `ssl` (bool) - 是否使能 SSL/TLS(默认:False。如果设置为True,则必须设置 `ssl_params` 参数)。 +- `ssl_params` (dict) - SSL/TLS 连接参数。 + +**示例:** + +```python +>>> # Create Aws object +>>> import aws +>>> aws = aws.Aws(client_id, server, port, keep_alive=60,ssl=True,ssl_params={"cert": certificate_content,"key": private_content}) +``` + +## **MQTT 接入** + +使用 `umqtt` 模块接口来建立 AWS 云平台连接。 + +### `aws.connect` + +```python +connect() +``` +该方法用于建立 AWS 平台连接。 + +**返回值:** + +`None` + +### `aws.disconnect` + +```python +disconnect() +``` +改方法用于断开 AWS 平台连接。 + +**返回值:** + +`None` + +### `aws.subscribe` + +```python +subscribe(topic) +``` +该方法用于订阅 mqtt 主题。 + +**参数:** + +- `topic` (str) - 订阅主题。 + +**返回值:** + +`None` + +### `aws.publish` + +```python +publish(topic, payload) +``` +该方法用于发布消息到对应topic。 + +**参数:** + +- `topic` (str) - 发布主题。 +- `payload` (dict) - 需要发送的数据。 + +**返回值:** + +`None` + +## **影子设备管理** + +### `aws.create_shadow` + +```python +create_shadow(shadow_name="", state="") +``` +该方法用于创建影子设备。 + +**参数:** + +- `shadow_name` (str) - 影子设备名称(可选)。 +- `state` (dict) - 影子设备的初始状态参数(可选)。 + +**返回值:** + +`None` + +### `aws.update_shadow` + +```python +update_shadow(shadow_name="", state="") +``` +该方法用于更新影子设备名称和状态。 + +**参数:** + +- `shadow_name` (str) - 影子设备名称。 +- `state` (dict) - 影子设备的状态参数(可选)。 + +**返回值:** + + `None` + +### `aws.get_shadow` + +```python +get_shadow(shadow_name="") +``` +该方法用于获取影子设备状态。 + +**参数:** + +- `shadow_name` (str) - 影子设备名称。 + +**返回值:** + +当前影子设备的状态数据。 + +### `aws.delete_shadow` + +```python +delete_shadow(shadow_name="") +``` +该方法用于删除一个影子设备。 + +**参数:** + +- `shadow_name` (str) - 影子设备的名称。 + +**返回值:** + +`None` + +### `aws.connect_shadow` + +```python +connect_shadow(shadow_name="", topics=None) +``` +该方法用于连接影子设备。 + +**参数:** + +- `shadow_name` (str) - 影子设备名称(可选)。 +- `topics` (list) - 关联 影子设备的 MQTT 主题列表(可选)。 + +**返回值:** + +`None` + +### `aws.set_callback` + +```python +set_callback(topic_name, callback) +``` +**参数:** + +- `topic_name` (str) - MQTT 主题。 +- `callback` (function) - `topic_name` 主题对应的回调函数。 函数原型: + + callback_function(msg) + - 回调函数参数: + + - `msg`: 字典类型,接收到的消息。 + +**返回值:** + +`None` + +## **Python Example** +```python +import usr.aws as aws +import modem +import ujson +import sim # Check if PIN verification is needed for your SIM card +import net + +# AWS IoT credentials +certificate_content = """ +-----BEGIN CERTIFICATE----- + +-----END CERTIFICATE----- +""" + +private_content = """ +-----BEGIN RSA PRIVATE KEY----- + +-----END RSA PRIVATE KEY----- +""" + +client_id = 'qpthing' +server = 'abgka7vzgjoa0-ats.iot.eu-west-3.amazonaws.com' +port = 8883 + +def aws_callback(data): + print("HELLO from 1234 topic callback") + +def shadow_callback_get(data): + print("HELLO from get accepted callback") + +def shadow_callback_update(data): + print("HELLO from update accepted callback") + +def shadow_callback_delta(data): + print("HELLO from update delta callback") + +# Create AWS object +aws_obj = aws.Aws(client_id, server, port, keep_alive=60, ssl=True, + ssl_params={"cert": certificate_content, "key": private_content}) +print("Created AWS object") + +# Connect to AWS IoT +aws_obj.connect() +print("Connected to AWS IoT") + +# Subscribe and publish +aws_obj.set_callback("1234", aws_callback) +aws_obj.subscribe("1234") +aws_obj.publish("7777", "Hello from QuecPython") +aws_obj.start() + +# Shadow operations +aws_obj.create_shadow() +aws_obj.connect_shadow() +aws_obj.set_callback("$aws/things/qpthing/shadow/get/accepted", shadow_callback_get) +aws_obj.set_callback("$aws/things/qpthing/shadow/update/accepted", shadow_callback_update) +aws_obj.set_callback("$aws/things/qpthing/shadow/update/delta", shadow_callback_delta) +aws_obj.get_shadow() +aws_obj.update_shadow(state={"state": {"reported": {"welcome": "change reported"}}}) +``` diff --git a/docs/API_reference/zh/gnsslib/cellLocator.md b/docs/API_reference/zh/gnsslib/cellLocator.md index cb099a57dfd075ba5641772e7f6716989900b398..783deaf402efa092a285d1ab1b0630c3bfaa11bb 100644 --- a/docs/API_reference/zh/gnsslib/cellLocator.md +++ b/docs/API_reference/zh/gnsslib/cellLocator.md @@ -28,9 +28,9 @@ cellLocator.getLocation(serverAddr, port, token, timeout [, profileIdx]) **返回值描述:** - 成功返回经纬度坐标信息,元组格式:`(longtitude, latitude, accuracy)`,`(0.0, 0.0, 0)`表示未获取到有效坐标信息; + 成功返回经纬度坐标信息,元组格式:`(longitude, latitude, accuracy)`,`(0.0, 0.0, 0)`表示未获取到有效坐标信息; -`longtitude` : 经度 +`longitude` : 经度 `latitude` :纬度 diff --git a/docs/API_reference/zh/gnsslib/quecgnss.md b/docs/API_reference/zh/gnsslib/quecgnss.md index fd7c1dcb3098709b9290408250274ab12e808a6e..10317217ae116460adf1dbb2f366a8a5a725d9cd 100644 --- a/docs/API_reference/zh/gnsslib/quecgnss.md +++ b/docs/API_reference/zh/gnsslib/quecgnss.md @@ -77,6 +77,189 @@ $GNGLL,3149.324754,N,11706.922338,E,022508.000,A,A*46 $GNGSA,A,3,31,3 ``` +## GNSS 定位数据介绍 + +```python +NMEA端口数据分类: + $GPGGA 卫星定位信息 + $GPGSA  卫星PRN数据 + $GPGSV  可视卫星信息 + $GPRMC 推荐定位信息 + $GPVTG  地面速度信息 + $GPDTM 大地坐标系信息 + $GPGNS  GNSS定位数据 +NMEA语句解析: +GSV 语句的基本格式如下: + + $GPGSV,(1),(2),(3),(4),(5),(6),(7),...,(4),(5),(6),(7)*hh(CR)(LF) + + 字段1:GSV 语句总数 + + 字段2:本句 GSV 的编号 + + 字段3:可见卫星的总数(00~12,前面的 0 也将被传输) + + 字段4:卫星编号(01~32,前面的 0 也将被传输) + + 字段5:卫星仰角(00~90 度,前面的 0 也将被传输) + + 字段6:卫星方位角(000~359 度,前面的 0 也将被传输) + + 字段7:信噪比(00~99dB,没有跟踪到卫星时为空)(就是常说的CN值) + +GGA 语句的基本格式如下: + + $GPGGA,(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12)*hh(CR)(LF) + + 字段1:UTC 时间,hhmmss.sss,时分秒格式 + + 字段2:纬度ddmm.mmmm,度分格式(前导位数不足则补0) + + 字段3:纬度N(北纬)或S(南纬) + + 字段4:经度dddmm.mmmm,度分格式(前导位数不足则补0) + + 字段5:经度E(东经)或W(西经) + + 字段6:GPS状态,0=未定位,1=非差分定位,2=差分定位,3=无效PPS,6=正在估算 + + 字段7:正在使用的卫星数量(00 - 12)(前导位数不足则补0) + + 字段8:HDOP水平精度因子(0.5 - 99.9) + + 字段9:海拔高度(-9999.9 - 99999.9) + + 字段10:海拔高度单位,米 + + 字段11:地球椭球面相对大地水准面的高度 + + 字段12:地球椭球面相对大地水准面的高度单位,米 + +GSA 语句的基本格式如下: + + $GPGSA,(1),(2),(3),(3),,,,,,,,,,(3),(4),(5),(6),(7)*hh(CR)(LF) + + 字段1:定位模式,A=自动手动2D/3D,M=手动2D/3D + + 字段2:定位类型,1=未定位,2=2D定位,3=3D定位 + + 字段3:PRN码(伪随机噪声码),第1信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)(最多12个) + + 字段4:PDOP综合位置精度因子(0.0 - 500.0) + + 字段5:HDOP综合位置精度因子(0.0 - 500.0) + + 字段6:VDOP水平精度因子(0.0 - 500.0) + + 字段7:卫星系统ID + +VTG语句的基本格式如下: + + $GPVTG,(1),(2),(3),(4),(5),(6),(7),(8),(9)*hh(CR)(LF) + + 字段1:运动角度,000 - 359,(前导位数不足则补0) + + 字段2:T=真北参照系 + + 字段3:运动角度,000 - 359,(前导位数不足则补0) + + 字段4:M=磁北参照系 + + 字段5:水平运动速度(0.00)(前导位数不足则补0) + + 字段6:N=节,Knots + + 字段7:水平运动速度(0.00)(前导位数不足则补0) + + 字段8:K=公里/时,km/h + + 字段9:状态指示 E(航迹推算) A(非DGPS) + +RMC语句的基本格式如下: + + $GPRMC,(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13)*hh(CR)(LF) + + 字段1:UTC时间,hhmmss.sss格式 + + 字段2:状态,A=定位,V=未定位 + + 字段3:纬度ddmm.mmmm,度分格式(前导位数不足则补0) + + 字段4:纬度N(北纬)或S(南纬) + + 字段5:经度dddmm.mmmm,度分格式(前导位数不足则补0) + + 字段6:经度E(东经)或W(西经) + + 字段7:速度,节,Knots + + 字段8:方位角,度 + + 字段9:UTC日期,DDMMYY格式 + + 字段10:磁偏角,(000 - 180)度(前导位数不足则补0) + + 字段11:磁偏角方向,E=东W=西 + + 字段12:状态指示 E(航迹推算) A(非DGPS) + + 字段13:导航状态,V 表示不提供导航状态 + +DTM语句的基本格式如下: + + $GNDTM,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>*<9>(CR)(LF) + + <1>本地坐标系代码 W84,P90 + + <2>坐标系子代码 空 + + <3>纬度偏移量 + + <4>纬度半球N(北半球)或S(南半球) + + <5>经度偏移量 + + <6>经度半球E(东经)或W(西经) + + <7>高度偏移量 + + <8>坐标系代码 W84 + + <9>校验码 + +GNS语句的基本格式如下: + + $GNGNS,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>.<9>,<10>,<11>,<12>,<13>,*<14>(CR)(LF) + + <1> UTC时间: 定位时间 hhmmss.ss——000000.00~235959.99 + + <2> 纬度: ddmm.mmmmm——0000.00000~8959.9999 + + <3> 南纬北纬: 北纬N,S南纬 + + <4>经度:dddmm.mmmmm——0000.00000~17959.99999 + + <5>东经西经: 东经E,西经W + + <6>定位模式: N-未定位;A-已定位;D-普通差分定位;P-高精度定位;R-RTK定位固定解;F-RTK定位浮点解;E-估算值;M-注入位置;S-模拟输入 + + <7>定位卫星:参与定位卫星,00-99 + + <8>HDOP:水平精度因子,0.5-99.9 + + <9>海拔:单位:米 + + <10>大地水准面: 地球椭球面相对大地水准面的高度 + + <11>差异数据时间:GN开头时为空 + + <12>基准站ID:GN开头时为空 + + <13>导航状态—— C=告警, S=安全, U=不安全, V=无效 + + <14>校验和 +``` + ## GNSS 功能初始化 ### **`quecgnss.init`** diff --git a/docs/API_reference/zh/peripherals/machine.I2C.md b/docs/API_reference/zh/peripherals/machine.I2C.md index 2bb6f3c1db00b4de0469e1b0f48c2b465a976010..d98ab5ee69fd925ca58133f0b62b5ee7ecfffcf4 100644 --- a/docs/API_reference/zh/peripherals/machine.I2C.md +++ b/docs/API_reference/zh/peripherals/machine.I2C.md @@ -2,20 +2,51 @@ 该类用于设备之间通信的双线协议。 + ## 构造函数 ### `machine.I2C` -```python -class machine.I2C(I2Cn, MODE, [group]) -``` - -**参数描述:** - -- `I2Cn` - I2C 通路索引号,int类型,说明如下:
`I2C0` : `0` - 通道0
`I2C1` : `1` - 通道1
`I2C2` : `2` - 通道2
- -- `MODE` - I2C 的工作模式,int类型,说明如下:
`STANDARD_MODE` : `0` - 标准模式
`FAST_MODE` :`1` - 快速模式
`ENHANCED_FAST_MODE` :`2` - 快速模式增强 (仅支持FCM360W) -- `[group]` - 选择在不同管脚使用IIC,目前仅FCM362K支持,缺省值为0
+
+
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • I2Cn - I2C 通路索引号,int类型,说明如下:
    I2C0 : 0 - 通道0
    I2C1 : 1 - 通道1
    I2C2 : 2 - 通道2

    +
  • +
  • MODE - I2C 的工作模式,int类型,说明如下:
    STANDARD_MODE : 0 - 标准模式
    FAST_MODE1 - 快速模式

    +
  • + +
+
+ +
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • I2Cn - I2C 通路索引号,int类型,说明如下:
    I2C0 : 0 - 通道0
    I2C1 : 1 - 通道1
    I2C2 : 2 - 通道2

    +
  • +
  • MODE - I2C 的工作模式,int类型,说明如下:
    STANDARD_MODE : 0 - 标准模式
    FAST_MODE1 - 快速模式
    ENHANCED_FAST_MODE2 - 快速模式增强

    +
  • +
+
+ +
+
class machine.I2C(I2Cn, MODE, [group])
+
+

参数描述:

+
    +
  • I2Cn - I2C 通路索引号,int类型,说明如下:
    I2C0 : 0 - 通道0
    I2C1 : 1 - 通道1
    I2C2 : 2 - 通道2

    +
  • +
  • MODE - I2C 的工作模式,int类型,说明如下:
    STANDARD_MODE : 0 - 标准模式
    FAST_MODE1 - 快速模式

    +
  • +
  • [group] - 选择在不同管脚使用IIC,缺省值为0

    +
  • +
+
+
**示例:** @@ -37,33 +68,527 @@ class machine.I2C(I2Cn, MODE, [group]) **I2C引脚对应关系:** -| 平台 | 引脚 | -| ------------- | ------------------------------------------------------------ | -| EC600U | I2C0:
SCL: 引脚号11
SDA: 引脚号12
I2C1:
SCL:引脚号57
SDA:引脚号56 | -| EC200U | I2C0:
SCL: 引脚号41
SDA: 引脚号42
I2C1:
SCL:引脚号141
SDA:引脚号142 | -| EC200A/UC200A | I2C0:
SCL: 引脚号41
SDA: 引脚号42 | -| EC600S/EC600N | I2C1:
SCL:引脚号57
SDA:引脚号56 | -| EC100Y | I2C0:
SCL:引脚号57
SDA:引脚号56 | -| BC25PA | I2C0:
SCL: 引脚号23
SDA: 引脚号22
I2C1:
SCL:引脚号20
SDA:引脚号21 | -| EC800N | I2C0:
SCL:引脚号67
SDA:引脚号66 | -| BG95 | I2C0:
SCL: 引脚号18
SDA: 引脚号19
I2C1:
SCL:引脚号40
SDA:引脚号41
I2C2:
SCL:引脚号26
SDA:引脚号25 | -| EC600M | I2C0:
SCL: 引脚号9
SDA: 引脚号64
I2C1:
SCL:引脚号57
SDA:引脚号56
I2C2:
SCL:引脚号67
SDA:引脚号65 | -| EG915U | I2C0:
SCL: 引脚号103
SDA: 引脚号114
I2C1:
SCL:引脚号40
SDA:引脚号41 | -| EC800M/EG810M | I2C0:
SCL: 引脚号67
SDA: 引脚号66
I2C2:
SCL:引脚号68
SDA:引脚号69 | -| EG912N | I2C1:
SCL: 引脚号40
SDA: 引脚号41 | -| EC600E | I2C1:
SCL: 引脚号57(11)
SDA: 引脚号56(12)
注:模块的Pin57与PIN11、Pin56 与Pin12 内部是同一个管脚。 | -| EC800E | I2C0:
SCL: 引脚号67(57)
SDA: 引脚号66(58)
注:
1.模块的Pin67与Pin57、Pin66 与Pin58 内部是同一个管脚。
2.EC800ECN_LE&LQ&CG 的57/58引脚不可用。 | -| EC600G | I2C0:
SCL:引脚号57
SDA:引脚号56
I2C1:
SCL: 引脚号11
SDA: 引脚号12 | -| EC800G | I2C0:
SCL:引脚号67
SDA:引脚号66
I2C1:
SCL: 引脚号57
SDA: 引脚号58
I2C2:
SCL:引脚号68
SDA:引脚号69 | -| EG912U | I2C1:
SCL: 引脚号40
SDA: 引脚号41 | -| EC600K | I2C1:
SCL:引脚号57
SDA:引脚号56
I2C3:
SCL:引脚号11
SDA:引脚号12 | -| EC800K/EG800K | I2C0:
SCL: 引脚号67
SDA: 引脚号66
I2C2:
SCL:引脚号68
SDA:引脚号69 | -| FCM360W | I2C0:
SCL:引脚号29
SDA:引脚号23
| -| FCM362K | I2C0:
SCL:引脚号30
SDA:引脚号29
| -| BC32 | I2C0:
SCL: 引脚号12
SDA: 引脚号26
I2C1:
SCL:引脚号43
SDA:引脚号44 | -| BC92 | I2C0:
SCL: 引脚号12
SDA: 引脚号26
I2C1:
SCL:引脚号43
SDA:引脚号44 | -| EG915N | I2C1:
SCL:引脚号40
SDA:引脚号41 | -| EC800Z | I2C0:
SCL: 引脚号67
SDA: 引脚号66
I2C1:
SCL:引脚号57
SDA:引脚号58 | +
+ + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚11引脚12
I2C1引脚57引56
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚41引脚42
I2C1引脚141引142
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚41引脚42
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C1引脚57引脚56
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚57引脚56
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚23引脚22
I2C1引脚20引脚21
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚67引脚66
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚18引脚19
I2C1引脚40引脚41
I2C2引脚26引脚25
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚9引脚64
I2C1引脚57引脚56
I2C2引脚67引脚65
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚103引脚114
I2C1引脚40引脚41
+ + + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚67引脚66
I2C1引脚68引脚69
+ + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C1引脚40引脚41
+ + + + + + + + + + + + + + + 注:模块的Pin57与PIN11、Pin56 与Pin12 内部是同一个管脚。 + + +
I2C编号SCL引脚SDA引脚
I2C1引脚号57(11)引脚号56(12)
+ + + + + + + + + + + + + + + 注:
+ 1.模块的Pin67与Pin57、Pin66 与Pin58 内部是同一个管脚。
+ 2.EC800ECN_LE&LQ&CG 的57/58引脚不可用。 + + +
I2C编号SCL引脚SDA引脚
I2C0引脚号67(57)引脚号66(58)
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚57引脚56
I2C1引脚11引脚12
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚67引脚66
I2C1引脚57引脚58
I2C2引脚68引脚69
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C1引脚40引脚41
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C1引脚57引脚56
I2C3引脚11引脚12
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚67引脚66
I2C2引脚68引脚69
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚29引脚23
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚30引脚29
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚12引脚26
I2C1引脚43引脚44
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚12引脚26
I2C2引脚43引脚44
+ + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C1引脚40引脚41
+ + + + + + + + + + + + + + + + + + + + + +
I2C编号SCL引脚SDA引脚
I2C0引脚67引脚66
I2C1引脚57引脚58
+ +
+ + + ## 方法 @@ -143,12 +668,114 @@ if __name__ == '__main__': ## 常量 -| 常量 | 说明 | 适用平台 | -| ----------------- | ---------------- | ------------------------------------------------------------ | -| I2C.I2C0 | I2C通路索引号: 0 | EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EC800E/EC800K/FCM360W/FCM362K/BC32/BC92/EC800Z | -| I2C.I2C1 | I2C通路索引号: 1 | EC600S/EC600N/EC600U/EC200U/BC25PA/BG95M3/EC600M/EG915U/EC800M/EG810M/
EG912N/EC600E/EC600K/BC32/BC92/EG915N/EC800Z | -| I2C.I2C2 | I2C通路索引号: 2 | BG95M3/EC600M/EC800K | -| I2C.I2C3 | I2C通路索引号: 3 | EC600K | -| I2C.STANDARD_MODE | 标准模式 | -- | -| I2C.FAST_MODE | 快速模式 | -- | -| I2C.ENHANCED_FAST_MODE |快速模式增强 |FCM360W +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
I2C.I2C0I2C通路索引号: 0
I2C.I2C1I2C通路索引号: 1
I2C.STANDARD_MODE标准模式
I2C.FAST_MODE快速模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
I2C.I2C0I2C通路索引号: 0
I2C.I2C1I2C通路索引号: 1
I2C.I2C2I2C通路索引号: 2
I2C.STANDARD_MODE标准模式
I2C.FAST_MODE快速模式
+ + + + + + + + + + + + + + + + + + + + + + + +
常量说明
I2C.I2C0I2C通路索引号: 0
I2C.STANDARD_MODE标准模式
I2C.FAST_MODE快速模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
I2C.I2C0I2C通路索引号: 0
I2C.STANDARD_MODE标准模式
I2C.FAST_MODE快速模式
I2C.ENHANCED_FAST_MODE快速模式增强
+ +
\ No newline at end of file diff --git a/docs/API_reference/zh/peripherals/machine.KeyPad.md b/docs/API_reference/zh/peripherals/machine.KeyPad.md index c95e7245c8f5749608ae9c91a01f9b7bfc6c9def..32cedbfdab53ffa1c88aa7c56a7d50e2e990b9da 100644 --- a/docs/API_reference/zh/peripherals/machine.KeyPad.md +++ b/docs/API_reference/zh/peripherals/machine.KeyPad.md @@ -19,33 +19,353 @@ class machine.KeyPad(row,col) > 如果row和col均不设置,默认为4X4。 -| 平台 | 最大行 | 最大列 | -| ------------- | ---------------------------------------- | ---------------------- | -| EC800N/EC600N | 4 | 4 | -| EC600S | 5 | 5 | -| EC200U | 6(EC200UXXAA系列只支持4行,见管脚说明) | 4 | -| EC600U | 6 | 6 | -| EC600M | 5 | 5 | -| EC800M/EG810M | 5(EG810MEU只支持3行) | 5(EG810MEU只支持3行) | -| EG912N | 3 | 3 | -| EG915N | 4 | 4 | -| EC600K | 3 | 3 | -| EC800K/EG800K | 5(EG800K只支持4行) | 5(EG800K只支持4列) | +
+ + + + + + + + + + + + + + + +
平台最大行最大列
EC800N/EC600N44
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EC600S55
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EC200U6(EC200UXXAA系列只支持4行,见管脚说明)4
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EC600U66
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EC600M55
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EC800M/EG810M5(EG810MEU只支持3行)5(EG810MEU只支持3行)
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EEG912N33
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EG915N44
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EC600K33
+ + + + + + + + + + + + + + + + +
平台最大行最大列
EC800K/EG800K5(EG800K只支持4行)5(EG800K只支持4行)
+ +
**KeyPad引脚对应关系:** > 当不使用全部引脚时,接线按行列号从小到大顺序接线,比如EC600M使用2x2矩阵键盘时,硬件使用49、51和48、50引脚。 -| 平台 | 引脚 | -| ------------- | ------------------------------------------------------------ | -| EC600M | 行号(输出)对应引脚如下:
行号0 – 引脚号49
行号1 – 引脚号51
行号2 – 引脚号53
行号3 – 引脚号55
行号4 – 引脚号56
列号(输入)对应引脚如下:
列号0 – 引脚号48
列号1 – 引脚号50
列号2 – 引脚号52
列号3 – 引脚号54
列号4 – 引脚号57 | -| EC800M/EG810M | 行号(输出)对应引脚如下:
行号0 – 引脚号86(EG810MEU不支持)
行号1 – 引脚号76
行号2 – 引脚号85(EG810MEU不支持)
行号3 – 引脚号82
行号4 – 引脚号74
列号(输入)对应引脚如下:
列号0 – 引脚号87(EG810MEU不支持)
列号1 – 引脚号77
列号2 – 引脚号84(EG810MEU不支持)
列号3 – 引脚号83
列号4 – 引脚号75 | -| EG912N | 行号(输出)对应引脚如下:
行号1 – 引脚号20
行号2 – 引脚号16
行号3 – 引脚号116
列号(输入)对应引脚如下:
列号2 – 引脚号105
列号3 – 引脚号21
列号4 – 引脚号1 | -| EC200U | 行号(输出)对应引脚如下:
行号0 – 引脚号83
行号1 – 引脚号84
行号2 – 引脚号113
行号3 – 引脚号114
行号4 – 引脚号81(EC200UXXAA系列不支持)
行号5 – 引脚号82(EC200UXXAA系列不支持)
列号(输入)对应引脚如下:
列号0 – 引脚号115
列号1 – 引脚号78
列号2 – 引脚号79
列号3 – 引脚号80 | -| EC600U | 行号(输出)对应引脚如下:
行号0 – 引脚号105
行号1 – 引脚号106
行号2 – 引脚号107
行号3 – 引脚号108
行号4 – 引脚号104
行号5 – 引脚号103
列号(输入)对应引脚如下:
列号0 – 引脚号55
列号1 – 引脚号129
列号2 – 引脚号128
列号3 – 引脚号127
列号4 – 引脚号126
列号5 – 引脚号125 | -| EG915N | 行号(输出)对应引脚如下:
行号0 – 引脚号39
行号1 – 引脚号20
行号2 – 引脚号27
行号3 – 引脚号26
列号(输入)对应引脚如下:
列号0 – 引脚号83
列号2 – 引脚号28
列号3 – 引脚号25
列号4 – 引脚号1 | -| EC600K | 行号(输出)对应引脚如下:
行号0 – 引脚号53
行号1 – 引脚号49
行号2 – 引脚号55
列号(输入)对应引脚如下:
列号0 – 引脚号52
列号1 – 引脚号54
列号2 – 引脚号50 | -| EC800K/EG800K | 行号(输出)对应引脚如下:
行号0 – 引脚号74
行号1 – 引脚号76
行号2 – 引脚号86
行号3 – 引脚号82
行号4 – 引脚号29(EG800K不支持)
列号(输入)对应引脚如下:
列号0 – 引脚号75
列号1 – 引脚号77
列号2 – 引脚号87
列号3 – 引脚号81
列号4 – 引脚号28(EG800K不支持) | +
+ + + + + + + + + + + + + +
平台引脚
EC600M
    +
  • 行号(输出)对应引脚如下:
    行号0– 引脚号49
    行号1– 引脚号51
    行号2– 引脚号53
    行号3– 引脚号55
    行号4– 引脚号56

    +
  • +
  • 列号(输出)对应引脚如下:
    行号0– 引脚号48
    行号1– 引脚号50
    行号2– 引脚号52
    行号3– 引脚号54
    行号4– 引脚号57

    +
  • +
+
+ + + + + + + + + + + + + + +
平台引脚
EC800M|EG810M
    +
  • 行号(输出)对应引脚如下:
    行号0– 引脚号86(EG810MEU不支持)
    行号1– 引脚号76
    行号2– 引脚号85(EG810MEU不支持)
    行号3– 引脚号82
    行号4– 引脚号74

    +
  • +
  • 列号(输出)对应引脚如下:
    行号0– 引脚号87(EG810MEU不支持)
    行号1– 引脚号77
    行号2– 引脚号84(EG810MEU不支持)
    行号3– 引脚号83
    行号4– 引脚号75

    +
  • +
+
+ + + + + + + + + + + + + + +
平台引脚
EG912N
    +
  • 行号(输出)对应引脚如下:
    行号1– 引脚号20
    行号2– 引脚号16
    行号3– 引脚号116

    +
  • +
  • 列号(输出)对应引脚如下:
    行号1– 引脚号105
    行号2– 引脚号21
    行号3– 引脚号1

    +
  • +
+
+ + + + + + + + + + + + + + +
平台引脚
EC200U
    +
  • 行号(输出)对应引脚如下:
    行号0– 引脚号49
    行号1– 引脚号51
    行号2– 引脚号53
    行号3– 引脚号55
    行号4– 引脚号56

    +
  • +
  • 列号(输出)对应引脚如下:
    行号0– 引脚号48
    行号1– 引脚号50
    行号2– 引脚号52
    行号3– 引脚号54
    行号4– 引脚号56

    +
  • +
+
+ + + + + + + + + + + + + + +
平台引脚
EC600U
    +
  • 行号(输出)对应引脚如下:
    行号0– 引脚号49
    行号1– 引脚号51
    行号2– 引脚号53
    行号3– 引脚号55
    行号4– 引脚号56

    +
  • +
  • 列号(输出)对应引脚如下:
    行号0– 引脚号48
    行号1– 引脚号50
    行号2– 引脚号52
    行号3– 引脚号54
    行号4– 引脚号56

    +
  • +
+
+ + + + + + + + + + + + + + +
平台引脚
EG915N
    +
  • 行号(输出)对应引脚如下:
    行号0– 引脚号49
    行号1– 引脚号51
    行号2– 引脚号53
    行号3– 引脚号55
    行号4– 引脚号56

    +
  • +
  • 列号(输出)对应引脚如下:
    行号0– 引脚号48
    行号1– 引脚号50
    行号2– 引脚号52
    行号3– 引脚号54
    行号4– 引脚号56

    +
  • +
+
+ + + + + + + + + + + + + + +
平台引脚
EC600K
    +
  • 行号(输出)对应引脚如下:
    行号0– 引脚号49
    行号1– 引脚号51
    行号2– 引脚号53
    行号3– 引脚号55
    行号4– 引脚号56

    +
  • +
  • 列号(输出)对应引脚如下:
    行号0– 引脚号48
    行号1– 引脚号50
    行号2– 引脚号52
    行号3– 引脚号54
    行号4– 引脚号56

    +
  • +
+
+ + + + + + + + + + + + + + +
平台引脚
EC800K/EG800K
    +
  • 行号(输出)对应引脚如下:
    行号0– 引脚号49
    行号1– 引脚号51
    行号2– 引脚号53
    行号3– 引脚号55
    行号4– 引脚号56

    +
  • +
  • 列号(输出)对应引脚如下:
    行号0– 引脚号48
    行号1– 引脚号50
    行号2– 引脚号52
    行号3– 引脚号54
    行号4– 引脚号56

    +
  • +
+
+ +
**示例:** diff --git a/docs/API_reference/zh/peripherals/machine.Pin.md b/docs/API_reference/zh/peripherals/machine.Pin.md index a674ca1f1bd139154b1ee8aadf9ffe3d5cc308e2..8306bc2309adba7f0b77d93ebef96fef3a31557c 100644 --- a/docs/API_reference/zh/peripherals/machine.Pin.md +++ b/docs/API_reference/zh/peripherals/machine.Pin.md @@ -29,16 +29,23 @@ gpio1.get_dir() ### `machine.Pin` -```python -class machine.Pin(GPIOn, direction, pullMode, level) -``` - -**参数描述:** - -- `GPIOn` - GPIO号,int类型,点此查看 GPIO引脚编号与物理引脚的映射关系。 -- `direction` - 输入输出模式,int类型,`IN` - 输入模式,`OUT` - 输出模式。 -- `pullMode` - 上下拉模式,int类型,说明如下:
PULL_DISABLE - 浮空模式
PULL_PU - 上拉模式
PULL_PD - 下拉模式 -- `level` - 引脚电平,int类型,`0` - 设置引脚为低电平, `1`- 设置引脚为高电平。 +
+
+
class machine.Pin(GPIOn, direction, pullMode, level)
+
+

参数描述:

+
    +
  • GPIOn - GPIO号,int类型,点此查看 GPIO引脚编号与物理引脚的映射关系。

    +
  • +
  • direction - 输入输出模式,int类型,
    IN - 输入模式
    OUT - 输出模式。

    +
  • +
  • pullMode - 上下拉模式,int类型,说明如下:
    PULL_DISABLE - 浮空模式
    PULL_PU - 上拉模式
    PULL_PD - 下拉模式

    +
  • +
  • level - 引脚电平,int类型,
    0 - 设置引脚为低电平,
    1 - 设置引脚为高电平。

    +
  • + +
+
**示例:** @@ -52,128 +59,3623 @@ class machine.Pin(GPIOn, direction, pullMode, level) > GPIO对应引脚号说明:文档中提供的GPIO引脚号对应的为模块外部的引脚编号,例如EC100YCN下GPIO1对应引脚号22,这里的引脚号22为模块外部的引脚编号。可参考提供的硬件资料查看模块外部的引脚编号。 -
- EC100Y平台引脚对应关系
-GPIO1 – 引脚号22
GPIO2 – 引脚号23
GPIO3 – 引脚号38
GPIO4 – 引脚号53
GPIO5 – 引脚号54
GPIO6 – 引脚号104
GPIO7 – 引脚号105
GPIO8 – 引脚号106
GPIO9 – 引脚号107
GPIO10 – 引脚号178
GPIO11 – 引脚号195
GPIO12 – 引脚号196
GPIO13 – 引脚号197
GPIO14 – 引脚号198
GPIO15 – 引脚号199
GPIO16 – 引脚号203
GPIO17 – 引脚号204
GPIO18 – 引脚号214
GPIO19 – 引脚号215
-
- -
- EC600S/EC600N平台引脚对应关系 -GPIO1 – 引脚号10
GPIO2 – 引脚号11
GPIO3 – 引脚号12
GPIO4 – 引脚号13
GPIO5 – 引脚号14
GPIO6 – 引脚号15
GPIO7 – 引脚号16
GPIO8 – 引脚号39
GPIO9 – 引脚号40
GPIO10 – 引脚号48
GPIO11 – 引脚号58
GPIO12 – 引脚号59
GPIO13 – 引脚号60
GPIO14 – 引脚号61
GPIO15 – 引脚号62
GPIO16 – 引脚号63
GPIO17 – 引脚号69
GPIO18 – 引脚号70
GPIO19 – 引脚号1
GPIO20 – 引脚号3
GPIO21 – 引脚号49
GPIO22 – 引脚号50
GPIO23 – 引脚号51
GPIO24 – 引脚号52
GPIO25 – 引脚号53
GPIO26 – 引脚号54
GPIO27 – 引脚号55
GPIO28 – 引脚号56
GPIO29 – 引脚号57
GPIO30 – 引脚号2
GPIO31 – 引脚号66
GPIO32 – 引脚号65
GPIO33 – 引脚号67
GPIO34 – 引脚号64
GPIO35 – 引脚号4
GPIO36 – 引脚号31
GPIO37 – 引脚号32
GPIO38 – 引脚号33
GPIO39 – 引脚号34
GPIO40 – 引脚号71
GPIO41 – 引脚号72
-
- -
- EC600M平台引脚对应关系 -GPIO1 – 引脚号10
GPIO2 – 引脚号11
GPIO3 – 引脚号12
GPIO4 – 引脚号13
GPIO5 – 引脚号14
GPIO6 – 引脚号15
GPIO7 – 引脚号16
GPIO8 – 引脚号39
GPIO9 – 引脚号40
GPIO10 – 引脚号48
GPIO11 – 引脚号58
GPIO12 – 引脚号59
GPIO13 – 引脚号60
GPIO14 – 引脚号61
GPIO15 – 引脚号62
GPIO16 – 引脚号63
GPIO17 – 引脚号69
GPIO18 – 引脚号70
GPIO19 – 引脚号1
GPIO20 – 引脚号3
GPIO21 – 引脚号49
GPIO22 – 引脚号50
GPIO23 – 引脚号51
GPIO24 – 引脚号52
GPIO25 – 引脚号53
GPIO26 – 引脚号54
GPIO27 – 引脚号55
GPIO28 – 引脚号56
GPIO29 – 引脚号57
GPIO30 – 引脚号2
GPIO31 – 引脚号66
GPIO32 – 引脚号65
GPIO33 – 引脚号67
GPIO34 – 引脚号64
GPIO35 – 引脚号4
GPIO36 – 引脚号31
GPIO37 – 引脚号32
GPIO38 – 引脚号33
GPIO39 – 引脚号34
GPIO40 – 引脚号71
GPIO41 – 引脚号72
GPIO42 – 引脚号109
GPIO43 – 引脚号110
GPIO44 – 引脚号112
GPIO45 – 引脚号111
-
- -
- EC600U平台引脚对应关系 -GPIO1 – 引脚号61(不可与GPIO31同时为gpio)
GPIO2 – 引脚号58(不可与GPIO32同时为gpio)
GPIO3 – 引脚号34(不可与GPIO41同时为gpio)
GPIO4 – 引脚号60(不可与GPIO34同时为gpio)
GPIO5 – 引脚号69(不可与GPIO35同时为gpio)
GPIO6 – 引脚号70(不可与GPIO36同时为gpio)
GPIO7 – 引脚号123(不可与GPIO43同时为gpio)
GPIO8 – 引脚号118
GPIO9 – 引脚号9(不可与GPIO47同时为gpio)
GPIO10 – 引脚号1(不可与GPIO37同时为gpio)
GPIO11 – 引脚号4(不可与GPIO38同时为gpio)
GPIO12 – 引脚号3(不可与GPIO39同时为gpio)
GPIO13 – 引脚号2(不可与GPIO40同时为gpio)
GPIO14 – 引脚号54
GPIO15 – 引脚号57
GPIO16 – 引脚号56
GPIO17 – 引脚号12
GPIO18 – 引脚号33(不可与GPIO42同时为gpio)
GPIO19 – 引脚号124(不可与GPIO44同时为gpio)
GPIO20 – 引脚号122(不可与GPIO45同时为gpio)
GPIO21 – 引脚号121(不可与GPIO46同时为gpio)
GPIO22 – 引脚号48
GPIO23 – 引脚号39
GPIO24 – 引脚号40
GPIO25 – 引脚号49
GPIO26 – 引脚号50
GPIO27 – 引脚号53
GPIO28 – 引脚号52
GPIO29 – 引脚号51
GPIO30 – 引脚号59(不可与GPIO33同时为gpio)
GPIO31 – 引脚号66(不可与GPIO1同时为gpio)
GPIO32 – 引脚号63(不可与GPIO2同时为gpio)
GPIO33 – 引脚号67(不可与GPIO30同时为gpio)
GPIO34 – 引脚号65(不可与GPIO4同时为gpio)
GPIO35 – 引脚号137(不可与GPIO5同时为gpio)
GPIO36 – 引脚号62(不可与GPIO6同时为gpio)
GPIO37 – 引脚号98(不可与GPIO10同时为gpio)
GPIO38 – 引脚号95(不可与GPIO11同时为gpio)
GPIO39 – 引脚号119(不可与GPIO12同时为gpio)
GPIO40 – 引脚号100(不可与GPIO13同时为gpio)
GPIO41 – 引脚号120(不可与GPIO3同时为gpio)
GPIO42 – 引脚号16(不可与GPIO18同时为gpio)
GPIO43 – 引脚号10(不可与GPIO7同时为gpio)
GPIO44 – 引脚号14(不可与GPIO19同时为gpio)
GPIO45 – 引脚号15(不可与GPIO20同时为gpio)
GPIO46 – 引脚号13(不可与GPIO21同时为gpio)
GPIO47 – 引脚号99(不可与GPIO9同时为gpio)
-
-
- EC200U平台引脚对应关系 -GPIO1 – 引脚号27(不可与GPIO31同时为gpio)
GPIO2 – 引脚号26(不可与GPIO32同时为gpio)
GPIO3 – 引脚号24(不可与GPIO33同时为gpio)
GPIO4 – 引脚号25(不可与GPIO34同时为gpio)
GPIO5 – 引脚号13(不可与GPIO17同时为gpio)
GPIO6 – 引脚号135(不可与GPIO36同时为gpio)
GPIO7 – 引脚号136(不可与GPIO44同时为gpio)
GPIO8 – 引脚号133
GPIO9 – 引脚号3(不可与GPIO37同时为gpio)
GPIO10 – 引脚号40(不可与GPIO38同时为gpio)
GPIO11 – 引脚号37(不可与GPIO39同时为gpio)
GPIO12 – 引脚号38(不可与GPIO40同时为gpio)
GPIO13 – 引脚号39(不可与GPIO41同时为gpio)
GPIO14 – 引脚号5
GPIO15 – 引脚号141
GPIO16 – 引脚号142
GPIO17 – 引脚号121(不可与GPIO5同时为gpio)
GPIO18 – 引脚号65(不可与GPIO42同时为gpio)
GPIO19 – 引脚号64(不可与GPIO43同时为gpio)
GPIO20 – 引脚号139(不可与GPIO45同时为gpio)
GPIO21 – 引脚号126(不可与GPIO46同时为gpio)
GPIO22 – 引脚号127(不可与GPIO47同时为gpio)
GPIO23 – 引脚号33
GPIO24– 引脚号31
GPIO25 – 引脚号30
GPIO26 – 引脚号29
GPIO27 – 引脚号28
GPIO28 – 引脚号1
GPIO29 – 引脚号2
GPIO30 – 引脚号4
GPIO31 – 引脚号125(不可与GPIO1同时为gpio)
GPIO32 – 引脚号124(不可与GPIO2同时为gpio)
GPIO33 – 引脚号123(不可与GPIO3同时为gpio)
GPIO34 – 引脚号122(不可与GPIO4同时为gpio)
GPIO35 – 引脚号42
GPIO36 – 引脚号119(不可与GPIO6同时为gpio)
GPIO37 – 引脚号134(不可与GPIO9同时为gpio)
GPIO38– 引脚号132(不可与GPIO10同时为gpio)
GPIO39 – 引脚号131(不可与GPIO11同时为gpio)
GPIO40 – 引脚号130(不可与GPIO12同时为gpio)
GPIO41 – 引脚号129(不可与GPIO13同时为gpio)
GPIO42 – 引脚号61(不可与GPIO18同时为gpio)
GPIO43 – 引脚号62(不可与GPIO19同时为gpio)
GPIO44 – 引脚号63(不可与GPIO7同时为gpio)
GPIO45 – 引脚号66(不可与GPIO20同时为gpio)
GPIO46 – 引脚号6(不可与GPIO21同时为gpio)
GPIO47 – 引脚号23(不可与GPIO22同时为gpio)
-
-
- EC200A/UC200A平台引脚对应关系 -GPIO1 – 引脚号27
GPIO2 – 引脚号26
GPIO3 – 引脚号24
GPIO4 – 引脚号25
GPIO5 – 引脚号5
GPIO6 – 引脚号135
GPIO7 – 引脚号136
GPIO8 – 引脚号68
GPIO9 – 引脚号3
GPIO10 – 引脚号40
GPIO11 – 引脚号37
GPIO12 – 引脚号38
GPIO13 – 引脚号39
GPIO14 – 引脚号67
GPIO15 – 引脚号13
GPIO18 – 引脚号65
GPIO19 – 引脚号64
GPIO20 – 引脚号139
GPIO22 – 引脚号127
GPIO27 – 引脚号28
GPIO28 – 引脚号1
GPIO29 – 引脚号2
GPIO30 – 引脚号4
GPIO35 – 引脚号42
GPIO36 – 引脚号119
GPIO43 – 引脚号62
GPIO44 – 引脚号63(EC200ACN_LA不支持)
GPIO45 – 引脚号66
GPIO46 – 引脚号6
GPIO47 – 引脚号23
-
- - - -
- EC800N平台引脚对应关系 -GPIO1 – 引脚号30
GPIO2 – 引脚号31
GPIO3 – 引脚号32
GPIO4 – 引脚号33
GPIO5 – 引脚号49
GPIO6 – 引脚号50
GPIO7 – 引脚号51
GPIO8 – 引脚号52
GPIO9 – 引脚号53
GPIO10 – 引脚号54
GPIO11 – 引脚号55
GPIO12 – 引脚号56
GPIO13 – 引脚号57
GPIO14 – 引脚号58
GPIO15 – 引脚号80
GPIO16 – 引脚号81
GPIO17 – 引脚号76
GPIO18 – 引脚号77
GPIO19 – 引脚号82
GPIO20 – 引脚号83
GPIO21 – 引脚号86
GPIO22 – 引脚号87
GPIO23 – 引脚号66
GPIO24 – 引脚号67
GPIO25 – 引脚号17
GPIO26 – 引脚号18
GPIO27 – 引脚号19
GPIO28 – 引脚号20
GPIO29 – 引脚号21
GPIO30 – 引脚号22
GPIO31 – 引脚号23
GPIO32 – 引脚号28
GPIO33 – 引脚号29
GPIO34 – 引脚号38
GPIO35 – 引脚号39
GPIO36 – 引脚号16
GPIO37 – 引脚号78
-
-
- BC25PA平台引脚对应关系 -GPIO1 – 引脚号3
GPIO2 – 引脚号4
GPIO3 – 引脚号5
GPIO4 – 引脚号6
GPIO5 – 引脚号16
GPIO6 – 引脚号20
GPIO7 – 引脚号21
GPIO8 – 引脚号22
GPIO9 – 引脚号23
GPIO10 – 引脚号25
GPIO11 – 引脚号28
GPIO12 – 引脚号29
GPIO13 – 引脚号30
GPIO14 – 引脚号31
GPIO15 – 引脚号32
GPIO16 – 引脚号33
GPIO17 – 引脚号2
GPIO18 – 引脚号8
-
-
- BG95平台引脚对应关系 -GPIO1 – 引脚号4
GPIO2 – 引脚号5
GPIO3 – 引脚号6
GPIO4 – 引脚号7
GPIO5 – 引脚号18
GPIO6 – 引脚号19
GPIO7 – 引脚号22
GPIO8 – 引脚号23
GPIO9 – 引脚号25
GPIO10 – 引脚号26
GPIO11 – 引脚号27
GPIO12 – 引脚号28
GPIO13 – 引脚号40
GPIO14 – 引脚号41
GPIO15 – 引脚号64
GPIO16 – 引脚号65
GPIO17 – 引脚号66
GPIO18 – 引脚号85
GPIO19 – 引脚号86
GPIO20 – 引脚号87
GPIO21 – 引脚号88
GPIO22 – 引脚号20
GPIO23 – 引脚号21
GPIO24 – 引脚号30
GPIO25 – 引脚号34
GPIO26 – 引脚号35
GPIO27 – 引脚号36
GPIO28 – 引脚号37
GPIO29 – 引脚号38
GPIO30 – 引脚号39 -
-
- EG915U平台引脚对应关系 -GPIO1 – 引脚号4(不可与GPIO41同时为gpio)
GPIO2 – 引脚号5(不可与GPIO36同时为gpio)
GPIO3 – 引脚号6(不可与GPIO35同时为gpio)
GPIO4 – 引脚号7(不可与GPIO24同时为gpio)
GPIO5 – 引脚号18
GPIO6 – 引脚号19
GPIO7 – 引脚号1(不可与GPIO37同时为gpio)
GPIO8 – 引脚号38
GPIO9 – 引脚号25
GPIO10 – 引脚号26
GPIO11 – 引脚号27(不可与GPIO32同时为gpio)
GPIO12 – 引脚号28(不可与GPIO31同时为gpio)
GPIO13 – 引脚号40
GPIO14 – 引脚号41
GPIO15 – 引脚号64
GPIO16 – 引脚号20(不可与GPIO30同时为gpio)
GPIO17 – 引脚号21
GPIO18 – 引脚号85(使用双卡单待功能时不可复用)
GPIO19 – 引脚号86(使用双卡单待功能时不可复用)
GPIO20 – 引脚号30
GPIO21 – 引脚号88
GPIO22 – 引脚号36(不可与GPIO40同时为gpio)
GPIO23 – 引脚号37(不可与GPIO38同时为gpio)
GPIO24 – 引脚号16(不可与GPIO4同时为gpio)
GPIO25 – 引脚号39
GPIO26 – 引脚号42(不可与GPIO27同时为gpio)
GPIO27 – 引脚号78(不可与GPIO26同时为gpio)
GPIO28 – 引脚号83(不可与GPIO33同时为gpio)
GPIO29 – 引脚号84(使用双卡单待功能时不可复用)
GPIO30 – 引脚号92(不可与GPIO16同时为gpio)
GPIO31 – 引脚号95(不可与GPIO12同时为gpio)
GPIO32 – 引脚号97(不可与GPIO11同时为gpio)
GPIO33 – 引脚号98(不可与GPIO28同时为gpio)
GPIO34 – 引脚号104
GPIO35 – 引脚号105(不可与GPIO3同时为gpio)
GPIO36 – 引脚号106(不可与GPIO2同时为gpio)
GPIO37 – 引脚号108(不可与GPIO4同时为gpio)
GPIO38 – 引脚号111(不可与GPIO23同时为gpio)
GPIO39 – 引脚号114
GPIO40 – 引脚号115(不可与GPIO22同时为gpio)
GPIO41 – 引脚号116(不可与GPIO1同时为gpio)
-
-
- EC800M/EG810M平台引脚对应关系 -GPIO1 – 引脚号30
GPIO2 – 引脚号31
GPIO3 – 引脚号32
GPIO4 – 引脚号33
GPIO5 – 引脚号49
GPIO6 – 引脚号50
GPIO7 – 引脚号51
GPIO8 – 引脚号52
GPIO9 – 引脚号53
GPIO10 – 引脚号54
GPIO11 – 引脚号55
GPIO12 – 引脚号56
GPIO13 – 引脚号57
GPIO14 – 引脚号58
GPIO15 – 引脚号80
GPIO16 – 引脚号81
GPIO17 – 引脚号76
GPIO18 – 引脚号77
GPIO19 – 引脚号82
GPIO20 – 引脚号83
GPIO21 – 引脚号86(EG810M_EU不支持)
GPIO22 – 引脚号87(EG810M_EU不支持)
GPIO23 – 引脚号66
GPIO24 – 引脚号67
GPIO25 – 引脚号17
GPIO26 – 引脚号18
GPIO27 – 引脚号19
GPIO28 – 引脚号20
GPIO29 – 引脚号21
GPIO30 – 引脚号22
GPIO31 – 引脚号23
GPIO32 – 引脚号28
GPIO33 – 引脚号29
GPIO34 – 引脚号38
GPIO35 – 引脚号39
GPIO36 – 引脚号16
GPIO37 – 引脚号78
GPIO38 – 引脚号68
GPIO39 – 引脚号69
GPIO40 – 引脚号74
GPIO41 – 引脚号75
GPIO42 – 引脚号84(EG810M_EU不支持)
GPIO43 – 引脚号85(EG810M_EU不支持)
GPIO44 – 引脚号25
GPIO45 – 引脚号105
GPIO46 – 引脚号104
GPIO47 – 引脚号79
-
-
- EG912N平台引脚对应关系 -GPIO1 – 引脚号4
GPIO2 – 引脚号5
GPIO3 – 引脚号6
GPIO4 – 引脚号7
GPIO5 – 引脚号18
GPIO6 – 引脚号19
GPIO7 – 引脚号1
GPIO8 – 引脚号16
GPIO9 – 引脚号25
GPIO10 – 引脚号26
GPIO11 – 引脚号27
GPIO12 – 引脚号28
GPIO13 – 引脚号40
GPIO14 – 引脚号41
GPIO15 – 引脚号64
GPIO16 – 引脚号20
GPIO17 – 引脚号21
GPIO18 – 引脚号30
GPIO19 – 引脚号34
GPIO20 – 引脚号35
GPIO21 – 引脚号36
GPIO22 – 引脚号37
GPIO23 – 引脚号38
GPIO24 – 引脚号39
GPIO25 – 引脚号42
GPIO26 – 引脚号78
GPIO27 – 引脚号83
GPIO28 – 引脚号92
GPIO29 – 引脚号95
GPIO30 – 引脚号96
GPIO31 – 引脚号97
GPIO32 – 引脚号98
GPIO33 – 引脚号103
GPIO34 – 引脚号104
GPIO35 – 引脚号105
GPIO36 – 引脚号106
GPIO37 – 引脚号107
GPIO38 – 引脚号114
GPIO39 – 引脚号115
GPIO40 – 引脚号116 -
-
- EC600E平台引脚对应关系 -注:
1.I&PU:输入模式下,仅支持浮空和上拉模式
2.I&PD:输入模式下,仅支持浮空和下拉模式
3.EC600E的ExtInt功能不支持上升和下降沿同时触发中断
GPIO1 – 引脚号10(I&PU)
GPIO2 – 引脚号11(57)(I&PU)(不可与GPIO41同时为gpio)
GPIO3 – 引脚号12(56)(I&PU)(不可与GPIO40同时为gpio)
GPIO4 – 引脚号13(I&PU)
GPIO5 – 引脚号14(I&PU)
GPIO6 – 引脚号15(I&PU)
GPIO7 – 引脚号16(I&PU)
GPIO8 – 引脚号39(I&PD)
GPIO9 – 引脚号40(I&PU)
GPIO10 – 引脚号48(I&PD)
GPIO11 – 引脚号58(I&PD)
GPIO12 – 引脚号59(I&PD)
GPIO13 – 引脚号60(I&PD)(不可与GPIO36同时为gpio)
GPIO14 – 引脚号61(I&PD)
GPIO15 – 引脚号62(I&PU)(EC600ECN_LE&LQ不可用)
GPIO16 – 引脚号63(I&PD)(EC600ECN_LE&LQ不可用)
GPIO17 – 引脚号69(I&PU)(EC600ECN_LE&LQ不可用)
GPIO18 – 引脚号70(I&PU)(EC600ECN_LE&LQ不可用)
GPIO22 – 引脚号50(I&PD)
GPIO23 – 引脚号51(I&PD)
GPIO24 – 引脚号52(I&PD)
GPIO25 – 引脚号53(I&PD)
GPIO26 – 引脚号54(I&PD)
GPIO31 – 引脚号66(I&PU)(EC600ECN_LE&LQ不可用)
GPIO32 – 引脚号65(I&PU)(EC600ECN_LE&LQ不可用)
GPIO33 – 引脚号67(I&PU)(EC600ECN_LE&LQ不可用)
GPIO34 – 引脚号64(I&PU)(EC600ECN_LE&LQ不可用)
GPIO36 – 引脚号31(I&PU)(不可与GPIO13同时为gpio)
GPIO37 – 引脚号32(I&PU)
GPIO38 – 引脚号33(I&PU)
GPIO39 – 引脚号34(I&PU)
GPIO40 – 引脚号71(I&PU)(不可与GPIO3同时为gpio)
GPIO41 – 引脚号72(I&PU)(不可与GPIO2同时为gpio) -
- - - - -
- EC800E平台引脚对应关系 -注:
1.I&PU:输入模式下,仅支持浮空和上拉模式
2.I&PD:输入模式下,仅支持浮空和下拉模式
3.EC800ECN_LE&LQ&CG不可用:指该型号模块的引脚内部悬空,所以无法使用
4.模组的Pin67、Pin66 和Pin57、Pin58 共用内部同一路IO,即改变GPIO13的电平,Pin57和Pin67会同时变化
5.在EC800ECN_LE&LQ&CG型号的模组上,Pin57、Pin58内部悬空,所以仅可使用Pin67、Pin66作为GPIO13、14
6.EC800E的ExtInt功能不支持上升和下降沿同时触发中断
7.Pin55、80、81分别不可与Pin64、63、62(SIM2管脚)同时使用
GPIO1 – 引脚号30(I&PD)
GPIO2 – 引脚号31(I&PD)
GPIO3 – 引脚号32(I&PD)
GPIO4 – 引脚号33(I&PD)(不可与GPIO25同时为gpio)
GPIO5 – 引脚号49(I&PD)(EC800ECN_LE&LQ&CG不可用)
GPIO6 – 引脚号50(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO7 – 引脚号51(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO8 – 引脚号52(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO9 – 引脚号53(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO10 – 引脚号54(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO11 – 引脚号55(I&PU)(EC800ECN_LE&LQ&CG不可用,不可与64脚同时使用)
GPIO12 – 引脚号56(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO13 – 引脚号57(67)(I&PU)(EC800ECN_LE&LQ&CG引脚号57无法使用)(不可与GPIO34同时为gpio)
GPIO14 – 引脚号58(66)(I&PU)(EC800ECN_LE&LQ&CG引脚号58无法使用)(不可与GPIO35同时为gpio)
GPIO15 – 引脚号80(I&PU)(EC800ECN_LE&LQ&CG不可用,不可与63脚同时使用)
GPIO16 – 引脚号81(I&PU)(EC800ECN_LE&LQ&CG不可用,不可与62脚同时使用)
GPIO17 – 引脚号25(I&PD)
GPIO25 – 引脚号17(I&PU)(不可与GPIO4同时为gpio)
GPIO26 – 引脚号18(I&PU)
GPIO27 – 引脚号19(I&PD)
GPIO28 – 引脚号20(I&PU)
GPIO29 – 引脚号21(I&PD)
GPIO30 – 引脚号22(I&PU)
GPIO31 – 引脚号23(I&PU)
GPIO32 – 引脚号28(I&PU)
GPIO33 – 引脚号29(I&PU)
GPIO34 – 引脚号38(I&PU)(不可与GPIO13同时为gpio)
GPIO35 – 引脚号39(I&PU)(不可与GPIO14同时为gpio)
GPIO36 – 引脚号16(I&PD)
GPIO37 – 引脚号78(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO38 – 引脚号85(I&PD)(EC800ECN_LE&LQ&LC&CG不可用)
GPIO39 – 引脚号108(I&PD)(EC800ECN_LE&LQ&LC&CG不可用)
GPIO40 – 引脚号109(I&PD)(EC800ECN_LE&LQ&LC&CG不可用) -
-
- EC800Z平台引脚对应关系 -注:
1.AGPIO在睡眠模式状态下,电平状态保持不变,普通GPIO在睡眠状态下电平不能保持
2.GPIO27、GPIO39、GPIO40驱动能力较弱,建议仅做输入引脚使用
GPIO1 – 引脚号30
GPIO2 – 引脚号31
GPIO3 – 引脚号32
GPIO4 – 引脚号33
GPIO5 – 引脚号49
GPIO6 – 引脚号50
GPIO7 – 引脚号51
GPIO8 – 引脚号52
GPIO9 – 引脚号53
GPIO10 – 引脚号54
GPIO12 – 引脚号56
GPIO13 – 引脚号57
GPIO14 – 引脚号58
GPIO17 – 引脚号25(AGPIO)
GPIO23 – 引脚号66(不可与GPIO26同时为gpio)
GPIO24 – 引脚号67(不可与GPIO25同时为gpio)
GPIO25 – 引脚号17(不可与GPIO24同时为gpio)
GPIO26 – 引脚号18(不可与GPIO23同时为gpio)
GPIO27 – 引脚号19(AGPIO,驱动能力较弱,建议仅作输入引脚使用)
GPIO28 – 引脚号20(AGPIO)
GPIO29 – 引脚号21(AGPIO)
GPIO30 – 引脚号22
GPIO31 – 引脚号23
GPIO32 – 引脚号28
GPIO33 – 引脚号29
GPIO34 – 引脚号38
GPIO35 – 引脚号39
GPIO36 – 引脚号16(AGPIO)
GPIO37 – 引脚号78
GPIO38 – 引脚号85(AGPIO)
GPIO39 – 引脚号108(AGPIO,驱动能力较弱,建议仅作输入引脚使用)
GPIO40 – 引脚号109(AGPIO,驱动能力较弱,建议仅作输入引脚使用)
GPIO41 – 引脚号101 -
-
- EC600G平台引脚对应关系 -GPIO1 – 引脚号61(不可与GPIO24同时为gpio)
GPIO2 – 引脚号58(不可与GPIO25同时为gpio)
GPIO3 – 引脚号34
GPIO4 – 引脚号60
GPIO5 – 引脚号69(不可与GPIO10同时为gpio)
GPIO6 – 引脚号70(不可与GPIO11同时为gpio)
GPIO7 – 引脚号123
GPIO8 – 引脚号132
GPIO9 – 引脚号9
GPIO10 – 引脚号1(不可与GPIO5同时为gpio)
GPIO11 – 引脚号4(不可与GPIO6同时为gpio)
GPIO12 – 引脚号3
GPIO13 – 引脚号2
GPIO14 – 引脚号54
GPIO15 – 引脚号57
GPIO16 – 引脚号56
GPIO17 – 引脚号12
GPIO18 – 引脚号33
GPIO19 – 引脚号124(不可与GPIO37同时为gpio)
GPIO20 – 引脚号104
GPIO21 – 引脚号103
GPIO22 – 引脚号48
GPIO23 – 引脚号39(不可与GPIO46同时为gpio)
GPIO24 – 引脚号40(不可与GPIO1同时为gpio)
GPIO25 – 引脚号49(不可与GPIO2同时为gpio)
GPIO26 – 引脚号50(不可与GPIO30同时为gpio)
GPIO27 – 引脚号53
GPIO28 – 引脚号52
GPIO29 – 引脚号51
GPIO30 – 引脚号59(不可与GPIO26同时为gpio)
GPIO31 – 引脚号66
GPIO32 – 引脚号63
GPIO33 – 引脚号67
GPIO34 – 引脚号65
GPIO35 – 引脚号137
GPIO36 – 引脚号62
GPIO37 – 引脚号105(不可与GPIO19同时为gpio)
GPIO38 – 引脚号106
GPIO39 – 引脚号107
GPIO40 – 引脚号126
GPIO41 – 引脚号120
GPIO42 – 引脚号16
GPIO43 – 引脚号10
GPIO44 – 引脚号14
GPIO45 – 引脚号64
GPIO46 – 引脚号13(不可与GPIO23同时为gpio)
GPIO47 – 引脚号116
GPIO48 – 引脚号31
-
-
- EC800G平台引脚对应关系 -GPIO1 – 引脚号30(不可与GPIO45同时为gpio)
GPIO2 – 引脚号31(不可与GPIO46同时为gpio)
GPIO3 – 引脚号32(不可与GPIO47同时为gpio)
GPIO4 – 引脚号33(不可与GPIO48同时为gpio)
GPIO5 – 引脚号49
GPIO6 – 引脚号50(不可与GPIO50同时为gpio)
GPIO7 – 引脚号51
GPIO8 – 引脚号52
GPIO9 – 引脚号53
GPIO10 – 引脚号54
GPIO11 – 引脚号55
GPIO12 – 引脚号25
GPIO13 – 引脚号57(不可与GPIO49同时为gpio)
GPIO14 – 引脚号58(不可与GPIO20同时为gpio)
GPIO15 – 引脚号84
GPIO16 – 引脚号81
GPIO17 – 引脚号76(不可与GPIO35同时为gpio)
GPIO18 – 引脚号77
GPIO19 – 引脚号82
GPIO20 – 引脚号83(不可与GPIO14同时为gpio)
GPIO21 – 引脚号86(不可与GPIO34同时为gpio)
GPIO22 – 引脚号87
GPIO23 – 引脚号66
GPIO24 – 引脚号67
GPIO25 – 引脚号17
GPIO26 – 引脚号18
GPIO27 – 引脚号19
GPIO28 – 引脚号20
GPIO29 – 引脚号21
GPIO30 – 引脚号22
GPIO31 – 引脚号23
GPIO32 – 引脚号28
GPIO33 – 引脚号29
GPIO34 – 引脚号38(不可与GPIO21同时为gpio)
GPIO35 – 引脚号39(不可与GPIO17同时为gpio)
GPIO36 – 引脚号16
GPIO37 – 引脚号78
GPIO38 – 引脚号85
GPIO39 – 引脚号68
GPIO40 – 引脚号69
GPIO41 – 引脚号80(不可与GPIO44同时为gpio)
GPIO42 – 引脚号107
GPIO43 – 引脚号103
GPIO44 – 引脚号101(不可与GPIO41同时为gpio)
GPIO45 – 引脚号79(不可与GPIO1同时为gpio)
GPIO46 – 引脚号100(不可与GPIO2同时为gpio)
GPIO47 – 引脚号108(不可与GPIO3同时为gpio)
GPIO48 – 引脚号109(不可与GPIO4同时为gpio)
GPIO49 – 引脚号75(不可与GPIO13同时为gpio)
GPIO50 – 引脚号74(不可与GPIO6同时为gpio)
-
-
- EG912U平台引脚对应关系 -GPIO1 – 引脚号4(不可与GPIO40同时为GPIO)
GPIO2 – 引脚号5(不可与GPIO36同时为GPIO)
GPIO3 – 引脚号6(不可与GPIO35同时为GPIO)
GPIO4 – 引脚号7(不可与GPIO8同时为GPIO)
GPIO5 – 引脚号18
GPIO6 – 引脚号19
GPIO7 – 引脚号1(不可与GPIO19同时为GPIO)
GPIO8 – 引脚号16(不可与GPIO4同时为GPIO)
GPIO10 – 引脚号26(EG912UGLAA不支持)
GPIO11 – 引脚号27(不可与GPIO31同时为GPIO)
GPIO12 – 引脚号28(不可与GPIO29同时为GPIO)
GPIO13 – 引脚号40
GPIO14 – 引脚号41
GPIO15 – 引脚号64(EG912UGLAA不支持)
GPIO16 – 引脚号20(不可与GPIO28同时为GPIO)
GPIO17 – 引脚号21
GPIO18 – 引脚号30
GPIO19 – 引脚号108(不可与GPIO7同时为GPIO)
GPIO20 – 引脚号88(EG912UGLAA不支持)
GPIO21 – 引脚号36(不可与GPIO39同时为GPIO)
GPIO22 – 引脚号37(不可与GPIO30同时为GPIO)
GPIO23 – 引脚号38
GPIO24 – 引脚号39
GPIO25 – 引脚号42(不可与GPIO26同时为GPIO)
GPIO26 – 引脚号78(不可与GPIO25同时为GPIO)
GPIO27 – 引脚号83(不可与GPIO32同时为GPIO)
GPIO28 – 引脚号92(不可与GPIO16同时为GPIO)
GPIO29 – 引脚号95(不可与GPIO12同时为GPIO)
GPIO30 – 引脚号111(不可与GPIO22同时为GPIO)
GPIO31 – 引脚号97(不可与GPIO11同时为GPIO)
GPIO32 – 引脚号98(不可与GPIO27同时为GPIO)
GPIO34 – 引脚号104
GPIO35 – 引脚号105(不可与GPIO3同时为GPIO)
GPIO36 – 引脚号106(不可与GPIO2同时为GPIO)
GPIO38 – 引脚号114
GPIO39 – 引脚号115(不可与GPIO21同时为GPIO)
GPIO40 – 引脚号116(不可与GPIO1同时为GPIO) -
-
- EC600K平台引脚对应关系 -GPIO1 – 引脚号10
GPIO2 – 引脚号11
GPIO3 – 引脚号12
GPIO4 – 引脚号13
GPIO5 – 引脚号14
GPIO6 – 引脚号15
GPIO7 – 引脚号16
GPIO8 – 引脚号39
GPIO9 – 引脚号40
GPIO10 – 引脚号48
GPIO11 – 引脚号58
GPIO12 – 引脚号59
GPIO13 – 引脚号60
GPIO14 – 引脚号61
GPIO15 – 引脚号62
GPIO16 – 引脚号63
GPIO17 – 引脚号69
GPIO18 – 引脚号70
GPIO19 – 引脚号1
GPIO20 – 引脚号3
GPIO21 – 引脚号49
GPIO22 – 引脚号50
GPIO23 – 引脚号51
GPIO24 – 引脚号52
GPIO25 – 引脚号53
GPIO26 – 引脚号54
GPIO27 – 引脚号55(boot脚,内部有上拉)
GPIO28 – 引脚号56
GPIO29 – 引脚号57
GPIO30 – 引脚号2
GPIO31 – 引脚号66
GPIO32 – 引脚号65
GPIO33 – 引脚号67
GPIO34 – 引脚号64
GPIO35 – 引脚号4
GPIO36 – 引脚号31
GPIO37 – 引脚号32
GPIO38 – 引脚号33
GPIO39 – 引脚号34 -
- - - -
- EC800K/EG800K平台引脚对应关系 -GPIO1 – 引脚号30
GPIO2 – 引脚号31
GPIO3 – 引脚号32
GPIO4 – 引脚号33
GPIO5 – 引脚号49
GPIO6 – 引脚号50
GPIO7 – 引脚号51
GPIO8 – 引脚号52
GPIO9 – 引脚号53
GPIO10 – 引脚号54(EG800KCN不可用)
GPIO11 – 引脚号55(EG800KCN不可用)
GPIO12 – 引脚号56(EG800KCN不可用)
GPIO13 – 引脚号57(EG800KCN不可用)
GPIO14 – 引脚号58(EG800KCN不可用)
GPIO15 – 引脚号80(EG800KCN不可用)
GPIO16 – 引脚号81
GPIO17 – 引脚号76
GPIO18 – 引脚号77
GPIO19 – 引脚号82
GPIO21 – 引脚号86
GPIO22 – 引脚号87
GPIO23 – 引脚号66
GPIO24 – 引脚号67
GPIO25 – 引脚号17
GPIO26 – 引脚号18
GPIO27 – 引脚号19
GPIO28 – 引脚号20
GPIO29 – 引脚号21
GPIO30 – 引脚号22
GPIO31 – 引脚号23
GPIO32 – 引脚号28(EG800KCN不可用)
GPIO33 – 引脚号29(EG800KCN不可用)
GPIO36 – 引脚号16
GPIO37 – 引脚号78
GPIO38 – 引脚号68
GPIO39 – 引脚号69
GPIO40 – 引脚号74
GPIO41 – 引脚号75
GPIO44 – 引脚号25
GPIO47 – 引脚号79 -
- - -
- FCM360W平台引脚对应关系 -引脚号6
引脚号7
引脚号8
引脚号9
引脚号10
引脚号12
引脚号13
引脚号14
引脚号15
引脚号16
引脚号19
引脚号20
引脚号21
引脚号22
引脚号23
引脚号29
-
- -
- FCM362K平台引脚对应关系 -引脚号6
引脚号7
引脚号8
引脚号9
引脚号14
引脚号15
引脚号16
引脚号27
引脚号28
引脚号29
引脚号30
引脚号31
引脚号34
引脚号35
引脚号37
-
- -
- BC32平台引脚对应关系 -GPIO1 – 引脚号12
GPIO2 – 引脚号13
GPIO3 – 引脚号41
GPIO4 – 引脚号42
GPIO5 – 引脚号21
GPIO6 – 引脚号22
GPIO7 – 引脚号23
GPIO8 – 引脚号24
GPIO9 – 引脚号26
GPIO10 – 引脚号43
GPIO11 – 引脚号44 -
- -
- BC92平台引脚对应关系 -GPIO1 – 引脚号12
GPIO2 – 引脚号13
GPIO3 – 引脚号41
GPIO4 – 引脚号42
GPIO5 – 引脚号21
GPIO6 – 引脚号22
GPIO7 – 引脚号23
GPIO8 – 引脚号24
GPIO9 – 引脚号26
GPIO10 – 引脚号43
GPIO11 – 引脚号44 -
-
- EG915N平台引脚对应关系 -GPIO1 – 引脚号4
GPIO2 – 引脚号5
GPIO3 – 引脚号6
GPIO4 – 引脚号7
GPIO5 – 引脚号18
GPIO6 – 引脚号19
GPIO7 – 引脚号1
GPIO8 – 引脚号38
GPIO9 – 引脚号25
GPIO10 – 引脚号26
GPIO11 – 引脚号27
GPIO12 – 引脚号28
GPIO13 – 引脚号40
GPIO14 – 引脚号41
GPIO15 – 引脚号64
GPIO16 – 引脚号20
GPIO17 – 引脚号21
GPIO18 – 引脚号34
GPIO19 – 引脚号35
GPIO20 – 引脚号30
GPIO21 – 引脚号22
GPIO22 – 引脚号36
GPIO23 – 引脚号37
GPIO24 – 引脚号16
GPIO25 – 引脚号39
GPIO26 – 引脚号23
GPIO27 – 引脚号78
GPIO28 – 引脚号83
GPIO29 – 引脚号107
GPIO30 – 引脚号92
GPIO31 – 引脚号95
GPIO32 – 引脚号97
GPIO33 – 引脚号98
GPIO34 – 引脚号104
GPIO35 – 引脚号105
GPIO36 – 引脚号106
GPIO37 – 引脚号103
GPIO38 – 引脚号96
GPIO39 – 引脚号114
GPIO40 – 引脚号115
GPIO41 – 引脚号116 -
+**平台引脚对应关系:** +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号22
GPIO2引脚号23
GPIO3引脚号38
GPIO4引脚号53
GPIO5引脚号54
GPIO6引脚号104
GPIO7引脚号105
GPIO8引脚号106
GPIO9引脚号107
GPIO10引脚号178
GPIO11引脚号195
GPIO12引脚号196
GPIO13引脚号197
GPIO14引脚号198
GPIO15引脚号199
GPIO16引脚号203
GPIO17引脚号204
GPIO18引脚号214
GPIO19引脚号215
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号10
GPIO2引脚号11
GPIO3引脚号12
GPIO4引脚号13
GPIO5引脚号14
GPIO6引脚号15
GPIO7引脚号16
GPIO8引脚号39
GPIO9引脚号40
GPIO10引脚号48
GPIO11引脚号58
GPIO12引脚号59
GPIO13引脚号60
GPIO14引脚号61
GPIO15引脚号62
GPIO16引脚号63
GPIO17引脚号69
GPIO18引脚号70
GPIO19引脚号1
GPIO20引脚号3
GPIO21引脚号49
GPIO22引脚号50
GPIO23引脚号51
GPIO24引脚号52
GPIO25引脚号53
GPIO26引脚号54
GPIO27引脚号55
GPIO28引脚号56
GPIO29引脚号57
GPIO30引脚号2
GPIO31引脚号66
GPIO32引脚号65
GPIO33引脚号67
GPIO34引脚号64
GPIO35引脚号4
GPIO36引脚号31
GPIO37引脚号32
GPIO38引脚号33
GPIO39引脚号34
GPIO40引脚号71
GPIO41引脚号72
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号10
GPIO2引脚号11
GPIO3引脚号12
GPIO4引脚号13
GPIO5引脚号14
GPIO6引脚号15
GPIO7引脚号16
GPIO8引脚号39
GPIO9引脚号40
GPIO10引脚号48
GPIO11引脚号58
GPIO12引脚号59
GPIO13引脚号60
GPIO14引脚号61
GPIO15引脚号62
GPIO16引脚号63
GPIO17引脚号69
GPIO18引脚号70
GPIO19引脚号1
GPIO20引脚号3
GPIO21引脚号49
GPIO22引脚号50
GPIO23引脚号51
GPIO24引脚号52
GPIO25引脚号53
GPIO26引脚号54
GPIO27引脚号55
GPIO28引脚号56
GPIO29引脚号57
GPIO30引脚号2
GPIO31引脚号66
GPIO32引脚号65
GPIO33引脚号67
GPIO34引脚号64
GPIO35引脚号4
GPIO36引脚号31
GPIO37引脚号32
GPIO38引脚号33
GPIO39引脚号34
GPIO40引脚号71
GPIO41引脚号72
GPIO42引脚号109
GPIO43引脚号110
GPIO44引脚号112
GPIO45引脚号111
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号61(不可与GPIO31同时为gpio)
GPIO2引脚号58(不可与GPIO32同时为gpio)
GPIO3引脚号34(不可与GPIO41同时为gpio)
GPIO4引脚号60(不可与GPIO34同时为gpio)
GPIO5引脚号69(不可与GPIO35同时为gpio)
GPIO6引脚号70(不可与GPIO36同时为gpio)
GPIO7引脚号123(不可与GPIO43同时为gpio)
GPIO8引脚号118
GPIO9引脚号9(不可与GPIO47同时为gpio)
GPIO10引脚号1(不可与GPIO37同时为gpio)
GPIO11引脚号4(不可与GPIO38同时为gpio)
GPIO12引脚号3(不可与GPIO39同时为gpio)
GPIO13引脚号2(不可与GPIO40同时为gpio)
GPIO14引脚号54
GPIO15引脚号57
GPIO16引脚号56
GPIO17引脚号12
GPIO18引脚号33(不可与GPIO42同时为gpio)
GPIO19引脚号124(不可与GPIO44同时为gpio)
GPIO20引脚号122(不可与GPIO45同时为gpio)
GPIO21引脚号121(不可与GPIO46同时为gpio)
GPIO22引脚号48
GPIO23引脚号39
GPIO24引脚号40
GPIO25引脚号49
GPIO26引脚号50
GPIO27引脚号53
GPIO28引脚号52
GPIO29引脚号51
GPIO30引脚号59(不可与GPIO33同时为gpio)
GPIO31引脚号66(不可与GPIO1同时为gpio)
GPIO32引脚号63(不可与GPIO2同时为gpio)
GPIO33引脚号67(不可与GPIO30同时为gpio)
GPIO34引脚号65(不可与GPIO4同时为gpio)
GPIO35引脚号137(不可与GPIO5同时为gpio)
GPIO36引脚号62(不可与GPIO6同时为gpio)
GPIO37引脚号98(不可与GPIO10同时为gpio)
GPIO38引脚号95(不可与GPIO11同时为gpio)
GPIO39引脚号119(不可与GPIO12同时为gpio)
GPIO40引脚号100(不可与GPIO13同时为gpio)
GPIO41引脚号120(不可与GPIO3同时为gpio)
GPIO42引脚号16(不可与GPIO18同时为gpio)
GPIO43引脚号10(不可与GPIO7同时为gpio)
GPIO44引脚号14(不可与GPIO19同时为gpio)
GPIO45引脚号15(不可与GPIO20同时为gpio)
GPIO46引脚号13(不可与GPIO21同时为gpio)
GPIO47引脚号99(不可与GPIO9同时为gpio)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号27(不可与GPIO31同时为gpio)
GPIO2引脚号26(不可与GPIO32同时为gpio)
GPIO3引脚号24(不可与GPIO33同时为gpio)
GPIO4引脚号25(不可与GPIO34同时为gpio)
GPIO5引脚号13(不可与GPIO17同时为gpio)
GPIO6引脚号135(不可与GPIO36同时为gpio)
GPIO7引脚号136(不可与GPIO44同时为gpio)
GPIO8引脚号133
GPIO9引脚号3(不可与GPIO37同时为gpio)
GPIO10引脚号40(不可与GPIO38同时为gpio)
GPIO11引脚号37(不可与GPIO39同时为gpio)
GPIO12引脚号38(不可与GPIO40同时为gpio)
GPIO13引脚号39(不可与GPIO41同时为gpio)
GPIO14引脚号5
GPIO15引脚号141
GPIO16引脚号142
GPIO17引脚号121(不可与GPIO5同时为gpio)
GPIO18引脚号65(不可与GPIO42同时为gpio)
GPIO19引脚号64(不可与GPIO43同时为gpio)
GPIO20引脚号139(不可与GPIO45同时为gpio)
GPIO21引脚号126(不可与GPIO46同时为gpio)
GPIO22引脚号127(不可与GPIO47同时为gpio)
GPIO23引脚号33
GPIO24引脚号31
GPIO25引脚号30
GPIO26引脚号29
GPIO27引脚号28
GPIO28引脚号1
GPIO29引脚号2
GPIO30引脚号4
GPIO31引脚号125(不可与GPIO1同时为gpio)
GPIO32引脚号124(不可与GPIO2同时为gpio)
GPIO33引脚号123(不可与GPIO3同时为gpio)
GPIO34引脚号122(不可与GPIO4同时为gpio)
GPIO35引脚号42
GPIO36引脚号119(不可与GPIO6同时为gpio)
GPIO37引脚号134(不可与GPIO9同时为gpio)
GPIO38引脚号132(不可与GPIO10同时为gpio)
GPIO39引脚号131(不可与GPIO11同时为gpio)
GPIO40引脚号130(不可与GPIO12同时为gpio)
GPIO41引脚号129(不可与GPIO13同时为gpio)
GPIO42引脚号61(不可与GPIO18同时为gpio)
GPIO43引脚号62(不可与GPIO19同时为gpio)
GPIO44引脚号63(不可与GPIO7同时为gpio)
GPIO45引脚号66(不可与GPIO20同时为gpio)
GPIO46引脚号6(不可与GPIO21同时为gpio)
GPIO47引脚号23(不可与GPIO22同时为gpio)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号27
GPIO2引脚号26
GPIO3引脚号24
GPIO4引脚号25
GPIO5引脚号5
GPIO6引脚号135
GPIO7引脚号136
GPIO8引脚号68
GPIO9引脚号3
GPIO10引脚号40
GPIO11引脚号37
GPIO12引脚号38
GPIO13引脚号39
GPIO14引脚号67
GPIO15引脚号13
GPIO18引脚号65
GPIO19引脚号64
GPIO20引脚号139
GPIO22引脚号127
GPIO27引脚号28
GPIO28引脚号1
GPIO29引脚号2
GPIO30引脚号4
GPIO35引脚号42
GPIO36引脚号119
GPIO43引脚号62
GPIO44引脚号63(EC200ACN_LA不支持)
GPIO45引脚号66
GPIO46引脚号6
GPIO47引脚号23
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号30
GPIO2引脚号31
GPIO3引脚号32
GPIO4引脚号33
GPIO5引脚号49
GPIO6引脚号50
GPIO7引脚号51
GPIO8引脚号52
GPIO9引脚号53
GPIO10引脚号54
GPIO11引脚号55
GPIO12引脚号56
GPIO13引脚号57
GPIO14引脚号58
GPIO15引脚号80
GPIO16引脚号81
GPIO17引脚号76
GPIO18引脚号77
GPIO19引脚号82
GPIO20引脚号83
GPIO21引脚号86
GPIO22引脚号87
GPIO23引脚号66
GPIO24引脚号67
GPIO25引脚号17
GPIO26引脚号18
GPIO27引脚号19
GPIO28引脚号20
GPIO29引脚号21
GPIO30引脚号22
GPIO31引脚号23
GPIO32引脚号28
GPIO33引脚号29
GPIO34引脚号38
GPIO35引脚号39
GPIO36引脚号16
GPIO37引脚号78
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号3
GPIO2引脚号4
GPIO3引脚号5
GPIO4引脚号6
GPIO5引脚号16
GPIO6引脚号20
GPIO7引脚号21
GPIO8引脚号22
GPIO9引脚号23
GPIO10引脚号25
GPIO11引脚号28
GPIO12引脚号29
GPIO13引脚号30
GPIO14引脚号31
GPIO15引脚号32
GPIO16引脚号33
GPIO17引脚号2
GPIO18引脚号8
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号4
GPIO2引脚号5
GPIO3引脚号6
GPIO4引脚号7
GPIO5引脚号18
GPIO6引脚号19
GPIO7引脚号22
GPIO8引脚号23
GPIO9引脚号25
GPIO10引脚号26
GPIO11引脚号27
GPIO12引脚号28
GPIO13引脚号40
GPIO14引脚号41
GPIO15引脚号64
GPIO16引脚号65
GPIO17引脚号66
GPIO18引脚号85
GPIO19引脚号86
GPIO20引脚号87
GPIO21引脚号88
GPIO22引脚号20
GPIO23引脚号21
GPIO24引脚号30
GPIO25引脚号34
GPIO26引脚号35
GPIO27引脚号36
GPIO28引脚号37
GPIO29引脚号38
GPIO30引脚号39
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号4(不可与GPIO41同时为gpio)
GPIO2引脚号5(不可与GPIO36同时为gpio)
GPIO3引脚号6(不可与GPIO35同时为gpio)
GPIO4引脚号7(不可与GPIO24同时为gpio)
GPIO5引脚号18
GPIO6引脚号19
GPIO7引脚号1(不可与GPIO37同时为gpio)
GPIO8引脚号38
GPIO9引脚号25
GPIO10引脚号26
GPIO11引脚号27(不可与GPIO32同时为gpio)
GPIO12引脚号28(不可与GPIO31同时为gpio)
GPIO13引脚号40
GPIO14引脚号41
GPIO15引脚号64
GPIO16引脚号20(不可与GPIO30同时为gpio)
GPIO17引脚号21
GPIO18引脚号85(使用双卡单待功能是不可复用)
GPIO19引脚号86(使用双卡单待功能是不可复用)
GPIO20引脚号30
GPIO21引脚号88
GPIO22引脚号36(不可与GPIO40同时为gpio)
GPIO23引脚号37(不可与GPIO38同时为gpio)
GPIO24引脚号16(不可与GPIO4同时为gpio)
GPIO25引脚号39
GPIO26引脚号42(不可与GPIO27同时为gpio)
GPIO27引脚号78(不可与GPIO26同时为gpio)
GPIO28引脚号83(不可与GPIO33同时为gpio)
GPIO29引脚号84(使用双卡单待功能时不可复用)
GPIO30引脚号92(不可与GPIO16同时为gpio)
GPIO31引脚号95(不可与GPIO95同时为gpio)
GPIO32引脚号97(不可与GPIO11同时为gpio)
GPIO33引脚号98(不可与GPIO28同时为gpio)
GPIO34引脚号104
GPIO35引脚号105(不可与GPIO3同时为gpio)
GPIO36引脚号106(不可与GPIO2同时为gpio)
GPIO37引脚号108(不可与GPIO4同时为gpio)
GPIO38引脚号111(不可与GPIO23同时为gpio)
GPIO39引脚号114
GPIO40引脚号115(不可与GPIO22同时为gpio)
GPIO41引脚号116(不可与GPIO1同时为gpio)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号30
GPIO2引脚号31
GPIO3引脚号32
GPIO4引脚号33
GPIO5引脚号49
GPIO6引脚号50
GPIO7引脚号51
GPIO8引脚号52
GPIO9引脚号53
GPIO10引脚号54
GPIO11引脚号55
GPIO12引脚号56
GPIO13引脚号57
GPIO14引脚号58
GPIO15引脚号80
GPIO16引脚号81
GPIO17引脚号76
GPIO18引脚号77
GPIO19引脚号82
GPIO20引脚号83
GPIO21引脚号86(EG810M_EU不支持)
GPIO22引脚号87(EG810M_EU不支持)
GPIO23引脚号66
GPIO24引脚号67
GPIO25引脚号17
GPIO26引脚号18
GPIO27引脚号19
GPIO28引脚号20
GPIO29引脚号21
GPIO30引脚号22
GPIO31引脚号23
GPIO32引脚号28
GPIO33引脚号29
GPIO34引脚号38
GPIO35引脚号39
GPIO36引脚号16
GPIO37引脚号78
GPIO38引脚号68
GPIO39引脚号69
GPIO40引脚号74
GPIO41引脚号75
GPIO42引脚号84(EG810M_EU不支持)
GPIO43引脚号85(EG810M_EU不支持)
GPIO44引脚号25
GPIO45引脚号105
GPIO46引脚号104
GPIO47引脚号79
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号4
GPIO2引脚号5
GPIO3引脚号6
GPIO4引脚号7
GPIO5引脚号18
GPIO6引脚号19
GPIO7引脚号1
GPIO8引脚号16
GPIO9引脚号25
GPIO10引脚号26
GPIO11引脚号27
GPIO12引脚号28
GPIO13引脚号40
GPIO14引脚号41
GPIO15引脚号64
GPIO16引脚号20
GPIO17引脚号21
GPIO18引脚号30
GPIO19引脚号34
GPIO20引脚号35
GPIO21引脚号36
GPIO22引脚号37
GPIO23引脚号38
GPIO24引脚号39
GPIO25引脚号42
GPIO26引脚号78
GPIO27引脚号83
GPIO28引脚号92
GPIO29引脚号95
GPIO30引脚号96
GPIO31引脚号97
GPIO32引脚号98
GPIO33引脚号103
GPIO34引脚号104
GPIO35引脚号105
GPIO36引脚号106
GPIO37引脚号107
GPIO38引脚号114
GPIO39引脚号115
GPIO40引脚号116
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
注:
1.I&PU:输入模式下,仅支持浮空和上拉模式
2.I&PD:输入模式下,仅支持浮空和下拉模式
3.EC600E的ExtInt功能不支持上升和下降沿同时触发中断
GPIO1引脚号10(I&PU)
GPIO2引脚号11(57)(I&PU)(不可与GPIO41同时为gpio)
GPIO3引脚号12(56)(I&PU)(不可与GPIO40同时为gpio)
GPIO4引脚号13(I&PU)
GPIO5引脚号14(I&PU)
GPIO6引脚号15(I&PU)
GPIO7引脚号16(I&PU)
GPIO8引脚号39(I&PD)
GPIO9引脚号40(I&PU)
GPIO10引脚号48(I&PD)
GPIO11引脚号58(I&PD)
GPIO12引脚号59(I&PD)
GPIO13引脚号60(I&PD)(不可与GPIO36同时为gpio)
GPIO14引脚号61(I&PD)
GPIO15引脚号62(I&PU)(EC600ECN_LE&LQ不可用)
GPIO16引脚号63(I&PD)(EC600ECN_LE&LQ不可用)
GPIO17引脚号69(I&PU)(EC600ECN_LE&LQ不可用)
GPIO18引脚号70(I&PU)(EC600ECN_LE&LQ不可用)
GPIO22引脚号50(I&PD)
GPIO23引脚号51(I&PD)
GPIO24引脚号52(I&PD)
GPIO25引脚号53(I&PD)
GPIO26引脚号54(I&PD)
GPIO31引脚号66(I&PU)(EC600ECN_LE&LQ不可用)
GPIO32引脚号65(I&PU)(EC600ECN_LE&LQ不可用)
GPIO33引脚号67(I&PU)(EC600ECN_LE&LQ不可用)
GPIO34引脚号64(I&PU)(EC600ECN_LE&LQ不可用)
GPIO36引脚号31(I&PU)(不可与GPIO13同时为gpio)
GPIO37引脚号32(I&PU)
GPIO38引脚号33(I&PU)
GPIO39引脚号34(I&PU)
GPIO40引脚号71(I&PU)(不可与GPIO3同时为gpio)
GPIO41引脚号72(I&PU)(不可与GPIO2同时为gpio)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
注:
1.I&PU:输入模式下,仅支持浮空和上拉模式
2.I&PD:输入模式下,仅支持浮空和下拉模式
3.EC800ECN_LE&LQ&CG不可用:指该型号模块的引脚内部悬空,所以无法使用
4.模组的Pin67、Pin66 和Pin57、Pin58 共用内部同一路IO,即改变GPIO13的电平,Pin57和Pin67会同时变化
5.在EC800ECN_LE&LQ&CG型号的模组上,Pin57、Pin58内部悬空,所以仅可使用Pin67、Pin66作为GPIO13、14
6.EC800E的ExtInt功能不支持上升和下降沿同时触发中断
7.Pin55、80、81分别不可与Pin64、63、62(SIM2管脚)同时使用
GPIO1引脚号30(I&PD)
GPIO2引脚号31(I&PD)
GPIO3引脚号32(I&PD)
GPIO4引脚号33(I&PD)(不可与GPIO25同时为gpio)
GPIO5引脚号49(I&PD)(EC800ECN_LE&LQ&CG不可用)
GPIO6引脚号50(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO7引脚号51(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO8引脚号52(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO9引脚号53(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO10引脚号54(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO11引脚号55(I&PU)(EC800ECN_LE&LQ&CG不可用,不可与64脚同时使用)
GPIO12引脚号56(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO13引脚号57(67)(I&PU)(EC800ECN_LE&LQ&CG引脚号57无法使用)(不可与GPIO34同时为gpio)
GPIO14引脚号58(66)(I&PU)(EC800ECN_LE&LQ&CG引脚号58无法使用)(不可与GPIO35同时为gpio)
GPIO15引脚号80(I&PU)(EC800ECN_LE&LQ&CG不可用,不可与63脚同时使用)
GPIO16引脚号81(I&PU)(EC800ECN_LE&LQ&CG不可用,不可与62脚同时使用)
GPIO25引脚号17(I&PU)(不可与GPIO4同时为gpio)
GPIO26引脚号18(I&PU)
GPIO27引脚号19(I&PD)
GPIO28引脚号20(I&PU)
GPIO29引脚号21(I&PD)
GPIO30引脚号22(I&PU)
GPIO31引脚号23(I&PU)
GPIO32引脚号28(I&PU)
GPIO33引脚号29(I&PU)
GPIO34引脚号38(I&PU)(不可与GPIO13同时为gpio)
GPIO35引脚号39(I&PU)(不可与GPIO14同时为gpio)
GPIO36引脚号16(I&PD)
GPIO37引脚号78(I&PU)(EC800ECN_LE&LQ&CG不可用)
GPIO38引脚号85(I&PD)(EC800ECN_LE&LQ&LC&CG不可用)
GPIO39引脚号108(I&PD)(EC800ECN_LE&LQ&LC&CG不可用)
GPIO40引脚号109(I&PD)(EC800ECN_LE&LQ&LC&CG不可用)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
注:
1.AGPIO在睡眠模式状态下,电平状态保持不变,普通GPIO在睡眠状态下电平不能保持
2.GPIO27、GPIO39、GPIO40驱动能力较弱,建议仅做输入引脚使用
GPIO1引脚号30
GPIO2引脚号31
GPIO3引脚号32
GPIO4引脚号33
GPIO5引脚号49
GPIO6引脚号50
GPIO7引脚号51
GPIO8引脚号52
GPIO9引脚号53
GPIO10引脚号54
GPIO12引脚号56
GPIO13引脚号57
GPIO14引脚号58
GPIO17引脚号25(AGPIO)
GPIO23引脚号66(不可与GPIO26同时为gpio)
GPIO24引脚号67(不可与GPIO25同时为gpio)
GPIO25引脚号17(不可与GPIO24同时为gpio)
GPIO26引脚号18(不可与GPIO23同时为gpio)
GPIO27引脚号19(AGPIO,驱动能力较弱,建议仅作输入引脚使用)
GPIO28引脚号20(AGPIO)
GPIO29引脚号21(AGPIO)
GPIO30引脚号22
GPIO31引脚号23
GPIO32引脚号28
GPIO33引脚号29
GPIO34引脚号38
GPIO35引脚号39
GPIO36引脚号16(AGPIO)
GPIO37引脚号78
GPIO38引脚号85(AGPIO)
GPIO39引脚号108(AGPIO,驱动能力较弱,建议仅作输入引脚使用)
GPIO40引脚号109(AGPIO,驱动能力较弱,建议仅作输入引脚使用)
GPIO41引脚号101
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号61(不可与GPIO24同时为gpio)
GPIO2引脚号58(不可与GPIO25同时为gpio)
GPIO3引脚号34
GPIO4引脚号60
GPIO5引脚号69(不可与GPIO10同时为gpio)
GPIO6引脚号70(不可与GPIO11同时为gpio)
GPIO7引脚号123
GPIO8引脚号132
GPIO9引脚号9
GPIO10引脚号1(不可与GPIO5同时为gpio)
GPIO11引脚号4(不可与GPIO6同时为gpio)
GPIO12引脚号3
GPIO13引脚号2
GPIO14引脚号54
GPIO15引脚号57
GPIO16引脚号56
GPIO17引脚号12
GPIO18引脚号33
GPIO19引脚号124(不可与GPIO37同时为gpio)
GPIO20引脚号104
GPIO21引脚号103
GPIO22引脚号48
GPIO23引脚号39(不可与GPIO46同时为gpio)
GPIO24引脚号40(不可与GPIO1同时为gpio)
GPIO25引脚号49(不可与GPIO2同时为gpio)
GPIO26引脚号50(不可与GPIO30同时为gpio)
GPIO27引脚号53
GPIO28引脚号52
GPIO29引脚号51
GPIO30引脚号59(不可与GPIO26同时为gpio)
GPIO31引脚号66
GPIO32引脚号63
GPIO33引脚号67
GPIO34引脚号65
GPIO35引脚号137
GPIO36引脚号62
GPIO37引脚号105(不可与GPIO19同时为gpio)
GPIO38引脚号106
GPIO39引脚号107
GPIO40引脚号126
GPIO41引脚号120
GPIO42引脚号16
GPIO43引脚号10
GPIO44引脚号14
GPIO45引脚号64
GPIO46引脚号13(不可与GPIO23同时为gpio)
GPIO47引脚号116
GPIO48引脚号31
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号30(不可与GPIO45同时为gpio)
GPIO2引脚号31(不可与GPIO46同时为gpio)
GPIO3引脚号32(不可与GPIO47同时为gpio)
GPIO4引脚号33(不可与GPIO48同时为gpio)
GPIO5引脚号49
GPIO6引脚号50(不可与GPIO50同时为gpio)
GPIO7引脚号51
GPIO8引脚号52
GPIO9引脚号53
GPIO10引脚号54
GPIO11引脚号55
GPIO12引脚号25
GPIO13引脚号57(不可与GPIO49同时为gpio)
GPIO14引脚号58(不可与GPIO20同时为gpio)
GPIO15引脚号84
GPIO16引脚号81
GPIO17引脚号76(不可与GPIO35同时为gpio)
GPIO18引脚号77
GPIO19引脚号82
GPIO20引脚号83(不可与GPIO14同时为gpio)
GPIO21引脚号86(不可与GPIO34同时为gpio)
GPIO22引脚号87
GPIO23引脚号66
GPIO24引脚号67
GPIO25引脚号17
GPIO26引脚号18
GPIO27引脚号19
GPIO28引脚号20
GPIO29引脚号21
GPIO30引脚号22
GPIO31引脚号23
GPIO32引脚号28
GPIO33引脚号29
GPIO34引脚号38(不可与GPIO21同时为gpio)
GPIO35引脚号39(不可与GPIO17同时为gpio)
GPIO36引脚号16
GPIO37引脚号78
GPIO38引脚号85
GPIO39引脚号68
GPIO40引脚号69
GPIO41引脚号80(不可与GPIO44同时为gpio)
GPIO42引脚号107
GPIO43引脚号103
GPIO44引脚号101(不可与GPIO41同时为gpio)
GPIO45引脚号79(不可与GPIO1同时为gpio)
GPIO46引脚号100(不可与GPIO2同时为gpio)
GPIO47引脚号108(不可与GPIO3同时为gpio)
GPIO48引脚号109(不可与GPIO4同时为gpio)
GPIO49引脚号75(不可与GPIO13同时为gpio)
GPIO50引脚号74(不可与GPIO6同时为gpio)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号4(不可与GPIO40同时为GPIO)
GPIO2引脚号5(不可与GPIO36同时为GPIO)
GPIO3引脚号6(不可与GPIO35同时为GPIO)
GPIO4引脚号7(不可与GPIO8同时为GPIO)
GPIO5引脚号18
GPIO6引脚号19
GPIO7引脚号1(不可与GPIO19同时为GPIO)
GPIO8引脚号16(不可与GPIO4同时为GPIO)
GPIO10引脚号26(EG912UGLAA不支持)
GPIO11引脚号27(不可与GPIO31同时为GPIO)
GPIO12引脚号28(不可与GPIO29同时为GPIO)
GPIO13引脚号40
GPIO14引脚号41
GPIO15引脚号64(EG912UGLAA不支持)
GPIO16引脚号20(不可与GPIO28同时为GPIO)
GPIO17引脚号21
GPIO18引脚号30
GPIO19引脚号108(不可与GPIO7同时为GPIO)
GPIO20引脚号88(EG912UGLAA不支持)
GPIO21引脚号36(不可与GPIO39同时为GPIO)
GPIO22引脚号37(不可与GPIO30同时为GPIO)
GPIO23引脚号38
GPIO24引脚号39
GPIO25引脚号42(不可与GPIO26同时为GPIO)
GPIO26引脚号78(不可与GPIO25同时为GPIO)
GPIO27引脚号83(不可与GPIO32同时为GPIO)
GPIO28引脚号92(不可与GPIO16同时为GPIO)
GPIO29引脚号95(不可与GPIO12同时为GPIO)
GPIO30引脚号111(不可与GPIO22同时为GPIO)
GPIO31引脚号97(不可与GPIO11同时为GPIO)
GPIO32引脚号98(不可与GPIO27同时为GPIO)
GPIO34引脚号104
GPIO35引脚号105(不可与GPIO3同时为GPIO)
GPIO36引脚号106(不可与GPIO2同时为GPIO)
GPIO38引脚号114
GPIO39引脚号115(不可与GPIO21同时为GPIO)
GPIO40引脚号116(不可与GPIO1同时为GPIO)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号10
GPIO2引脚号11
GPIO3引脚号12
GPIO4引脚号13
GPIO5引脚号14
GPIO6引脚号15
GPIO7引脚号16
GPIO8引脚号39
GPIO9引脚号40
GPIO10引脚号48
GPIO11引脚号58
GPIO12引脚号59
GPIO13引脚号60
GPIO14引脚号61
GPIO15引脚号62
GPIO16引脚号63
GPIO17引脚号69
GPIO18引脚号70
GPIO19引脚号1
GPIO20引脚号3
GPIO21引脚号49
GPIO22引脚号50
GPIO23引脚号51
GPIO24引脚号52
GPIO25引脚号53
GPIO26引脚号54
GPIO27引脚号55(boot脚,内部有上拉)
GPIO28引脚号56
GPIO29引脚号57
GPIO30引脚号2
GPIO31引脚号66
GPIO32引脚号65
GPIO33引脚号67
GPIO34引脚号64
GPIO35引脚号4
GPIO36引脚号31
GPIO37引脚号32
GPIO38引脚号33
GPIO39引脚号34
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号30
GPIO2引脚号31
GPIO3引脚号32
GPIO4引脚号33
GPIO5引脚号49
GPIO6引脚号50
GPIO7引脚号51
GPIO8引脚号52
GPIO9引脚号53
GPIO10引脚号54(EG800KCN不可用)
GPIO11引脚号55(EG800KCN不可用)
GPIO12引脚号56(EG800KCN不可用)
GPIO13引脚号57(EG800KCN不可用)
GPIO14引脚号58(EG800KCN不可用)
GPIO15引脚号80(EG800KCN不可用)
GPIO16引脚号81
GPIO17引脚号76
GPIO18引脚号77
GPIO19引脚号82
GPIO21引脚号86
GPIO22引脚号87
GPIO23引脚号66
GPIO24引脚号67
GPIO25引脚号17
GPIO26引脚号18
GPIO27引脚号19
GPIO28引脚号20
GPIO29引脚号21
GPIO30引脚号22
GPIO31引脚号23
GPIO32引脚号28(EG800KCN不可用)
GPIO33引脚号29(EG800KCN不可用)
GPIO36引脚号16
GPIO37引脚号78
GPIO38引脚号68
GPIO39引脚号16
GPIO40引脚号74
GPIO41引脚号75
GPIO44引脚号25
GPIO47引脚号79
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
引脚号
引脚号6
引脚号7
引脚号8
引脚号9
引脚号10
引脚号12
引脚号13
引脚号14
引脚号15
引脚号16
引脚号19
引脚号20
引脚号21
引脚号22
引脚号23
引脚号29
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
引脚号
引脚号6
引脚号7
引脚号8
引脚号9
引脚号14
引脚号15
引脚号16
引脚号27
引脚号28
引脚号29
引脚号30
引脚号31
引脚号34
引脚号35
引脚号37
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号12
GPIO2引脚号13
GPIO3引脚号41
GPIO4引脚号42
GPIO5引脚号21
GPIO6引脚号22
GPIO7引脚号23
GPIO8引脚号24
GPIO9引脚号26
GPIO10引脚号43
GPIO11引脚号44
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPIO号引脚号
GPIO1引脚号4
GPIO2引脚号5
GPIO3引脚号6
GPIO4引脚号7
GPIO5引脚号18
GPIO6引脚号19
GPIO7引脚号1
GPIO8引脚号38
GPIO9引脚号25
GPIO10引脚号26
GPIO11引脚号27
GPIO12引脚号28
GPIO13引脚号40
GPIO14引脚号41
GPIO15引脚号64
GPIO16引脚号20
GPIO17引脚号21
GPIO18引脚号34
GPIO19引脚号35
GPIO20引脚号30
GPIO21引脚号22
GPIO22引脚号36
GPIO23引脚号37
GPIO24引脚号16
GPIO25引脚号39
GPIO26引脚号23
GPIO27引脚号78
GPIO28引脚号83
GPIO29引脚号107
GPIO30引脚号92
GPIO31引脚号95
GPIO32引脚号97
GPIO33引脚号98
GPIO34引脚号104
GPIO35引脚号105
GPIO36引脚号106
GPIO37引脚号103
GPIO38引脚号96
GPIO39引脚号114
GPIO40引脚号115
GPIO41引脚号116
## 方法 @@ -262,60 +3764,4248 @@ Pin.get_dir() ## 常量 -| 常量 | 适配平台 | 说明 | -| ---------------- | ------------------------------------------------------------ | -------- | -| Pin.GPIO1 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO1 | -| Pin.GPIO2 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO2 | -| Pin.GPIO3 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO3 | -| Pin.GPIO4 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO4 | -| Pin.GPIO5 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO5 | -| Pin.GPIO6 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO6 | -| Pin.GPIO7 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO7 | -| Pin.GPIO8 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO8 | -| Pin.GPIO9 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EC600K/EC800K/BC32/BC92/EC800Z | GPIO9 | -| Pin.GPIO10 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92/EC800Z | GPIO10 | -| Pin.GPIO11 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/BC32/BC92 | GPIO11 | -| Pin.GPIO12 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO12 | -| Pin.GPIO13 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/BC25PA/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO13 | -| Pin.GPIO14 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25PA/EC800N/BG95M3/EC600M/EG915U/EC800M/
EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO14 | -| Pin.GPIO15 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25PA/EC800N/BG95M3/EC600M/EG915U/EC800M/
EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K | GPIO15 | -| Pin.GPIO16 | EC600S / EC600N / EC100Y/EC600U/EC200U/BC25PA/EC800N/BG95M3/EC600M/EG915U/EC800M/
EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K | GPIO16 | -| Pin.GPIO17 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC800N/BC25PA/BG95M3/EC600M/EG915U/EC800M/
EG810M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO17 | -| Pin.GPIO18 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/EC800N/BC25PA/BG95M3/EC600M/EG915U/EC800M/
EG810M/EG912N/EC600E/EC600G/EC800G/EG912U/EC600K/EC800K | GPIO18 | -| Pin.GPIO19 | EC600S / EC600N / EC100Y/EC600U/EC200U/EC200A/EC800N/BG95M3/EC600M/EG915U/
EC800M/EG810M/EG912N/EC600G/EC800G/EG912U/EC600K/EC800K | GPIO19 | -| Pin.GPIO20 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/BG95M3/EC600M/EG915U/EC800M/
EG810M/EG912N/EC600G/EC800G/EG912U/EC600K/EC800K | GPIO20 | -| Pin.GPIO21 | EC600S / EC600N/EC600U/EC200U/EC800N/BG95M3/EC600M/EG915U/EC800M/EG810M/
EG912N/EC600G/EC800G/EG912U/EC600K/EC800K | GPIO21 | -| Pin.GPIO22 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG810M/
EG912N/EC600E/EC600G/EC800G/EG912U/EC600K/EC800K | GPIO22 | -| Pin.GPIO23 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E
/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO23 | -| Pin.GPIO24 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E
/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO24 | -| Pin.GPIO25 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO25 | -| Pin.GPIO26 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO26 | -| Pin.GPIO27 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC800E
/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO27 | -| Pin.GPIO28 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO28 | -| Pin.GPIO29 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO29 | -| Pin.GPIO30 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO30 | -| Pin.GPIO31 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO31 | -| Pin.GPIO32 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO32 | -| Pin.GPIO33 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/
EC800E/EC600G/EC800G/EC600K/EC800K/EC800Z | GPIO33 | -| Pin.GPIO34 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO34 | -| Pin.GPIO35 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/
EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO35 | -| Pin.GPIO36 | EC600S / EC600N/EC600U/EC200U/EC200A/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/
EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO36 | -| Pin.GPIO37 | EC600S / EC600N/EC600U/EC200U/EC800N/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/
EC800E/EC600G/EC800G/EC600K/EC800K/EC800Z | GPIO37 | -| Pin.GPIO38 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/EC800E
/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO38 | -| Pin.GPIO39 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/EC800E
/EC600G/EC800G/EG912U/EC600K/EC800K/EC800Z | GPIO39 | -| Pin.GPIO40 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M/EG810M/EG912N/EC600E/EC800E
/EC600G/EC800G/EG912U/EC800K/EC800Z | GPIO40 | -| Pin.GPIO41 | EC600S / EC600N/EC600U/EC200U/EC600M/EG915U/EC800M/EG810M/EC600E/EC800E/EC600G
/EC800G/EC800K/EC800Z | GPIO41 | -| Pin.GPIO42 | EC600U/EC200U/EC600M/EC800M/EG810M/EC600G/EC800G/EC800K | GPIO42 | -| Pin.GPIO43 | EC600U/EC200U/EC200A/EC600M/EC800M/EG810M/EC600G/EC800G/EC800K | GPIO43 | -| Pin.GPIO44 | EC600U/EC200U/EC200A/EC600M/EC800M/EG810M/EC600G/EC800G/EC800K | GPIO44 | -| Pin.GPIO45 | EC600U/EC200U/EC200A/EC600M/EC600G/EC800G/EC800K | GPIO45 | -| Pin.GPIO46 | EC600U/EC200U/EC200A/EC600G/EC800G/EC800K | GPIO46 | -| Pin.GPIO47 | EC600U/EC200U/EC200A/EC800G/EC800K | GPIO47 | -| Pin.GPIO48 | EC800G | GPIO48 | -| Pin.GPIO49 | EC800G | GPIO49 | -| Pin.GPIO50 | EC800G | GPIO50 | -| Pin.IN | -- | 输入模式 | -| Pin.OUT | -- | 输出模式 | -| Pin.PULL_DISABLE | -- | 浮空模式 | -| Pin.PULL_PU | -- | 上拉模式 | -| Pin.PULL_PD | -- | 下拉模式 | +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.GPIO47GPIO47
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.GPIO47GPIO47
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO22GPIO22
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.GPIO47GPIO47
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.GPIO47GPIO47
Pin.GPIO48GPIO48
Pin.GPIO49GPIO49
Pin.GPIO50GPIO50
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO15GPIO15
Pin.GPIO16GPIO16
Pin.GPIO17GPIO17
Pin.GPIO18GPIO18
Pin.GPIO19GPIO19
Pin.GPIO20GPIO20
Pin.GPIO21GPIO21
Pin.GPIO22GPIO22
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.GPIO42GPIO42
Pin.GPIO43GPIO43
Pin.GPIO44GPIO44
Pin.GPIO45GPIO45
Pin.GPIO46GPIO46
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO11GPIO11
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
Pin.GPIO1GPIO1
Pin.GPIO2GPIO2
Pin.GPIO3GPIO3
Pin.GPIO4GPIO4
Pin.GPIO5GPIO5
Pin.GPIO6GPIO6
Pin.GPIO7GPIO7
Pin.GPIO8GPIO8
Pin.GPIO9GPIO9
Pin.GPIO10GPIO10
Pin.GPIO12GPIO12
Pin.GPIO13GPIO13
Pin.GPIO14GPIO14
Pin.GPIO17GPIO17
Pin.GPIO23GPIO23
Pin.GPIO24GPIO24
Pin.GPIO25GPIO25
Pin.GPIO26GPIO26
Pin.GPIO27GPIO27
Pin.GPIO28GPIO28
Pin.GPIO29GPIO29
Pin.GPIO30GPIO30
Pin.GPIO31GPIO31
Pin.GPIO32GPIO32
Pin.GPIO33GPIO33
Pin.GPIO34GPIO34
Pin.GPIO35GPIO35
Pin.GPIO36GPIO36
Pin.GPIO37GPIO37
Pin.GPIO38GPIO38
Pin.GPIO39GPIO39
Pin.GPIO40GPIO40
Pin.GPIO41GPIO41
Pin.IN输入模式
Pin.OUT输出模式
Pin.PULL_DISABLE浮空模式
Pin.PULL_PU上拉模式
Pin.PULL_PD下拉模式
+
diff --git a/docs/API_reference/zh/peripherals/machine.SPI.md b/docs/API_reference/zh/peripherals/machine.SPI.md index 7d97c61dde9ac13d6b410cd3974ed9ee1019983d..571c44606ad4726f5ad30c1c74f1d04b36a6c23a 100644 --- a/docs/API_reference/zh/peripherals/machine.SPI.md +++ b/docs/API_reference/zh/peripherals/machine.SPI.md @@ -6,17 +6,105 @@ ### `machine.SPI` -```python -class machine.SPI(port, mode, clk, [group]) -``` - -**参数描述:** - -- `port` - 通道选择[0,1],int类型。 -- `mode` - SPI 的工作模式,说明如下:
时钟极性CPOL:即SPI空闲时,时钟信号SCLK的电平(0:空闲时低电平; 1:空闲时高电平)
`0` : CPOL=0, CPHA=0
`1` : CPOL=0, CPHA=1
`2`: CPOL=1, CPHA=0
`3`: CPOL=1, CPHA=1 -- `clk` - 时钟频率,说明如下:
EC600N/EC600S/EC800N/BG95M3/EC600M/EC800M/EG810M/EG912N/EC200A/EC600E/EC800E/EC800Z:
`0` : 812.5kHz
`1` : 1.625MHz
`2` : 3.25MHz
`3` : 6.5MHz
`4` : 13MHz
`5` : 26MHz(EC600E/EC800E/EC800Z不支持)
`6`:52MHz(EC600E/EC800E/EC800Z不支持)
EC600U/EC200U/EG915U:
`0` : 781.25KHz
`1` : 1.5625MHz
`2` : 3.125MHz
`3` : 5MHz
`4` : 6.25MHz
`5` : 10MHz
`6` : 12.5MHz
`7` : 20MHz
`8` : 25MHz
`9` : 33.33MHz
BC25PA:
`0` :5MHz
`X` : XMHz (X in [1,39])
EC600G/EC800G:
0:97.656kHz
1:100kHz
2:812.5kHz
3:1.3MHz
4:1.625MHz
5:2MHz
6:3.25MHz
7:4.333MHz
8:6.6MHz
9:11.93MHz
10:13MHz
11:13.92MHz
12:16.7MHz
13:20.875MHz
14:27.83MHz
FCM360W/FCM362K:
0:500kHz
1:1MHz
2:5MHz
3:10MHz
4:20MHz
-- `[group]` - 选择在不同管脚使用spi,缺省值为0
- +
+ +
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • port - 通道选择[0,1],int类型。

    +
  • +
  • mode - I2C 的工作模式,int类型,说明如下:
    时钟极性CPOL:即SPI空闲时,时钟信号SCLK的电平(0:空闲时低电平; 1:空闲时高电平)
    0CPOL=0, CPHA=0
    1CPOL=0, CPHA=1
    2CPOL=1, CPHA=0
    3CPOL=1, CPHA=1

    +
  • +
  • clk - 时钟频率,说明如下:
    0812.5kHz
    11.625MHz
    23.25MHz
    36.5MHz
    413MHz
    526MHz
    652MHz

    +
  • +
  • [group] - 选择在不同管脚使用spi,缺省值为0。

    +
  • +
+
+ +
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • port - 通道选择[0,1],int类型。

    +
  • +
  • mode - I2C 的工作模式,int类型,说明如下:
    时钟极性CPOL:即SPI空闲时,时钟信号SCLK的电平(0:空闲时低电平; 1:空闲时高电平)
    0CPOL=0, CPHA=0
    1CPOL=0, CPHA=1
    2CPOL=1, CPHA=0
    3CPOL=1, CPHA=1

    +
  • +
  • clk - 时钟频率,说明如下:
    0812.5kHz
    11.625MHz
    23.25MHz
    36.5MHz
    413MHz

    +
  • +
  • [group] - 选择在不同管脚使用spi,缺省值为0。

    +
  • +
+
+ +
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • port - 通道选择[0,1],int类型。

    +
  • +
  • mode - I2C 的工作模式,int类型,说明如下:
    时钟极性CPOL:即SPI空闲时,时钟信号SCLK的电平(0:空闲时低电平; 1:空闲时高电平)
    0CPOL=0, CPHA=0
    1CPOL=0, CPHA=1
    2CPOL=1, CPHA=0
    3CPOL=1, CPHA=1

    +
  • +
  • clk - 时钟频率,说明如下:
    0781.25KHz
    11.5625MHz
    23.125MHz
    35MHz
    46.25MHz
    510MHz
    612.5MHz
    720MHz
    825MHz
    933.33MHz

    +
  • +
  • [group] - 选择在不同管脚使用spi,缺省值为0。

    +
  • +
+
+ +
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • port - 通道选择[0,1],int类型。

    +
  • +
  • mode - I2C 的工作模式,int类型,说明如下:
    时钟极性CPOL:即SPI空闲时,时钟信号SCLK的电平(0:空闲时低电平; 1:空闲时高电平)
    0CPOL=0, CPHA=0
    1CPOL=0, CPHA=1
    2CPOL=1, CPHA=0
    3CPOL=1, CPHA=1

    +
  • +
  • clk - 时钟频率,说明如下:
    0781.25KHz
    XXMHz (X in [1,39])

    +
  • +
  • [group] - 选择在不同管脚使用spi,缺省值为0。

    +
  • +
+
+ +
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • port - 通道选择[0,1],int类型。

    +
  • +
  • mode - I2C 的工作模式,int类型,说明如下:
    时钟极性CPOL:即SPI空闲时,时钟信号SCLK的电平(0:空闲时低电平; 1:空闲时高电平)
    0CPOL=0, CPHA=0
    1CPOL=0, CPHA=1
    2CPOL=1, CPHA=0
    3CPOL=1, CPHA=1

    +
  • +
  • clk - 时钟频率,说明如下:
    097.656kHz
    1100kHz
    2812.5kHz
    31.3MHz
    41.625MHz
    52MHz
    63.25MHz
    74.333MHz
    86.6MHz
    911.93MHz
    1013MHz
    1113.92MHz
    1216.7MHz
    1320.875MHz
    1427.83MHz

    +
  • +
  • [group] - 选择在不同管脚使用spi,缺省值为0。

    +
  • +
+
+ +
+
class machine.I2C(I2Cn, MODE)
+
+

参数描述:

+
    +
  • port - 通道选择[0,1],int类型。

    +
  • +
  • mode - I2C 的工作模式,int类型,说明如下:
    时钟极性CPOL:即SPI空闲时,时钟信号SCLK的电平(0:空闲时低电平; 1:空闲时高电平)
    0CPOL=0, CPHA=0
    1CPOL=0, CPHA=1
    2CPOL=1, CPHA=0
    3CPOL=1, CPHA=1

    +
  • +
  • clk - 时钟频率,说明如下:
    0500kHz
    11MHz
    25MHz
    310MHz
    420MHz

    +
  • +
  • [group] - 选择在不同管脚使用spi,缺省值为0。

    +
  • +
+
+ +
> BC25PA平台不支持1、2模式。 > @@ -32,35 +120,736 @@ class machine.SPI(port, mode, clk, [group]) >>> spi_obj = SPI(1, 0, 1) ``` + + + + **SPI引脚对应关系:** -| 平台 | 引脚 | -| ------------- | ------------------------------------------------------------ | -| EC600U | port0:
CS:引脚号4
CLK:引脚号1
MOSI:引脚号3
MISO:引脚号2
port1:
CS:引脚号58
CLK:引脚号61
MOSI:引脚号59
MISO:引脚号60 | -| EC200U | port0:
CS:引脚号134
CLK:引脚号133
MOSI:引脚号132
MISO:引脚号131
port1:
CS:引脚号26
CLK:引脚号27
MOSI:引脚号24
MISO:引脚号25 | -| EC600S/EC600N | port0:
CS:引脚号58
CLK:引脚号61
MOSI:引脚号59
MISO:引脚号60
port1:
CS:引脚号4
CLK:引脚号1
MOSI:引脚号3
MISO:引脚号2 | -| EC100Y | port0:
CS:引脚号25
CLK:引脚号26
MOSI:引脚号27
MISO:引脚号28
port1:
CS:引脚号105
CLK:引脚号104
MOSI:引脚号107
MISO:引脚号106 | -| EC800N | port0:
CS:引脚号31
CLK:引脚号30
MOSI:引脚号32
MISO:引脚号33
port1:
CS:引脚号52
CLK:引脚号53
MOSI:引脚号50
MISO:引脚号51 | -| BC25PA | port0:
CS:引脚号6
CLK:引脚号5
MOSI:引脚号4
MISO:引脚号3 | -| BG95 | port0:
CS:引脚号25
CLK:引脚号26
MOSI:引脚号27
MISO:引脚号28
port1:
CS:引脚号41
CLK:引脚号40
MOSI:引脚号64
MISO:引脚号65
port2:
CS:引脚号19
CLK:引脚号18
MOSI:引脚号23
MISO:引脚号22 | -| EC600M | port0:
group=0:
CS:引脚号58
CLK:引脚号61
MOSI:引脚号59
MISO:引脚号60
group=1
CS:引脚号4
CLK:引脚号1
MOSI:引脚号3
MISO:引脚号2
port1:
group=0:
CS:引脚号4
CLK:引脚号1
MOSI:引脚号3
MISO:引脚号2
group=1:
CS:引脚号65
CLK:引脚号67
MOSI:引脚号66
MISO:引脚号63
port2:
CS:引脚号49
CLK:引脚号54
MOSI:引脚号53
MISO:引脚号52 | -| EG915U | port0:
CS:引脚号25
CLK:引脚号26
MOSI:引脚号64
MISO:引脚号88
port1:
CS:引脚号5
CLK:引脚号4
MOSI:引脚号6
MISO:引脚号7 | -| EC800M/EG810M | port0:
group=0:
CS:引脚号31
CLK:引脚号30
MOSI:引脚号32
MISO:引脚号33
group=1:
CS:引脚号52
CLK:引脚号53
MOSI:引脚号50
MISO:引脚号51
port1:
group=0:
CS:引脚号52
CLK:引脚号53
MOSI:引脚号50
MISO:引脚号51
group=1:(EG810M_EU不支持)
CS:引脚号69
CLK:引脚号68
MOSI:引脚号85
MISO:引脚号84
port2:
CS:引脚号76
CLK:引脚号77
MOSI:引脚号78
MISO:引脚号16 | -| EG912N | port0:
CS:引脚号25
CLK:引脚号26
MOSI:引脚号27
MISO:引脚号28
port1:
CS:引脚号5
CLK:引脚号4
MOSI:引脚号6
MISO:引脚号7 | -| EC200A/UC200A | port0:
CS:引脚号37
CLK:引脚号40
MOSI:引脚号38
MISO:引脚号39
port1:
CS:引脚号26
CLK:引脚号27
MOSI:引脚号25
MISO:引脚号24 | -| EC600E | port0:(EC600ECN_LE&LQ不可用)
CS:引脚号65
CLK:引脚号67
MOSI:引脚号66
MISO:引脚号64
port1:(EC600ECN_LE&LQ不可用)
CS:引脚号69
CLK:引脚号71
MOSI:引脚号70
MISO:引脚号72 | -| EC800E | port0:
CS:引脚号28
CLK:引脚号39
MOSI:引脚号29
MISO:引脚号38
port1:
CS:引脚号52
CLK:引脚号53
MOSI:引脚号50
MISO:引脚号51
注:EC800ECN_LE&LQ&CG port1 不可用 | -| EC600G | port0:
CS:引脚号4
CLK:引脚号1
MOSI:引脚号3
MISO:引脚号2
port1:
CS:引脚号53
CLK:引脚号52
MOSI:引脚号54
MISO:引脚号51 | -| EC800G | port1:
CS:引脚号79
CLK:引脚号101
MOSI:引脚号100
MISO:引脚号108 | -| EG912U | port0:(EG912UGLAA不可用)
CS:引脚号25
CLK:引脚号26
MOSI:引脚号64
MISO:引脚号88
port1:
CS:引脚号5
CLK:引脚号4
MOSI:引脚号6
MISO:引脚号7 | -| EC600K | port1:
CS:引脚号4
CLK:引脚号1
MOSI:引脚号3
MISO:引脚号2
port2:
CS:引脚号58
CLK:引脚号61
MOSI:引脚号59
MISO:引脚号60 | -| EC800K/EG800K | port0:
CS:引脚号31
CLK:引脚号30
MOSI:引脚号32
MISO:引脚号33
port1:
CS:引脚号52
CLK:引脚号53
MOSI:引脚号50
MISO:引脚号51
port2:
CS:引脚号74
CLK:引脚号75
MOSI:引脚号76
MISO:引脚号77 | -| FCM360W | port0:
CS:引脚号21
CLK:引脚号22
MOSI:引脚号29
MISO:引脚号23 | -| FCM362K | port0:
CS:引脚号29
CLK:引脚号30
MOSI:引脚号37
MISO:引脚号31 | -| BC32 | port0
CS:引脚号41
CLK:引脚号42
MOSI:引脚号43
MISO:引脚号44 | -| BC92 | port0
CS:引脚号41
CLK:引脚号42
MOSI:引脚号43
MISO:引脚号44 | -| EG915N | port0
CS:引脚号5
CLK:引脚号4
MOSI:引脚号6
MISO:引脚号7 | -| EC800Z | port0:
CS:引脚号49
CLK:引脚号29
MOSI:引脚号101
MISO:引脚号28
port1:
CS:引脚号52
CLK:引脚号53
MOSI:引脚号50
MISO:引脚号51 | +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚4引脚1引脚3引脚2
SPI1引脚58引脚61引脚59引脚60
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚134引脚133引脚132引脚131
SPI1引脚26引脚27引脚24引脚25
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚58引脚61引脚59引脚60
SPI1引脚4引脚1引脚3引脚2
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚25引脚26引脚27引脚28
SPI1引脚105引脚104引脚107引脚106
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚31引脚30引脚32引脚33
SPI1引脚52引脚53引脚50引脚51
+ + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚6引脚5引脚4引脚3
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚25引脚26引脚27引脚28
SPI1引脚41引脚40引脚64引脚65
SPI2引脚19引脚18引脚23引脚22
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号GroupCS引脚CLK引脚MOSI引脚MISO引脚
SPI0Group0引脚25引脚26引脚27引脚28
SPI0Group1引脚4引脚1引脚3引脚2
SPI1Group0引脚4引脚1引脚3引脚2
SPI1Group1引脚65引脚67引脚66引脚63
SPI2NULL引脚49引脚54引脚53引脚52
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚25引脚26引脚64引脚88
SPI1引脚5引脚4引脚6引脚7
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号GroupCS引脚CLK引脚MOSI引脚MISO引脚
SPI0Group0引脚31引脚30引脚32引脚33
SPI0Group1引脚52引脚53引脚50引脚51
SPI1Group0引脚52引脚53引脚50引脚51
SPI1Group1(EG810M_EU不支持)引脚69引脚68引脚85引脚84
SPI2NULL引脚76引脚77引脚78引脚16
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚25引脚26引脚27引脚28
SPI1引脚5引脚4引脚6引脚7
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚37引脚40引脚38引脚39
SPI1引脚26引脚27引脚25引脚24
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0(EC600ECN_LE&LQ不可用)引脚65引脚67引脚66引脚64
SPI1引脚69引脚71引脚70引脚72
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚28引脚39引脚29引脚38
SPI1(EC800ECN_LE&LQ&CG不可用)引脚52引脚53引脚50引脚51
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚4引脚1引脚3引脚2
SPI1(EC800ECN_LE&LQ&CG不可用)引脚53引脚52引脚54引脚51
+ + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI1引脚79引脚101引脚100引脚108
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0(EG912UGLAA不可用)引脚25引脚26引脚64引脚88
SPI1引脚5引脚4引脚6引脚7
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI1引脚4引脚1引脚3引脚2
SPI2引脚58引脚61引脚59引脚60
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚31引脚30引脚32引脚33
SPI1引脚52引脚53引脚50引脚51
SPI2引脚74引脚75引脚76引脚77
+ + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚21引脚22引脚29引脚23
+ + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚29引脚30引脚37引脚31
+ + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚41引脚42引脚43引脚44
+ + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚41引脚42引脚43引脚44
+ + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚5引脚4引脚6引脚7
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SPI编号CS引脚CLK引脚MOSI引脚MISO引脚
SPI0引脚49引脚29引脚101引脚28
SPI1引脚52引脚53引脚50引脚51
+ + + + +
## 方法 diff --git a/docs/API_reference/zh/peripherals/machine.UART.md b/docs/API_reference/zh/peripherals/machine.UART.md index 2aa92fcf328d675760ea791f1a7046986e5b02fd..22ee3fdedab97ca3ac2ad9e74ba86ffed390072c 100644 --- a/docs/API_reference/zh/peripherals/machine.UART.md +++ b/docs/API_reference/zh/peripherals/machine.UART.md @@ -28,34 +28,917 @@ class machine.UART(UART.UARTn, baudrate, databits, parity, stopbits, flowctl) **UART引脚对应关系 :** -| 平台 | 引脚 | -| ------------- | ------------------------------------------------------------ | -| EC600U | uart1:
TX: 引脚号124
RX: 引脚号123
uart2:
TX:引脚号32
RX:引脚号31
RTS:引脚号34
CTS:引脚号33
uart4:
TX:引脚号103
RX:引脚号104 | -| EC200U | uart1:
TX: 引脚号138
RX: 引脚号137
uart2:
TX:引脚号67
RX:引脚号68
RTS:引脚号65
CTS:引脚号64
uart4:
TX:引脚号82(EC200UXXAA不支持)
RX:引脚号81 | -| EC200A/UC200A | uart0:(建议使用其他uart)
TX: 引脚号12
RX: 引脚号11
uart1:
TX: 引脚号63(EC200ACN_LA: 引脚号26)
RX: 引脚号66(EC200ACN_LA: 引脚号27)
uart2:
TX:引脚号67
RX:引脚号68
注意:EC200ACN_LA模组uart1引脚号与其他型号不同 | -| EC600S/EC600N | uart0:
TX: 引脚号71
RX: 引脚号72
uart1:
TX: 引脚号3
RX: 引脚号2
uart2:
TX:引脚号32
RX:引脚号31 | -| EC100Y | uart0:
TX: 引脚号21
RX: 引脚号20
uart1:
TX: 引脚号27
RX: 引脚号28
uart2:
TX:引脚号50
RX:引脚号49 | -| EC800N | uart0:
TX: 引脚号39
RX: 引脚号38
uart1:
TX: 引脚号50
RX: 引脚号51
uart2:
TX:引脚号18
RX:引脚号17 | -| BC25PA | uart1:
TX: 引脚号29
RX: 引脚号28 | -| BG95M | uart0:
TX: 引脚号23
RX: 引脚号22
uart1:
TX:引脚号27
RX:引脚号28
uart2:
TX: 引脚号64
RX: 引脚号65
uart4:
TX:引脚号35
RX:引脚号34 | -| EC600M | uart0:
TX: 引脚号71
RX: 引脚号72
uart1(flowctl = 0):
TX: 引脚号3
RX: 引脚号2
uart1(flowctl = 1):
TX: 引脚号33
RX: 引脚号34
uart2:
TX:引脚号32
RX:引脚号31 | -| EG915U | uart1:
TX: 引脚号27
RX: 引脚号28
uart2:
TX:引脚号35
RX:引脚号34
CTS:引脚号36
RTS:引脚号37
uart4:
TX:引脚号19
RX:引脚号18 | -| EC800M/EG810M | uart0:
TX: 引脚号39
RX: 引脚号38
uart1(flowctl = 0):
TX: 引脚号50
RX: 引脚号51
uart1(flowctl = 1):
TX: 引脚号22
RX: 引脚号23
注意:EC800MCNGA 、CNGB、CNGD/ EG810MCNGA、CNGB 模块的 uart1 不可用
uart2:
TX:引脚号18
RX:引脚号17
uart4:
TX:引脚号29
RX:引脚号28 | -| EG912N | uart0:
TX: 引脚号23
RX: 引脚号22
uart1(flowctl = 0):
TX: 引脚号27
RX: 引脚号28
uart1(flowctl = 1):
TX: 引脚号36
RX: 引脚号37
uart2:
TX:引脚号35
RX:引脚号34 | -| EC600E | uart0:
TX: 引脚号71
RX: 引脚号72
uart1:(EC600ECN_LE&LQ不可用)
TX:引脚号70
RX:引脚号69
uart2:
TX:引脚号32
RX:引脚号31 | -| EC800E | uart0:
TX: 引脚号39
RX: 引脚号38
uart1:
TX:引脚号29
RX:引脚号28
uart2:
TX:引脚号18
RX:引脚号17 | -| EC600G | uart1:
TX: 引脚号124
RX: 引脚号123
uart2:
TX:引脚号32
RX:引脚号31
RTS:引脚34
CTS:引脚33
uart4:
TX:引脚号116
RX:引脚号9
uart5:
TX:引脚号125
RX:引脚号126
uart6:
TX:引脚号106
RX:引脚号105 | -| EC800G | uart1:
TX: 引脚号29
RX: 引脚号28
uart2:
TX:引脚号18
RX:引脚号17
uart5:
TX:引脚号23
RX:引脚号22
uart6:
TX:引脚号86
RX:引脚号83 | -| EG912U | uart1:
TX: 引脚号27
RX: 引脚号28
uart2:
TX: 引脚号35
RX: 引脚号34
CTS:引脚号36
RTS:引脚号37
uart4:(EG912UGL_AA不可用)
TX:引脚号19
RX:引脚号18 | -| EC600K | uart0:
TX: 引脚号71
RX: 引脚号72
uart1(flowctl = 0):
TX: 引脚号3
RX: 引脚号2
uart1(flowctl = 1):
TX: 引脚号33
RX: 引脚号34
uart2:
TX:引脚号32
RX:引脚号31 | -| EC800K/EG800K | uart0:
TX: 引脚号39
RX: 引脚号38
uart1(flowctl = 0):(EG800KCN不可用)
TX: 引脚号50
RX: 引脚号51
uart1(flowctl = 1):(EG800KCN不可用)
TX: 引脚号22
RX: 引脚号23
uart2:
TX:引脚号18
RX:引脚号17 | -| EG800P | uart0:
TX: 引脚号39
RX: 引脚号38
uart1:
TX: 引脚号22
RX: 引脚号23
uart2:
TX:引脚号18
RX:引脚号17
RTS:引脚23
CTS:引脚22
uart3:
TX:引脚号29
RX:引脚号28 | -| FCM360W | uart0:
TX: 引脚号27
RX: 引脚号26
uart2:
TX:引脚号20
RX:引脚号19
| -| FCM362K |uart1:
TX: 引脚号35
RX: 引脚号34
uart2:
TX:引脚号28
RX:引脚号27
| -| BC32 | uart0:
TX: 引脚号21
RX: 引脚号22 | -| BC92 | uart0:
TX: 引脚号22
RX: 引脚号21 | -| EG915N | uart0:
TX: 引脚号23
RX: 引脚号22
uart1:
TX: 引脚号27
RX: 引脚号28
uart2:
TX: 引脚号35
RX: 引脚号34
CTS:引脚号36
RTS:引脚号37
uart4:(EG915NEU_AG不支持)
TX:引脚号36
RX:引脚号37 | -| EC800Z | uart0:
TX: 引脚号39
RX: 引脚号38
uart1:
TX:引脚号29
RX:引脚号28
uart2:
TX:引脚号18
RX:引脚号17 | +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚RTS引脚CTS引脚
uart1引脚号124引脚号123
uart2引脚号32引脚号31引脚号34引脚号33
uart4引脚号103引脚号104
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚RTS引脚CTS引脚
uart1引脚号138引脚号137
uart2引脚号67引脚号68引脚号65引脚号64
uart4引脚号82(EC200UXXAA不支持)引脚号81
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚注意
uart0(建议使用其他uart)引脚号12引脚号11
uart1引脚号63(EC200ACN_LA: 引脚号26)引脚号66(EC200ACN_LA: 引脚号27)
uart2引脚号67引脚号68EC200ACN_LA模组uart1引脚号与其他型号不同
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚注意
uart0(建议使用其他uart)引脚号12引脚号11
uart1引脚号63(EC200ACN_LA: 引脚号26)引脚号66(EC200ACN_LA: 引脚号27)EC200ACN_LA模组uart1引脚号与其他型号不同
uart2引脚号67引脚号68
+ + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号71引脚号72
uart1引脚号3引脚号2
uart2引脚号32引脚号31
+ + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号71引脚号72
uart1引脚号3引脚号2
uart2引脚号32引脚号31
+ + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号21引脚号20
uart1引脚号27引脚号28
uart2引脚号50引脚号49
+ + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号39引脚号38
uart1引脚号50引脚号51
uart2引脚号18引脚号17
+ + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart1引脚号29引脚号28
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号23引脚号22
uart1引脚号27引脚号28
uart2引脚号64引脚号65
uart4引脚号35引脚号34
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号71引脚号72
uart1(flowctl = 0)引脚号3引脚号2
uart1(flowctl = 1)引脚号33引脚号34
uart2引脚号32引脚号31
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚RTS引脚CTS引脚
uart1引脚号27引脚号28
uart2引脚号35引脚号34引脚号37引脚号36
uart4引脚号19引脚号18
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚注意
uart0引脚号39引脚号38
uart1(flowctl = 0)引脚号50引脚号51EC800MCNGA 、CNGB、CNGD/ EG810MCNGA、CNGB 模块的 uart1 不可用
uart1(flowctl = 1)引脚号22引脚号23
uart2引脚号18引脚号17
uart4引脚号29引脚号28
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚注意
uart0引脚号39引脚号38
uart1(flowctl = 0)引脚号50引脚号51EC800MCNGA 、CNGB、CNGD/ EG810MCNGA、CNGB 模块的 uart1 不可用
uart1(flowctl = 1)引脚号22引脚号23
uart2引脚号18引脚号17
uart4引脚号29引脚号28
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号23引脚号22
uart1(flowctl = 0)引脚号27引脚号28
uart1(flowctl = 1)引脚号36引脚号37
uart2引脚号35引脚号34
+ + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号71引脚号72
uart1(EC600ECN_LE&LQ不可用)引脚号70引脚号69
uart2引脚号32引脚号31
+ + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号39引脚号38
uart1引脚号29引脚号28
uart2引脚号18引脚号17
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚RTS引脚CTS引脚
uart0引脚号124引脚号123
uart2引脚号32引脚号31引脚34引脚33
uart4引脚号116引脚号9
uart5引脚号125引脚号126
uart6引脚号106引脚号105
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart1引脚号29引脚号28
uart2引脚号18引脚号17
uart5引脚号23引脚号22
uart6引脚号86引脚号83
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚RTS引脚CTS引脚
uart1引脚号27引脚号28
uart2引脚号35引脚号34引脚号37引脚号36
uart4(EG912UGL_AA不可用)引脚号19引脚号18
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号71引脚号72
uart1(flowctl = 0)引脚号3引脚号2
uart1(flowctl = 1)引脚号33引脚号34
uart2引脚号32引脚号31
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚注意
uart0引脚号39引脚号38
uart1(flowctl = 0)引脚号50引脚号51EG800KCN不可用
uart1(flowctl = 1)引脚号22引脚号23EG800KCN不可用
uart2引脚号18引脚号17
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚注意
uart0引脚号39引脚号38
uart1(flowctl = 0)引脚号50引脚号51EG800KCN不可用
uart1(flowctl = 1)引脚号22引脚号23EG800KCN不可用
uart2引脚号18引脚号17
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚RTS引脚CTS引脚
uart0引脚号39引脚号38
uart1引脚号22引脚号23
uart2引脚号18引脚号17引脚23引脚22
uart3引脚号29引脚号28
+ + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart1引脚号27引脚号26
uart2引脚号20引脚号19
+ + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart1引脚号35引脚号34
uart2引脚号28引脚号27
+ + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号21引脚号22
+ + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号22引脚号21
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚RTS引脚CTS引脚
uart0引脚号23引脚号22
uart1引脚号27引脚号28
uart2引脚号35引脚号34引脚号36引脚号37
uart4(EG915NEU_AG不支持)引脚号36引脚号37
+ + + + + + + + + + + + + + + + + + + + + + + + + +
uart编号TX引脚RX引脚
uart0引脚号39引脚号38
uart1引脚号29引脚号28
uart2引脚号18引脚号17
+ +
> 1、EC600M/EC800M/EG810M/EG912N/EC600K/EC800K 的uart1在flowctl = 1时,仅将uart1映射到不同的引脚,未开启流控功能。 > diff --git a/docs/API_reference/zh/peripherals/misc.ADC.md b/docs/API_reference/zh/peripherals/misc.ADC.md index a2b4b44c48e9113e5fdc76f48a9befe3104b9105..88779cc69fdeb6fa472bdbc01170d5721e853521 100644 --- a/docs/API_reference/zh/peripherals/misc.ADC.md +++ b/docs/API_reference/zh/peripherals/misc.ADC.md @@ -68,36 +68,952 @@ ADC.close() **ADC通道与物理引脚的映射关系:** -| 系列 | 引脚对应 | -| ------ | ------------------------------------------------------------ | -| EC600N | ADC0 – 引脚号19 | -| EC600M | ADC0 – 引脚号19
ADC1 – 引脚号20 | -| EC800N | ADC0 – 引脚号9 | -| EC600U | ADC0 – 引脚号19
ADC1 – 引脚号20
ADC2 – 引脚号113
ADC3 – 引脚号114 | -| EC200U | ADC0 – 引脚号45
ADC1 – 引脚号44
ADC2 – 引脚号43 | -| EC200A/UC200A | ADC0 – 引脚号45
ADC1 – 引脚号44 | -| BG95 | ADC0 – 引脚号24 | -| EG915U | ADC0 – 引脚号24
ADC1 – 引脚号2 | -| EC800M/EG810M | ADC0 – 引脚号9
ADC1 – 引脚号96 | -| EG912N | ADC0 – 引脚号24
ADC1 – 引脚号2 | -| EC600E | ADC0 – 引脚号19
ADC1 – 引脚号20 | -| EC800E | ADC0 – 引脚号9
ADC1 – 引脚号96 | -| EC600G | ADC0 – 引脚号19
ADC1 – 引脚号20
ADC2 – 引脚号113
ADC3 – 引脚号114 | -| EC800G | ADC0 – 引脚号9
ADC1 – 引脚号96 | -| EG912U | ADC0 – 引脚号24
ADC1 – 引脚号2 | -| EC600K | ADC0 – 引脚号19
ADC1 – 引脚号20 | -| EC800K/EG800K | ADC0 – 引脚号9
ADC1 – 引脚号96 | -| FCM360W | ADC0 – 引脚号8
ADC1 – 引脚号7
ADC2 – 引脚号6 | -| BC32 | ADC0 – 引脚号2 | -| BC92 | ADC0 – 引脚号2 | -| EG915N | ADC0 – 引脚号24
ADC1 – 引脚号2 | -| EC800Z | ADC0 – 引脚号9
ADC1 – 引脚号96 | +
+ + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号19
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号19
ADC1引脚号20
+ + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号19
ADC1引脚号20
ADC2引脚号113
ADC3引脚号114
+ + + + + + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号45
ADC1引脚号44
ADC2引脚号43
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号45
ADC1引脚号44
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号45
ADC1引脚号44
+ + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号24
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号24
ADC1引脚号2
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
ADC1引脚号96
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
ADC1引脚号96
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号24
ADC1引脚号2
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号19
ADC1引脚号20
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
ADC1引脚号96
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号19
ADC1引脚号20
ADC2引脚号113
ADC3引脚号114
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
ADC1引脚号96
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号24
ADC1引脚号2
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号19
ADC1引脚号20
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
ADC1引脚号96
+ + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
ADC1引脚号96
+ + + + + + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号8
ADC1引脚号7
ADC2引脚号6
+ + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号2
+ + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号2
+ + + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号24
ADC1引脚号2
+ + + + + + + + + + + + + + + + + + + +
ADC编号引脚对应
ADC0引脚号9
ADC1引脚号96
+ +
## 常量 -| 常量 | 说明 | 适用平台 | -| -------- | -------- | ------------------------------------------------------------ | -| ADC.ADC0 | ADC通道0 | EC600S/EC600N/EC100Y/EC600U/EC200U/BC25PA/EC800N/BG95M3/EC200A/EC600M
/EG915U/EC800M/EG912N/EC600E/EC800E/EC600G/EC800G/EG912U/EC600K/EC800K
/FCM360W/BC32/BC92/EG915N/EC800Z | -| ADC.ADC1 | ADC通道1 | EC600U/EC200U/EC200A/EC600M/EG915U/EC800M/EG912N/EC600E/EC800E/EC600G/
EC800G/EG912U/EC600K/EC800K/FCM360W/EG915N/EC800Z | -| ADC.ADC2 | ADC通道2 | EC600U/EC200U/FCM360W | -| ADC.ADC3 | ADC通道3 | EC600U | +
+ + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
ADC.ADC2ADC通道2
ADC.ADC3ADC通道3
+ + + + + + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
ADC.ADC2ADC通道2
+ + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
ADC.ADC2ADC通道2
+ + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ + + + + + + + + + + + + + + + + + +
常量说明
ADC.ADC0ADC通道0
ADC.ADC1ADC通道1
+ +
\ No newline at end of file diff --git a/docs/API_reference/zh/sidebar.yaml b/docs/API_reference/zh/sidebar.yaml index 2f08f81dfe6fb56a8b16caadb2176f8679e2039d..af2c5ace0ee6e8b4427b5d0e3afc326bc9da6ede 100644 --- a/docs/API_reference/zh/sidebar.yaml +++ b/docs/API_reference/zh/sidebar.yaml @@ -212,6 +212,11 @@ items: file: gnsslib/wifilocator.md - label: wifiScan - WiFi扫描 file: gnsslib/wifiScan.md +- label: AI 聊天机器人 + file: ailib/README.md + items: + - label: TiktokRTC - 豆包火山 RTC 平台 + file: ailib/TiktokRTC.md - label: IoT 平台 file: cloudlib/README.md items: @@ -219,6 +224,8 @@ items: file: cloudlib/aLiYun.md - label: TenCentYun- 腾讯 IoT 平台 file: cloudlib/TenCentYun.md + - label: Aws- 亚马逊 IoT 平台 + file: cloudlib/aws.md - label: 行业应用 file: industry/README.md items: diff --git a/docs/Application_guide/en/hardware/peripheral-interfaces/GPIO.md b/docs/Application_guide/en/hardware/peripheral-interfaces/GPIO.md index 6dcd87630e3fb1a9d727306c6a27ac58fcf44211..7cc6b36132273b9cf80b04f8d2c3c621fadfd34c 100644 --- a/docs/Application_guide/en/hardware/peripheral-interfaces/GPIO.md +++ b/docs/Application_guide/en/hardware/peripheral-interfaces/GPIO.md @@ -396,7 +396,7 @@ It is mainly divided into two types: GPIO and Extlnt. In this chapter, it will introduce how to use QuecPython GPIO and relevant notes. -For specific API on QuecPython GPIO, please refer to [machine.Pin](https://python.quectel.com/doc/API_reference/zh/peripherals/machine.Pin.html) +For specific API on QuecPython GPIO, please refer to [machine.Pin](https://python.quectel.com/doc/API_reference/en/peripherals/machine.Pin.html) #### Create object diff --git a/docs/Application_guide/en/hardware/peripheral-interfaces/UART.md b/docs/Application_guide/en/hardware/peripheral-interfaces/UART.md index 8d1ef74ec32a6eac4089c0bc24d959a23b6dafae..76abf32c17f90c69c1c4b0a52bea6aede3c855a1 100644 --- a/docs/Application_guide/en/hardware/peripheral-interfaces/UART.md +++ b/docs/Application_guide/en/hardware/peripheral-interfaces/UART.md @@ -366,10 +366,10 @@ For API introduction, please refer to [machine.UART.control_485](https://python. | Cases | Description | | ------------------------------------- | ------------------------------------------------------------ | -| [Basic Tx/Rx](#Basic Tx/Rx) | Configure UART setting and read and write via UART1. It will read data in a method of callback | -| [External GNSS](#External GNSS) | By decrypting the GNGGA, GNRMC and GPGSV in raw GNSS data packet read from external GNSS by UART to get positioning info. | +| [Basic Tx/Rx](https://python.quectel.com/doc/Application_guide/en/hardware/peripheral-interfaces/UART.html#Basic-Tx/Rx) | Configure UART setting and read and write via UART1. It will read data in a method of callback | +| [External GNSS](https://python.quectel.com/doc/Application_guide/en/hardware/peripheral-interfaces/UART.html#External-GNSS) | By decrypting the GNGGA, GNRMC and GPGSV in raw GNSS data packet read from external GNSS by UART to get positioning info. | | [RS485application](https://python.quectel.com/doc/Application_guide/en/hardware/peripheral-interfaces/UART.html#RS-485-application) | Set UART driver programm in half duplex to communicate via RS485 interface | -| [Power meter chip](#Power meter chip) | Take power meter chip as an example: read and write corresponding parameter via UART to get power data or execute other controlling commands. | +| [Power meter chip](https://python.quectel.com/doc/Application_guide/en/hardware/peripheral-interfaces/UART.html#Power-meter-chip) | Take power meter chip as an example: read and write corresponding parameter via UART to get power data or execute other controlling commands. | ### Basic Tx/Rx diff --git a/docs/Application_guide/en/helios-sdk/advanced.md b/docs/Application_guide/en/helios-sdk/advanced.md index 2f17e711fa91a64c878bd5acfbe6f914adc0fe57..0322f430faf266d00d2beae780ae2454ce5a7739 100644 --- a/docs/Application_guide/en/helios-sdk/advanced.md +++ b/docs/Application_guide/en/helios-sdk/advanced.md @@ -394,7 +394,7 @@ The difference comparison in the figure below shows the difference between this - Use the macro `MP_DEFINE_CONST_FUN_OBJ_0` to add a function object `modtest_obj_func_noargs`, which is the code on Line 18. - Register the newly added `modtest_obj_func_noargs` object to modtest, which is the code on Line 23. -![](../media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bm.png) +![](../media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bb.png) **Step 2: Verify the Functionality** @@ -487,9 +487,9 @@ The difference comparison in the figure below shows the difference between this - Added the C language function *modtest_func_withargs* corresponding to the Python module `modtest` method *modtest.func_withargs(str)*. In this example, the string parameters that the user input from the Python layer is returned through *mp_obj_str_get_str(str)*. - Use the macro `MP_DEFINE_CONST_FUN_OBJ_1` to add a function object `modtest_obj_func_withargs`, which is the code on Line 38. -- Register the newly added `modtest_obj_func_noargs` object to modtest, which is the code on Line 44. +- Register the newly added `modtest_obj_func_noargs` object to modtest, which is the code on Line 43. -![](../media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s20.png) +![](../media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s23.png) **Step 2: Verify the Functionality** @@ -692,7 +692,7 @@ const mp_obj_type_t modtest_math_type = { The difference comparison in the figure below shows the difference between this code and the code before the modification (the current code is on the right, and the red part is the difference): -![](../media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73k.png) +![](../media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73d.png) As can be seen from the figure, adding a function without parameters to the type is the same as adding it to the module, so no further explanation is needed. @@ -787,7 +787,7 @@ STATIC const mp_rom_map_elem_t math_locals_dict_table[] = { After completing the above three steps, let's see the differences between the code in this section and the code before the modification. The red font in the following figure is all the code we added. -![](../media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464r.png) +![](../media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464c.png) **Step 4: Verify the Functionality** diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bb.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bb.png new file mode 100644 index 0000000000000000000000000000000000000000..e83ae0f61bdd68f9e6ee599112141a37e1ec8df8 Binary files /dev/null and b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bb.png differ diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bm.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bm.png deleted file mode 100644 index 5e85763ff7cfe921089b663a2e0b9e6a2c2163c0..0000000000000000000000000000000000000000 Binary files a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fj61re1q2q1r4jns4ouek6bm.png and /dev/null differ diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s20.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s20.png deleted file mode 100644 index b8a147bca3384c3b15247d6a5123855594453ee8..0000000000000000000000000000000000000000 Binary files a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s20.png and /dev/null differ diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s23.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s23.png new file mode 100644 index 0000000000000000000000000000000000000000..147579bb74e74afcacd0011523ef8c7f6a27c80f Binary files /dev/null and b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5fmta2oakmps0115mb8r1q0s23.png differ diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73d.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73d.png new file mode 100644 index 0000000000000000000000000000000000000000..054fc8d12ebf41cff5b51f3960e0571a8b6be12d Binary files /dev/null and b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73d.png differ diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73k.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73k.png deleted file mode 100644 index 8cea35cbdb8fe98fec1e12be7f7b763c39a42bc6..0000000000000000000000000000000000000000 Binary files a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5ft863lnr51cqccqjdrcpk73k.png and /dev/null differ diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464c.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464c.png new file mode 100644 index 0000000000000000000000000000000000000000..73946602996f305e9eea391b21aef6a0443f1b80 Binary files /dev/null and b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464c.png differ diff --git a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464r.png b/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464r.png deleted file mode 100644 index ae7b0b36ab3b0bdc48eff47d515f62ae496a15d0..0000000000000000000000000000000000000000 Binary files a/docs/Application_guide/en/media/helios-sdk/advanced/image_1f5hsgiefmj0abp6ris3h464r.png and /dev/null differ diff --git a/docs/Application_guide/en/solutions/DTU/README.md b/docs/Application_guide/en/solutions/DTU/README.md index bb094ff3fd87034834e380bb14a0955ffda8c95a..fb95e70b17797b87a8dcbc80c43f937735f2d959 100644 --- a/docs/Application_guide/en/solutions/DTU/README.md +++ b/docs/Application_guide/en/solutions/DTU/README.md @@ -34,7 +34,6 @@ Take the `QuecPython_EC2X_EVB_V2.0` development board (EC2X development board in - | Pin on development board | TTL to USB module | Color of wire in picture | | ------------------------ | ----------------- | ------------------------ | | Pin 13 (TX) of J7 | RX | Red | @@ -190,7 +189,6 @@ CloudObservable[CloudObservable] CloudObservable --> MqttIot[MqttIot] CloudObservable --> AliYunIot[AliYunIot] CloudObservable --> HuaweiIot[HuaweiIot] -CloudObservable --> QuecThing[QuecThing] CloudObservable --> Socket[Socket] CloudObservable --> TXYunIot[TXYunIot] ``` diff --git a/docs/Application_guide/zh/README.md b/docs/Application_guide/zh/README.md index e3d032de821258a49c75a8c2343116bffc31c39a..ffad358506329edb0e9f862cc28a1b0001c2135a 100644 --- a/docs/Application_guide/zh/README.md +++ b/docs/Application_guide/zh/README.md @@ -83,11 +83,13 @@ QuecPython 应用指导,是对QuecPython常用功能模块如何使用的指
产品方案 +- [豆包 RTC AI 聊天机器人](solutions/AIChatBot-Volcengine-webRTC/README.md) - [DTU 方案](solutions/DTU/README.md) - [智慧农业中控面板](solutions/Agriculture-Control-Panel/README.md) - [可穿戴解决方案](solutions/Wear/readme.md) - [电表](solutions/electricity-meter/README.md) - [智能定位器](solutions/tracker/README.md) +- [公网对讲机](solutions/poc/README.md)
diff --git a/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai.png b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai.png new file mode 100644 index 0000000000000000000000000000000000000000..97a524333a7faf16a1cb32fffa1c4cc2a949f8cf Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai.png differ diff --git a/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_audio.png b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_audio.png new file mode 100644 index 0000000000000000000000000000000000000000..d382d867591bd7fb35e70baeb9af402187b98cd9 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_audio.png differ diff --git a/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_frame.png b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_frame.png new file mode 100644 index 0000000000000000000000000000000000000000..582eb33246df500434fd1d0c1da4c1894cec9982 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_frame.png differ diff --git a/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_process.png b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_process.png new file mode 100644 index 0000000000000000000000000000000000000000..4c3d37035829413693232a22f12e14f50ad53ea0 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/code_ai_process.png differ diff --git a/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/comport.png b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/comport.png new file mode 100644 index 0000000000000000000000000000000000000000..270017b82e7cae2e731cfa8deb67bd6530ed6485 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/comport.png differ diff --git a/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/wire_connection.jpg b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/wire_connection.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2b52b10530b01dd2b5c052eafb413ef409967ca4 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/AIChatBot-Volcengine-webRTC/wire_connection.jpg differ diff --git "a/docs/Application_guide/zh/media/solutions/DTU/4G\350\203\266\346\243\222\345\244\251\347\272\277.jpg" "b/docs/Application_guide/zh/media/solutions/DTU/4G\350\203\266\346\243\222\345\244\251\347\272\277.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..66650e405222f9a0b82509fa5424ea2b672bcd7f Binary files /dev/null and "b/docs/Application_guide/zh/media/solutions/DTU/4G\350\203\266\346\243\222\345\244\251\347\272\277.jpg" differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/DTU_wires_connection.png b/docs/Application_guide/zh/media/solutions/DTU/DTU_wires_connection.png new file mode 100644 index 0000000000000000000000000000000000000000..2a1a5497716fd2ed4ffc8f5a71a67e8a7f2f4652 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/DTU_wires_connection.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/EC800GCN.png b/docs/Application_guide/zh/media/solutions/DTU/EC800GCN.png new file mode 100644 index 0000000000000000000000000000000000000000..6c57b10d315acb2eed67fe9c992f62b614763aec Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/EC800GCN.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/HuaDTU.jpg b/docs/Application_guide/zh/media/solutions/DTU/HuaDTU.jpg new file mode 100644 index 0000000000000000000000000000000000000000..59f79e566d9b94b02f722ead1cdaad1252a51e6b Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/HuaDTU.jpg differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/UML.png b/docs/Application_guide/zh/media/solutions/DTU/UML.png new file mode 100644 index 0000000000000000000000000000000000000000..ad7cd0c464d62cde72d699ffbfcc0c7c7ada8c31 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/UML.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/cloud_down.png b/docs/Application_guide/zh/media/solutions/DTU/cloud_down.png new file mode 100644 index 0000000000000000000000000000000000000000..0feebf83cab55858bcc9ec36b1954f283e8e66d8 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/cloud_down.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/cloud_up.png b/docs/Application_guide/zh/media/solutions/DTU/cloud_up.png new file mode 100644 index 0000000000000000000000000000000000000000..6a93ab866a6e9148e17bce5541286d75a7729fda Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/cloud_up.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/debug_log.png b/docs/Application_guide/zh/media/solutions/DTU/debug_log.png new file mode 100644 index 0000000000000000000000000000000000000000..f56e908927718dacf402095c07180bc33d70651c Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/debug_log.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/debug_log_down_data.png b/docs/Application_guide/zh/media/solutions/DTU/debug_log_down_data.png new file mode 100644 index 0000000000000000000000000000000000000000..b020bdacebfc014c0b76610e9d7e1d712e196a33 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/debug_log_down_data.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/debugview.png b/docs/Application_guide/zh/media/solutions/DTU/debugview.png new file mode 100644 index 0000000000000000000000000000000000000000..ceb61c02b8301368c4c8c8d36229797cc8f9248e Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/debugview.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/download_scripts.png b/docs/Application_guide/zh/media/solutions/DTU/download_scripts.png new file mode 100644 index 0000000000000000000000000000000000000000..034704cb7628bc86bbeedc9b21aba6705b0ee163 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/download_scripts.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/dtu_graph.png b/docs/Application_guide/zh/media/solutions/DTU/dtu_graph.png new file mode 100644 index 0000000000000000000000000000000000000000..e4a29ee2c7464a9dfd39a4d3e6afd85c556d9340 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/dtu_graph.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/dupont.png b/docs/Application_guide/zh/media/solutions/DTU/dupont.png new file mode 100644 index 0000000000000000000000000000000000000000..d04543958240f2e29e82f2dcfca4a754a6cee8ac Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/dupont.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/flowchart.png b/docs/Application_guide/zh/media/solutions/DTU/flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..00cb771a230a7035fc9ae1a4be30d955c092ba3a Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/flowchart.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/gitbash.png b/docs/Application_guide/zh/media/solutions/DTU/gitbash.png new file mode 100644 index 0000000000000000000000000000000000000000..45d0f79ff5b0466097693d3bc91505f503a4a723 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/gitbash.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/mini_usb.png b/docs/Application_guide/zh/media/solutions/DTU/mini_usb.png new file mode 100644 index 0000000000000000000000000000000000000000..ec4361fd79f4bdd719630867ca2a0df58016996d Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/mini_usb.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/qcom_down.png b/docs/Application_guide/zh/media/solutions/DTU/qcom_down.png new file mode 100644 index 0000000000000000000000000000000000000000..e5e661ad34343b1496497e97630d0e7ca78eb4e4 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/qcom_down.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/qcom_test.png b/docs/Application_guide/zh/media/solutions/DTU/qcom_test.png new file mode 100644 index 0000000000000000000000000000000000000000..69f9bc5177a6a1c31ad03be86802bb6e83802b43 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/qcom_test.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/repl_logs.png b/docs/Application_guide/zh/media/solutions/DTU/repl_logs.png new file mode 100644 index 0000000000000000000000000000000000000000..785382aef1fe3cea174d9108d1807edef2dbb84a Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/repl_logs.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/run_scripts.png b/docs/Application_guide/zh/media/solutions/DTU/run_scripts.png new file mode 100644 index 0000000000000000000000000000000000000000..ccd49d4a8a6711bd0674297709cdfe733f2668da Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/run_scripts.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/sim_card.png b/docs/Application_guide/zh/media/solutions/DTU/sim_card.png new file mode 100644 index 0000000000000000000000000000000000000000..4d49057b4f9179495c1c946403273af14d20e7db Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/sim_card.png differ diff --git a/docs/Application_guide/zh/media/solutions/DTU/usb_ttl.png b/docs/Application_guide/zh/media/solutions/DTU/usb_ttl.png new file mode 100644 index 0000000000000000000000000000000000000000..cc0e9fd13517673a255ca1b31a33dd975fdc46ea Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/DTU/usb_ttl.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/Logging.png b/docs/Application_guide/zh/media/solutions/poc/Logging.png index 4d100e9e860be790729266670d872c658f007f6d..a6a99a652c09fe7812adc3f66a9df1c0677b88f5 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/Logging.png and b/docs/Application_guide/zh/media/solutions/poc/Logging.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/MainScreen.png b/docs/Application_guide/zh/media/solutions/poc/MainScreen.png index bbc591f84d5319452058245ec1afa1757cb77f6a..94fcf10980f06853cf1b95a8e550c5ea8df1ba54 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/MainScreen.png and b/docs/Application_guide/zh/media/solutions/poc/MainScreen.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/bord.png b/docs/Application_guide/zh/media/solutions/poc/bord.png index 74c28f6830931738543ad76c1f272d88e2be1e1d..a656e40d5b7d0fe3e279959c45cec925c5230f64 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/bord.png and b/docs/Application_guide/zh/media/solutions/poc/bord.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/comport.png b/docs/Application_guide/zh/media/solutions/poc/comport.png index 66728782024289081ab7266b74cbe612acaa0233..270017b82e7cae2e731cfa8deb67bd6530ed6485 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/comport.png and b/docs/Application_guide/zh/media/solutions/poc/comport.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/get_imei.png b/docs/Application_guide/zh/media/solutions/poc/get_imei.png new file mode 100644 index 0000000000000000000000000000000000000000..26db7f5e97cc0b759cbe5eea95b4744d0b7b409c Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/poc/get_imei.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/group.png b/docs/Application_guide/zh/media/solutions/poc/group.png new file mode 100644 index 0000000000000000000000000000000000000000..46f8714bccd99e53af37d323b1c77665111c0ad9 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/poc/group.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/member.png b/docs/Application_guide/zh/media/solutions/poc/member.png new file mode 100644 index 0000000000000000000000000000000000000000..66d97359f43f759e5b63a9bd1ad62f97570db383 Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/poc/member.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png b/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png index 4b9cccf5938049c52ab0587560b8c51c21f6ac3a..5bed31217449da5468b76c41573cab4daa4fba45 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png and b/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/services.png b/docs/Application_guide/zh/media/solutions/poc/services.png index bdd83f7385f4fec4a131209085977906004ed676..ddb0a5a59cfd3adeef44dbf642ffe6454ee184e0 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/services.png and b/docs/Application_guide/zh/media/solutions/poc/services.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/speak.png b/docs/Application_guide/zh/media/solutions/poc/speak.png index c5bdb082b6c9fcb175bb2172ecb2d858cbcf837f..a656e40d5b7d0fe3e279959c45cec925c5230f64 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/speak.png and b/docs/Application_guide/zh/media/solutions/poc/speak.png differ diff --git a/docs/Application_guide/zh/media/solutions/poc/ui_uml.png b/docs/Application_guide/zh/media/solutions/poc/ui_uml.png index 08995e03a6a2790abf9d8f0518a56d8cd3cbcf34..68d018a603e89b5a41d6d6f02d2b2f7c5c919d9d 100644 Binary files a/docs/Application_guide/zh/media/solutions/poc/ui_uml.png and b/docs/Application_guide/zh/media/solutions/poc/ui_uml.png differ diff --git a/docs/Application_guide/zh/sidebar.yaml b/docs/Application_guide/zh/sidebar.yaml index 8c7c4b53b825481383cc5a25b5d534db36fab9e4..a61174b398cf581d90f5672ea9f4719afda0b77c 100644 --- a/docs/Application_guide/zh/sidebar.yaml +++ b/docs/Application_guide/zh/sidebar.yaml @@ -265,8 +265,29 @@ items: - label: 产品方案 file: solutions/README.md items: - - label: DTU 方案 + - label: 豆包 RTC AI 聊天机器人 + file: solutions/AIChatBot-Volcengine-webRTC/README.md + items: + - label: 开发资源汇总 + file: solutions/AIChatBot-Volcengine-webRTC/dev_resources.md + - label: 快速上手 + file: solutions/AIChatBot-Volcengine-webRTC/quick_start.md + - label: 软件设计讲解 + file: solutions/AIChatBot-Volcengine-webRTC/software_design.md + - label: EP-D200 华系列 DTU file: solutions/DTU/README.md + items: + - label: 开发资源汇总 + file: solutions/DTU/dev_resources.md + - label: 快速上手 + file: solutions/DTU/quick_start.md + items: + - label: 基于 TCP 协议的设备开发 + file: solutions/DTU/tcp_demo.md + - label: 基于 MQTT 协议的设备开发 + file: solutions/DTU/mqtt_demo.md + - label: 软件设计讲解 + file: solutions/DTU/software_design.md - label: 智慧农业中控面板 file: solutions/Agriculture-Control-Panel/README.md - label: 可穿戴解决方案 diff --git a/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/README.md b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/README.md new file mode 100644 index 0000000000000000000000000000000000000000..e26e218df5bcd5d5677114de799d129ec0cf56d4 --- /dev/null +++ b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/README.md @@ -0,0 +1,20 @@ +# 豆包 RTC AI 聊天机器人 + +该 AI 聊天机器人方案基于豆包火山 RTC 引擎开发,具有以下特性: + +- 支持智能体切换。 +- 支持音色切换。 +- 支持ASR字幕。 +- 支持TTS字幕。 +- 支持语音中断/打断。 +- 支持服务器地址切换。 +- 支持语音唤醒。 +- 使用 Python 语言,便于二次开发。 + + + +--- + +- [开发资源汇总](./dev_resources.md) +- [快速上手](./quick_start.md) +- [软件设计讲解](./software_design.md) diff --git a/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/dev_resources.md b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/dev_resources.md new file mode 100644 index 0000000000000000000000000000000000000000..e273105b11539a3d14bb9fc0895d0f3f6bbc7ca4 --- /dev/null +++ b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/dev_resources.md @@ -0,0 +1,36 @@ +# 开发资源汇总 + +## 硬件资料 + + - EC800MCNLE / EC800MCNGB QuecDuino 开发板(含天线、Type-C 数据线等) + > - [点此购买开发板套件](https://www.quecmall.com/goods-detail/2c90800c94028da20194824724370127) + - 电脑(Windows 7、Windows 10 或 Windows 11) + - 喇叭 + - 任意 2-5W 功率的喇叭即可 + - [移远商城购买链接](https://www.quecmall.com/goods-detail/2c90800c94028da201948249e9f4012d) + +## 软件资料 + + - QuecPython 模块的 USB 驱动:[QuecPython_USB_Driver_Win10_ASR](https://images.quectel.com/python/2023/04/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip) + - QuecPython 固件 + - [EC800MCNLE](https://github.com/QuecPython/AIChatBot-Volcengine-webRTC/releases/download/v1.0.1/EC800MCNLER06A08M08_OCPU_QPY_TEST0219.zip) + - [EC800MCNGB](https://github.com/QuecPython/AIChatBot-Volcengine-webRTC/releases/download/v1.0.1/EC800MCNGBR06A01M08_OCPU_QPY_TEST0303.zip) + +## 开发工具 + +- QPYcom - QuecPython 调试工具 + - 版本:V3.6.0 + - 下载 [QPYcom](https://python.quectel.com/wp-content/uploads/2024/09/QPYcom_V3.6.0.zip) +- VSCode - 代码编辑器 + - 下载 [VSCode](https://code.visualstudio.com/) + +## 实验源码 + +- branch:ec800m-quecduino +- github 仓库:[AIChatBot-Volcengine-webRTC](https://github.com/QuecPython/AIChatBot-Volcengine-webRTC/tree/ec800m-quecduino) + ```bash + git clone https://github.com/QuecPython/AIChatBot-Volcengine-webRTC.git + cd AIChatBot-Volcengine-webRTC + git checkout ec800m-quecduino + ``` +- [压缩包下载](https://codeload.github.com/QuecPython/AIChatBot-Volcengine-webRTC/zip/refs/heads/ec800m-quecduino) \ No newline at end of file diff --git a/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/quick_start.md b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/quick_start.md new file mode 100644 index 0000000000000000000000000000000000000000..746dad19890efde0b3b056061bb25f5e22427803 --- /dev/null +++ b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/quick_start.md @@ -0,0 +1,109 @@ +# 快速上手 + +## 硬件准备 + +- Windows 电脑一台,建议 `Win10` 系统。 +- 一套 [EC800MCNLE / EC800MCNGB QuecDuino 开发板](https://www.quecmall.com/goods-detail/2c90800c94028da20194824724370127) (含天线、Type-C 数据线等)。 + +- 一张可正常使用的 Nano SIM 卡。 +- 一个 2-5W 功率的喇叭。 + +## 环境搭建 + +- 下载并安装 EC800M 系列模组驱动:[QuecPython_USB_Driver_Win10_ASR](https://images.quectel.com/python/2023/04/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip)。 + +- 下载并安装 [VSCode](https://code.visualstudio.com/)。 + +- 下载并解压 [QPYCom](https://images.quectel.com/python/2022/12/QPYcom_V3.6.0.zip) 工具到电脑的合适位置。 + +- 下载固件包。 + - [EC800MCNLE](https://github.com/QuecPython/AIChatBot-Volcengine-webRTC/releases/download/v1.0.1/EC800MCNLER06A08M08_OCPU_QPY_TEST0219.zip) + - [EC800MCNGB](https://github.com/QuecPython/AIChatBot-Volcengine-webRTC/releases/download/v1.0.1/EC800MCNGBR06A01M08_OCPU_QPY_TEST0303.zip) + +- 下载[实验源码](https://codeload.github.com/QuecPython/AIChatBot-Volcengine-webRTC/zip/refs/heads/ec800m-quecduino)。 + + > 💡 **Tips** + > - 固件内火山对话 token 临时测试使用,随时可能取消,如遇到无法正常加入房间对话,请联系移远fae人员获取支持。 + > - 商业应用请走商务流程。 + +## 硬件连接 + +按照下图进行硬件连接: + + + + +1. 将喇叭连接至图中标识有`SPK+`和`SPK-`的排针上。 +2. 在图示位置插入可用的 Nano SIM 卡。 +3. 将天线连接至标识有`LTE`字样的天线连接座上。 +4. 使用 Type-C 数据线连接开发板和电脑。 + +## 设备开发 + +### 开机 + +完成硬件连接的工作后,长按开发板上标识为`PWK`的按键,直到网络灯闪烁,或电脑设备管理器的端口列表中出现包含 `Quectel USB` 字样的 COM 口,表示开机成功。 + +![comport.png](../../media/solutions/AIChatBot-Volcengine-webRTC/comport.png) + +### 烧录固件包 + +参考[此章节](https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/qpycom-dw.html#%E4%B8%8B%E8%BD%BD%E5%9B%BA%E4%BB%B6),烧录对应型号固件包至开发板。 + +### 脚本导入与运行 + +1. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#PC%E4%B8%8E%E6%A8%A1%E7%BB%84%E9%97%B4%E7%9A%84%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93),将源码目录下 `code` 文件夹中的所有文件导入到模组文件系统,如下图所示: + + + + +2. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E6%89%A7%E8%A1%8C%E8%84%9A%E6%9C%AC%E6%96%87%E4%BB%B6),执行主程序文件 `ai_main.py`。 +3. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E5%81%9C%E6%AD%A2%E7%A8%8B%E5%BA%8F%E8%BF%90%E8%A1%8C),停止程序运行。 + +## 业务调试 + +### 程序启动 + +执行 `ai_main.py` 脚本后,程序开始运行。 + +### 进入房间 + +按下 KEY S3 键进入房间,收到 TIKTOK_RTC_EVENT_START 事件表示进入房间成功,开始进行语音对话。 + +### 退出房间 + +按下 KEY S2 键退出房间,收到 TIKTOK_RTC_EVENT_STOP 事件表示退出房间成功。 + + +**参考运行日志:** +```python +import example +>>> example.exec('/usr/ai_main.py') +volume: 11 +>>> lte network normal +ai task running + +# 按KEY S3键进入智能体 +rtc_queue key event 1 +start rtc +TIKTOK_RTC_EVENT_START +TIKTOK_RTC_EVENT_TTS_TEXT 你 +TIKTOK_RTC_EVENT_TTS_TEXT 你好 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到你 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到你的 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到你的吗 + +# 按KEY S2键退出智能体 +rtc_queue key event 2 +stop rtc +TIKTOK_RTC_EVENT_STOP + +``` + diff --git a/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/software_design.md b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/software_design.md new file mode 100644 index 0000000000000000000000000000000000000000..54696b9838a3c54c867574c44c276a3f57beb7a2 --- /dev/null +++ b/docs/Application_guide/zh/solutions/AIChatBot-Volcengine-webRTC/software_design.md @@ -0,0 +1,104 @@ +# 软件设计讲解 + +## 软件框架 + +### 框架设计图 + + + +### 业务系统启动流程 + +![](../../media/solutions/AIChatBot-Volcengine-webRTC/code_ai_process.png) + +## 代码讲解 + +### AI 事件管理 + +处理 AI 事件 + +```python +def ai_callback(args): + global GPIO39 # audio PA GPIO管脚 + event = args[0] + msg = args[1] + if event == 1: + print('TIKTOK_RTC_EVENT_START') # 进入房间,可以开始进行语音对话。 + GPIO39.write(1) + elif event == 2: + print('TIKTOK_RTC_EVENT_STOP') # 退出房间,语音对话结束。 + GPIO39.write(0) + elif event == 3: + print('TIKTOK_RTC_EVENT_TTS_TEXT {}'.format(msg)) # TTS 文本,模组播放tts文本。 + elif event == 4: + print('TIKTOK_RTC_EVENT_ASR_TEXT {}'.format(msg)) # ASR 文本,模组识别到语音文本。 + elif event == 5: + print('TIKTOK_RTC_EVENT_ERROR {}'.format(msg)) # 错误信息,模组发生错误时,上报错误信息。 + else: + print('TIKTOK_RTC_EVENT UNKNOWN {}'.format(event)) #未知异常事件 + +``` + +### AI 初始化 + +初始化 AI 对象,注册回调接口,以及配置AI对话时间。 + +```python +tiktok = TiktokRTC(300000, ai_callback) +``` + +**参考运行日志** +```python + +import example +>>> example.exec('/usr/ai_main.py') +volume: 11 +>>> lte network normal +ai task running + +``` + +### AI 进入房间 + +按下KEY S3键进入房间,开始进行语音对话,调用`tiktok.active(True)`接口激活。 + +```python +tiktok.active(True) +``` + +**参考运行日志** +```python +# 按KEY S3键进入智能体 +rtc_queue key event 1 +start rtc +TIKTOK_RTC_EVENT_START +TIKTOK_RTC_EVENT_TTS_TEXT 你 +TIKTOK_RTC_EVENT_TTS_TEXT 你好 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到你 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到你的 +TIKTOK_RTC_EVENT_TTS_TEXT 你好有什么可以帮到你的吗 + +``` + +### AI 退出房间 + +按下KEY S2键退出房间,结束语音对话,调用`tiktok.active(False)`接口去激活。 + +```python +tiktok.active(False) +``` + +**参考运行日志** +```python + +# 按KEY S2键退出智能体 +rtc_queue key event 2 +stop rtc +TIKTOK_RTC_EVENT_STOP +``` diff --git a/docs/Application_guide/zh/solutions/DTU/README.md b/docs/Application_guide/zh/solutions/DTU/README.md index 0378887c512cf201b32670431feea5c13af8855b..841e878c50a1d22dc8f560acebe010368b8eb638 100644 --- a/docs/Application_guide/zh/solutions/DTU/README.md +++ b/docs/Application_guide/zh/solutions/DTU/README.md @@ -1,549 +1,26 @@ -# DTU方案介绍及应用指导 +# EP-D200 华系列 DTU -## 方案概述 +华系列 DTU 产品搭载移远 EC800G-CN 模块,支持 4G Cat1 全网通,可实现串口与 4G(CAT1)的数据互传,相比于传统 2G/3G 网络,覆盖更广、速率更快、延时更低。采用宽电(9~36V)供电。接口丰富,提供 RS232、RS485 和 TTL 三种接口可选。开发方便快捷,支持透传,支持 Python 二次开发。安全可靠,支持软、硬件看门狗守护。体型小巧安装方便(22.6 * 74.6 mm)。 本产品方案支持 4G 全网通,采用宽电压(9~36V)供电,提供 RS232、RS485 和 TTL 三种接口,可使本产品应用于各种行业和复杂场景满足通信数传的需求,如电网、交通、消防、工业生产、气象环境、农业、矿产等等。 -### DTU简介 +**功能列表**: -DTU (Data Transfer Unit,数据传输单元),是专门用于将串口**数据转换**为网络数据或将网络数据转换为串口数据通过无线**通信网络**进行传送的**无线终端设备**。具备组网迅速灵活,网络覆盖范围广,建设周期短、成本低等诸多优点。广泛应用于气象、水文水利、地质等行业。 +- 支持 Mqtt 透传 +- 支持 TCP/UDP 透传 +- 支持 RS485 转 4G +- 支持 4G 全网通 +- 支持 Python 语言二次开发 +- 支持 9~36V 宽幅供电 +- POWER/DATA/WORK 指示灯 -### 基本原理 +**产品图示**: -DTU主要功能就是把设备的数据通过无线的方式传送回云端(后台服务),如`图1:《DTU简介》`中所示,要完成数据传输需要建立一套完成的数据传输系统,这个系统中包括:DTU设备、客户设备(MCU)、移动网络、后台中心(云端)。在DTU设备中插入一张SIM卡,待设备上电后先**拨号和注册网络**;然后通过网络与云端中心服务**建立连接**;后续,DTU设备可以与云端后台服务**双向通信** —— 通过串口接收MCU数据经过处理后上报给云端(**数据上行**),DTU接收云端数据经过处理后通过串口发送给MCU(**数据下行**)。 + -![](../../media/solutions/DTU/DTU.png) +## 开发指南 -
图1 DTU简介
-> 传感器(温度、湿度等传感器)采集数据发送给设备端MCU,设备端MCU通过串口将采集到的数据通过DTU发送到云端中心服务器,服务器接收到数据可以进行分析、处理、显示、保存等操作。 +[开发资源汇总](./dev_resources.md) -### 应用领域 - -![](../../media/solutions/DTU/DTU应用领域.jpg) - -
图2 DTU应用领域
-## 硬件选型 - - 本方案支持多款QuecPython硬件设备,下面介绍`QuecPython EVB开发板`和`DP-DTU-Q600`。 - -#### QuecPython_EVB开发板介绍 - -以搭载了`EC200U`模组的开发板`QuecPython_EC2X_EVB_V2.0` (EC2X开发板介绍:)为例。 - -如下图所示,设备使用type-c给模块供电,UART与TTL转USB模块连接至开发电脑,可轻松实现调试。 - -![](../../media/solutions/DTU/quecpython_evb.png) - -
图3 QuecPython_EC2X_EVB_V2.0使用UART与TTL转USB连接电脑
- - - - -| 开发板上的PIN脚 | TTL转USB模块 | 图中线的颜色 | -| --------------- | ------------ | ------------ | -| J7的13脚(TX) | RX | 红线 | -| J7的14脚(RX) | TX | 橙线 | -| J7的3脚(GND) | GND | 黄线 | - -更多开发板请参阅: - -#### DP-DTU-Q600产品介绍 - -DP-DTU-Q600 是一款 LTE CAT1 网络的 DTU,方便集成到工控机、工业设备、传感设备里,其物理尺寸为 72mm x 40.5mm x 20mm 产品具备网络覆盖广、传输延时低的特点,支持三大运营商接入;产品有三个指示灯,方便客户确认设备状态。 - -![](../../media/solutions/DTU/DP-DTU-Q600.png) - -
图4 DP-DTU-Q600
-产品规格: - -| 规格 | 参数 | -| ---------- | -------------------- | -| 供电范围 | DC5-24V | -| DC5-24V | 2PIN 端子 | -| 天线接口 | SMA 外螺纹内孔 | -| SIM 卡接口 | 自弹式 NANO SIM 卡槽 | -| 网络制式 | 4G CAT1 全网通 | -| 通信接口 | 2PIN 端子 RS485 | - -产品特点: - -- 内部集成TCP/IP协议栈,并且具有嵌入式操作系统, 具备拨号上网以及TCP/IP数据通信的功能 -- 提供串口数据双向转换功能 -- 支持自动心跳,保持永久在线 -- 支持参数配置,永久保存 -- 支持用户串口参数设置 -- 支持用户二次开发 -- 物联网卡,无需特殊卡,一般物联网卡都可使用 -- NANO SIM 卡槽 -- RS485 接口,方便集成 - -设备调试: - -- 在NANO SIM卡座中插入SIM卡 -- 连接好天线 -- 接入电源 - -![](../../media/solutions/DTU/DP-DTU-Q600硬件接口图示2.png) - -
图5 DP-DTU-Q600硬件接口
-连接设备至开发机(本文采用`CP2102 USB to TTL模块`进行连接和调试)。 - -使用2根杜邦线分别连接`485A`、`485B`针脚,将`CP2102`连接至开发机的`USB`口(如图6所示)。 - -![](../../media/solutions/DTU/DTU_BOARD_003.jpg) - -
图6 DP600R连接开发机
-> 连接成功后,设备上电以及连接网络后`power`和`net`指示灯亮起。 - -#### 使用QPYcom调试 - -安装QPYCom以及搭建QuecPython开发环境参考文档:。 - -##### 打开repl串口 - - - -![](../../media/solutions/DTU/qpycom_select_port2.png) - -
图7 QPYCom打开repl串口
-##### 下载脚本 - -创建下载项目 —— 切换到下载选项卡,点击创建项目,并输入任意项目名称。 - -> 此处我们创建名为`dtu`的项目。 - -![](../../media/solutions/DTU/qpycom_proj2.png) - -
图8 QPYCom新建项目
-选择导入文件 —— 右击`usr`目录,在弹出的选择框中点击**一键导入**,继而选择我们DTU代码仓库中的**code**文件夹 —— 即将code中的所有代码一键导入至模组。如下图所示: - -![](../../media/solutions/DTU/qpycom_add_file2.png) - -
图9 QPYCom一键导入脚本
-导入脚本 —— 点击右下角`下载脚本`按钮,即可开始导入脚本。 - -##### 运行DTU应用 - -切换至"文件"选项卡,在右边选中"dtu.py",点击运行按钮,即可开始dtu调试运行,如果需要上电自动运行,只需要将"dtu.py"更名为"main.py"即可实现上电自动运行。 - -![](../../media/solutions/DTU/qpycom_run2.png) - -
图10 QPYCom执行脚本
-DTU运行成功,在QPYcom的"交互"窗口中,可观察到打印如下。 - -> 应用程序运行依赖具体用户参数配置,比如配置MQTT连接参数等。参考后续DTU方案介绍章节。 - -![](../../media/solutions/DTU/dtu_init2.png) - -
图11 QPYCom脚本输出日志
-## 方案软件设计 - -### 系统框图 - -![](../../media/solutions/DTU/DTU组件图示4.png) - -
图12 DTU方案系统图示
-组件说明: - -- 各类云对象:继承`modules.CloudObservable`并重写相应方法,主要实现云端初始化、连接以及数据收发等功能。 -- 订阅器:继承`modules.CloudObserver`并重写相应方法,主要实现订阅并接收云端对象的消息通知,并根据消息类型调用不同的执行器去处理。 -- 执行器:主要用于具体的业务处理,被订阅器所调用,默认有下行执行器(处理下行数据转发串口)、OTA升级执行器(处理升级消息和触发升级)、上行执行器(主要用于处理上行数据)。 -- 发布器:主要关联云端对象,用于将数据发布给云端。 - -组件协作流程: - -- 构建串口对象 —— 通常至少有一个串口作为通信通道使用,根据实际情况选择使用多个或一个串口。 -- 构建下行数据执行器和OTA升级执行器 —— 执行器主要用作于业务处理,用户需要在执行器中实现具体的业务处理逻辑方法。 - - 下行数据执行器需添加一个串口对象,用于处理下行消息 —— 通过串口转发。 - - OTA升级执行器,需要实现具体的升级业务流程。 -- 创建云端对象 一一 支持阿里云、腾讯云、MQTT等,根据实际业务需求导入使用。 -- 创建订阅器。 - - 云端对象添加订阅器作为其观察者。 - - 订阅器可以有多个,对应下行消息多路处理。 -- 创建发布器。 - - 添加云端对象,作为发布器发布消息的⽬标对象。 -- 创建上⾏数据执⾏器。 - - 上⾏数据执⾏器,主要⽤于接收串⼝数据处理。 - - 添加⼀个发布器⽤作该执⾏器发布消息,具体该消息如何发布由发布器来决定。 - -> 下行数据支持多路,**订阅器**作为一个观察者可以有多个,当一个云端添加多个订阅器后,一旦有消息下行,则会通知所有订阅器,不同的订阅器可能通过不同的**下行执行器**或**OTA升级执行器**对数据进行处理。 -> -> 上行数据支持多路,当需要监听多个串口数据,可以有多个**上行执行器**将多个串口数据转发云端。 - -### 观察者模式 - -- **概念:**当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知依赖它的对象。观察者模式属于行为型模式。 -- **意图:**定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 -- **主要解决:**一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。 -- **何时使用:**一个对象(目标对象)的状态发生改变,所有的依赖对象(观察者对象)都将得到通知,进行广播通知。 -- **关键代码:**在抽象类里有一个列表存放观察者们。 - -在DTU方案设计中,一个云端类(`Socket`和`MqttIot`)对象都是一个**被观察者**,当有下行数据时,会**通知**`RemoteSubscribe`(订阅器,**一个观察者**),而`RemoteSubscribe`会根据不同业务从而调用不同的**执行器**来处理。 - -### 组件类设计与交互 - -#### 类继承 - -##### 云端类继承图示 - -```mermaid -graph TD; -CloudObservable[CloudObservable] -CloudObservable --> MqttIot[MqttIot] -CloudObservable --> AliYunIot[AliYunIot] -CloudObservable --> HuaweiIot[HuaweiIot] -CloudObservable --> QuecThing[QuecThing] -CloudObservable --> Socket[Socket] -CloudObservable --> TXYunIot[TXYunIot] -``` - -**CloudObservable**: 可被观察者类,主要用于定义各种云对象类时被继承和重写。主要用户接口有: - -- init:云端初始化 - -- addObserver: 添加一个观察者对象 -- delObserver:移除一个观察者对象 -- notifyObservers:通知所有观察者 -- through_post_data:透传数据发布 -- post_data:云端消息发布 -- ota_request:云端发布OTA升级请求 -- ota_action:执行升级动作 - -##### 订阅器类继承图示 - -```mermaid -graph TD; -CloudObserver[CloudObserver] --> RemoteSubscribe[RemoteSubscribe] -``` - -**CloudObserver**:观察者对象类,主要用于被动接收通知。主要有以下方法: - -- `execute`:在被被观察者通知后,会调用该方法执行具体动作。 - -**RemoteSubscribe**: 订阅器,是一个观察者,用于接收云端下行数据通知。主要方法有: - -- `execute`:当被通知时,调用该方法执行具体的业务处理流程。(不同的业务使用不同的执行器处理,在该类对象中定义2种执行器:`__executor`(普通执行器),`__ota_executor`(专用于执行ota升级的执行器)) -- `add_executor`:添加执行器。 - -#### 下行数据处理 - -下行数据处理时序图: - -```mermaid -sequenceDiagram -Title: Device downlink data processing timing - -participant cloud as Cloud[mqtt] -participant mqtt as MqttIot -participant rs as RemoteSubscribe -participant executor as Executor - -mqtt -->> cloud: connect cloud & subscribe -rs -->> executor: add executor -mqtt -->> rs: add observer -rs -->> rs: Waiting for notification - -cloud ->> mqtt: downlink data -mqtt ->> rs: notify observer(carrying downlink data) -rs ->> executor: call executor -``` - -本方案中定义处理下行数据的执行器有两种: - -- `DownlinkTransaction`:下行数据执行器,负责将云端数据通过串口转发。 -- `OtaTransaction`:OTA升级执行器,负责处理升级相关业务。 - -举个例子,当有下行数据时。假设为透传数据,会调用`DownlinkTransaction`执行器通过串口转发数据给MCU;假设为OTA升级消息,则会调用`OtaTransaction`执行器执行升级流程。 - -#### 上行数据处理 - -上行数据处理时序图: - -```mermaid -sequenceDiagram -Title: Device uplink data processing timing - - -participant cloud as Cloud[mqtt] -participant mqtt as MqttIot -participant rp as RemotePublish -participant executor as UplinkTransaction - - -mqtt -->> cloud: connect cloud & subscribe -rp -->> mqtt: add cloud -executor -->> rp: add publisher -executor -->> executor: read serial data - -executor ->> rp: uplink data -rp ->> mqtt: check connect status -mqtt ->> rp: report connect status -rp ->> mqtt: reconnect according to status - -rp ->> mqtt: uplink data -mqtt ->> cloud: uplink data -``` - -本方案中定义处理上行数据执行器有一种: - -- `UplinkTransaction`:上行数据执行器,用于接收串口数据并上传云端。 - - 主要属性: - - `__remote_pub`: 远程发布器,用于上传数据至云端。是`modules.remote.RemotePublish`类对象。 - - `__serial`: 串口对象,用于串口数据收发。定义于`modules.serial.Serial`。 - - 主要方法: - - `uplink_main`:用于接收串口数据,并上传云端。 - -## 方案用户使用说明 - -### 编写配置文件 - -DTU配置文件路径:`code/dtu_config.json`。 - -基于mqtt私有云做如下配置: - -- 系统配置 - -![system_config.png](../../media/solutions/DTU/system_config.png) - -- mqtt私有云配置 - -![mqtt_config.png](../../media/solutions/DTU/mqtt_config.png) - -设备端接口调用流程(接口调用逻辑、参数配置)、上位机工具配置参数、云端配置 - -### DTU初始化流程及接口说明 - -`code/dtu.py`中定义了应用类`Dtu`,其实例为应用对象,调用方法`start`即启动应用服务。 - -```python -from usr.dtu import Dtu - -if __name__ == "__main__": - dtu = Dtu() - dtu.start() -``` - -#### 类`Dtu`接口说明 - -类`Dtu`中定义如下方法,说明如下所示(说明⻅代码中的注释部分,完整代码参阅`dtu.py`使⽤示 例)。 - -```python -class Dtu(Singleton): - - def __init__(self): - # 定义一个定时器,用于定时检查OTA升级计划 - self.__ota_timer = osTimer() - # OTA升级执行器,用于执行OTA升级相关业务 - self.__ota_transaction = None - - def __cloud_init(self, protocol): - # 根据传入protocol参数指定协议,来初始化云端对象和连接云端 - # 该参数对应配置项`system_config.cloud` - pass - - def __periodic_ota_check(self, args): - # 定时检查OTA升级计划 - pass - - def start(self): - # 初始化DTU,以及启动各项服务 - pass -``` - -#### 应用服务初始化流程说明 - -DTU应用服务在`start`函数调用后即初始化和启动各项服务。 - -初始化流程: - -- 加载系统配置 -- 创建串口通信对象(`usr.modules.serial.Serial`) -- 创建云端对象(`usr.modules.mqttIot.MqttIot`或其他云对象) -- 创建GUI工具通信对象(`usr.modules.dtu_transaction.GuiToolsInteraction`) -- 创建数据上行执行器(`usr.modules.dtu_transaction.UplinkTransaction`) -- 创建数据下行执行器(`usr.modules.dtu_transaction.DownlinkTransaction`) -- 创建OTA升级执行器(`usr.modules.dtu_transaction.OtaTransaction`) -- 创建订阅器(`usr.modules.remote.RemoteSubscribe`) -- 创建发布器(`usr.modules.remote.RemotePublish`) -- 启动定时器定期检查OTA升级计划 -- 创建服务线程持续读取串口数据,解析并上传至云端 - -流程步骤详细说明: - -(1)加载系统配置 - -```python -from usr.settings import settings -``` - -`settings`是一个全局的配置文件(`Settings`)对象,对应是`/usr/dtu_config.json`配置文件参数,采用json格式持久化。 - -方法: - -- `get`:获取当前所有配置参数(即json文件导入的dict类型数据) -- `set(opt, val)`:设置`opt`配置项,参数是`val`。 -- `save`:持久化保存配置。 -- `remove`:删除配置文件。 -- `reset`:恢复默认配置。 -- `set_multi(**kwargs)`:批量设置参数。 - -(2)创建串口通信对象 - -```python -from usr.modules.serial import Serial - -# Serial initialization -serial = Serial(int(uart_setting.get("port")), - int(uart_setting.get("baudrate")), - int(uart_setting.get("databits")), - int(uart_setting.get("parity")), - int(uart_setting.get("stopbits")), - int(uart_setting.get("flowctl")), - uart_setting.get("rs485_direction_pin")) -``` - -`serial`是一个串口通信对象(`Serial`)。 - -方法: - -- `write(data)`:传入写入data字节。 -- `read(n, timeout)`: 串口读n个字节,超时时间为timeout。 - -(3)创建云端对象 - -`Dtu.__init_cloud`方法用于创建云端对象(根据系统配置文件,创建不同的云端对象)。 - -```python -class Dtu(object): - - def __init_cloud(self, protocol): - if protocol == 'mqtt': - cloud_config = settings.current_settings.get("mqtt_private_cloud_config") - client_id = cloud_config["client_id"] if cloud_config.get("client_id") else modem.getDevImei() - cloud = MqttIot(cloud_config.get("server", None), - int(cloud_config.get("qos", 0)), - int(cloud_config.get("port", 1883)), - cloud_config.get("clean_session"), - client_id, - cloud_config.get("username"), - cloud_config.get("password"), - cloud_config.get("publish"), - cloud_config.get("subscribe"), - cloud_config.get("keep_alive") - ) - cloud.init(enforce=True) - return cloud - else: - # 略,其他云端对象初始化参阅`code/dtu.py` - pass - - def start(self): - # ... - cloud = self.__cloud_init(settings.current_settings["system_config"]["cloud"]) - # ... -``` - -以MQTT为例,从系统配置文件中读取mqtt配置参数,实例化`MqttIot`对象传入参数,并调用`MqttIot.init`方法完成云对象的初始化操作。 - -方法: - -- `addObserver`: 添加观察者对象,用于云端在接收下行数据后,交由该对象处理。 - - 订阅器:当接收云端通知(携带下行数据)后,调用执行器处理。 - -(4)创建GUI工具通信对象 - -```python -gui_tool_inter = GuiToolsInteraction() -``` - -GUI通信对象`GuiToolsInteraction`,用于解析串口下发的上位机指令,并处理具体指令业务。 - -方法: - -- `parse_serial_data`:解析串口数据。 - -(5)创建数据上行执行器 - -```python -up_transaction = UplinkTransaction() -up_transaction.add_module(serial) -up_transaction.add_module(gui_tool_inter) -``` - -方法: - -- `add_module`:添加模块对象。 - - 串口对象:上行执行器通过串口对象读取串口数据。 - - GUI通信对象,通过GUI对象解析读取到的串口数据。 - - 发布器对象,通过该对象将数据发布给云端。 -- `uplink_main`:读取串口数据,并使用GUI对象解析(如果是指令数据则处理指令业务,如果是上行数据则转发给云端)。 - -(6)创建数据下行执行器 - -```python -down_transaction = DownlinkTransaction() -down_transaction.add_module(serial) -``` - -方法: - -- `add_module`:添加模块对象 - - 串口对象:下行执行器,通过串口对象转发下行数据。 -- `downlink_main`:用于处理下行数据。 - -(7)创建OTA升级执行器 - -```python -ota_transaction = OtaTransaction() -``` - -方法: - -- `ota_check`:检查OTA升级计划 -- `event_ota_plain`:响应升级计划(在接收到下发的升级计划后,校验参数和启动升级流程) -- `add_module`:添加模块对象 - - 发布器对象:通过发布器对象上报升级状态,或者主动请求升级计划。 - -(8)创建订阅器 - -```python -remote_sub = RemoteSubscribe() -remote_sub.add_executor(down_transaction, 1) -remote_sub.add_executor(ota_transaction, 2) -cloud.addObserver(remote_sub) -``` - -方法: - -- `add_executor`:添加执行器。 - - 下行执行器:通过串口转发数据。 - - OTA升级执行器:解析下行升级消息,并处理升级请求。 - -(9)创建发布器 - -```python -remote_pub = RemotePublish() -remote_pub.add_cloud(cloud) -up_transaction.add_module(remote_pub) -ota_transaction.add_module(remote_pub) -``` - -方法: - -- `add_cloud`:添加云端对象,用该云端对象发布消息。 - -(10)启动定时器定期检查OTA升级计划 - -```python -# 每600秒检测一次升级计划 -self.__ota_timer.start(1000 * 600, 1, self.__periodic_ota_check) -``` - -(11)创建服务线程持续读取串口数据,解析并上传至云端 - -```python -# Start uplink transaction -_thread.start_new_thread(up_transaction.uplink_main, ()) -``` - -启动单独线程执行`up_transaction.uplink_main`,`uplink_main`方法中,持续读取串口数据,使用`GuiToolsInteraction`解析串口数据处理上位机指令,或使用`RemotePublish`转发数据给云端。 +[快速上手](./quick_start.md) +[软件设计讲解](./software_design.md) diff --git a/docs/Application_guide/zh/solutions/DTU/dev_resources.md b/docs/Application_guide/zh/solutions/DTU/dev_resources.md new file mode 100644 index 0000000000000000000000000000000000000000..84094db82f483b094fabbdb747a667eb07f30d49 --- /dev/null +++ b/docs/Application_guide/zh/solutions/DTU/dev_resources.md @@ -0,0 +1,58 @@ +# 开发资源汇总 + +本文档针对华系列 QuecPython 4G DTU,搜集和罗列了所需的硬件资源清单以及相关的配套资料。 + +## 开发板资料 + +- 型号:[EC800GCN 华系列 DTU 开发板](https://python.quectel.com/doc/Getting_started/zh/evb/ec800g_hua_dtu.html) +- 购买链接:[点此跳转](https://www.quecmall.com/goods-detail/2c9080168ef07110018f1853d4050002) +- 开发板文档: + - [EC800G_华-DTU系列开发板产品规格及用户指导](https://python.quectel.com/wp-content/uploads/2024/09/EC800G_华-DTU系列开发板产品规格及用户指导.pdf) + +## 模组资料 + +- 型号:[EC800GCN](https://python.quectel.com/modules-cat/ec800g-series) +- 规格书: [Quectel_EC800G-CN_LTE_Standard_模块产品规格书](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_EC800G-CN_LTE_Standard_%E6%A8%A1%E5%9D%97%E4%BA%A7%E5%93%81%E8%A7%84%E6%A0%BC%E4%B9%A6_V1.3.pdf) +- 驱动下载:[QuecPython_USB_Driver_Win10_U_G](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverU_V1.0.19.zip) + +## 配件资料 + +- 4G胶棒天线(1根) + - 型号: YECT012W1A + - 购买链接:[点击跳转](https://www.quecmall.com/goods-detail/2c90800c92239d5401923be899bc002c) +- Nano Sim 卡 (1张) +- Mini USB 数据线 (1根) +- USB 转 TTL 模块(1个) + - 型号: QTMU0085DP + - 购买链接:[点击跳转](https://www.quecmall.com/goods-detail/2c90800b8eec5c8e018f659f669c0043) + +## 开发工具 + +- QPYcom - QuecPython 调试工具 + - 版本:V3.6.0 + - 下载链接:[QPYcom](https://images.quectel.com/python/2022/12/QPYcom_V3.6.0.zip) +- QCOM - 串口调试工具 + - 版本:V1.6 + - 下载链接:[点击跳转](https://python.quectel.com/wp-content/uploads/2024/09/QCOM_V1.6.zip) +- VSCode - 代码编辑工具 + - 下载链接:[点击跳转](https://code.visualstudio.com/) + +## 固件包 + +- 版本: QPY_OCPU_BETA0002_EC800G_CNLD_FW +- 下载链接:[点击跳转](https://python.quectel.com/wp-content/uploads/2024/09/QPY_OCPU_BETA0002_EC800G_CNLD_FW.zip) + +## 实验源码 + +- 版本:v1.0.0 + +- Github 仓库下载 + + ```shell + git clone https://github.com/QuecPython/solution-HuaDTU.git + cd solution-HuaDTU + git checkout v1.0.0 + ``` + +- [下载Zip源码包](https://github.com/QuecPython/solution-HuaDTU/archive/refs/heads/main.zip) + diff --git a/docs/Application_guide/zh/solutions/DTU/mqtt_demo.md b/docs/Application_guide/zh/solutions/DTU/mqtt_demo.md new file mode 100644 index 0000000000000000000000000000000000000000..58bcef1333d4c06d1c9866e2bf9cd3bc18497775 --- /dev/null +++ b/docs/Application_guide/zh/solutions/DTU/mqtt_demo.md @@ -0,0 +1,154 @@ +# 基于 MQTT 协议的设备开发 + +## 修改配置文件 + +工程配置文件路径:`code/dtu_config.json`。 + +基于 TCP 私有服务器数据透传做如下配置: + +- 默认 `system_config.cloud` 配置项定义为 `"tcp"` 即 TCP 透传模式,系统会自行读取 `socket_private_cloud_config` 配置项。 + + ```python + { + "system_config": { + "cloud": "mqtt" # 默认配置 mqtt 透传模式 + } + } + ``` + +- 本实验采用 MQTT 透传模式,用户需根据实际情况设置 `mqtt_private_cloud_config` 配置项中的 MQTT 服务器域名(*server*)、端口(*port*)、客户端id(*client_id*)以及订阅和发布主题等参数,如下。 + + ```python + { + "mqtt_private_cloud_config": { + "server": "mq.tongxinmao.com", + "port": 18830, + "client_id": "txm_1682300809", + "user": "", + "password": "", + "clean_session": true, + "qos": 0, + "keepalive": 60, + "subscribe": {"down": "/public/TEST/down"}, # 下行数据透传主题 + "publish": {"up": "/public/TEST/up"} # 上行数据透传主题 + } + } + ``` + +- `uart_config` 配置项是串口配置参数,默认是根据当前实验开发板做的配置,不可更改。如用户采用其他开发板则需要根据实际硬件进行配置。 + +```python +{ + "uart_config": { + "port": 2, # 串口号,根据实际硬件配置选择,当前实验不可更改 + "baudrate": 115200, # 波特率 + "bytesize": 8, # 数据位 + "parity": 0, # 奇偶校验 + "stopbits": 1, # 停止位 + "flowctl": 0, # 流控 + "rs485_config": { # RS485 配置 + "gpio_num": 28, # 485 控制脚,当前实验不可更改 + "direction": 0 # 引脚电平变化控制,1表示引脚电平变化为:串口发送数据之前由低拉高、发送数据之后再由高拉低,0表示引脚电平变化为:串口发送数据之前由高拉低、发送数据之后再由低拉高 + } + } +} +``` + +完整配置文件模版如下: + +```json +{ + "system_config": { + "cloud": "tcp" + }, + "mqtt_private_cloud_config": { + "server": "mq.tongxinmao.com", + "port": 18830, + "client_id": "txm_1682300809", + "user": "", + "password": "", + "clean_session": true, + "qos": 0, + "keepalive": 60, + "subscribe": {"down": "/public/TEST/down"}, + "publish": {"up": "/public/TEST/up"} + }, + "socket_private_cloud_config": { + "domain": "112.31.84.164", + "port": 8305, + "timeout": 5, + "keep_alive": 5 + }, + "uart_config": { + "port": 2, + "baudrate": 115200, + "bytesize": 8, + "parity": 0, + "stopbits": 1, + "flowctl": 0, + "rs485_config": { + "gpio_num": 28, + "direction": 0 + } + } +} +``` + +参数说明: + +- `system_config.config`: 指定当前使用的私有云类型。目前支持tcp和mqtt。 +- `mqtt_private_cloud_config`: MQTT私有云配置。 +- `socket_private_cloud_config`: tcp私有云配置。 +- `uart_config`:串口参数配置。 + +## 脚本导入并运行 + +下载安装 **QPYCom** 工具后使用该工具下载脚本至 QuecPython 模组。 + +> 💡 **Tips** +> +> QPYCom 安装和使用教程:https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/index.html + +## 业务调试 + +**查看 REPL 交互口日志** + +程序运行后,在 REPL 交互页面可以看到日志输出如下图所示。 DTU服务中有2个线程处理数据,一个是用于检测读取串口数据并转发数据给云端,一个是检测云端下行数据透传给串口,如下图所示。 + +![](../../media/solutions/DTU/repl_logs.png) + + **上行数据透传** + +使用串口调试工具模拟mcu给模组发送上行数据。 + +- 在`Input String`输入框中输入`hello world!`字符串。 +- 点击`Send Command`按钮通过串口发送数据。 + +![](../../media/solutions/DTU/qcom_test.png) + +DTU接收串口数据,直接透传至mqtt云端。 + +![](../../media/solutions/DTU/debug_log.png) + + 云端接收上行数据日志 + +![](../../media/solutions/DTU/cloud_up.png) + +**下行数据透传** + +云端发送下行数据。 + +- 设置云端下行数据主题(与DTU应用配置的订阅主题一致)。 +- 输入下行数据。 +- 发布。 + +![](../../media/solutions/DTU/cloud_down.png) + + DTU下行数据日志。 + +![](../../media/solutions/DTU/debug_log_down_data.png) + +通过QCOM观察串口调试工具模拟mcu接收模组下行数据。 + +![](../../media/solutions/DTU/qcom_down.png) + diff --git a/docs/Application_guide/zh/solutions/DTU/quick_start.md b/docs/Application_guide/zh/solutions/DTU/quick_start.md new file mode 100644 index 0000000000000000000000000000000000000000..87b996d90937b846d9ff0520c11e548b39ac7128 --- /dev/null +++ b/docs/Application_guide/zh/solutions/DTU/quick_start.md @@ -0,0 +1,36 @@ +# 快速上手 + +## 硬件准备 + +- Windows 电脑一台,建议 Win10 系统。 +- 一套 [EC800GCN 华系列 DTU 开发板](https://python.quectel.com/doc/Getting_started/zh/evb/ec800g_hua_dtu.html)。 +- 一张可用的 Nano Sim 卡。 +- 一根胶棒天线。 +- 一根 Mini USB 数据线。 +- 一个 USB 转 TTL 模块。 + +## 环境搭建 + +- 下载并安装 EC800G 系列模组驱动:[QuecPython_USB_Driver_Win10_U_G](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverU_V1.0.19.zip)。 +- 下载并安装 [VSCode](https://code.visualstudio.com/)。 +- 下载并解压 [QPYCom](https://python.quectel.com/wp-content/uploads/2024/09/QPYcom_V3.6.0.zip) 工具到电脑的合适位置。 +- 下载并安装固件包[QPY_OCPU_BETA0002_EC800G_CNLD_FW](https://python.quectel.com/wp-content/uploads/2024/09/QPY_OCPU_BETA0002_EC800G_CNLD_FW.zip)。(固件包烧录请参阅 [使用 QPYcom 烧录固件](https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/qpycom-dw.html)) +- 下载实验源码。 + +## 硬件连接 + +按照下图进行硬件连接: + +![](../../media/solutions/DTU/DTU_wires_connection.png) + +1. 连接胶棒天线。 +2. 插入 Nano Sim 卡。 +3. 使用 mini USB 数据线连接至电脑。 +4. 使用 USB 转 TTL 模块连接至电脑。TX(DTU开发板) 接 RX(USB 转 TTL 模块);RX(DTU开发板) 接 TX(USB 转 TTL 模块);GND(DTU开发板) 接 GND(USB 转 TTL 模块)共地。(如果采用 RS485 接口,则两端的 A 线连接至 A 线,B 线连接至 B 线。) +5. 开发板采用 9~36 V 宽幅供电。 + +## 设备开发 + +- [基于 TCP 协议的设备开发](./tcp_demo.md) +- [基于 MQTT 协议的设备开发](./mqtt_demo.md) + diff --git a/docs/Application_guide/zh/solutions/DTU/software_design.md b/docs/Application_guide/zh/solutions/DTU/software_design.md new file mode 100644 index 0000000000000000000000000000000000000000..d4e5682d1b343b874245af6dcbb2b3366049e818 --- /dev/null +++ b/docs/Application_guide/zh/solutions/DTU/software_design.md @@ -0,0 +1,334 @@ +# 软件设计讲解 + +## 应用流程图 + +一般了解一个程序代码大多从启动部分开始,这里也采取这种方式,先寻找程序的启动源头。本例程,一般的程序启动顺序如下图所示: + +![](../../media/solutions/DTU/flowchart.png) + +整体上业务可以总结为如下流程: + +1. 启动喂狗线程(华系列 4G DTU 载有硬件狗) +2. 初始化 DTU 对象后,读取系统配置 +3. 初始化串口外设 +4. 检查网络状态 +5. 初始化云端配置和消息队列 +6. 启动数据上下、下行业务线程 + +> 💡 基本原理:本 DTU 采用 **多线程 + 消息队列** 实现串口和云端数据的上下行转发。其中,上行线程(Uplink data thread)用于读取串口数据并发送至云端;下行线程(Downlink data thread)读取消息队列中的云端数据通过串口转发;消息队列用于缓存云端的下行数据。 + +## 目录结构 + +- `usr`: + - `_main.py`:主脚本 + - `dtu_config.json`:配置文件 + - `dtu.py`:DTU 模型对象 + - `logging.py`:日志模块 + - `cloud_abc.py`:云对象模型抽象基类 + - `mqttIot.py`:Mqtt 云对象模型实现 + - `network.py`:网络 + - `serial.py`:串口模型对象实现 + - `socketIot.py`:Socket 云对象模型实现 + - `threading.py`:线程、队列和互斥锁 + - `utils.py`:工具类 + +## API说明 + +### Manager 管理类 + +示例程序的主脚本 `_main.py` 中我们定义一个 `Manager` 类来管理初始化的各种关联的对象。 + +主要方法: + +- `__init__`:管理类初始化方法 + - 看门狗:由于华系列 4G DTU 配置硬件看门狗(GPIO12),所以主脚本程序中需要初始化一个 `self.dog_pin` 对象并采用 `osTimer` 周期喂狗。 + - DTU 模型对象:`self.dtu` 是 DTU 对象,通过该对象方法 `self.dty.config.read_from_json("/usr/dtu_config.json")` 从文件中读取相关配置。`start` 方法是程序主入口,先启动间隔 3s 的喂狗定时器,然后检查 sim 卡和网络状态,最后调用 `self.dtu.run()` 来启动 DTU 例程。 +- `start`:启动方法 + - 开启喂狗定时器 + - 检查 sim 卡状态 + - 检查网络状态 + - 启动 dtu 例程 +- `__feed`:喂狗定时器的回调函数 + +实现如下: + +```python +import sim +import osTimer +from machine import Pin +from usr import network +from usr.dtu import DTU + + +class Manager(object): + + def __init__(self, dog_gpio=Pin.GPIO12): + self.dog_pin = Pin(dog_gpio, Pin.OUT, Pin.PULL_DISABLE, 1) + self.dog_feed_timer = osTimer() + + self.dtu = DTU('Quectel') + self.dtu.config.read_from_json('/usr/dtu_config.json') + + def start(self): + # start timer to feed dog + self.dog_feed_timer.start(3000, 1, self.__feed) + # check sim card + if sim.getStatus() != 1: + raise ValueError("sim card not ready") + # check network + network.wait_network_ready() + # start dtu business + self.dtu.run() + + def __feed(self, args): + if self.dog_pin.read(): + self.dog_pin.write(0) + else: + self.dog_pin.write(1) + + +if __name__ == "__main__": + manager = Manager() + manager.start() +``` + +### 对象模型 + +本方案中定义了多个对象模型,其中主要有 `DTU` 对象模型、云对象模型(`CloudABS`)和串口对象模型(`Serial`)。基本定义如下: + +![](../../media/solutions/DTU/UML.png) + +#### DTU 对象模型 + +在 `dtu.py` 模块中定义 DTU 类,该类主要用于管理串口、云、以及数据的上下行业务。 + +`config` 属性: + +DTU 对象中有一个属性 `config` 是类 `Configure` 对象,该对象用于管理应用配置。如下: + +```python +from usr.dtu import DTU + +dtu = DTU('Quectel') +dtu.config.read_from_json('/usr/dtu_config.json') +``` + +其中,支持从 json 文件中存储相关配置,操作方法类似内置字典类型,可以采用如下方式来读写配置(以读取 `system_config` 配置项为例)。 + +- 从指定 json 文件中导入配置:`dtu.config.read_from_json('/usr/dtu_config.json')` +- 使用`get` 方法读取配置项:`dtu.config.get("system_config")` +- 使用运算符`[]` 读取配置项:`dtu.config["system_config"]` +- 保存并更新配置:`dtu.config.save()` + +`serial` 属性: + +该属性是一个 property 属性,用于构建串口对象,用户一般无需修改,只需要按照实际情况定义配置参数即可。 + +```python +@property +def serial(self): + """create&get serial object according configure""" + __serial__ = getattr(self, '__serial__', None) + if __serial__ is None: + __serial__ = Serial(**self.config.get('uart_config')) # init serial + __serial__.open() # open serial + setattr(self, '__serial__', __serial__) + return __serial__ +``` + +`cloud`属性: + +该属性是一个 property 属性,用于获取云对象,方法中使用 `__create_cloud` 来实际构建云对象。 + +```python +@property +def cloud(self): + """get cloud object""" + cloud = getattr(self, '__cloud__', None) + if cloud is None: + cloud = self.__create_cloud() # create cloud object + setattr(self, '__cloud__', cloud) + return cloud +``` + +`__create_cloud` 方法: + +该方法,是用于实际创建云对象,如果用户自定义云对象,则需要再该函数中新增自定义对象初始化。 + +```python +def __create_cloud(self): + """create cloud object according configure""" + # read cloud type + cloud_type = self.config.get('system_config.cloud') + if cloud_type == "mqtt": + mqtt_config = self.config.get('mqtt_private_cloud_config') # init mqtt cloud + cloud = MqttIot(**mqtt_config) + elif cloud_type == "tcp": + socket_config = self.config.get('socket_private_cloud_config') # init tcp cloud + cloud = SocketIot(**socket_config) + else: + raise ValueError('\"{}\" not supported now!'.format(cloud_type)) + cloud.connect() # connect to cloud + cloud.listen() # start listen message from cloud + return cloud +``` + +`up_transaction_handler` 方法:用于上行数据传输业务线程入口函数。 + +`down_transaction_handler` 方法:用于下行数据传输业务线程入口函数。 + +`run` 方法:启动业务,包括根据配置文件创建串口和云对象以及创建上下行业务数据处理线程。 + +#### Serial 对象模型 + +在 `serial.py` 模块中定义串口模型类 `Serial`,主要用户实现串口的读写操作。主要接口如: + +- `Serial` + - `__init__`: 串口初始化。 + - `open`:打开串口。 + - `close`:关闭串口。 + - `write`:串口写。 + - `read`:串口读。 + +串口使用示例: + +```python +from usr.serial import Serial + +# init Serial object +s = Serial(port=2, baudrate=115200, bytesize=8, parity=0, stopbits=1, flowctl=0, rs485_config=None) +# open serial +s.open() + +# serial write method +s.write(b"hello world!") + +# serial read method +recv_data = s.read() +print(recv_data) +``` + +#### Cloud 对象模型 + +**Cloud 模型** + +为了适配不同的云平台(socket 私有云、mqtt 等),本方案定义抽象云类型如下,用户可以自行按照抽象类型,自定义 Cloud 对象以适配不同云平台。 + +> 💡 Cloud 模型对象实现可以参考 `socketIot` 和 `MqttIot`。 + +```python +class CloudABC(object): + + def __init__(self, **kwargs): + """ + key arguments: kwargs, used for initial params for cloud (customer used). + """ + raise NotImplementedError("this method should me implemented for customer designed Cloud Object") + + def connect(self): + """connect to Coud""" + raise NotImplementedError("customer should implement this method to connect cloud") + + def listen(self): + """listen message from cloud. + + usually we use this method to start a thread for receiving message from the cloud and put message input a Queue, and then use `self.recv` method to get it on app side. + """ + raise NotImplementedError("customer should implement this method to listen cloud message") + + def recv(self): + """receive a message""" + raise NotImplementedError("customer should implement this method to recv a message") + + def send(self, *args): + """send message + + position arguments: args, customer designed method used for send message + """ + raise NotImplementedError("customer should implement this method to send a message") +``` + +上述是 Cloud 对象模型主要方法和属性,其中: + +- `__init__`:接收关键字参数,通常用于配置云端初始化参数,用户可自行定义。 +- `connect`:连接云端服务器。 +- `listen`:监听云端下行消息,通常在该方法中使用线程来读取云端下行数据,并放入消息队列中方便应用侧通过 `self.recv` 方法来获取。 +- `recv`:获取下行消息。 +- `send`:发送上行消息,接收若干位置参数用户可自定义。 + +## 业务代码讲解 + +数传业务主要在 DTU 类(`dtu.py`)中实现,该类主要用于管理串口、云、以及数据的上下行业务。 + +DTU 对象在主脚本中通过调用 `run` 方法来开启整个 DTU 业务,其中该方法主要用于创建并运行两个线程,分别是上行数据处理线程(线程工作函数是 `up_transaction_handler`)和下行数据处理线程(线程工作函数是 `down_transaction_handler`)。在线程函数中分别通过两个 property 属性来获取对应的串口对象和云对象。其中串口对象属性是 `serial`,线程在调用该属性时即刻创建并打开配置的串口对象提供读写接口。其中云对象属性是 `cloud`,线程在调用该属性时即刻创建并连云对象提供接收和发送接口。 + +函数调用时序图: + +```mermaid +sequenceDiagram +Title: Device data transmit-processing timing + + +participant cloud as Cloud +participant dtu as DTU +participant serial as Serial + +loop down_transaction_handler thread +cloud ->> dtu: CloudABC.recv +dtu ->> serial: Serial.write +end + +loop up_transaction_handler thread +serial ->> dtu: Serial.read +dtu ->> cloud: CloudABC.send +end +``` + +上行数据处理线程函数 `DTU.up_transaction_handler` 实现如下: + +```python +class DTU(object): + + # ... + + def up_transaction_handler(self): + while True: + try: + data = self.serial.read(1024) + if data: + logger.info('up transfer msg: {}'.format(data)) + if isinstance(self.cloud, SocketIot): + msg = [data] + elif isinstance(self.cloud, MqttIot): + msg = ['up', data] + else: + raise TypeError('unknow cloud type.') + self.cloud.send(*msg) + except Exception as e: + logger.error('up transfer error: {}'.format(e)) + + # ... +``` + +`up_transaction_handler`函数按照 1KB 的 buffer 读取串口数据(用户可以自行调整buffer大小),并格式化消息后通过 `CloudABC.send` 接口发送数据至云端。用户继承 `CloudABC` 并自定义云对象并实现 `CloudABC.send` 方法后可根据自定义消息格式处理并发送数据。 + +下行数据处理线程函数 `down_transaction_handler` 实现如下: + +```python +class DTU(object): + + # ... + + def down_transaction_handler(self): + while True: + try: + msg = self.cloud.recv() + logger.info('down transfer msg: {}'.format(msg['data'])) + self.serial.write(msg['data']) + except Exception as e: + logger.error('down transfer error: {}'.format(e)) + + # ... +``` + +`down_transaction_handler` 函数通过调用 `CloudABC.recv` 来获取下行消息,并通过 `Serial.write` 转发消息。 \ No newline at end of file diff --git a/docs/Application_guide/zh/solutions/DTU/tcp_demo.md b/docs/Application_guide/zh/solutions/DTU/tcp_demo.md new file mode 100644 index 0000000000000000000000000000000000000000..9b8d81b8ea26521f875df77c7072aebe2e132f97 --- /dev/null +++ b/docs/Application_guide/zh/solutions/DTU/tcp_demo.md @@ -0,0 +1,119 @@ +# 基于 TCP 协议的设备开发 + +## 修改配置文件 + +工程配置文件路径:`code/dtu_config.json`。 + +基于 TCP 私有服务器数据透传做如下配置: + +- 默认 `system_config.cloud` 配置项定义为 `"tcp"` 即 TCP 透传模式,系统会自行读取 `socket_private_cloud_config` 配置项。 + + ```python + { + "system_config": { + "cloud": "tcp" # 默认配置 tcp 透传模式 + } + } + ``` + +- 本实验采用 TCP 透传模式,用户需根据实际情况设置 `socket_private_cloud_config` 配置项中的 TCP 服务器域名(*domain*)和端口(*port*)。 + + ```python + { + "socket_private_cloud_config": { + "domain": "112.31.84.164", # 服务器域名/ip + "port": 8305, # 端口号 + "timeout": 5, # 超时时间 (unit: s) + "keep_alive": 5 # 心跳周期 (unit: s) + } + } + ``` + +- `uart_config` 配置项是串口配置参数,默认是根据当前实验开发板做的配置,不可更改。如用户采用其他开发板则需要根据实际硬件进行配置。 + +```python +{ + "uart_config": { + "port": 2, # 串口号,根据实际硬件配置选择,当前实验不可更改 + "baudrate": 115200, # 波特率 + "bytesize": 8, # 数据位 + "parity": 0, # 奇偶校验 + "stopbits": 1, # 停止位 + "flowctl": 0, # 流控 + "rs485_config": { # RS485 配置 + "gpio_num": 28, # 485 控制脚,当前实验不可更改 + "direction": 0 # 引脚电平变化控制,1表示引脚电平变化为:串口发送数据之前由低拉高、发送数据之后再由高拉低,0表示引脚电平变化为:串口发送数据之前由高拉低、发送数据之后再由低拉高 + } + } +} +``` + +完整配置文件模版如下: + +```json +{ + "system_config": { + "cloud": "tcp" + }, + "mqtt_private_cloud_config": { + "server": "mq.tongxinmao.com", + "port": 18830, + "client_id": "txm_1682300809", + "user": "", + "password": "", + "clean_session": true, + "qos": 0, + "keepalive": 60, + "subscribe": {"down": "/public/TEST/down"}, + "publish": {"up": "/public/TEST/up"} + }, + "socket_private_cloud_config": { + "domain": "112.31.84.164", + "port": 8305, + "timeout": 5, + "keep_alive": 5 + }, + "uart_config": { + "port": 2, + "baudrate": 115200, + "bytesize": 8, + "parity": 0, + "stopbits": 1, + "flowctl": 0, + "rs485_config": { + "gpio_num": 28, + "direction": 0 + } + } +} +``` + +参数说明: + +- `system_config.config`: 指定当前使用的私有云类型。目前支持tcp和mqtt。 +- `mqtt_private_cloud_config`: MQTT私有云配置。 +- `socket_private_cloud_config`: tcp私有云配置。 +- `uart_config`:串口参数配置。 + +## 脚本导入并运行 + +下载安装 **QPYCom** 工具后使用该工具下载脚本至 QuecPython 模组。 + +> 💡 **Tips** +> +> QPYCom 安装和使用教程:https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/index.html + +## 业务调试 + +程序运行后,在 REPL 交互页面可以看到日志输出如下图所示。 + +左侧图示,我们使用 QCOM 模拟 MCU 打开用于透传的模组串口(即 USB 转 TTL 模块对应的 COM 口)。 + +右侧图示,REPL 交互口输出的模组日志。 + +使用串口工具 QCOM 模拟 MCU 串口上行数据,通过 DTU 透传至 TCP 回显服务器,再由回显服务器将相同数据通过 DTU 下行透传至 QCOM。 + +![](../../media/solutions/DTU/debugview.png) + +本案例中采用的是 TCP 回显服务器,所以 QCOM 上行数据,经过 DTU 透传至 TCP 服务器接收到之后会立即按原路径下行。 + diff --git a/docs/Application_guide/zh/solutions/poc/README.md b/docs/Application_guide/zh/solutions/poc/README.md index 7378c652ba31de65387e7d0a85be0efe65218045..2b2600555f78765a20d4d37dd8f4f56fdfccafd0 100644 --- a/docs/Application_guide/zh/solutions/poc/README.md +++ b/docs/Application_guide/zh/solutions/poc/README.md @@ -7,7 +7,7 @@ - 超长待机: 支持超低功耗模式。 - 使用 Python 语言,便于二次开发。 - + --- diff --git a/docs/Application_guide/zh/solutions/poc/dev_resources.md b/docs/Application_guide/zh/solutions/poc/dev_resources.md index 4c787494e5c1f2b6177b3e2d9b2c77122c7589e0..c391b5497a1f92a3489a9fd1fdf81721c85be789 100644 --- a/docs/Application_guide/zh/solutions/poc/dev_resources.md +++ b/docs/Application_guide/zh/solutions/poc/dev_resources.md @@ -13,9 +13,8 @@ ## 模组资料 - 型号:[EC600MCN_LE](https://python.quectel.com/modules-cat/ec600m-series) -- [规格书](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_EC600M-CN_LTE_Standard_模块产品规格书_V1.2.pdf) +- [规格书](https://images.quectel.com/python/2023/04/Quectel_EC600M-CN_LTE_Standard_模块产品规格书_V1.2.pdf) - [驱动下载](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip) - ## 配件资料 - LCD 显示屏 @@ -27,27 +26,24 @@ ## 开发工具 -### QPYcom - QuecPython 调试工具 - -- 版本:V3.6.0 -- 下载 [QPYcom](https://python.quectel.com/wp-content/uploads/2024/09/QPYcom_V3.6.0.zip) - -### VSCode - 代码编辑器 - -- 下载 [VSCode](https://code.visualstudio.com/) +- QPYcom - QuecPython 调试工具 + - 版本:V3.6.0 + - 下载 [QPYcom](https://python.quectel.com/wp-content/uploads/2024/09/QPYcom_V3.6.0.zip) +- VSCode - 代码编辑器 + - 下载 [VSCode](https://code.visualstudio.com/) ## 固件包 -- 版本:EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802 -- 下载[固件](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip) +- 版本:EC600MCNLER06A01M08_POC_XBND_OCPU_QPY_BETA0117 +- 下载[固件](https://github.com/QuecPython/solution-POC/releases/download/v2.0.1/EC600MCNLER06A01M08_POC_XBND_OCPU_QPY_BETA0117.zip) ## 实验源码 -- 版本:v2.0.0 +- 版本:v2.0.1 - github 仓库: ```bash git clone https://github.com/QuecPython/solution-POC cd solution-POC - git checkout EC600MCNLE-Demo # 或者 git checkout v2.0.0 + git checkout v2.0.1 ``` -- [压缩包下载](https://github.com/QuecPython/solution-POC/archive/refs/tags/v2.0.0.zip) \ No newline at end of file +- [压缩包下载](https://github.com/QuecPython/solution-POC/archive/refs/tags/v2.0.1.zip) \ No newline at end of file diff --git a/docs/Application_guide/zh/solutions/poc/quick_start.md b/docs/Application_guide/zh/solutions/poc/quick_start.md index 7a1b74cb14ed1be8c7dedb762c1867cc096fe2fd..6c1b4c5bf7bab879446fe449b51aef70e76085db 100644 --- a/docs/Application_guide/zh/solutions/poc/quick_start.md +++ b/docs/Application_guide/zh/solutions/poc/quick_start.md @@ -14,18 +14,22 @@ ## 环境搭建 -- 下载并安装 EC600M 系列模组驱动:[QuecPython_USB_Driver_Win10_ASR](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip)。 +- 下载并安装 EC600M 系列模组驱动:[QuecPython_USB_Driver_Win10_ASR](https://images.quectel.com/python/2023/04/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip)。 -- 下载并安装[VSCode](https://code.visualstudio.com/)。 +- 下载并安装 [VSCode](https://code.visualstudio.com/)。 -- 下载并解压 [QPYCom](https://python.quectel.com/wp-content/uploads/2024/09/QPYcom_V3.6.0.zip) 工具到电脑的合适位置。 +- 下载并解压 [QPYCom](https://images.quectel.com/python/2022/12/QPYcom_V3.6.0.zip) 工具到电脑的合适位置。 -- 下载[固件包](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip)。 +- 下载[固件包](https://github.com/QuecPython/solution-POC/releases/download/v2.0.1/EC600MCNLER06A01M08_POC_XBND_OCPU_QPY_BETA0117.zip)。 -- 下载[实验源码](https://github.com/QuecPython/solution-POC/archive/refs/tags/v2.0.0.zip)。 +- 下载[实验源码](https://github.com/QuecPython/solution-POC/archive/refs/tags/v2.0.1.zip)。 - 申请伯纳德**芯平台**测试账号。 - + + 根据下图所示步骤获取 IMEI 号,将其提供给移远销售人员,即可申请对讲机测试账号。 + + ![](../../media/solutions/poc/get_imei.png) + > 💡 **Tips** > - 非商业测试,请联系移远销售人员( li.bao@quectel.com ),申请伯纳德**芯平台**测试账号。 > - 商业应用请走商务流程。 @@ -34,33 +38,33 @@ 按照下图进行硬件连接: - + -1. 将喇叭连接至图中标识有`SPK+`和`SPK-`的排针上。 +1. 将喇叭连接至图中标识有 `SPK+` 和 `SPK-` 的排针上。 2. 将 LCD 屏连接至标识有 `LCD` 字样的排针上。 3. 在图示位置插入可用的 Nano SIM 卡。 -4. 将天线连接至标识有`LTE`字样的天线连接座上。 +4. 将天线连接至标识有 `LTE` 字样的天线连接座上。 5. 使用 Type-C 数据线连接开发板和电脑。 ## 设备开发 ### 开机 -完成硬件连接的工作后,长按开发板上标识为`PWK`的按键,直到网络灯闪烁,或电脑设备管理器的端口列表中出现包含`Quectel USB` 字样的 COM 口,表示开机成功。 +完成硬件连接的工作后,长按开发板上标识为`PWK`的按键,直到网络灯闪烁,或电脑设备管理器的端口列表中出现包含 `Quectel USB` 字样的 COM 口,表示开机成功。 -![comport.png](./../../media/solutions/poc/comport.png) +![comport.png](./../../media/solutions/poc/comport.png) ### 烧录固件包 -参考[此章节](https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/qpycom-dw.html#%E4%B8%8B%E8%BD%BD%E5%9B%BA%E4%BB%B6),烧录固件包 [EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip) 至开发板。 +参考[此章节](https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/qpycom-dw.html#%E4%B8%8B%E8%BD%BD%E5%9B%BA%E4%BB%B6),烧录固件包 [EC600MCNLER06A01M08_POC_XBND_OCPU_QPY_BETA0117.zip](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip) 至开发板。 ### 脚本导入与运行 -1. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#PC%E4%B8%8E%E6%A8%A1%E7%BB%84%E9%97%B4%E7%9A%84%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93),将源码目录下 `code`文件夹中的所有文件导入到模组文件系统,如下图所示: +1. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#PC%E4%B8%8E%E6%A8%A1%E7%BB%84%E9%97%B4%E7%9A%84%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93),将源码目录下 `code` 文件夹中的所有文件导入到模组文件系统,如下图所示: -2. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E6%89%A7%E8%A1%8C%E8%84%9A%E6%9C%AC%E6%96%87%E4%BB%B6),执行主程序文件`poc_main.py`。 +2. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E6%89%A7%E8%A1%8C%E8%84%9A%E6%9C%AC%E6%96%87%E4%BB%B6),执行主程序文件 `poc_main.py`。 3. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E5%81%9C%E6%AD%A2%E7%A8%8B%E5%BA%8F%E8%BF%90%E8%A1%8C),停止程序运行。 ## 业务调试 @@ -69,21 +73,33 @@ 执行 `poc_main.py` 脚本后,程序开始运行,进入到 `WelcomeScreen` 界面,同时获取 SIM 卡状态和当前账号,并通过 TTS 语音播报当前登录用户及其加入的群组信息。 - + > 🚩 **Warning** > 未插入 SIM 卡时不会进入到主界面,插入 SIM 卡并重启设备后即可正常运行。 -> +> ### 主界面 -​主界面包含多个选项列表(用户可参考 [软件设计讲解 - 界面模块](./software_design.html#界面模块) 自行添加、修改),每个选项对应一个新的界面。 +主界面包含多个选项列表(用户可参考 [软件设计讲解 - 界面模块](./software_design.html#界面模块) 自行添加、修改),每个选项对应一个新的界面。 - 单击 `key2` 键,选中框往下滚动。 - 双击 `key2` 键,进入所选中的界面。 - 长按 `key2` 键,返回上一级界面。 -​ + + +### 群组列表 + +进入群组管理界面可以查询到当前账号所加入的群组列表,并且消息提示框会提示当前所在哪个群组,如下图: + + + +### 成员列表 + +进入成员列表界面可以查询到当前所在群组的所有成员,如下图: + + ### 对讲 @@ -93,9 +109,8 @@ - 对方讲话时,菜单栏显示 `听筒` 图标。 **主动呼叫图示:** - - + **对方呼叫图示:** - + diff --git a/docs/Application_guide/zh/solutions/poc/software_design.md b/docs/Application_guide/zh/solutions/poc/software_design.md index 8956cf90947e59eca0e7afbc677221f67728c65a..bca3d80c26de65ed64c8953b41dab8bce2031ecb 100644 --- a/docs/Application_guide/zh/solutions/poc/software_design.md +++ b/docs/Application_guide/zh/solutions/poc/software_design.md @@ -127,10 +127,11 @@ class AbstractLoad(object): `services.py` 定义了多个 `service`,用于提供各种服务。这些 `servies` 继承 `AbstractLoad` 抽象加载基类,便于在加载过程中提供各类服务事项。 -1. `DevInfoService`:提供设备信息服务 -2. `MediaService`:提供音频服务 -3. `NetService`:提供网络服务 -4. `PocService`:提供 Poc 对讲服务 +1. `BatteryManger`:提供电池电量管理 +2. `DevInfoService`:提供设备信息服务 +3. `MediaService`:提供音频服务 +4. `NetService`:提供网络服务 +5. `PocService`:提供 Poc 对讲服务 各 `service` 之间的关系如下图: @@ -188,6 +189,7 @@ class Screen(AbstractLoad): if cur_idx < 0: cur_idx = count - 1 return cur_idx + def next_idx(self, now_idx, count): cur_idx = now_idx + 1 if cur_idx > count - 1: @@ -198,9 +200,9 @@ class Screen(AbstractLoad): 在 `ui.py` 中,还定义了多个 UI 界面,如: 1. `PocUI`:主 UI,提供 `MenuBar`、`PromptBox` 和 `Screen` 的管理以及按键事件的响应处理 -2. `MenuBar`:菜单栏 -3. `PromptBox`:提示框 -4. `Screen`:UI 屏幕,也可以理解为 UI 界面,用于展示给用户看的各种界面。如 `MenuBar`、`WelcomeScreen` 和 `MemberScreen` 等 +2. `MenuBar`:菜单栏(用于显示网络状态、时间、电量以及其他图标,一直显示在屏幕上方,大小为 240×20) +3. `PromptBox`:消息提示框(用于消息提示,显示在当前 UI 界面之上) +4. `Screen`:UI 屏幕,也可以理解为 UI 界面,用于展示给用户看的各种界面。如 `GroupScreen`、`WelcomeScreen` 和 `MemberScreen` 等 各 UI 界面之间的关系如下图: @@ -208,6 +210,21 @@ class Screen(AbstractLoad): > 如用户需添加 `Screen`,可参考已有 `Screen` 样式进行添加,并添加到 `poc_main.py` 中对应的位置即可。 +### 群组管理 + +在 `ui.py` 的 `GroupScreen` 里面实现了群组管理的功能,在页面加载之前通过 `EventMap` 事件管理,向 `Services` 发送对应事件,获取当前账号所加入的所有群组,并通过列表将其显示出来。 + +```python +class GroupScreen(Screen): + def load_before(self): + EventMap.bind("update_group_info", self.__update_group_info) # 更新获取群组信息 + + def load(self): + self.__load_group_list() # 判断是否获取到组群列表 + self.__group_screen_list_create() # 创建群组界面列表 + self.__load_group_cur() +``` + ### APP管理 `poc_main.py` 中使用一个 `APP` 类进行管理,用户添加或修改如按键、消息框和服务等操作,调用相应的函数添加即可。 diff --git a/docs/FAQ/en/hardware/bsp.md b/docs/FAQ/en/hardware/bsp.md index 17be91c99a22894861850a391166be31a29d5e8a..e60cba856bcd107d9473d24b3d7d8ad2ecfc8f11 100644 --- a/docs/FAQ/en/hardware/bsp.md +++ b/docs/FAQ/en/hardware/bsp.md @@ -18,15 +18,15 @@ GPIO output current capability: 4mA For specific pins that can be used as GPIO, please refer to the Section machine.Pin on the wiki. -> Specific link: [GPIO pin description]([class Pin - Control I/O pins - QuecPython (quectel.com)](https://python.quectel.com/doc/API_reference/zh/peripherals/machine.Pin.html)) +> Specific link: [GPIO pin description](https://python.quectel.com/doc/API_reference/en/peripherals/machine.Pin.html) ### **Which pins can be used as external interrupts?** The external interrupt number will go along with the number of GPIO pins. For details, please refer to machine.Pin and machine.Extlnt on the GPIO pin wiki. -> Specific link: [GPIO pin description]([class Pin - Control I/O pins - QuecPython (quectel.com)](https://python.quectel.com/doc/API_reference/zh/peripherals/machine.Pin.html)); +> Specific link: [GPIO pin description](https://python.quectel.com/doc/API_reference/en/peripherals/machine.Pin.html); > -> [Extlnt-External Interrupt Description]([class ExtInt - External Interrupt - QuecPython (quectel.com)](https://python.quectel.com/doc/API_reference/zh/peripherals/machine.ExtInt.html)) +> [Extlnt-External Interrupt Description](https://python.quectel.com/doc/API_reference/en/peripherals/machine.ExtInt.html) ### **Which pins can be used as wake-up interrupts?** diff --git a/docs/FAQ/en/hardware/external.md b/docs/FAQ/en/hardware/external.md index bad98659d2674a75f7ed8abf4fccf17c1a0903bc..b658a7eb0c78646e8fd9190b221b874e9571ed89 100644 --- a/docs/FAQ/en/hardware/external.md +++ b/docs/FAQ/en/hardware/external.md @@ -18,7 +18,6 @@ Some supported models are shown in the table below. For more models, please cont | G Sensor | I2C | ADXL346/LIS2DH12TR/SCA7A20/BMA25x | | NFC | SPI/UART | PL51NF001/RC522/PN532 | | Wi-Fi | UART | ESP8266 | -| BT/BLE | UART | ASR5801 | | Meter chip | UART | BL0939/HLW8110 | | Ethernet Chip | SPI | W5500/DM9051/CH395 | | Ethernet Phy Chip | SPI | YT8512/SZ18201/JL1101 | diff --git a/docs/FAQ/zh/hardware/external.md b/docs/FAQ/zh/hardware/external.md index cc63e571d5285ab21b59c1dec3a2ab3dc352709b..04e5ef64e24a7ae4feca8441583e05d4259129d9 100644 --- a/docs/FAQ/zh/hardware/external.md +++ b/docs/FAQ/zh/hardware/external.md @@ -18,7 +18,6 @@ | G Sensor | I2C | ADXL346/LIS2DH12TR/SCA7A20/BMA25x | | NFC | SPI/UART | PL51NF001/RC522/PN532 | | Wi-Fi | UART | ESP8266 | -| BT/BLE | UART | ASR5801 | | Meter chip | UART | BL0939/HLW8110 | | Ethernet Chip | SPI | W5500/DM9051/CH395 | | Ethernet Phy Chip | SPI | YT8512/SZ18201/JL1101 | diff --git a/docs/Getting_started/en/README.md b/docs/Getting_started/en/README.md index 3aa2f6261e6d43be3002d2a9d43a6e8c11275f83..e5e650d42e1935a3e78223d32dcf2c452ca7be86 100644 --- a/docs/Getting_started/en/README.md +++ b/docs/Getting_started/en/README.md @@ -14,5 +14,5 @@ Quectel provides step-by-step user guides, operation instructions, and instructi | Region | Cat 1 | Cat 4 | Cat M | NB | WIFI | | ------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | --------------------------------------------------------- | -| China | [EG810M-CN](https://python.quectel.com/modules-cat/eg810m-series)
[EC800E-CN](https://python.quectel.com/modules-cat/ec800e-series)
[EC600E-CN](https://python.quectel.com/modules-cat/ec600e-series)
[EC600G-CN](https://python.quectel.com/modules-cat/ec600g-series)
[EC800G-CN](https://python.quectel.com/modules-cat/ec800g-series)
[EC200N-CN](https://python.quectel.com/modules-cat/ec200n-series)
[EC800M-CN](https://python.quectel.com/modules-cat/ec800m-series)
[EC600M-CN](https://python.quectel.com/modules-cat/ec600m-series)
[EC200U-CN](https://python.quectel.com/modules-cat/ec200u-series)
[EC600U-CN](https://python.quectel.com/modules-cat/ec600u-series)
[EC600N-CN](https://python.quectel.com/modules-cat/ec600n-series) | [EC200A-CN](https://python.quectel.com/modules-cat/ec200a-series)
| / | [BC25](https://python.quectel.com/modules-cat/bc25-series) | [FCM360W](https://python.quectel.com/modules-cat/fcm360w-series) | -| Overseas | [EG915U-EU](https://python.quectel.com/en/modules-cat/eg915u-series)
[EG915N-EU](https://python.quectel.com/en/modules-cat/eg915n-series)
[EG912U-GL](https://python.quectel.com/en/modules-cat/eg912u-series)
[EG912N-EN](https://python.quectel.com/en/modules-cat/eg912n-series)
[EC200U-EU](https://python.quectel.com/en/modules-cat/ec200u-series) | [EC200A-EU](https://python.quectel.com/en/modules-cat/ec200a-series)
[EC200A-AU](https://python.quectel.com/en/modules-cat/ec200a-series) | [BG95-M1](https://python.quectel.com/en/modules-cat/bg95-series)
[BG95-M3
](https://python.quectel.com/en/modules-cat/bg95-series)[BG95-M8](https://python.quectel.com/en/modules-cat/bg95-series) | / | [FCM360W](https://python.quectel.com/en/modules-cat/fcm360w-series) | \ No newline at end of file +| China | [EG810M](https://python.quectel.com/modules-cat/eg810m-series)
[EC800K](https://python.quectel.com/modules-cat/ec800k-series)
[EG800K](https://python.quectel.com/modules-cat/eg800k-series)
[EG810M](https://python.quectel.com/modules-cat/eg810m-series)
[BG600L](https://python.quectel.com/modules-cat/bg600l-series)
[EC800E](https://python.quectel.com/modules-cat/ec800e-series)
[EC800Z](https://python.quectel.com/modules-cat/ec800z-series)
[EC600E](https://python.quectel.com/modules-cat/ec600e-series)
[EC600G](https://python.quectel.com/modules-cat/ec600g-series)
[EC800G](https://python.quectel.com/modules-cat/ec800g-series)
[EC200N](https://python.quectel.com/modules-cat/ec200n-series)
[EC800M](https://python.quectel.com/modules-cat/ec800m-series)
[EC600M](https://python.quectel.com/modules-cat/ec600m-series)
[EC200U](https://python.quectel.com/modules-cat/ec200u-series)
[EC600U](https://python.quectel.com/modules-cat/ec600u-series)
[EC600N](https://python.quectel.com/modules-cat/ec600n-series) | [EC200A](https://python.quectel.com/modules-cat/ec200a-series)
| [BG95](https://python.quectel.com/en/modules-cat/bg95-series) | [BC25](https://python.quectel.com/modules-cat/bc25-series) | [FCM360W](https://python.quectel.com/modules-cat/fcm360w-series) | +| Overseas | [EG915U](https://python.quectel.com/en/modules-cat/eg915u-series)
[EG915N](https://python.quectel.com/en/modules-cat/eg915n-series)
[EG912U](https://python.quectel.com/en/modules-cat/eg912u-series)
[EG912N](https://python.quectel.com/en/modules-cat/eg912n-series)
[EC200U](https://python.quectel.com/en/modules-cat/ec200u-series) | [EC200A](https://python.quectel.com/en/modules-cat/ec200a-series)
[UC200A](https://python.quectel.com/en/modules-cat/uc200a-series) | [BG95](https://python.quectel.com/en/modules-cat/bg95-series) | [BC92](https://python.quectel.com/en/modules-cat/bc92-series) | [FCM360W](https://python.quectel.com/en/modules-cat/fcm360w-series) | \ No newline at end of file diff --git a/docs/Getting_started/en/driver_prepare.md b/docs/Getting_started/en/driver_prepare.md index ba0b51d81e2e02f735a8c31a41f67de3d57b3cbd..97ace0e0bf54e4ba90461b2c8286867db71a1ab7 100644 --- a/docs/Getting_started/en/driver_prepare.md +++ b/docs/Getting_started/en/driver_prepare.md @@ -18,9 +18,10 @@ The "device driver" is a special program that allows the PC to communicate with | Module Model | Host Platform | Driver Name | | ------------------------------------------------------------ | ----------------------------------------------------- | ------------------------------------------------------------ | -| [BG95-M3](https://python.quectel.com/en/modules-cat/bg95-series)      [BG95-M8](https://python.quectel.com/en/modules-cat/bg95-series)      |     Win10     |         [**QuecPython_USB_Driver_Win10_BG**](https://python.quectel.com/en/wp-content/uploads/sites/2/2024/11/Quectel_Windows_USB_DriverQ_NDIS_V2.7.14.zip) | -| [EC800M-CN](https://python.quectel.com/en/modules-cat/ec800m-series)     [EC600M-CN](https://python.quectel.com/en/modules-cat/ec600m-series)     [EC200A-CN](https://python.quectel.com/en/modules-cat/ec200a-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_ASR**](https://python.quectel.com/en/wp-content/uploads/sites/2/2024/11/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip) | -| [EG912U-GL](https://python.quectel.com/en/modules-cat/eg912u-series)     [EG915U-EU](https://python.quectel.com/en/modules-cat/eg915u-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_U_G**](https://python.quectel.com/en/wp-content/uploads/sites/2/2024/11/Quectel_Windows_USB_DriverU_V1.0.19.zip) | +| [BG95](https://python.quectel.com/modules-cat/bg95-series)      [BG600L](https://python.quectel.com/modules-cat/bg600l-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_BG**](https://python.quectel.com/en/wp-content/uploads/sites/2/2024/11/Quectel_Windows_USB_DriverQ_NDIS_V2.7.14.zip) | +| [EC800E](https://python.quectel.com/modules-cat/ec800e-series)     [EC600E](https://python.quectel.com/modules-cat/ec600e-series)      [EC800Z](https://python.quectel.com/modules-cat/ec800z-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_E**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverY_V1.0.2.zip) | +| [EG912N](https://python.quectel.com/en/modules-cat/eg912n-series)    [EG915N](https://python.quectel.com/en/modules-cat/eg915n-series)     [UC200A](https://python.quectel.com/modules-cat/uc200a-series)
[EC600K](https://python.quectel.com/modules-cat/ec600k-series)     [EG810M](https://python.quectel.com/modules-cat/eg810m-series)     [EC800K](https://python.quectel.com/modules-cat/ec800k-series)     [EG800K](https://python.quectel.com/modules-cat/eg800k-series)     
[EC200N](https://python.quectel.com/modules-cat/ec200n-series)     [EC800M](https://python.quectel.com/modules-cat/ec800m-series)     [EC600N](https://python.quectel.com/modules-cat/ec600n-series)     [EC600M](https://python.quectel.com/modules-cat/ec600m-series)     [EC200A](https://python.quectel.com/modules-cat/ec200a-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_ASR**](https://python.quectel.com/en/wp-content/uploads/sites/2/2024/11/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip) | +| [EG915U](https://python.quectel.com/en/modules-cat/eg915u-series)    [EC200U](https://python.quectel.com/modules-cat/ec200u-series)    [EC800G](https://python.quectel.com/modules-cat/ec800g-series)
[EC600U](https://python.quectel.com/modules-cat/ec600u-series)     [EC600G](https://python.quectel.com/modules-cat/ec600g-series)     [EC800G](https://python.quectel.com/modules-cat/ec800g-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_U_G**](https://python.quectel.com/en/wp-content/uploads/sites/2/2024/11/Quectel_Windows_USB_DriverU_V1.0.19.zip) | | [FCM360W](https://python.quectel.com/en/modules-cat/fcm360w-series)      |     Win10     |         [**CH343SER**](https://python.quectel.com/en/wp-content/uploads/sites/2/2024/11/CH343SER_V1.8.zip) | - **Step 2: Install the Driver** diff --git a/docs/Getting_started/zh/README.md b/docs/Getting_started/zh/README.md index 2ddb8ca3d6587c3b26ea411c1266868b93b9861a..d487f670326f5b4bd28d923973ed6ebe73a29ba3 100644 --- a/docs/Getting_started/zh/README.md +++ b/docs/Getting_started/zh/README.md @@ -14,5 +14,5 @@ QuecPython模组具有以下优势 | 区域 | Cat 1 | Cat 4 | Cat M | NB | WIFI | | ------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | --------------------------------------------------------- | -| 国内 | [EG810M-CN](https://python.quectel.com/modules-cat/eg810m-series)
[EC800E-CN](https://python.quectel.com/modules-cat/ec800e-series)
[EC600E-CN](https://python.quectel.com/modules-cat/ec600e-series)
[EC600G-CN](https://python.quectel.com/modules-cat/ec600g-series)
[EC800G-CN](https://python.quectel.com/modules-cat/ec800g-series)
[EC200N-CN](https://python.quectel.com/modules-cat/ec200n-series)
[EC800M-CN](https://python.quectel.com/modules-cat/ec800m-series)
[EC600M-CN](https://python.quectel.com/modules-cat/ec600m-series)
[EC200U-CN](https://python.quectel.com/modules-cat/ec200u-series)
[EC600U-CN](https://python.quectel.com/modules-cat/ec600u-series)
[EC600N-CN](https://python.quectel.com/modules-cat/ec600n-series) | [EC200A-CN](https://python.quectel.com/modules-cat/ec200a-series)
| / | [BC25](https://python.quectel.com/modules-cat/bc25-series) | [FCM360W](https://python.quectel.com/modules-cat/fcm360w-series) | -| 海外 | [EG915U-EU](https://python.quectel.com/en/modules-cat/eg915u-series)
[EG915N-EU](https://python.quectel.com/en/modules-cat/eg915n-series)
[EG912U-GL](https://python.quectel.com/en/modules-cat/eg912u-series)
[EG912N-EN](https://python.quectel.com/en/modules-cat/eg912n-series)
[EC200U-EU](https://python.quectel.com/en/modules-cat/ec200u-series) | [EC200A-EU](https://python.quectel.com/en/modules-cat/ec200a-series)
[EC200A-AU](https://python.quectel.com/en/modules-cat/ec200a-series) | [BG95-M1](https://python.quectel.com/en/modules-cat/bg95-series)
[BG95-M3
](https://python.quectel.com/en/modules-cat/bg95-series)[BG95-M8](https://python.quectel.com/en/modules-cat/bg95-series) | / | [FCM360W](https://python.quectel.com/en/modules-cat/fcm360w-series) | \ No newline at end of file +| 国内 | [EG810M](https://python.quectel.com/modules-cat/eg810m-series)
[EC800K](https://python.quectel.com/modules-cat/ec800k-series)
[EG800K](https://python.quectel.com/modules-cat/eg800k-series)
[EG810M](https://python.quectel.com/modules-cat/eg810m-series)
[BG600L](https://python.quectel.com/modules-cat/bg600l-series)
[EC800E](https://python.quectel.com/modules-cat/ec800e-series)
[EC800Z](https://python.quectel.com/modules-cat/ec800z-series)
[EC600E](https://python.quectel.com/modules-cat/ec600e-series)
[EC600G](https://python.quectel.com/modules-cat/ec600g-series)
[EC800G](https://python.quectel.com/modules-cat/ec800g-series)
[EC200N](https://python.quectel.com/modules-cat/ec200n-series)
[EC800M](https://python.quectel.com/modules-cat/ec800m-series)
[EC600M](https://python.quectel.com/modules-cat/ec600m-series)
[EC200U](https://python.quectel.com/modules-cat/ec200u-series)
[EC600U](https://python.quectel.com/modules-cat/ec600u-series)
[EC600N](https://python.quectel.com/modules-cat/ec600n-series) | [EC200A](https://python.quectel.com/modules-cat/ec200a-series)
| [BG95](https://python.quectel.com/en/modules-cat/bg95-series) | [BC25](https://python.quectel.com/modules-cat/bc25-series) | [FCM360W](https://python.quectel.com/modules-cat/fcm360w-series) | +| 海外 | [EG915U](https://python.quectel.com/en/modules-cat/eg915u-series)
[EG915N](https://python.quectel.com/en/modules-cat/eg915n-series)
[EG912U](https://python.quectel.com/en/modules-cat/eg912u-series)
[EG912N](https://python.quectel.com/en/modules-cat/eg912n-series)
[EC200U](https://python.quectel.com/en/modules-cat/ec200u-series) | [EC200A](https://python.quectel.com/en/modules-cat/ec200a-series)
[UC200A](https://python.quectel.com/en/modules-cat/uc200a-series) | [BG95](https://python.quectel.com/en/modules-cat/bg95-series) | [BC92](https://python.quectel.com/en/modules-cat/bc92-series) | [FCM360W](https://python.quectel.com/en/modules-cat/fcm360w-series) | \ No newline at end of file diff --git a/docs/Getting_started/zh/driver_prepare.md b/docs/Getting_started/zh/driver_prepare.md index c2f49c1d638bc4a5c674af079e18ebed409338b3..1cdb469fe15689f43015c0226f572affa0330320 100644 --- a/docs/Getting_started/zh/driver_prepare.md +++ b/docs/Getting_started/zh/driver_prepare.md @@ -16,10 +16,10 @@ | 模组型号 | 操作系统 | 驱动名称 | | ------------------------------------------------------------ | ----------------------------------------------------- | ------------------------------------------------------------ | -| [BG95-M3](https://python.quectel.com/modules-cat/bg95-series)      [BG95-M8](https://python.quectel.com/modules-cat/bg95-series)      |     Win10     |         [**QuecPython_USB_Driver_Win10_BG**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverQ_NDIS_V2.7.14.zip) | -| [EC800E-CN](https://python.quectel.com/modules-cat/ec800e-series)     [EC600E-CN](https://python.quectel.com/modules-cat/ec600e-series)      |     Win10     |         [**QuecPython_USB_Driver_Win10_E**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverY_V1.0.2.zip) | -| [EC200N-CN](https://python.quectel.com/modules-cat/ec200n-series)     [EC800M-CN](https://python.quectel.com/modules-cat/ec800m-series)     [EC600N-CN](https://python.quectel.com/modules-cat/ec600n-series)     [EC600M-CN](https://python.quectel.com/modules-cat/ec600m-series)     [EC200A-CN](https://python.quectel.com/modules-cat/ec200a-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_ASR**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip) | -| [EC600U-CN](https://python.quectel.com/modules-cat/ec600u-series)     [EC600G-CN](https://python.quectel.com/modules-cat/ec600g-series)     [EC800G-CN](https://python.quectel.com/modules-cat/ec800g-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_U_G**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverU_V1.0.19.zip) | +| [BG95](https://python.quectel.com/modules-cat/bg95-series)      [BG600L](https://python.quectel.com/modules-cat/bg600l-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_BG**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverQ_NDIS_V2.7.14.zip) | +| [EC800E](https://python.quectel.com/modules-cat/ec800e-series)     [EC600E](https://python.quectel.com/modules-cat/ec600e-series)      [EC800Z](https://python.quectel.com/modules-cat/ec800z-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_E**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverY_V1.0.2.zip) | +| [EG912N](https://python.quectel.com/en/modules-cat/eg912n-series)    [EG915N](https://python.quectel.com/en/modules-cat/eg915n-series)     [UC200A](https://python.quectel.com/modules-cat/uc200a-series)
[EC600K](https://python.quectel.com/modules-cat/ec600k-series)     [EG810M](https://python.quectel.com/modules-cat/eg810m-series)     [EC800K](https://python.quectel.com/modules-cat/ec800k-series)     [EG800K](https://python.quectel.com/modules-cat/eg800k-series)     
[EC200N](https://python.quectel.com/modules-cat/ec200n-series)     [EC800M](https://python.quectel.com/modules-cat/ec800m-series)     [EC600N](https://python.quectel.com/modules-cat/ec600n-series)     [EC600M](https://python.quectel.com/modules-cat/ec600m-series)     [EC200A](https://python.quectel.com/modules-cat/ec200a-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_ASR**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip) | +| [EG915U](https://python.quectel.com/en/modules-cat/eg915u-series)    [EC200U](https://python.quectel.com/modules-cat/ec200u-series)    [EC800G](https://python.quectel.com/modules-cat/ec800g-series)
[EC600U](https://python.quectel.com/modules-cat/ec600u-series)     [EC600G](https://python.quectel.com/modules-cat/ec600g-series)     [EC800G](https://python.quectel.com/modules-cat/ec800g-series) |     Win10     |         [**QuecPython_USB_Driver_Win10_U_G**](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverU_V1.0.19.zip) | | [FCM360W](https://python.quectel.com/modules-cat/fcm360w-series)      |     Win10     |         [**CH343SER**](https://python.quectel.com/wp-content/uploads/2024/09/CH343SER_V1.8.zip) | - **Step2:驱动安装** diff --git a/docs/Getting_started/zh/evb/ec800x-duino-evb.md b/docs/Getting_started/zh/evb/ec800x-duino-evb.md new file mode 100644 index 0000000000000000000000000000000000000000..97b235bea2acc1631da81ad4c0644cb3717635d0 --- /dev/null +++ b/docs/Getting_started/zh/evb/ec800x-duino-evb.md @@ -0,0 +1,110 @@ +# EC800X QuecDuino开发板介绍 + +## 支持的模组列表 + +- [EG800K](https://python.quectel.com/modules-cat/eg800k-series) +- [EC800M](https://python.quectel.com/modules-cat/ec800m-series) +- [EC800G](https://python.quectel.com/modules-cat/ec800g-series) +- [EC800E](https://python.quectel.com/modules-cat/ec800e-series) + +## 功能列表 + +### 基本概述 + +EC800X QuecDuino EVB 搭载移远 EC800 系列模组。支持模组型号为: +EC800M 系列、EC800K 系列、EG800K 系列、EC800E 系列等。 + +### 渲染图 + +开发板的主要组件、接口布局见下图 + +![](../media/evb/ec800x-duino-evb/layout.jpg) + +## 资料下载 + +- [EC800X-QuecDuino-EVB-规格书](https://python.quectel.com/wp-content/uploads/2025/02/EC800X-QuecDuino-EVB-规格书V1.1.pdf) + +## 开发板资源 + +### 开发板接口 + +**接口定义** + +| 排针 | 引脚 | 描述 | 功能 | +| ---- | ---- | ---- | --------------------- | +| BOOT | - | 模组 USB_BOOT 引脚 | 根据不同型号模组进行上下拉进入强制下载模式 | +| NC | - | 悬空 | - | +| RST | - | 模组 RESET 引脚 | 拉低复位 | +| 3.3V | - | 电源输出 | 3.3V/200mA | +| 5V | - | 电源输入/输出 | 5V/2A (V1.1 版本悬空不可用) | +| GND | - | 地 | - | +| GND | - | 地 | - | +| 5V | - | 电源输入/输出 | 5V/2A (V1.1 版本悬空不可用) | +| A0 | - | 模组 ADC0 输入引脚 | 0-1.2V | +| A1 | - | 模组 ADC1 输入引脚 | 0-1.2V | +| D0 | 19 | I/O | 3.3V | +| D1 | 20 | I/O | 3.3V | +| D2 | 21 | I/O | 3.3V | +| D3 | 25 | I/O | 3.3V | +| 0 | - | 主串口接收 | 3.3V | +| 1 | - | 主串口发送 | 3.3V | +| 2 | - | 辅助串口接收 | 3.3V | +| 3 | - | 辅助串口接收 | 3.3V | +| 4 | 23 | I/O | 3.3V | +| 5 | 22 | I/O | 3.3V | +| 6 | 28 | I/O | 3.3V | +| 7 | 29 | I/O | 3.3V | +| 8 | 58 | I/O | 3.3V | +| 9 | 80 | I/O | 3.3V | +| 10 | 31 | I/O | 3.3V | +| 11 | 32 | I/O | 3.3V | +| 12 | 33 | I/O | 3.3V | +| 13 | 30 | I/O | 3.3V | +| 14 | - |地 | - | +| 15 | - |NC | 悬空 | +| 16 | 66 | I/O | 3.3V | +| 17 | 67 | I/O | 3.3V | + + +开发板主要管脚布局见下图 + +![](../media/evb/ec800x-duino-evb/pin.jpg) + +> **小提示** +> 开发板的更多资料,请访问 + +### 开发板配置 + +开发板配备了多种传感器,以及其他外设。外设资源管脚分配表明细如下: + +| 序号 | 名称 | 型号 | 是否支持 | 接口类型 | 引脚 | +| ---- | ---------------------------- | ------------- | -------- | -------- | ----- | +| 1 | USB接口 | - | 是 | Type-C | - | +| 2 | LED灯 | - | 是 | GPIO | - | +| 3 | 麦克风 | B4013AM423-092 | 是 | SPK | - | + + +`具体外设资源使用指导参考规格书` + +## 上手准备 + +* 注意事项 + +EVB 的供电电压为 5V,可通过 TypeC 或者 DC 座输入电源,也可以通过排母 5V 引脚输入 5V(V1.1 版本悬空不可用)。为了确保开发板任何情况下工作正常,请确保输入电流至少 2A。请勿同时接 TypeC 或者 DC 座和引脚 5V,防止电流灌入 USB,导致 USB 设备损坏 + +首先需要有一台运行有 Windows 10 以上 操作系统的电脑 + +- **Step1:天线安装** + +安装开发板配套的天线,安装位置为LTE天线座位置,并将SIM卡插入开发板上的SIM卡座,如需使用GNSS功能,则需在对应的天线座安装天线 + +- **Step2:开发板连接** + +使用USB Type-C数据线连接开发板的Type-C接口和电脑USB口即可完成供电, 上电前需要跳帽短接 VUBS EN、VDD_EXT EN、VBAT EN 排针 + +- **Step3:开发板开机** + +按住S1直至主板上电源指示灯亮(主板上丝印为D1的灯),如果上一步短接PWK_ON则无需长按PWK自动开机 + + +`关于开发板灯光和电源详细设置参见规格书` diff --git a/docs/Getting_started/zh/media/evb/ec800x-duino-evb/layout.jpg b/docs/Getting_started/zh/media/evb/ec800x-duino-evb/layout.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f075f7eab1dabc8e6d389b89c079e9cb390f81bb Binary files /dev/null and b/docs/Getting_started/zh/media/evb/ec800x-duino-evb/layout.jpg differ diff --git a/docs/Getting_started/zh/media/evb/ec800x-duino-evb/pin.jpg b/docs/Getting_started/zh/media/evb/ec800x-duino-evb/pin.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f33d98826c6e57a5e05c4a796d800defbe45d748 Binary files /dev/null and b/docs/Getting_started/zh/media/evb/ec800x-duino-evb/pin.jpg differ diff --git a/docs/Getting_started/zh/prepare.md b/docs/Getting_started/zh/prepare.md index 942104324074eecf80318a16b75b24f9007d4046..3578333d8a7304bec53c4f825637a80c763c6d3d 100644 --- a/docs/Getting_started/zh/prepare.md +++ b/docs/Getting_started/zh/prepare.md @@ -15,7 +15,7 @@ - [BG95_EVB](evb/bg95-evb.md) - [FCM360W_EVB](evb/fcm360w-evb.md) - [EC200X_EVB](evb/ec200x-evb.md) -- [EG915X_EVB](evb/eg915x-evb.md) +- [EG91X_EVB](evb/eg91x-evb.md) 软件: diff --git a/docs/Getting_started/zh/sidebar.yaml b/docs/Getting_started/zh/sidebar.yaml index 5d44ee0cfff9c9b24945d4b70b00db50b284b726..951f06e282e7126c593b5f6048ceb5cb030b7700 100644 --- a/docs/Getting_started/zh/sidebar.yaml +++ b/docs/Getting_started/zh/sidebar.yaml @@ -58,4 +58,6 @@ items: - label: BG95/EG915U/EG912U 核心板介绍 file: evb/bg-eg-core-evb.md - label: EC800G 华 DTU 开发板介绍 - file: evb/ec800g_hua_dtu.md \ No newline at end of file + file: evb/ec800g_hua_dtu.md + - label: EC800X Duino 开发板介绍 + file: evb/ec800x-duino-evb.md \ No newline at end of file