打印
[AVR单片机]

动手学AVR单片机六、基于ATMEGA64的流水灯实验

[复制链接]
2601|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangwo|  楼主 | 2009-12-19 21:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
动手学AVR单片机六、流水灯实验 ---基于ATmega64
前面已经了解了AVR单片机的一些知识,另外我们也自制了AVR单片机开发工具,现在开始进入实战演练阶段了。在正式开始之前,强烈建议手头准备一份ATmega64单片机的数据手册(中文和英文的最好都准备了),这个数据手册可以直接从网上下载。
在接下来的学习中,我们主要用到的开发工具是编程器,至于仿真器,可以少用或不用。因为我们开始学习的都是一些比较简单、程序量也不大。当程序中出现问题的时候,我们可以采用在程序可能出现问题的地方增加指示的方法来调试(比较常用的方法是在程序的特定地方点亮或者熄灭LED发光二极管,或者在程序中增加串口输出来提示程序的执行结果)。
一、编译软件的使用
编译软件我们采用WINAVR,也就是俗称的GCC。GCC支持项目开发(就是把项目中所有用到的程序、文件放置在一个文件夹中)。在实际的开发过程中我们可以不必每次都创建新项目,可以直接编写源程序,然后保存为.c格式的文件后直接编译运行就可以了。
安装完GCC后,我们可以对编译器进行一些小小的设置,这样可以是我们编写出来的程序更加直观和便于查看。
1、打开WINAVR中的PN(Programmers NotePad),选择菜单“Tools”下面的“Options”选项,出现如下图所示的对话框

2、选择“Style”选项中的“Schemes”,开始设置程序中不同代码的显示颜色,首先设置预编译指令的颜色,如下图(颜色可以根据个人喜好设置)

3、然后设置操作符(包括运算符)的颜色,如下图,

4、接下来设置数字的颜色,如下图

相关帖子

沙发
wangwo|  楼主 | 2009-12-19 21:36 | 只看该作者
单片机型号配置,如下图

时钟频率配置,如下图

编译目标文件名称,如下图

需要添加编译的其他.c文件(这一选项配置在以后用到时会有所讲解,在此可以不必过多关注),如下图

配置好makefile文件后将它和我们刚才编写的程序保存在同一个文件夹下。这是按下快捷键F9或者选择“Tools”菜单下的“make all”选项,对我们刚刚编写的程序进行编译。编译成功后,GCC的下方会出现如下图所示的提示结果

这说明我们的程序编译成功,没有错误,接下来就可以将生成的.hex文件下载到学习板中,就会看到8个数码管轮流点亮了。

关于这个程序的详细讲解以及相关C语言的知识我们下次再讲。

使用特权

评论回复
板凳
xiaoxin1986| | 2009-12-20 01:05 | 只看该作者
不错,学习了

使用特权

评论回复
地板
wangwo|  楼主 | 2009-12-20 22:34 | 只看该作者
:)很不错的东西哦

使用特权

评论回复
5
suoma| | 2009-12-22 22:07 | 只看该作者
楼主辛苦了

使用特权

评论回复
6
sanshuishousi| | 2010-2-28 12:02 | 只看该作者
"PORTB = 0Xff;         //PORTB输出低电平,使LED熄灭"这句话错了,
应该是 PORTB = 0x00; //PORTB输出低电平,使LED熄灭

使用特权

评论回复
7
sanshuishousi| | 2010-2-28 12:12 | 只看该作者
"PORTB = 0xff & (~(1 << Flow_LED));         //每次循环中点亮一个LED"有错误!
这句明显是每次循环中,不点亮一个LED啊

使用特权

评论回复
8
sanshuishousi| | 2010-2-28 12:18 | 只看该作者
不好意思,呵呵,看错了,看了电路图才知道,LED是共阳接法的。

使用特权

评论回复
9
ershisi| | 2010-2-28 21:03 | 只看该作者
:L,看得好仔细 啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

806

帖子

2

粉丝