初始化提交
This commit is contained in:
147
boards/default/micropython/build/lib/ch914x_at.py
Normal file
147
boards/default/micropython/build/lib/ch914x_at.py
Normal file
@@ -0,0 +1,147 @@
|
||||
"""
|
||||
Bluetooth AT
|
||||
|
||||
Micropython library for the Bluetooth AT(WCH)
|
||||
=======================================================
|
||||
|
||||
#Preliminary composition 20230106
|
||||
|
||||
dahanzimin From the Mixly Team
|
||||
"""
|
||||
from machine import Pin
|
||||
from time import sleep_ms
|
||||
|
||||
class AT:
|
||||
def __init__(self, pin,times=5):
|
||||
self.at_pin = Pin(pin, Pin.OUT)
|
||||
self.at_pin.value(1)
|
||||
self._times = times
|
||||
self._flag = [0,0,0,0,0,0,0,0] #mac0,1 name2,3 power4,5 power6,7
|
||||
self._power = [0,1,2,3,-3,-8,-14,-20]
|
||||
sleep_ms(100)
|
||||
|
||||
def _str_reverse(self,data):
|
||||
data=data.split(':')
|
||||
data.reverse()
|
||||
data=":".join(data)
|
||||
return data
|
||||
|
||||
def ble_mac(self, mac=None):
|
||||
sleep_ms(200)
|
||||
if mac is None:
|
||||
if not (self._flag[0] >= self._times and self._times != 0):
|
||||
self._flag[0]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+MAC?\r\n')
|
||||
input()
|
||||
self.at_pin.value(1)
|
||||
print('BLE_MAC:',self._str_reverse(data))
|
||||
sleep_ms(100)
|
||||
return self._str_reverse(data)
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
else:
|
||||
if not (self._flag[1] >= self._times and self._times != 0):
|
||||
self._flag[1]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+MAC={}\r\n'.format(self._str_reverse(mac)))
|
||||
print('\r\n')
|
||||
self.at_pin.value(1)
|
||||
print('BLE_MAC:',mac,data)
|
||||
sleep_ms(100)
|
||||
return True if data is "OK" else False
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
|
||||
def ble_name(self, name=None):
|
||||
sleep_ms(200)
|
||||
if name is None:
|
||||
if not (self._flag[2] >= self._times and self._times != 0):
|
||||
self._flag[2]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+NAME?\r\n')
|
||||
input()
|
||||
input()
|
||||
self.at_pin.value(1)
|
||||
print('BLE_NAME:',data)
|
||||
sleep_ms(100)
|
||||
return data
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
else:
|
||||
if not (self._flag[3] >= self._times and self._times != 0):
|
||||
self._flag[3]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+NAME='+name+'\r\n')
|
||||
print('\r\n')
|
||||
self.at_pin.value(1)
|
||||
print('BLE_NAME:',name,data)
|
||||
sleep_ms(100)
|
||||
return True if data is "OK" else False
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
|
||||
def ble_power(self, power=None):
|
||||
sleep_ms(200)
|
||||
if power is None:
|
||||
if not (self._flag[4] >= self._times and self._times != 0):
|
||||
self._flag[4]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+TPL?\r\n')
|
||||
input()
|
||||
print(' \r\n')
|
||||
self.at_pin.value(1)
|
||||
data=self._power[int(data[4:])]
|
||||
print('BLE_Power: {}DB'.format(data))
|
||||
sleep_ms(100)
|
||||
return data
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
else:
|
||||
if not (self._flag[5] >= self._times and self._times != 0):
|
||||
self._flag[5]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+TPL={}\r\n'.format(self._power.index(power)))
|
||||
print('\r\n')
|
||||
self.at_pin.value(1)
|
||||
print('BLE_Power:',str(power)+'DB',data)
|
||||
sleep_ms(100)
|
||||
return True if data is "OK" else False
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
|
||||
def ble_pname(self, name=None):
|
||||
sleep_ms(200)
|
||||
if name is None:
|
||||
if not (self._flag[6] >= self._times and self._times != 0):
|
||||
self._flag[6]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+PNAME?\r\n')
|
||||
input()
|
||||
input()
|
||||
self.at_pin.value(1)
|
||||
print('BLE_PNAME:',data)
|
||||
sleep_ms(100)
|
||||
return data
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
else:
|
||||
if not (self._flag[7] >= self._times and self._times != 0):
|
||||
self._flag[7]+=1
|
||||
self.at_pin.value(0)
|
||||
sleep_ms(10)
|
||||
data=input('AT+PNAME='+name+'\r\n')
|
||||
print('\r\n')
|
||||
self.at_pin.value(1)
|
||||
print('BLE_PNAME:',name,data)
|
||||
sleep_ms(100)
|
||||
return True if data is "OK" else False
|
||||
else:
|
||||
print('Please delete this command and upload other programs again')
|
||||
Reference in New Issue
Block a user