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 ...
随机推荐
- [Linux] 内核通知链 notifier
Linux 内核中每个模块之间都是独立的,如果模块需要感知其他模块的事件,就需要用到内核通知链. 最典型的通知链应用就是 LCD 和 TP 之间,TP 需要根据 LCD 的亮灭来控制是否打开关闭触摸功 ...
- web前端兼容性问题
传送门:https://www.cnblogs.com/zhoudawei/p/7497544.html
- TP5.1框架最后登录时间不会更新
最后登录时间:2019-5-1 14:44 发现系统管理员时间总是停留在这个时间,后来才发现原来是时间没有自动更新. 手册地址:https://www.kancloud.cn/manual/thi ...
- etcd常用命令记录
etcd常用命令记录 1.查看etcd的版本 [root@etcd01 ssl]# curl -L http://127.0.0.1:2379/version {"etcdserver& ...
- ByteBuffer: 图解ByteBuffer(转)
ByteBuffer前前后后看过好几次了,实际使用也用了一些,总觉得条理不够清晰. <程序员的思维修炼>一本书讲过,主动学习,要比单纯看资料效果来的好,所以干脆写个详细点的文章来记录一下. ...
- nginx中的超时配置
nginx.conf配置文件中timeout超时时间设置 client_header_timeout 语法 client_header_timeout time默认值 60s上下文 http serv ...
- MacBook Pro设置外接显示器竖屏显示 切换主显示器
切换主显示器设置 有一些使用 Mac 电脑的用户,比如笔记本用户,可能会由于屏幕太小想外接一个更大的显示器,也或是有多显示输出的需求.当 Mac 电脑上有了多个显示器以后,此时便会有主副显示区之分了. ...
- 我非要捅穿这 Neutron(二)上层资源模型篇
目录 文章目录 目录 Neutron 的资源模型 Network 运营商网络和租户网络 创建运营商网络 创建租户网络 创建外部网络 Network 小结 Subnet IP 核心网络服务 Subnet ...
- VMware虚拟机提示“锁定文件失败 打不开磁盘”解决方法
VMware虚拟机提示“锁定文件失败 打不开磁盘”解决方法 摘自: http://www.xitongcheng.com/jiaocheng/xtazjc_article_40299.html 发布时 ...
- python 判断文件是否存在和删除文件的api (其中判断文件在不在让想起这个可以强兼容jenkins工作目录那个问题)
判断文件在不在的api: os即operating system(操作系统),Python 的 os 模块封装了常见的文件和目录操作. os.path模块主要用于文件的属性获取,exists是“存在” ...