AVR单片机教程——开发板介绍
本教程使用EasyElectronics开发板:
EasyElectronics是一款基于AVR单片机的开发板。AVR单片机是基于改进的哈佛架构、8~32位的一系列RISC微控制器,最初由Atmel公司于1996年推出,特点在于高性能与低功耗之间的平衡。AVR单片机有众多型号,现在常用的有ATtiny、ATmega与ATxmega系列。AVR单片机上一般都带有定时/计数器、SPI、I²C、USART、模拟比较器、模数转换器等外围设备。
EasyElectronics拥有丰富的板载资源:
- 核心部分
- ATmega324PA单片机
- 25MHz晶振
- 0.5A自恢复保险丝
- 5V供电,有3.3V输出
- 绿色电源指示灯
- 2个黄色串口指示灯
- 输出设备
- 红、黄、绿、蓝4个独立LED
- RGBW全彩LED
- 2位7段数码管
- 蜂鸣器
- 输入设备
- 4个独立按键
- 4个拨码开关
- 旋转编码器
- 电位器
- 光敏电阻
- 模拟扩展
- 10位DAC
- 数字扩展
- 74HC595扩展输出
- 74HC165扩展输入
- 1602 LCD接口
- 12864 OLED显示屏接口
- 模拟资源
- 2个NPN三极管
- 2个N沟道MOS管
- 2个低压轨至轨运算放大器
- 555定时器
- 数字资源
- 2个与非门
- 2个或非门
- 其他
- 面包板
在这样的设计下,这款开发板:
- 使用安全——0.5A自恢复保险丝,如有短路自动断电,保护电脑USB接口;
- 性能强大——单片机超频到25MHz,再加上GCC优化的代码,运行足够快速;
- 可玩性强——连接12864 OLED,可以写游戏,可以显示复杂图像;
- 可扩展性强——预留SPI、I²C、UART接口,可连接其他模块;板载面包板,可搭建简单电路;
- 足够简单——一些常用设备已经连接到单片机上,无需用杜邦线连接排针就能使用;
- 也可以很复杂——DAC、运放、555、逻辑门,再加上单片机的控制,有无数种组合。
除了开发板以外,前期实验还需要以下工具:
- USBasp下载器
- USB转串口工具
- 1602 LCD模块
- 12864 OLED显示屏模块
- 若干杜邦线
来一张全家福吧:
后面还需要许多电子元器件,到时候再说吧。
实验使用以下软件:
上一篇:序言
AVR单片机教程——开发板介绍的更多相关文章
- AVR单片机教程——开发环境配置
今天去交大密院参观了设计展,无外乎两个主题:Arduino.Python. 关于Python,我印象最深的是一位Python程序员的话:你要硬核的话,可以去那边看Java. 拜托,都9102年了,Ja ...
- AVR单片机教程——第三期导语
背景(一) 寒假里做了一个灯带控制器: 理想情况下我应该在一个星期内完成这个项目,但实际上它耗费了我几乎一整个寒假,因为涉及到很多未曾尝试的方案.在这种不是很赶时间的.可以自定目标.自由发挥的项目中, ...
- AVR单片机教程——EasyElectronics Library v1.0手册
更新:EasyElectronics Library v1.1手册 索引: bit.h delay.h pin.h tone.h pwm.h uart.h adc.h led.h rgbw.h seg ...
- AVR单片机教程——数字输入
我们已经学习了如何使用按键和拨动开关,不知你有没有好奇 button_down 和 switch_status 等函数是如何实现的.本篇教程带你一探究竟,让我们从按键的原理开始. 在原理图中,按键的符 ...
- AVR单片机教程——按键状态
好久没更新了,今天开始继续,争取日更. 今天我们来讲按键.开发板的右下角有4个按键,按下会有明显的“咔嗒”声.如何检测按键是否被按下呢?首先要把按键或直接或间接地连接到单片机上.与之前使用的4个LED ...
- AVR单片机教程——序言
我一直觉得现在的网络环境对电子技术的学习有一点问题,但始终无法确切地指出,更何况网络上相关资源已经那么丰富. 但我觉得是问题的,无论它到底是不是问题,对我来说总归是一个问题.我学习也不算深入,很多东西 ...
- AVR单片机教程——ADC
ADC 计算机的世界是0和1的.单片机可以通过读取0和1来确定按键状态,也可以输出0和1来控制LED.即使是看起来不太0和1的PWM,好像可以输出0到5V之间的电压一样,达到0和1之间的效果,但本质上 ...
- AVR单片机教程——示波器
本文隶属于AVR单片机教程系列. 在用DAC做了一个稍大的项目之后,我们来拿ADC开开刀.在本讲中,我们将了解0.96寸OLED屏,移植著名的U8g2库到我们的开发板上,学习在屏幕上画直线的算法, ...
- AVR单片机教程——走向高层
本文隶属于AVR单片机教程系列. 在系列教程的最后一篇中,我将向你推荐3个可以深造的方向:RTOS.C++.事件驱动.掌握这些技术可以帮助你更快.更好地开发更大的项目. 本文涉及到许多概念性的内容 ...
随机推荐
- css设置使文字显示2行多余的为省略号...
1 2 3 4 5 6 7 8 9 10 11 12 .title{ font-size: .7rem; line-height: 1.5rem; ove ...
- Chapter Four
JSON数据 默认情况下,当开发者新创建一个SpringBoot项目时,会添加Web依赖,在这个依赖中会默认加入jackson-databind作为Json处理器. @RestController 组 ...
- Oracle 11g 数据库 expdp/impdp 全量导入导出
从一个用户导出导入到另一个用户 问题 环境:oracle 11g; redhat 6 usera是具有DBA权限,密码为usera 全量导出usera用户下的所有内容,并导入到新建的userb用户 解 ...
- [Vue warn]: Avoid using non-primitive value as key
<el-select v-model="addform.province" placeholder="请选择省份" multiple> ...
- 两个Double类型相减出现精度丢失问题
两个Double类型相减出现精度丢失问题 720.50-279.5=440.099999999 而不是440.1 解决方法,将数据库中的类型改为decimal类型,小数精确到2位
- Tensorflow 2 flower_photos花卉数据集手动下载、离线安装、本地加载、快速读取
Tensorflow 2 flower_photos花卉数据集手动下载.离线安装.本地加载.快速读取 商务合作,科技咨询,版权转让:向日葵,135-4855__4328,xiexiaokui#qq.c ...
- wrod: 突然无法输入汉字
“文件”-“选项”-“高级”-“去掉 输入法控制处于活动状态复选框”.
- flutter Sliver滑动视图组件
import 'package:flutter/material.dart'; import './model/post.dart'; class SliverDemo extends Statele ...
- typescript属性类型接口
/* typeScript中的接口 - 1.属性类接口 */ /* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定 ...
- C++ 11 线程调用类的成员函数解决办法
在C++中,_beginthreadex 创建线程是很麻烦的.要求入口函数必须是类的静态函数. 通常,可以采用thunk,或者模板来实现. 因C++ 11中引入了 std::async ,可以很好的解 ...