历史上的今天
今天是:2024年12月03日(星期二)
2019年12月03日 | AVR单片机教程——开发环境配置
2019-12-03 来源:eefocus
今天去交大密院参观了设计展,无外乎两个主题: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的下载地址:联网安装包、离线安装包;
AVRDUDESS的下载地址:安装包、压缩包;
Zadig的下载地址:应用程序;
SPU的下载地址:安装包。
如果下载太慢,用以下关键字搜索:Atmel Studio 7.0.1931。
另外,SPU是收费软件,可免费试用30天。要么买,要么想办法继续用(疯狂暗示),要么用类似软件替代。
用空格的程序员工资更高哦!4.8 烧写工具

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

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

在下面的4行中,依次填入以下最外层引号内的内容:
Title: "AVRDUDE"
Command: "C:Program Files (x86)AVRDUDESSavrdude.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。

安装成功,环境配置完成。
史海拾趣
|
最近几天也在跟朋友聊,关于创业的事,创业意味着自己有了奔向自由资金的潜力,因而,不管目前状况多窘迫,只要坚持下来,总有收获的。 那么如果想组建个自己的弱电公司,你觉得需要具备哪些条件呢? 也有朋友说,如果不是从产品入手而是从工程入 ...… 查看全部问答> |
|
我得linux内核下载到开发板2410中 ifconfig出来得ip是192。168。10。220 我想让它改成0。220 可我该完了每次重启它又回复以前得设置,请问在那里才能彻底改掉啊!!!… 查看全部问答> |
|
如果能的话,怎么设。 还有,我几个GR64把数据发给网络上的一个IP地址,然后我再用一个模块去那个IP上取数。这个方法可以实现吗? 还有哪位老大有GR64的资料可以发给我。邮箱是cuilg_0519@163.com。谢谢!!! … 查看全部问答> |
|
程序需要使用到键盘。 应用程序随系统自启动前,是通过USB放在系统里,此时板子上的键盘正常。 重新编译内核,将程序集成到内核,以随系统自启动。这样程序启动后,键盘却不能正常使用了。键盘是由六个按键组成。 请教,这是什么原因造成的? p ...… 查看全部问答> |
|
版主,咨询个问题。STM32如何关闭中断嵌套,操作哪一寄存器,谢谢! 因为目前TIM中使用PWM捕获的时候,很有可能受外界干扰,导致当进入捕获中断的时候,还未完成所有寄存器的读,未出中断时,来了一个干扰脉冲,让TIM再次进入中断。… 查看全部问答> |
|
【投票】准备用TI的CORTEX系列做个东西,到底做啥好呢? 网络收音机: 这个论坛上已经有人实现了的。但是很多都是用硬件解码的,如果能用软件解码倒也不错。。 PDA: 包含有图片浏览,放歌,小游戏。。。。。等功能。基本上和一台掌上电脑功能差不多。。。 掌上游戏机 就是 ...… 查看全部问答> |




