## mega2560控制器
![](https://img.kancloud.cn/b1/68/b1686f53ac6b427bab95325616cfb048_659x600.png)
Mega 2560是基于ATmega2560的主控开发板。Mega2560是采用USB接口的核心电路板。具有54路数字输入输出,适合需要大量IO接口的设计。处理器核心是ATmega2560,同时具有54路数字输入/输出口,16路模拟输入,4路UART接口,一个16MHz晶体振荡器,一个USB口,一个电源插座,一个ICSP header和一个复位按钮。板上有支持一个主控板的所有资源。 Mega2560也能兼容为NUO设计的扩展板。可以自动选择3中供电方式:外部直流电源通过电源插座供电;电池连接电源连接器的GND和VIN引脚;USB接口直流供电。
![](https://img.kancloud.cn/18/b2/18b2c5f42da8d2225297b416fb148811_710x350.png)
## VSR-UNO虚实孪生
![](https://img.kancloud.cn/71/4f/714fe8baad6c92531dd8d598eee658d2_808x176.png)
通过Mixly图形化编程软件或ArduinoIDE开发,简单快速高效的完成程序开发。VSR-UNO通过USB连接到电脑,与VS-Robot进行虚实孪生仿真。使用真实的单片机系统控制虚拟的场景。
## 技术参数
| 型号 | Mega 2560 |
| --- | --- |
| 微控制器 | ATmega2560|
| 工作电压 | 5 V |
| 输入电压(推荐) | 7-12 V |
| 输入电压(极限) | 6-20 V |
| 数字I/O引脚 | 54 |
| PWM通道 |15 |
| 模拟输入通道(ADC) | 16 |
| 每个I/O直流输出能力 | 40 mA |
| 3.3V端口输出能力 | 50 mA |
| Flash | 256 KB(其中引导程序使用8 KB) |
| SRAM |8KB |
| EEPROM | 4 KB |
| 时钟速度 | 16 MHz |
| 板载LED引脚 | 13 |
| 长度 | 101.6 mm |
| 宽度 | 53.4 mm |
## 电源
可以通过USB口或者直流电源座给VSR-UNO供电。VSR-UNO带有自动切换电源功能。
电源引脚如下:
**Vin**
电源输入引脚。当使用外部电源通过DC电源座供电时,这个引脚可以输出电源电压。
**5V**
5V电源引脚。使用USB供电时,直接输出USB提供的5V电压;使用外部电源供电时,输出稳压后的5V电压。
**3V3**
3.3V 电源引脚。最大输出能力为50 mA。
**GND**
接地引脚
**IOREF**
I/O参考电压。其他设备可通过该引脚识别开发板I/O参考电压。
## 存储空间
ATmega2560有256k的闪存可存储程序(其中8kb用作bootloader),有8kb的SRAM和4kb的EEPROM,可以使用EEPROM库读写EEPROM空间。
## 输入输出
54路接口都可作为输入输出,并使用5v电压操作,每个接口的电流最大40mA并且接口有内置20-50千欧的上拉电阻。另外,有的接口有特殊功能。
**Serial(串口):**
Serial 0:0 (RX) and 1 (TX);
Serial 1: 19 (RX) and 18 (TX);
Serial 2: 17 (RX) and 16 (TX);
Serial 3: 15 (RX) and 14 (TX).
一共四组串口。其中Serial0也被连接到Tmega16U2 USB-to-TTL Serial芯片(上文有介绍,我们USB连接电脑用的就是这个串口)。RX接收数据,TX传输数据。
**External Interrupts(外部中断):**
2 (interrupt 0),
3 (interrupt 1),
18 (interrupt 5),
19 (interrupt 4),
20 (interrupt 3),
21 (interrupt 2)。
每个引脚都可配置成低电平触发,或者上升、下降沿触发。
**PWM(脉冲调制): **
2~13口;
44~ 46口。
提供8位PWM输出。
**SPI(串行外设接口):**
50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS)。
SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议。
SPI总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。外围设置FLASHRAM、网络控制器、LCD显示驱动器、A/D转换器和MCU等。SPI总线系统可直接与各个厂家生产的多种标准外围器件直接接口,该接口一般使用4条线:串行时钟线(SCLK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平有效的从机选择线CS(有的SPI接口芯片带有中断信号线INT、有的SPI接口芯片没有主机输出/从机输入数据线MOSI)。
SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(用于单向传输时,也就是半双工方式)。也是所有基于SPI的设备共有的,它们是SDI(数据输入)、SDO(数据输出)、SCLK(时钟)、CS(片选)。
(1)MOSI– SPI总线主机输出/ 从机输入(SPI Bus Master Output/Slave Input);
(2)MISO– SPI总线主机输入/ 从机输出(SPI Bus Master Input/Slave Output);
(3)SCLK –时钟信号,由主设备产生;
(4)CS – 从设备使能信号,由主设备控制(Chip select),有的IC此pin脚叫SS。
其中CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。这就允许在同一总线上连接多个SPI设备成为可能。
接下来就负责通讯的3根线了。通讯是通过数据交换完成的,这里先要知道SPI是串行通讯协议,也就是说数据是一位一位的传输的。这就是SCLK时钟线存在的原因,由SCK提供时钟脉冲,SDI,SDO则基于此脉冲完成数据传输。数据输出通过 SDO线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。完成一位数据传输,输入也使用同样原理。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据的传输。在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,显得简单高效。在多个从设备的系统中,每个从设备需要独立的使能信号,硬件上比I2C系统要稍微复杂一些。
例:现有1,2号设备支持SPI接口,则可以都挂到主控的SPI线上,之后如果要控制1号设备,则由主控发送CS=1号,选中1号设备,那么1号设备就可以通过MOSI,MISO两根线在SCLK时钟控制下和主机进行通信了。
**LED:**
13引脚。这是板上自带的LED灯,高电平亮,低电平灭。
**TWI:**
20 (SDA) 和21 (SCL)。
TWI(Two—wire Serial Interface)接口是对I²C总线接口的继承和发展,完全兼容I²C总线,具有硬件实现简单、软件设计方便、运行可靠和成本低廉的优点。TWI由一根时钟线和一根传输数据线组成,以字节为单位进行传输。TWI\_SCL\\TWI\_SDA是TWI总线的信号线。 SDA是双向数据线,SCL是时钟线SCL。在TWI总线上传送数据,首先送最高位,由主机发出启动信号,SDA在SCL 高电平期间由高电平跳变为低电平,然后由主机发送一个字节的数据。数据传送完毕,由主机发出停止信号,SDA在SCL 高电平期间由低电平跳变为高电平。
**模拟输入:**
Mega2560有16个模拟输入,每个提供10位的分辨率(即2^10=1024个不同的值)。默认情况下他们测量0到5v值。可以通过改变AREF引脚和analogReference() 功能改变他们变化范围的上界。
**AREF:**
是AD转换的参考电压输入端(模拟口输入的电压是与此处的参考电压比较的)。完成功能。
例:
参考电压是5V,AD精度是10位的,
在模拟输入端输入2.5V,AD转换结果就是512(1024×(5/2.5))
**Reset:**
复位端口。接低电平会使单片机复位,复位按键按下时,会使该端口接到低电平,从而让mega2560复位。
## 指示灯(LED)
mega2560带有4个LED指示灯,作用分别如下:
**ON:**
电源指示灯。当mega通电时,ON灯会点亮。
**TX:**
串口发送指示灯。当使用USB连接到计算机且mega2560向计算机传输数据时,TX灯会点亮。
**RX:**
串口接收指示灯。当使用USB连接到计算机且mega2560接收到计算机传来的数据时,RX灯会点亮。
**LED:**
可编程控制指示灯。该LED通过特殊电路连接到VSR-UNO的13号引脚,当13号引脚为高电平或高阻态时,该LED 会点亮;低电平时,不会点亮。可以通过程序或者外部输入信号,控制该LED亮灭。
## 通信
mega2560具备多种通信接口,可以和计算机、其他mega2560或者其他控制器通信。
ATmega328P 提供了UART TTL (5V)串口通信,其位于0 (RX) 和1 (TX)两个引脚上。VSR-UNO上的CH340将串口转换成USB,使得ATmega328P 能和计算机通信。VSR-UNO上的RX\\TX两个LED可以指示当前VSR-UNO的通信状态。
ATmega2560也支持I2C (TWI)和SPI通信。
## 自动复位
一些开发板在上传程序前需要手动复位,而mega2560的设计不需要如此,在mega2560连接电脑后可以由程序控制其复位。在Tmega16U2 USB-to-TTL Serial上的DTR信号端,经过一个100nf 的电容,连接到ATmega328 的复位引脚。
当计算机发出DTR信号时(低电平),复位端将得到一个足够长的脉冲信号,从而复位ATmega2560。在Arduino IDE中点击上传程序,在上传前即会触发复位,从而运行引导程序,完成程序上传。
- VS-Robot简介
- 机器人等级与课程
- 我的机器人世界
- 快速上手与使用
- 控制与编程
- 多人协作与VR
- Py-Tech机器人编程
- 什么是Py-Tech
- Py-Tech编程语法
- 探索与发现
- VSR电子积木编程
- 认识VSR电子积木
- UNO控制器
- ESP32控制器
- 扩展Arduino-mega控制器
- 扩展接口板
- 人机交互配件
- Arduino-UNO编程与搭建
- Arduino-Mega编程与搭建
- ESP32物联网与编程
- Python编程与二次开发
- 如何搭建Python编程
- VSR-Python编程语法
- VSR-Python与视觉
- VSR-KATA机器人
- 认识KATA机器人
- 编程与控制
- 创新与应用
- 科技工厂创作案例
- 让你的工厂动起来
- 让工厂更听话
- 永不疲倦的机器人
- 会自己移动的小车
- 创作一个智能的科技工厂
- Arduino-uno编程与仿真
- VSR-UNO控制器
- UNO与Mixly
- Arduino-mega编程与仿真
- mega控制器
- mega与Mixly
- Python编程与控制
- python编程工具
- 基础模块
- 虚拟工厂模块
- 物联网模块
- 环境搭建
- ESP32编程与控制
- ESP32与VSR
- ESP32-S物联网基础控制器
- ESP32-R机器人物联网控制
- 带上VR眼镜进入我的机器人世界