Código: ARD0011164
R$ 183,00

Com a nova placa Arduino M0 as pessoas criativas terão o potencial de desenvolver as idéias mais novas e imaginativas para dispositivos IoT, tecnologias vestíveis, automação high tech, robótica e outras aventuras ainda não imaginadas no mundo dos makers.

O Arduino M0 representa uma simples e poderosa ampliação de 32 bits da plataforma Arduino Uno. A placa tem o poder do MCU SAMD21 da Atmel com um núcleo ARM Cortex® M0.

 

Com a adição da placa M0, a família Arduino ganha um novo membro com melhorias de performance. O poder do core Atmel proporciona a esta placa mais flexibilidade e aumenta a gama de projetos que se podem imaginar e realizar. Além disso, torna a M0 a ferramenta educacional ideal para aprendizagem de desenvolvimento em 32 bits.

Microcontrolador ATSAMD21G18, 48 pinos LQFP
Voltagem operacional
3,3V
Voltagem de alimentação (recomendada) 6 a 15 V
Voltagem de alimentação (limites)  4,5 a 20 V
Pinos de E/S digitais 20, com 12 PWM e UART 
Pinos de entrada analógica 6, canais ADC de 12 bits
Pinos de saída analógica 1, DAC de 10 bits
corente CC por pino E/S 7 mA
Memória Flash
256 KB
SRAM 32 KB
Velocidade de Clock
48 MHz

Esquema e referência de design

Arquivos EAGLE: arduino-M0-reference-design.zip

Esquema: arduino-M0-schematic.pdf


Alimentação

O Arduino M0 pode ser alimentado através da conexão micro USB ou com uma fonte externa. A fonte de alimentação é selecionada automaticamente.

Alimentação externa (não USB) pode ser tanto de uma fonte CA-CC ou bateria. O adaptador pode ser conectado através de um conector P4 com o positivo no centro. Cabos conectados a uma bateria podem ser insertados nos pinos Gnd e Vin do conector de alimentação.

A placa automaticamente detecta qual fonte de alimentação está disponível e escolhe uma com prioridade da fonte externa sobre a USB.

Alimentação externa é necessária quando os 500mA fornecidos pela USB não forem suficientes para alimentar um dispositivo USB ou uma aplicação USB host.

Os pinos de alimentação são os seguintes:

    VIN. A voltagem de alimentação para a placa Arduino quando utilizando uma fonte externa (em oposição aos 5V da conexão USB ou outra fonte de alimentação regulada). Você pode fornecer alimentação através deste pino ou, se estiver fornecendo alimentação através do conector P4, acessar a alimentação através deste pino. A faixa de voltagem permitida é de 6 a 20 volts.

    5V. A fonte de alimentação regulada para alimentar o microcontrolador e outros componentes na placa. Pode vir tanto do VIN através do regulador embarcado, ou ser fornecida através da USB ou outra fonte de alimentação regulada. A corrente máxima de saída fornecida pelo regulador embarcado é de 1A (de acordo com a alimentação de entrada).

    3V3. Uma fonte de 3,3V gerada pelo regulador embarcado. A corrente máxima é de 1A (de acordo com a alimentação de entrada).
    GND. Pinos de terra.

    IOREF. A voltagem em que os pinos de E/S estão operando (i.e. VCC da placa). É de 3,3V no M0.

Memória

O ATSAMD21G18 tem 256KB de memória flash programável (dos quais 4KB são utilizados pelo bootloader). O bootloader é gravado de fábrica pela Atmel e é armazenado em uma memória ROM dedicada. O bootloader é protegido através do fusível NVM.

Tem também 32KB de SRAM e até 16KB por emulação de EEPROM (que pode ser lida e escrita através da biblioteca EEPROM).


Entradas e saídas

