作为开发板的第一步就是点灯,当你会点灯就已经是一个合格的点灯工程师了。
关于ESP32的点灯非常的简单,废话不都说,上代码:
from machine import Pin
import time #导入相关的库
led=Pin(2,Pin.OUT) #初始化
while True:
led.on() #灯泡打开
time.sleep(1) #延时一秒
led.off() #灯泡关闭
time.sleep(1) #延时一秒
关于串口实验:
from machine import UART,Pin
import utime #导入库
uart=UART(1,115200) #一个普通的函数
led=Pin(25,Pin.OUT) #灯泡的初始化
uart.write("正在进行串口测试\r\n")
uart.write("请输入字符1或者0决定灯泡的开和关\r\n")
while True:
if uart.any()==True:
buf=uart.read(1)
if buf=='1':
led.on()
print("\r\n")
uart.write("\r\n")
elif buf=='0':
led.off()
print("\r\n")
uart.write("\r\n")
else:
print("\r\n")
uart.write("\r\n")
utime.sleep_ms(1)
关于PWM:
from machine import Pin,PWM #这里是是2号引脚,也就是那个小灯泡,亮度逐渐增加,再减少,循环
import utime
LED=PWM(Pin(2))
LED.freq(1000) #设置他的频率为1000HZ
LED_duty=0
LED_direction=1
while True:
LED_duty+=LED_direction
if LED_duty>=100:
LED_duty=100
LED_direction=-1
elif LED_duty<=0:
LED_duty=0
LED_direction=1
LED.duty_u16(int(LED_duty*655.35)) #改变占空比
if LED_duty%5==0:
print(LED_duty) #打印LED_duty的值
utime.sleep(0.01) #休息100ms
还有一个按键实验:
from machine import Pin
import time
button=Pin(0,Pin.IN,Pin.PULL_UP) #0号引脚按键,输入,上拉
led=Pin(2,Pin.OUT) #2号引脚就是板子上的灯
while True:
led.off() #小灯亮起来
if(button.value()==0): #判断按键是否按下
time.sleep_us(10)
if(button.value()==0):
led.on()
print("button is pressed")
while(button.value()==0):
time.sleep_ms(10)
当然ADC也不能少:
from machine import ADC,Pin #导入相应的库
adc=ADC(Pin(32),atten=ADC.ATTN_11DB) #ADC是16位的可测电压0-3.6v,但电压不要过高,防止烧毁芯片
while True:
adc_value=adc.read_u16()*3.55/65535
print("{}".format(adc_value)) #打印电压
最重要的AP和STA功能也不能少:
import network #导入相应的库
sta_if=network.WLAN(network.STA_IF) #新建一个static的对象
sta_if.active(True) #激活接口
sta_if.scan() #扫描附近的WIFI
sta_if.connect('vivo Z3','123456aa') #连接路由器,其中需要换成真实的WIFI名字和密码
import network #导入相应的库
ap_if=network.WLAN(network.AP_IF) #创建对象
ap_if.active(True) #激活接口,开启网络
ap_if.config(essid='陈振峰') #设置AP地点,你的名字
当然也可以直接从百度网盘下载我的ESP32的资料:
链接:https://pan.baidu.com/s/13CHCxxdUcYBQdIR1eXxv8Q 提取码:xt12
|