AVR单片机教程——开发环境配置
今天去交大密院参观了设计展,无外乎两个主题:Arduino、Python。
关于Python,我印象最深的是一位Python程序员的话:你要硬核的话,可以去那边看Java。
拜托,都9102年了,Java已经算得上硬核了?是Python太好用,还是Java版本更新太快了?真正的硬核,绝对BrainFuck莫属,如果要实际一点,也是C++、Haskell之辈,当Java在他们口中称得上硬核的时候,我觉得我可以换一个展台了。
于是我来到了全是Arduino的楼层。看到那么多Arduino,我不禁疑惑,虽然Arduino是最常见的开发板,但也不至于完全没有STM32的踪影吧?问了才知道,是教授要求他们用Arduino的,我也就无语了。
跟一个优秀作品设计者聊了几句,他说同时控制舵机和扬声器很难控制好延时,扬声器输出的音乐节奏会乱。我第一反应当然是他没有用定时器中断,一问果然如此,并且他不知道中断也不知道定时器。我也就不想多说了,告辞。
之前设计模块化单片机开发系统的时候,一直觉得“业余爱好者因为开发平台封装性太强而无法学会使用单片机高级功能”(其实就是专指Timer/Counter,因为总线、ADC等都有库,唯独T/C必须用户自己写中断)这个论调站不住脚,甚至还写了个问卷,结果虽然与预期相符,但我还把原因归结为问卷能传播的范围太小。现在觉得,就算是大四的学生,水平也就这样。
参观完这个展览,我更坚定了要好好写这份教程的想法。要想学好单片机,良好的开发环境必不可少。
以上为废话,我们来配置开发环境吧。
1. 概述
我们要安装以下几个软件:
Atmel Studio 7.0(简称AS7),是Atmel为自家单片机推出的IDE,基于Visual Studio 2015;
AVRDUDESS,是支持多种下载器的AVR单片机烧写工具AVRDUDE的GUI版,如果你熟悉命令行,直接用AVRDUDE也行;
Zadig,用于安装USB驱动,无需安装,下载即用,只需要用一次;
Serial Port Utility(简称SPU),是一个串口通信工具,界面比同类软件干净;
串口工具的驱动,取决于你使用的型号,一般只有PL2303和CH340两种,在网上下载并安装对应的驱动即可。
2. 下载安装包
Atmel Studio 7.0的下载地址:联网安装包、离线安装包;
Zadig的下载地址:应用程序;
SPU的下载地址:安装包。
如果下载太慢,用以下关键字搜索:Atmel Studio 7.0.1931。
另外,SPU是收费软件,可免费试用30天。要么买,要么想办法继续用(疯狂暗示),要么用类似软件替代。
3. 安装
AVRDUDE和SPU的安装按照安装程序来就行,不讲了。
其实AS7也可以不讲,但这个软件比较大,有些人安装大软件总是有点慌,所以还是写一下。
3.1 协议与安装位置

经过短暂的加载后,安装程序会显示这个界面。
第一个勾是同意协议,当然是必须勾的。可以阅读一下协议,与一般软件的协议无异,除了开源软件部分特别长以外。
下面的框是用来指定安装位置的,自由选择。
最后一个勾是允许发送匿名信息,无所谓。
3.2 架构

选择要开发的架构,在本教程中只用到第一个8位AVR,勾选第一个就可以了。
3.3 ASF

选择是否要安装ASF,这个在我们的教程中不需要,但有时候可以用来抄代码。
3.4 系统状态

然后安装程序会检查当前系统状态是否可以安装,我碰到过第一个为叉的情况,在新装系统后集中安装软件的时候会出现,重启就好。如果还不好就再重启,再不好就是系统的问题了。
3.5 重要提示

这是2018年6月发布的安装包,自那以后还有新单片机型号推出,相应的头文件没有加入这个安装包,需要安装完后手动更新。我们用不到那么新的设备,不更新也可以。
3.6 安装

然后就是漫长的安装,等等吧。中间会跳出Visual Studio的安装程序。
3.7 完成

最后,安装完成,桌面上会有Atmel Studio 7.0的快捷方式。选项是启动AS7,勾选就立即启动,不勾选就之后手动启动,无所谓。
4. 配置
最主要的几个点我讲一下,其他的自己根据习惯来吧。
4.1 加载

打开AS7会出现这个界面,此时软件正在加载,一会就好了。
4.2 启动页面

软件的界面就是这样的,可以新建、打开项目,也可以快速打开最近使用的文件。

我们先捣鼓一下设置。在菜单栏→Tools,点击Options。
4.3 语言

在Environment→International Settings中,选择语言,可选择英语或与系统相同的语言,也可以下载语言包。
4.4 主题

在Environment→General中,选择配色主题,有Blue、Dark和Light三种可选。Dark主题在一些组件中不太美观。
4.5 快捷键

在Environment→Keyboard中配置快捷键。
输入“build”,选择Build.BuildOnlyProject,选中下面的框,按F5(是按F5键不是输入F和5两个字符),然后点Assign。用于build当前project。

external, Tools.ExternalCommand1, F6, Assign. 用于后面的“一键烧写”。

comment, VAssistX.SelectionToggleLineComment, Ctrl+/, Assign. 用于注释与取消注释。
这些是需要手动配置的快捷键中最常用的。
4.6 显示行号

在Text Editor→All Languages→General中,勾选Line numbers,在编辑器中显示行号。
4.7 Tab

在Text Editor→GCC→Tabs中,选择Insert spaces。用空格代替tab是程序员的基本素质,听说用空格的程序员工资更高哦!
4.8 烧写工具

在菜单栏→Tools中,点击External Tools...。