Cada um dos 14 pinos de E/S digitais do M0 pode ser utilizado como uma entrada ou saída utilizando as funções pinMode(), digitalWrite(), e digitalRead(). Eles operam a 3,3V, têm uma corrente máxima de 7mA e um resistor de elevação (desconectado por padrão) de 20 a 60kΩ. Em adição alguns pinos têm funções especializadas:

    Serial: 0 (RX) e 1 (TX). Utilizados para receber (RX) e transmitir (TX) dados seriais utilizando a capacidade serial do ATSAMD21G18. Note que no M0, a classe serial se refere à comunicação USB (CDC). Para utilizar a serial dos pinos 0 e 1 use a classe Serial1.

    TWI: SDA and SCL. Dão suporte à comunicação TWI utilizando a biblioteca TWI.

    PWM:Pinos 2 a 13 fornecem saída PWM de 8 bits através da função analogWrite(). A resolução da PWM pode ser alterada através da função analogWriteResolution().

    Os pinos 4 e 10 não podem ser utilizados simultaneamente como PWM.

    Os pinos 5 e 12 não podem ser utilizados simultaneamente como PWM.

    SPI: no conector ICSP. Estes pinos dão suporte à comunicação ICSP utilizando a biblioteca SPI. Note que os pinos SPI não estão conectados aos pinos digitais como no Uno. Eles estão disponíveis apenas no conector ICSP. Isto significa que, se você tem um shield que utiliza SPI mas que não tem o conector SPI de 6 pinos, este shield não funcionará.

    LED: 13. Há um LED embarcado conectado ao pino 13. Quando o pino está em HIGH o LED ecende e apaga quando está em LOW.

    Entradas analógicas. O M0 tem 6 entradas analógicas, identificadas de A0 a A5. Estes pinos estão na mesma localização que no Uno. CAda entrada anlógica tem 12 bits de resolução (i.e. 4096 valores diferentes). Por padrão estas entradas medem de terra a 3,3V, embora seja possível alterar o limite superior utilizando o pino AREF e a função analogReference().

    DAC: o pino A0 fornece saída analógica com 10 bits de resolução (1023 níveis) com a função analogWrite(). Este pino pode ser utilzado para criar uma saída de áudio analógico usando a biblioteca Audio.

    Reset: Rebaixe esta linha para resetar o microcontrolador. É tipicamente utilizada para adicionar um botão de reset quando outros shields são empilhados e bloqueiam o botão presente no M0.


Communicação

O Arduino Arduino M0 possui uma série de facilidades para se comunicar com um computador, outro Arduino, ou outros microcontroladores e com dispositivos diferentes como tablets, câmeras e demais. O SAMD21 fornece uma UART de hardware e 3 USARTs de hardware para comunicação serial de 3,3V.

O software Arduino inclui um monitor serial permitindo que dados simples textuais sejam enviados da placa. Os LEDs em TX e RX piscarão quando dados estiverem sendo transmitidos através do chip ATSAMD21G18 e com conexão serial a um computador (mas não para comunicação serial nos pinos 1 e 0).

A porta USB nativa é conectada ao SAMD21. Ele permite comunicação serial (CDC) através da USB. Isto fornece uma conexão serial com o Monitor Serial, ou a outras aplicações no seu computador.

O SAMD21 também suporta comunicação nos padrões TWI e SPI. O software Arduino inclui uma biblioteca Wire para simplificar o uso da conexão TWI. Para comunicação SPI, use a biblioteca SPI.


Programação

O Arduino M0 pode ser programado com o software Arduino (download).

Se você utiliza um sistema operacional baseado em Linux siga o guia Arduino IDE em Linux.

Enviar sketches através do SAMD21 é diferente do modo como isso funciona com os microcontroladores AVR encontrados em outras placas Arduino: a memória flash necessita ser apagada antes de ser re-programada. A operação de upload é gerenciada por uma área de ROM dedicada no SAMD21.

Porta USB: Para utilizar esta porta selecione "Arduino M0 (Native USB Port)" na IDE do Arduino. A porta nativa USB é conectda diretamente ao SAMD21. Conecte a porta USB nativa (a mais próxima ao botão de reset) ao seu computador. Abrindo e fechando a porta nativa a 1200bps dispara o precedimento de "soft erase": a memória flash é apagada e a placa é restartada com o bootloader. Abrindo e fechando a porta nativa a velocidades diferentes não causará restart no SAMD21.


Proteção de sobrecorrente na USB

O M0 tem um polyfuse ressetável que protege as portas USB de seu computador contra curtos e sobrecorrentes. Embora muitos computadores forneçam sua própria proteção interna, este fusível proporciona uma camada extra de proteção. Se mais de 500mA fluírem através da porta USB o fusível interromperá automaticamente a conexão até que o curto ou a sobrecorrente seja removido.

Características físicas

O comprimento e a largura máximos do Arduino M0 são de 68,6 e 53,4mm respectivamente, com os conectores  USB e de alimentação extendendo-se além destas dimensões. Quatro orifícios para parafusos permitem que a placa seja fixada a uma superfície ou encapsulamento. Verifique que a distância entre os pinos digitais 7 e 8 é de 160mil (milésimos de polegada ou 0,16"), não é nem mesmo um múltiplo dos 100mil que separam os outros pinos.

2 Comentários

dalchau.jc ter, 12/07/2016 - 18:19

Olá. Estou usando o Arduino IDE 1.6.9. Configurei como Placa "Arduino Zero" em Arduino SAMD e Porta 6. Quando estou tentando carregar o programa o mesmo passa pela compilação mas quando vai carregar na placa o LED "L"pisca e quando para de piscar vem a mensagem "no device found on COM6"e é possivel ouvir o som de como se estivesse plugando um USB. Acredito que a placa esteja com defeito. Como podemos resolver ?Att

imagem de w_blake
w_blake qua, 13/07/2016 - 09:06

A IDE correta para o Arduino M0 é a IDE 1.7.10  baixada de :

http://www.arduino.org/downloads

Escolher a opção Board :  Arduino M0

E em port :  a porta serial correspondente à placa Arduino M0.