基本信息
文件名称:Arduino 系列:Arduino Gemma (基于 ATtiny85)_(3).Gemma硬件特性.docx
文件大小:25.8 KB
总页数:22 页
更新时间:2025-06-24
总字数:约9.42千字
文档摘要

PAGE1

PAGE1

Gemma硬件特性

1.概述

ArduinoGemma是一款小巧的单片机开发板,基于ATtiny85微控制器。它非常适合用于需要小尺寸和低功耗的应用,如可穿戴设备、互动艺术项目和小型电子装置。Gemma的特点是体积小、价格低廉,并且具有基本的输入输出功能,适用于初学者和专业人士。

2.主要硬件特性

2.1微控制器

型号:ATtiny85

工作电压:3.3V

输入电压:3.3V-5V

数字I/O引脚:3个

模拟输入引脚:2个

内部存储器:

闪存:8KB

SRAM:512B

EEPROM:512B

2.2电源管理

USB电源:通过USB接口供电,最大500mA

电池供电:支持3.7V锂聚合物电池或3V纽扣电池

低功耗模式:支持深度睡眠模式,降低功耗

2.3输入输出

数字I/O引脚:支持数字输入输出,可以配置为PWM输出

模拟输入引脚:支持10位ADC输入

内置LED:板载一个红色LED,连接到D1引脚

2.4通信接口

USB接口:用于编程和数据传输

I2C接口:支持I2C通信,可以通过SDA和SCL引脚连接外部设备

2.5其他特性

复位按钮:用于复位Gemma

板载USB转串口芯片:允许通过USB进行编程

支持ArduinoIDE:可以通过ArduinoIDE进行编程

3.微控制器

3.1ATtiny85简介

ATtiny85是一款8位低功耗RISC微控制器,具有8KB的闪存、512B的SRAM和512B的EEPROM。它支持多种低功耗模式,适用于需要长时间运行的项目。

3.2工作模式

正常模式:全速运行

空闲模式:CPU停止,但外围设备继续运行

ADC噪声降低模式:关闭CPU和大多数外围设备,仅保留ADC模块

电源下降模式:所有模块停止,但保留SRAM和I/O状态

深度睡眠模式:所有模块停止,仅保留I/O状态

3.3低功耗示例

以下是一个简单的示例,展示如何将ATtiny85设置为深度睡眠模式以降低功耗。

#includeavr/sleep.h

#includeavr/power.h

voidsetup(){

//设置引脚模式

pinMode(1,OUTPUT);

digitalWrite(1,LOW);

//初始化ADC

ADCSRA|=(1ADEN);//启用ADC

ADCSRA|=(1ADPS2)|(1ADPS1)|(1ADPS0);//设置ADC预分频器为128

//进入深度睡眠模式

set_sleep_mode(SLEEP_MODE_PWR_DOWN);

sleep_enable();

sleep_mode();

}

voidloop(){

//从深度睡眠模式唤醒后执行的代码

digitalWrite(1,HIGH);

delay(1000);

digitalWrite(1,LOW);

delay(1000);

//重新进入深度睡眠模式

sleep_mode();

}

3.4ADC模块

ATtiny85配备了一个10位ADC模块,可以用于读取模拟信号。Gemma有两个模拟输入引脚,可以连接传感器或其他模拟设备。

3.5ADC示例

以下是一个示例,展示如何使用ADC模块读取模拟信号并输出到串口。

voidsetup(){

//初始化串口通信

Serial.begin(9600);

}

voidloop(){

//读取模拟引脚A0的值

intsensorValue=analogRead(A0);

//输出读取的值

Serial.println(sensorValue);

//延迟1秒

delay(1000);

}

4.电源管理

4.1通过USB供电

Gemma通过USB接口供电时,可以提供足够的电流用于开发和测试。USB接口还用于编程和数据传输。

4.2通过电池供电

Gemma可以通过3.7V锂聚合物电池或3V纽扣电池供电。电池供电模式适用于需要长时间运行的项目,如可穿戴设备。

4.3低功耗模式

Gemma支持多种低功耗模式,如空闲模式、ADC噪声降低模式、电源下降模式和深度睡眠模式。这些模式可以显著降低功耗,延长电池寿命。

4.4低功耗模式设置