这个窗口用于配置外部工具,我们用它来创建一个“一键烧写”的工具。

在下面的4行中,依次填入以下最外层引号内的内容:
Title: "AVRDUDE"
Command: "C:\Program Files (x86)\AVRDUDESS\avrdude.exe"
Arguments: "-c usbasp -p m324pa -B 0.5 -U flash:w:"$(TargetName).hex":i"
Initial directory: "$(TargetDir)"
注意第二行中的目录要换成AVRDUDESS的安装目录,我这里安装在了默认位置。
最后,要勾选Use Output window。
4.9 USB驱动
除了AS7中的配置以外,还需要使用Zadig安装USBasp的USB驱动。在安装之前,先插入USBasp下载器。

直接打开软件跳出这个界面,没有USB设备显示出来。

在菜单栏→Options中勾选List All Devices。

然后USB设备就都显示出来了,选择USBasp。

先确认上面选的是USBasp,千万不要选错!!!点击上下箭头,选到libusbK,然后Replace Driver。我这里因为已经安装过了,所以会显示Reinstall。

安装成功,环境配置完成。
下一篇:EasyElectronics Library v1.0 手册
AVR单片机教程——开发环境配置的更多相关文章
- AVR单片机教程——开发板介绍
本教程使用EasyElectronics开发板: EasyElectronics是一款基于AVR单片机的开发板.AVR单片机是基于改进的哈佛架构.8~32位的一系列RISC微控制器,最初由Atmel公 ...
- Java 教程(开发环境配置+基础语法)
Java 开发环境配置 在本章节中我们将为大家介绍如何搭建Java开发环境. window系统安装java 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www.ora ...
- 【OpenCV入门教程之一】 安装OpenCV:OpenCV 3.0 +VS 2013 开发环境配置
图片太多,具体过程参照: [OpenCV入门教程之一] 安装OpenCV:OpenCV 3.0.OpenCV 2.4.8.OpenCV 2.4.9 +VS 开发环境配置 说下我这边的设置: 选择deb ...
- ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置
原文地址: ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置 - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.c ...
- 【OpenCV入门教程之一】 安装OpenCV:OpenCV 3.0、OpenCV 2.4.8、OpenCV 2.4.9 +VS 开发环境配置
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/19809337 作者:毛星云(浅墨 ...
- PyCharm Django Python 开发环境配置 详细教程
PyCharm Django Python 开发环境配置 详细教程 1. Python 下载及安装 (1)根据需要的版本去 Python 官网(https://www.python.org/downl ...
- VSCode Java 开发环境配置 详细教程
VSCode Java 开发环境配置 详细教程 配置java 下载 用于现在大多数使用者用的是java 8,小白的我先安装java 8好了,^ w ^. 下载地址:Java 8 | Java SE 打 ...
- VSCode PHP 开发环境配置 详细教程
VSCode PHP 开发环境配置 详细教程 这篇文章主要介绍了VScode+PHPstudy配置PHP开发环境的步骤,整理了官方以及优秀第三方的内容,对于学习和工作有一定借鉴意义. 配置过程 第一步 ...
- VSCode C/C++ 开发环境配置 详细教程
本博客已暂停更新,需要请转新博客http://www.whbwiki.com/335.html VsCode是一个轻量级的编辑器,但是配置有点复杂,这里我做了C/C++开发环境配置总结,适用于wind ...
随机推荐
- Ubuntu+QEMU+Xv6环境搭建
操作系统:Ubuntu 16.04 32位 虚拟机:VMware 模拟器:QEMU 之前有一台centos 64位虚拟机,使用源码安装配置环境,出了一些列问题,最终环境都已经配好了,也能够在qemu上 ...
- Enhancer | 增强子 专题
要做就做深做精! Everything needs good justification. The interpretation should be biologically and statisti ...
- 一个java创建,删除,构建Jenkins等功能的JenkinsUtil工具类
package com.vip.webpagetest.utils; import java.io.InputStream;import java.util.ArrayList;import java ...
- Win10 设备管理器一个USB设备描述符请求失败解决方法
问题:进入设备管理器,发现[通用串行总线控制器]下有一项带有黄色[!]未知USB设备(设备描述符请求失败). 或者 解决方法如下: 1.点击Windows键 +R或者(点击系统桌面左下角[开始],在开 ...
- REDIS中加锁和解锁问题
使用lua+redis的方法.之所以使用lua是为了保证原子性 问题: 1. redis发现锁失败了要怎么办?中断请求还是循环请求?2. 循环请求的话,如果有一个获取了锁,其它的在去获取锁的时候,是不 ...
- autoComplete TextView
这个比较简单,只是将AutoCompleteTextView绑定一个ArrayAdapter就可以了. 界面布局: <?xml version="1.0" encoding= ...
- axios和drf结合的增删改查
增删改查 查: 前端实例: mounted() { //获取所有数据 // var Base_url = 'http://paas.bktst.sh.sgcc.com.cn/t/files-check ...
- shell编程系列12--文本处理三剑客之sed利用sed修改文件内容
shell编程系列12--文本处理三剑客之sed利用sed修改文件内容 修改命令对照表 编辑命令 1s/old/new/ 替换第1行内容old为new ,10s/old/new/ 替换第1行到10行的 ...
- 007-多线程-JUC线程池-Spring线程池配置、池子如何配置参数
一.概述 Spring通过ThreadPoolTaskExecutor实现线程池技术,它是使用jdk中的Java.util.concurrent.ThreadPoolExecutor进行实现. 1.1 ...
- 深入学习c++--lambda函数
1. 简单使用 #include <iostream> #include <functional> using namespace std; struct Print { vo ...