Arduino常用函数(二)

news/2024/5/14 17:29:12/文章来源:https://blog.csdn.net/m0_57656758/article/details/123369495

数学函数

1、min(x,y)函数的作用是返回x,y两者中较小的。

2、max(x,y)函数的作用是返回x,y两者中较大的。

3、abs(x)函数的作用是获取x的绝对值。

4、constrain(amt,low,high)函数的工作过程是,如果amt小于low,则返回low;如果amt大于high,则返回high;否则,返回amt。

5、map(x,in_min,in_max,out_min,out_max)函数的作用是将[in_min,in_max]范围内的x等比映射到[out_min,out_max]范围内。函数返回值为long型。

6、三角函数

包括sin(rad)、cos(rad)、tan(rad)分别得到rad的正弦值、余弦值和正切值。返回值都为double型。

模拟I/O函数

模拟信号

模拟信号是用连续变化的物理量表示的信息,信号随时间作连续变化。在Arduino UNO上,可以接受0~5v的模拟信号。

模拟输入引脚

 右下角为模拟输入引脚

模拟输入引脚有10为精度,即可将0~5v的电压信号转换为0~1023的整数形式表示。

模拟输入功能需要适应analongRead()函数。

1、analogRead(pin)函数用于读取引脚的模拟量电压值,每读一次需要花100us的时间,参数pin表示所要获取模拟量电压值的引脚,如analogRead(A0)即是读取A0引脚上的模拟值,该函数返回值为int型,表示引脚的模拟量电压值,范围在0~1023。

2、analogReference(type)函数的作用是配置模拟输入引脚的参考电压。该函数无返回值函数,参数为type类型,有3种类型(DEFAULT/INTERNAL/EXTERNAL),具体含义如下:

DEFAULT:默认值,参考电压为5V;

INTERNAL:低电压模式,使用片内基准电压源;

EXTERNAL:扩展模式,通过AREF引脚获取参考电压,AREF引脚位置!

注意:如果在AREF引脚加载外部参考电压,需要使用一个5KΩ的上拉电阻,这会避免由于设置不当造成控制芯片的损坏。

3、analogWrite(pin,value)函数并不是输出真正意义上的模拟值,其通过PWM(脉冲宽度调制)的方式在引脚上输出一个模拟量,较多的应用在LED亮度控制、电机转速控制等方面。

在Arduino UNO中,提供PWM功能的引脚为3、5、6、9、10、11数字引脚。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_21921.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pytho07--面向对象2

之前我们已经知道了面向对象的概念及在python中创建空类,带方法的类,带初始化方法的类,带实例化方法的类等并认识了类的成员。在我们将其与Java的代码进行对比后发现了python确实有它的方便之处。面向对象的内容不止之前文章中提到的那些&…

IDEA+Tomcat——前端输入数据乱码问题

IDEATomcat——前端输入数据乱码问题 给别人远程部署项目的时候,发现比较老的项目会出现接收前端数据是乱码的问题,但这个项目在我自己的电脑上却是正常的,通过对比发现,IDEA版本或Tomcat版本不同及过低是造成此问题的主要原因&am…

【数学与算法】最小生成树Spanning Trees

链接 无向图: 无向图的意思是,边没有方向。 树: 树是一类特殊的图,树是由节点和无向边构成的; 所有的树都是无向图,但是无向图未必是树; 树有一些性质,但并非所有图都有这些性质…

webrtc防抖动策略NetEq

什么是NetEq:进行抖动控制和丢包隐藏,让音频更平滑。 NetEq的位置 消除抖动的基本原理 NetEq整体架构 NetEq用到的几种缓冲区 NetEq的MCU与DSP NetEq的位置: 网络抖动的计算方式: 两个包在发送端的时间间隔为S,在接收端的间隔为R,那么抖动为J=S-R。 NetEq缓冲区设置多…

golang中struct

前面已经介绍的数组,slice,map有一定的相同之处,即处理的都是相同类型的元素,map中的key和value属于相同的类型,但如果要把多个类型的元素放到一起进行处理,则要使用go语言为我们提供的数据结构struct struct非常适合定…

【Arcgis操作】模块化(批量、自动化)计算多个图层的面积

有很多个图层的面积要计算,如果采用普通的方法,需要给每个图层添加【字段】,然后再挨个计算,图层少的话还好,图层太多的话,很麻烦,很累。 那么,有没有一种方法,能够批量…

OpenCV-Python学习(7)—— OpenCV 轨迹栏操作和键盘响应操作

1. 知识点 cv.namedWindow() 创建一个窗口;cv.createTrackbar() 创建一个轨迹栏;cv.getTrackbarPos() 获取对应轨迹栏的轨迹位置;cv.waitKey() 键盘操作返回对应的key。 2. cv.namedWindow() 函数说明 函数使用 cv.namedWindow(winname, …

【每日算法题】最后一个单词的长度(简单)

今天开始学一学算法✨,前两天研究了下算法,发现算法和数据结构是程序的灵魂,这句话可真没错。 今天先从简单的开始吧😁,LeetCode 第 58 题:最后一个单词的长度 题目:给你一个字符串 s&#xf…

Linux下使用WPS做office的二次开发

Linux下使用WPS做office的二次开发 序 上个版本WPS在Linux上就已经支持二次开发了,可以直接去看官网相关的介绍。https://open.wps.cn/ 我们选择WPS的客户端进行二次开发 开发环境 Ubuntu18.04wps-office_11.1.0.9126_amd64.debQt的开发环境(我本地…

REACT全家桶(1)

基础 一、特点 声明式设计 高效 减少dom操作 灵活 JSX JS拓展语法 组件 单向响应的数据流 二、虚拟DOM 把真实DOM树转成对象树,再通过diff算法,减少重绘与回流 三、搭建环境(提前安装node环境) 1.全局安装create-rea…

《图解 HTTP 》阅读笔记(三)

书接上文《图解 HTTP 》阅读笔记(二),我们继续探索总结http的相关知识点。 我们还是先把问题摆到台面,带着问题读文章。 6.第九章&第十章 知识点 6.1 HTTP的瓶颈以及相应解决方案 HTTP优缺点分析的时候,我们是相对…

ELK+Filebead+zookeeper+kafka部署

目录 一、为什么要做日志分析平台? 二、ELKFilebeatKafkaZookeeper架构 三、搭建ELKFilebeatKafkaZookeeper 1、3台机子安装zookeeper 192.168.100.14/15/16 1.1 解压安装zookeeper软件包 1.2 修改Zookeeper配置配置文件 1.3 设置myid号以及启动脚本 1.4 3…

【前端修炼场】— 网页到底是添加超链接的呢

此文为【前端修炼场】第六篇,上一篇文章链接:img 标签 文章目录前言一、超链接引入二、属性值介绍2.1 href 属性值2.1.1 在同一文件路径下跳转2.1.2 跳转任意网址2.2 title 属性值2.3 target 属性值总结前言 本篇文章我将带领诸位学习如何在页面中添加超…

GitHub 供应链安全已支持 Dart 开发者生态

通过 Dart 和 GitHub 团队的共同努力,自 10 月 7 日起,GitHub 的 Advisory Database (安全咨询数据库)、Dependency Graph (依赖项关系图) 和 Dependabot (依赖更新机器人) 开始支持 Dart 开发者生态,这也意味着 GitHub 为 Dart 和 Flutter 应…

单商户商城系统功能拆解13—分类管理

单商户商城系统,也称为B2C自营电商模式单店商城系统。可以快速帮助个人、机构和企业搭建自己的私域交易线上商城。 单商户商城系统完美契合私域流量变现闭环交易使用。通常拥有丰富的营销玩法,例如拼团,秒杀,砍价,包邮…

LNMP网站架构

LNMP网站架构 文章目录LNMP架构简介LNMP是什么?LNMP架构的优点LNMP与LAMP的区别LNMP的工作原理知识拓展FastCGINginxFastCGIPHP-FPM搭建LNMP架构部署Nginx部署MySQL部署PHP连接nginx与phpnginx配置php配置LNMP架构简介 LNMP是什么? LNMP是Linux系统下N…

智能CDN(下):CDN的未来发展方向

一、中心思想: 利用CDN网络来发布域名的DNS记录,承载域名解析服务器的功能,即CDN网络中的智能CDN服务器可以直接返回给客户边缘节点CDN服务器的IP网址。 二、发展方向: 首先,CDN的重定向技术是根据域名解析服务器的…

基于FT2000+模块PS1600国产40G网卡验证说明

1、背景介绍 由于全国产化需求,需要在飞腾平台上使用PS1600 40G网卡替换Mellanox CX5,平台内部还是使用CTC8096作为交换芯片,示意框图如下: 2、交换配置 CTC8096需要将与PS1600相连的端口改为自协商关闭,否则无法lin…

通信协议——IIC详解

I2C协议物理层原理 总体特征 电气限制协议层起始和停止条件 数据有效性 响应/应答 寻址 读数据 写数据单片机通讯软件模拟 硬件外设(一)物理层1. 原理 I2C 总线,分别由SDA(串行数据线)和SCL(串行时钟线)及上拉电阻组成。 通信原理是通过对SCL和SDA线高低电平时序的控制,来 …

mybatis-plus 使用技巧

下面是基本的环境 1.数据库有一张表 (我先当mybatis设计表) 2.控制层,持久层,服务层 ,配置类准备好 如下 配置类: 插件可以不配置,看需求 /*** author Royalreairman* create 2022-08-06 20:3…