本教程使用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显示屏模块
  • 若干杜邦线

来一张全家福吧:

后面还需要许多电子元器件,到时候再说吧。

实验使用以下软件:

上一篇:序言

下一篇:Atmel Studio 7.0开发环境配置

AVR单片机教程——开发板介绍的更多相关文章

  1. AVR单片机教程——开发环境配置

    今天去交大密院参观了设计展,无外乎两个主题:Arduino.Python. 关于Python,我印象最深的是一位Python程序员的话:你要硬核的话,可以去那边看Java. 拜托,都9102年了,Ja ...

  2. AVR单片机教程——第三期导语

    背景(一) 寒假里做了一个灯带控制器: 理想情况下我应该在一个星期内完成这个项目,但实际上它耗费了我几乎一整个寒假,因为涉及到很多未曾尝试的方案.在这种不是很赶时间的.可以自定目标.自由发挥的项目中, ...

  3. 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 ...

  4. AVR单片机教程——数字输入

    我们已经学习了如何使用按键和拨动开关,不知你有没有好奇 button_down 和 switch_status 等函数是如何实现的.本篇教程带你一探究竟,让我们从按键的原理开始. 在原理图中,按键的符 ...

  5. AVR单片机教程——按键状态

    好久没更新了,今天开始继续,争取日更. 今天我们来讲按键.开发板的右下角有4个按键,按下会有明显的“咔嗒”声.如何检测按键是否被按下呢?首先要把按键或直接或间接地连接到单片机上.与之前使用的4个LED ...

  6. AVR单片机教程——序言

    我一直觉得现在的网络环境对电子技术的学习有一点问题,但始终无法确切地指出,更何况网络上相关资源已经那么丰富. 但我觉得是问题的,无论它到底是不是问题,对我来说总归是一个问题.我学习也不算深入,很多东西 ...

  7. AVR单片机教程——ADC

    ADC 计算机的世界是0和1的.单片机可以通过读取0和1来确定按键状态,也可以输出0和1来控制LED.即使是看起来不太0和1的PWM,好像可以输出0到5V之间的电压一样,达到0和1之间的效果,但本质上 ...

  8. AVR单片机教程——示波器

    本文隶属于AVR单片机教程系列.   在用DAC做了一个稍大的项目之后,我们来拿ADC开开刀.在本讲中,我们将了解0.96寸OLED屏,移植著名的U8g2库到我们的开发板上,学习在屏幕上画直线的算法, ...

  9. AVR单片机教程——走向高层

    本文隶属于AVR单片机教程系列.   在系列教程的最后一篇中,我将向你推荐3个可以深造的方向:RTOS.C++.事件驱动.掌握这些技术可以帮助你更快.更好地开发更大的项目. 本文涉及到许多概念性的内容 ...

随机推荐

  1. 2018-2019 20165226 Exp 8 Web基础

    2018-2019 20165226 Exp 8 Web基础 目录 一.实验内容说明及基础问题回答 二.实验过程 1.Web前端:HTML 2.Web前端j:avascipt 3.Web后端:MySQ ...

  2. Leet Code 2.两数相加

    2.两数相加 题目描述 给出两个非空的链表用来表示两个非负的整数.其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字.如果,我们将这两个数相加起来,则会返回一个新的链表来表 ...

  3. 判断一个数组的长度用 Length 还是 SizeOf ?

    最近发现一些代码, 甚至有一些专家代码, 在遍历数组时所用的数组长度竟然是 SizeOf(arr); 这不合适! 如果是一维数组.且元素大小是一个字节, 这样用看不出错误, 譬如: var   arr ...

  4. cache-control: max-age=1,s-maxage=1

    cache-control: max-age=1,s-maxage=1

  5. 伪代码Pseudocode

    程序员之间交流,比划来比划去,与其用产品经理擅长的各种类图.时序图,还不如来一段伪代码来的直接! 伪代码 伪代码(Pseudocode)是一种算法描述语言.使用伪代码的目的是为了使被描述的算法可以容易 ...

  6. github资源汇总

    github免费的编程中文书籍索引 机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 1) Python 资源大全中文版

  7. [原][bigemap][globalmapper]通过bigemap下载全球30米DEM高程数据(手动下载)(下载全球高精度dom卫片、影像、等高线、矢量路网、POI、行政边界)

    本文研究了bigemap下载高程数据的方式,但是严重不推荐使用这总手动方式,bigemap这个软件一次只能下载100M以内的高程数据,即使花钱,也不给你提供批量下载dem的方式!也有些其他更好的软件, ...

  8. ModSecurity:一款优秀的开源WAF

    一.ModSecurity3.0介绍 ModSecurity是一个开源的跨平台Web应用程序防火墙(WAF)引擎,用于Apache,IIS和Nginx,由Trustwave的SpiderLabs开发. ...

  9. Spring cloud微服务安全实战-3-4 API安全机制之认证(1)

    本节开始讲认证相关的东西.注意事项,出现问题的对应的解决方案. 先写用户注册的服务,注册一些用户信息进去.注册也是我们安全体系的一部分 注册 UserController里面的create方法 先修改 ...

  10. Jackson解析自定义json到实体类

    json文本 { "status": 0, "result": { "final": true, "hypotheses" ...