Class xwds.soc
XWLUA模块:SOC
CAPI
MetaMethods
xwds.soc:metatable.__tostring (soc) | 元方法:__tostring |
Methods
xwds.soc:pin (soc, pin) | 返回指定序号的GPIO PIN的掩码 |
xwds.soc:req (soc, port, pinmsk) | 申请GPIO |
xwds.soc:rls (soc, port, pinmsk) | 释放GPIO |
xwds.soc:set (soc, port, pinmsk) | 设置GPIO为高电平 |
xwds.soc:reset (soc, port, pinmsk) | 设置GPIO为低电平 |
xwds.soc:toggle (soc, port, pinmsk) | 翻转GPIO的电平 |
xwds.soc:output (soc, port, pinmsk, out) | 同时输出多个GPIO PIN |
xwds.soc:input (soc, port, pinmsk) | 同时从GPIO读取多个PIN的输入值 |
MetaMethods
- xwds.soc:metatable.__tostring (soc)
-
元方法:__tostring
将SOC对象格式化成字符串,可用于终端打印调试。
Parameters:
- soc userdata (in) C代码中注册的SOC
Methods
- xwds.soc:pin (soc, pin)
-
返回指定序号的GPIO PIN的掩码
注意:序号是从0开始。
Parameters:
- soc userdata (in) C代码中注册的SOC
- pin number (in) GPIO PIN的序号
Returns:
-
number
pin的掩码
Usage:
msk = stm32:pin(4) -- msk == 0x8
- xwds.soc:req (soc, port, pinmsk)
-
申请GPIO
注意:序号是从0开始编号。
Parameters:
- soc userdata (in) C代码中注册的SOC
- port number (in) GPIO PORT的序号
- pinmsk number (in) GPIO PIN的掩码
Returns:
-
number
错误码
● 0 没有错误
● -ERANGE GPIO PORT错误
● -EBUSY GPIO PIN已被使用Usage:
rc = stm32:req(4, stm32:pin(7)) -- GPIOE PIN7
- xwds.soc:rls (soc, port, pinmsk)
-
释放GPIO
注意:序号是从0开始编号。
Parameters:
- soc userdata (in) C代码中注册的SOC
- port number (in) GPIO PORT的序号
- pinmsk number (in) GPIO PIN的掩码
Returns:
-
number
错误码
● 0 没有错误
● -ERANGE GPIO PORT错误
● -EPERM GPIO PIN未被使用Usage:
rc = stm32:rls(3, stm32:pin(7)) -- PORTD, PIN7
- xwds.soc:set (soc, port, pinmsk)
-
设置GPIO为高电平
注意:序号是从0开始编号。
Parameters:
- soc userdata (in) C代码中注册的SOC
- port number (in) GPIO PORT的序号
- pinmsk number (in) GPIO PIN的掩码
Returns:
-
number
错误码
● 0 没有错误
● -ERANGE GPIO PORT错误
● -EPERM GPIO PIN未被使用Usage:
rc = stm32:set(0, stm32:pin(7)) -- PORTA, PIN7
- xwds.soc:reset (soc, port, pinmsk)
-
设置GPIO为低电平
注意:序号是从0开始编号。
Parameters:
- soc userdata (in) C代码中注册的SOC
- port number (in) GPIO PORT的序号
- pinmsk number (in) GPIO PIN的掩码
Returns:
-
number
错误码
● 0 没有错误
● -ERANGE GPIO PORT错误
● -EPERM GPIO PIN未被使用Usage:
rc = stm32:reset(3, stm32:pin(7)) -- PORTD, PIN7
- xwds.soc:toggle (soc, port, pinmsk)
-
翻转GPIO的电平
注意:序号是从0开始编号。
Parameters:
- soc userdata (in) C代码中注册的SOC
- port number (in) GPIO PORT的序号
- pinmsk number (in) GPIO PIN的掩码
Returns:
-
number
错误码
● 0 没有错误
● -ERANGE GPIO PORT错误
● -EPERM GPIO PIN未被使用Usage:
rc = stm32:toggle(1, stm32:pin(7)) -- PORTB, PIN7
- xwds.soc:output (soc, port, pinmsk, out)
-
同时输出多个GPIO PIN
注意:序号是从0开始编号。
Parameters:
- soc userdata (in) C代码中注册的SOC
- port number (in) GPIO PORT的序号
- pinmsk number (in) GPIO PIN的掩码
- out number GPIO 输出值
Returns:
-
number
错误码
● 0 没有错误
● -ERANGE GPIO PORT错误
● -EPERM GPIO PIN未被使用Usage:
-- 输出GPIOE,掩码0xFFFFFFFF,输出值0x3 rc = stm32:output(stm32, 4, 0xFFFFFFFF, 0x3)
- xwds.soc:input (soc, port, pinmsk)
-
同时从GPIO读取多个PIN的输入值
注意:序号是从0开始编号。
Parameters:
- soc userdata (in) C代码中注册的SOC
- port number (in) GPIO PORT的序号
- pinmsk number (in) GPIO PIN的掩码
Returns:
-
number
错误码
● 0 没有错误
● -ERANGE GPIO PORT错误
● -EPERM GPIO PIN未被使用 - number GPIO的输入值
Usage:
-- 读取GPIOC,掩码0xFFFFFFFF rc, in = stm32:input(stm32, 2, 0xFFFFFFFF)