| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 【arduino】I/O端口操作 -> 正文阅读 |
|
[嵌入式]【arduino】I/O端口操作 |
1 普通数字IO口①端口配置端口配置函数:pinMode(pin,mode); pin是端口号,可以设置为0-13 mode:有三种模式 ? ? ? ? ? ? ? ? INPUT :输入模式,悬空时逻辑电平不确定 ? ? ? ? ? ? ????INPUT_PULLUP:上拉输入模式,悬空时逻辑电平确定为高 ? ? ? ? ? ? ? ? OUTPUT:输出模式,默认输出低电平,最大电流40mA ②端口读取端口电平读取函数:digitalRead(pin); pin是端口号,可以设置为0-13 读取端口pin的电平,返回值1(HIGH)或0(LOW) 注意:不管设置为输入模式,还是输出模式的端口都可以使用该函数读取IO口的电平状态,但是IO口在输入模式时为高阻态,输出模式时为低阻态,高阻态情况下,微弱电流信号也可以检测到,低阻态则不可以,故对于传感器的电平检测应设置输入模式。(电流一定时,电阻越大,电压变化越大。) ③端口写入:端口输出函数:digitalWrite(pin,mode); pin是端口号,可以设置为0-13 mode是要设置的模式,可设置为 ? ? ? ? ? ? ? ? HIGH:输出高电平 ? ? ? ? ? ? ? ? LOW:输出低电平 示例程序:
2 模拟输入IO口端口已经默认配置好,不需要我们配置,直接使用即可。 读取模拟输入函数:analogRead(pin); pin:要读取的IO口,取值A0-A5 返回值:0到1023,表示0-5伏的电压
3 PWM①PWM输出能输出PWM的端口:数字IO口中有~标识符的端口 PWM输出函数:analogWrite(pin,val); pin:端口号 val:占空比数值,范围是0-255,0时输出0V,255时输出5V 注意:设置analogWrite后,该端口会一直输出频率一定的方波信号,直到下一次操作该端口,即对该端口操作会打断PWM输出。
4 脉冲信号检测pinMode(11, INPUT); ? ? ? ?//读取脉冲宽度的引脚要设置为INPUT模式 脉冲检测函数:
pin :引脚号 ????????超过timeout时间(微妙)没有检测到信号就结束检测,并且返回0 ? ? ? ? 如果检测高电平持续时间,那么当信号从低电平跳变到高电平的时候开始计时,信号从高电平跳变到低电平的时候结束计时。 ? ? ? ? 不能检测脉冲持续时间少于10um的信号,也不能检测脉冲持续时间超过3分钟的信号
|
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 22:40:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |