在arduinouno中哪个引脚不能输出pwm数值
Arduino Uno引脚分配 - 电源Arduino Uno开发板可以使用三种方式供电:
● 直流电源插孔 -可以使用电源插孔为Arduino开发板供电。电源插孔通常连接到一个适配器。开发板的供电范围可以是5-20V,但制造商建议将其保持在7-12V之间。高于12V时,稳压芯片可能会过热,低于7V可能会供电不足。
● VIN引脚 - 该引脚用于使用外部电源为Arduino Uno开发板供电。电压应控制在上述提到的范围内。
● USB电缆 - 连接到计算机时,提供500mA/5V电压。

在电源插孔的正极与VIN引脚之间链接有一个极性保护的二极管,额定电流为1安培。
您使用的电源决定了可用于电路的功率。例如,使用USB为电路供电时,电流最大限制在500mA。考虑到该电源也用于为MCU、外围设备、板载稳压器和与其连接的组件供电。当通过电源插座或VIN为电路供电时,可用的最大电流取决于Arduino开发板上的5V和3.3V稳压器。
● 5v和3v3
根据制造商的数据手册,它们提供稳压的5V和3.3v,向外部组件供电。
● GND
在Arduino Uno引脚分配图中,可以看到有5个GND引脚,它们都是互连的。
GND引脚用于闭合电路回路,并在整个电路中提供一个公共逻辑参考电平。务必确保所有的GND(Arduino、外设和组件)相互连接并且有共同点。
● RESET - 复位Arduino开发板。
● IOREF - 该引脚是输入/输出参考。它提供了微控制器工作的参考电压。
Arduino Uno引脚分配 - 模拟输入
Arduino Uno有6个模拟引脚,它们作为ADC(模数转换器)使用。
这些引脚用作模拟输入,但也可用作数字输入或数字输出。

模数转换
ADC表示模拟到数字转换器。 ADC是用于将模拟信号转换为数字信号的电子电路。模拟信号的这种数字表示允许处理器(其是数字设备)测量模拟信号并在其操作中使用它。
Arduino引脚A0-A5能够读取模拟电压。在Arduino上,ADC具有10位分辨率,这意味着它可以通过1,024个数字电平表示模拟电压。 ADC将电压转换成微处理器可以理解的位。
一个常见的ADC例子是IP语音(VoIP)。每部智能手机都有一个麦克风,可将声波(语音)转换为模拟电压。这通过设备的ADC,转换成数字数据,通过互联网传输到接收端。
Arduino Uno引脚分配 - 数字引脚
Arduino Uno的引脚0-13用作数字输入/输出引脚。其中,引脚13连接到板载的LED指示灯;引脚3、5、6、9、10、11具有PWM功能。
需要注意的是:
● 每个引脚可提供/接收最高40 mA的电流。但推荐的电流是20毫安。
● 所有引脚提供的绝对最大电流为200mA。

数字电平意味着什么?
数字是一种表示1位电压的方式:0或1。Arduino上的数字引脚是根据用户需求设计为输入或输出的引脚。数字引脚可以打开或关闭。开启时,它们处于5V的高电平状态,当关闭时,它们处于0V的低电平状态。
在Arduino上,当数字引脚配置为输出时,它们设置为0或5V。
当数字引脚配置为输入时,电压由外部设备提供。该电压可以在0-5V之间变化,并转换成数字表示(0或1)。为了确定这一点,有2个阈值:
● 低于0.8v - 视为0。
● 高于2.0v - 视为1。
将组件连接到数字引脚时,确保逻辑电平匹配。如果电压在阈值之间,则返回值将不确定。
什么是PWM?
通常,脉宽调制(PWM)是一种调制技术,用于将消息编码为脉冲信号。 PWM由两个关键部分组成:频率和占空比。 PWM频率决定了完成单个周期(周期)所需的时间以及信号从高到低的波动速度。占空比决定信号在总时间段内保持高电平的时间。占空比以百分比表示。
在Arduino中,支持PWM的引脚产生约500Hz的恒定频率,而占空比根据用户设置的参数而变化。见下图:

WM信号用于直流电机的速度控制,调光LED等。
通信协议
串行(TTL) - 数字引脚0和1是Arduino Uno的串行引脚。
它们由板载USB模块使用。
什么是串行通信?
串行通信用于在Arduino板和其他串行设备(如计算机,显示器,传感器等)之间交换数据。每块Arduino板至少有一个串口。串行通信发生在数字引脚0(RX)和1(TX)以及USB上。
Arduino也支持通过数字引脚与SoftwareSerial
Library进行串行通信。这允许用户连接多个支持串行的设备,并保留主串行端口可用于USB。
软件串行和硬件串行
-
大多数微控制器都具有用于与其他串行设备进行通信的硬件。软件串行端口使用引脚更改中断系统进行通信。有一个用于软件串行通信的内置库。处理器使用软件串行来模拟额外的串行端口。软件串行唯一的缺点是它需要更多的处理,并且不能支持与硬件串行相同的高速。
SPI - SS / SCK / MISO / MOSI引脚是SPI通信的专用引脚。它们可以在Arduino Uno的数字引脚10-13和ICSP插头上找到。
串行外设接口(Serial
Peripheral Interface,SPI)是一种串行数据协议,由微控制器用来与总线中的一个或多个外部设备进行通信,如连接。
SPI也可以用来连接2个微控制器。在SPI总线上,总是有一个设备表示为主设备,其余所有设备都表示为从设备。在大多数情况下,微控制器是主设备。
SS(从选择)引脚确定主器件当前正在与哪个器件通信。
启用SPI的器件始终具有以下引脚:
● MISO(主从输出) - 用于向主设备发送数据的线路
● MOSI(主机输出从机输入) - 发送数据到外围设备的主机线
● SCK(串行时钟) - 由主设备生成的用于同步数据传输的时钟信号。
I2C - SCL / SDA引脚是I2C通信的专用引脚。在Arduino Uno上,它们可以在模拟引脚A4和A5上找到。
I2C通信协议通常称为“I2C总线”。 I2C协议旨在实现单个电路板上组件之间的通信。使用I2C时,有2条通信线,称为SCL和SDA。
● SCL是用于同步数据传输的时钟线。
● SDA是用于传输数据的通讯线。
I2C总线上的每个器件都有一个唯一的地址,最多可以在同一条总线上连接255个器件。
Aref - 模拟输入的参考电压。
中断 - INT0和INT1。 Arduino Uno有两个外部中断引脚。
外部中断 - 外部中断是外部干扰出现时发生的系统中断。干扰可能来自用户或网络中的其他硬件设备。 Arduino中这些中断的常见用途是读取编码器产生的方波或外部事件唤醒处理器的频率。
Arduino有两种形式的中断:
● 外部输入
● 引脚状态变化
ATmega168 / 328上有两个外部中断引脚,称为INT0和INT1。 INT0和INT1分别映射到引脚2和3。相反,引脚变化中断可以在任何引脚上激活。
Arduino Uno引脚定义 - ICSP插头
ICSP表示在线串行编程。该名称源自在系统编程(ISP)。 Arduino相关的制造商,如Atmel,开发了自己的在线串行编程插头。这些引脚使用户能够编程Arduino开发板上的固件。 Arduino开发板上有6个ICSP引脚,可通过编程电缆连接到编程器设备。

