ESP8266的硬件资源

在这里插入图片描述
中断模式
除了D0/GPIO16,中断可以绑定到任意GPIO的引脚上。

```c
attachInterrupt(digitalPinToInterrupt(D1), InterruptFunc, RISING);
指定引脚设置为响应中断。
digitalPinToInterrupt(D1)  :获取指定GPIO5引脚的中断号  注意 这个不是引脚号而是中断号
InterruptFunc :		回调函数  可以理解为中断响应函数
RISING: 触发方式(RISING 上升沿   FALLING 下降沿  CHANGE 跳变沿)
detachInterrupt()     禁用指定GPIO引脚上的中断

```c
ICACHE_RAM_ATTR void InterruptFunc(){
		 //
}无形参 、无返回值

用ICACHE_FLASH_ATTR编译的函数编译到IROM部分; 对于这些功能,CPU执行指令高速缓存中的代码。
相反,系统启动时没有ICACHE_FLASH_ATTR的函数加载到IRAM中。因此,使用ICACHE_FLASH_ATTR有助于降低IRAM要求。
不要在中断处理程序中使用ICACHE_FLASH_ATTR函数,因为它可能与闪存R / W操作冲突。
模拟输入(ADC)

analogRead(A0)  读取A0端口上的电压 
输入电压范围是0~1v 可以使用电阻分压来测得外部5v或者3.3v的电压

PWM模式

analogWrite(D2,50)   D2引脚上启用pwm模式  占空比为50%  通过此函数改变占空比
analogWriteRange(1023)  x: pwm的溢出时计数器的值  用来调节pwm的精度  默认为1023
analogWriteFreq(1000)	改变PWM频率 默认是1KHZ  PWM频率范围应该是100Hz-40KHz

串口

Serial.swap()  串口的映射 Serial使用UART0  默认对应引脚是GPIO1(TX)和GPIO3(RX) 
将Serial重新映射到GPIO15(TX)和GPIO13(RX)
Serial1使用UART1,默认对应引脚是GPIO2(TX) Serial1不能用于接收数据
Serial.begin(115200);  初始化 波特率为115200
Serial.setRxBufferSize(size_t size) 定义接收缓冲区的大小,默认值是256
Serial.available()  串口FIFO缓冲区的字节数
Serial.read()   读取串口缓冲区的字节  每次读取一个字节
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值