了解引脚定义
Arduino Uno开发板是当今市场上最流行的开发板之一,这就是为什么我们在本文中主要介绍这款开发板。本篇文章主要介绍了其大部分功能,但也有很多高级的选项,我们在这篇文章中没有涉及。
绛旓細SPI - SS / SCK / MISO / MOSI寮曡剼鏄疭PI閫氫俊鐨勪笓鐢ㄥ紩鑴銆傚畠浠彲浠ュ湪Arduino Uno鐨勬暟瀛楀紩鑴10-13鍜孖CSP鎻掑ご涓婃壘鍒般備覆琛屽璁炬帴鍙o紙Serial Peripheral Interface锛孲PI锛夋槸涓绉嶄覆琛屾暟鎹崗璁紝鐢卞井鎺у埗鍣ㄧ敤鏉ヤ笌鎬荤嚎涓殑涓涓垨澶氫釜澶栭儴璁惧杩涜閫氫俊锛屽杩炴帴銆係PI涔熷彲浠ョ敤鏉ヨ繛鎺2涓井鎺у埗鍣ㄣ傚湪SPI鎬荤嚎涓婏紝鎬...
绛旓細鎵浠,瀵Arduino UNO鏉夸笂鐨勫唴缃甃ED杩涜鎺у埗鏃,搴旈夋嫨鏁板瓧寮曡剼13銆
绛旓細Arduino Uno R3寮鍙戞澘鐨勫紩鑴氬垎閰嶅浘鍖呭惈14涓暟瀛楀紩鑴氥6涓ā鎷熻緭鍏ャ佺數婧愭彃瀛斻乁SB杩炴帴鍜孖CSP鎻掑ご銆傚紩鑴氱殑澶嶇敤鍔熻兘鎻愪緵浜嗘洿澶氱殑涓嶅悓閫夐」锛屼緥濡傞┍鍔ㄧ數鏈恒丩ED銆佽鍙栦紶鎰熷櫒绛夈傜數婧愬紩鑴氳鏄嶸IN --- 褰撳閮ㄧ洿娴佺數婧愭帴鍏ョ數婧愭彃搴ф椂锛屽彲浠ラ氳繃VIN鍚戝閮ㄤ緵鐢碉紱涔熷彲浠ラ氳繃姝ゅ紩鑴氬悜UNO鐩存帴渚涚數锛沄IN鏈夌數鏃跺皢蹇界暐浠嶶SB...
绛旓細鍦ˋrduinoUno涓紝鏅氱鍙e彲浠ヨ缃负涓插彛銆傚湪ArduinoUno涓紝闄や簡纭欢涓插彛锛圧X鍜孴X寮曡剼锛夊锛岃繕鍙互浣跨敤杞欢妯℃嫙涓插彛鏉ュ疄鐜颁覆鍙i氫俊銆傝蒋浠舵ā鎷熶覆鍙f槸閫氳繃浣跨敤SoftwareSerial绫诲簱鏉ユā鎷熼澶栫殑涓插彛鍔熻兘銆傞氳繃灏嗘櫘閫氱殑鏁板瓧寮曡剼閰嶇疆涓鸿蒋涓插彛鐨勬帴鏀跺拰鍙戦佸紩鑴氾紝鍙互瀹炵幇涓庡閮ㄤ覆鍙h澶囩殑閫氫俊銆傝繖绉嶆柟寮忓彲浠ユ墿灞旳rduinoUno鐨...
绛旓細妤间笂宸竴涓0鑴1鑴氬拰澶嶄綅鑴歳est锛岄兘涓嶈兘鍗犵敤銆傚惁鍒欓兘涓嶈兘涓嬬▼搴忋
绛旓細涓夌渚涚數姝f槸arduino鏈夋剰鎬濈殑鍦版柟銆傞氬父鏄疷SB渚涚數锛屽嵆鍐欑▼搴忔椂灏辩敱PC渚涚數浜嗐侱C鍙e彲浠ユ帴杈冮珮鐢靛帇锛岀敱鏉夸笂5V绋冲帇IC杈撳嚭5V銆+Vin鍗崇洿鎺ョ數鍘嬭緭鍏ワ紝澶ф3.3 鑷6V閮芥病闂锛屾鏃禪SB鐨勪緵鐢佃鍒囨柇浠ヤ繚鎶SB鍙c俶ega鑺墖鏈韩鍙互鍦ㄨ緝瀹界數鍘嬩笅宸ヤ綔锛屼笉杩囧鍥寸殑TTL鐢佃矾绛変笉涓瀹氭甯稿伐浣溿
绛旓細arduinouno瀹樻柟淇℃伅鏄剧ず锛鍦╝rduinouno涓杈撳嚭杈撳叆鏈変笁绉嶆ā寮忔槸杈撳叆妯″紡銆佽緭鍑烘ā寮忋佽緭鍏ヤ笂鎷夋ā寮忋俛rduinouno鏄熀浜嶢Tmega328P鐨凙rduino寮鍙戞澘锛屾湁14涓暟瀛楄緭鍏/杈撳嚭寮曡剼锛堝叾涓6涓彲鐢ㄤ簬PWM杈撳嚭锛夈6涓ā鎷熻緭鍏ュ紩鑴氾紝涓涓16MHz鐨勬櫠浣撴尟鑽″櫒锛屼竴涓猆SB鎺ュ彛锛屼竴涓狣C鎺ュ彛锛屼竴涓狪CSP鎺ュ彛锛屼竴涓浣嶆寜閽
绛旓細UNO 鏉垮瓙 TX -- 绔彛1 RX -- 绔彛0
绛旓細寮曡剼銆Arduino寮鍙戞澘濡UNO銆丯ano锛屾湁6涓繖鏍风殑寮曡剼锛屽畠浠槸鏁板瓧寮曡剼3銆5銆6銆9銆10鍜11锛岃繖浜涘紩鑴氬彲浠ヨ緭鍑篜WM淇″彿锛岀敤浜庢帶鍒跺璁剧殑妯℃嫙鐢靛帇鎴栦骇鐢熻剦鍐层
绛旓細Arduino UNO鍙互閫氳繃3绉嶆柟寮忎緵鐢碉紝鑰屼笖鑳借嚜鍔ㄩ夋嫨渚涚數鏂瑰紡 澶栭儴鐩存祦鐢垫簮閫氳繃鐢垫簮鎻掑骇渚涚數銆傜數姹犺繛鎺ョ數婧愯繛鎺ュ櫒鐨凣ND鍜孷IN寮曡剼銆俇SB鎺ュ彛鐩存帴渚涚數銆傜數婧愬紩鑴氳鏄 VIN --- 褰撳閮ㄧ洿娴佺數婧愭帴鍏ョ數婧愭彃搴ф椂锛屽彲浠ラ氳繃VIN鍚戝閮ㄤ緵鐢碉紱涔熷彲浠ラ氳繃姝ゅ紩鑴氬悜UNO鐩存帴渚涚數锛沄IN鏈夌數鏃跺皢蹇界暐浠嶶SB鎴栬呭叾浠栧紩鑴氭帴鍏ョ殑鐢垫簮銆5V...