[资料分享] AVR单片机学习笔记

tiankai001   2009-7-14 15:09 楼主
AVR学习笔记一、基本输出实验
1、点亮LED试验
2、流水灯试验
3、蜂鸣器试验
4、1位数码管显示试验
5、四位数码管显示试验
6、1602液晶显示试验
7、12864液晶显示实验。

注意:本学习笔记会一直连载下去的,今天增加第二十四篇。
这一篇我继续学习模数转换器,实现了利用TLC2543采集模拟电压的采集的功能。

需要特别说明的是,前21篇学习笔记都是基于ATmega16的,目前我主要在ATmega64学习板上学习,所以从第二十二篇开始的实验都将基于ATmega64,晶体频率也变为16MHz。请大家参考的时候务必注意。

由于本人打算继续将该学习笔记写下去,所以暂不将目前所有学习笔记的打包
需要目前的所有笔记的朋友,请留下邮箱,我将目前的笔记发邮件给大家,
有个朋友留的搜狐邮箱,没发送成功,经查,搜狐邮箱可接受附件容量太小,建议大家用允许大附件的邮箱

关于各篇学习笔记在本贴中的位置
第1-第14篇   1楼到14楼
第15篇           114楼
第16、17篇     16,17楼
第18-21篇        22-25楼
第22篇             152楼
第23篇              166楼
第24篇              187楼

回复评论 (944)

2推荐 tiankai001 

AVR学习笔记四、定时记数器1实验

由于在定时/计数器0的实验中我们已经学会了定时/计数器的定时、计数、PWM等基本功能的使用方法。而单片机中的定时/计数器的基本功能大致上是一样的。主要区别只是在于对不同寄存器的设置。所以在定时/计数器1的实验中我们不再重复这些基本功能。在本实验中主要有两个实例。虽然例子只有两个,但这两个例子却有很大的实用价值,我们可以慢慢体会;这两个例子主要内容是:
1、定时/计数器1的输入捕捉功能:利用定时/计数器的输入捕捉功能实现外部按键的检测,并计算两个按键按下的间隔时间。输入捕捉功能可以用来进行外部信号的周期测量,这是一个很重要的功能。
2、定时/计数器1的两通道比较匹配功能:通过对电路板做一个小小的改动,我们实现了用两通道比较匹配功能驱动电路板上的D10、D11(1红、1绿两种颜色的LED)两个二极管同时实现了渐明渐暗的变化效果。很有意思的一个试验。本实验在电路板上的改动是:讲PD4、PD5两个端口引出两根导线连接到PD0、PD1两个端口上。另外需要注意的是:本实例用的是内部8M晶体,而前面的所有实例使用的都是内部1M晶体。所以需要修改WINAVR(GCC)中的makefile中的晶体的值,而在下载程序的时候,也需要修改相应的熔丝位配置。


4.AVR学习笔记四、定时记数器1实验.rar (162.88 KB)
(下载次数: 3582, 2009-7-14 15:13 上传)
点赞  2009-7-14 15:13

2推荐 tiankai001 

AVR学习笔记二、基本输入和外部中断实验

1、检测按键,实现按键控制LED的亮灭
2、外部中断实验,利用中断检测按键,并在数码管上显示

2.AVR学习笔记二、基本输入和外部中断实验.rar (146.58 KB)
(下载次数: 3899, 2009-7-14 15:11 上传)
点赞  2009-7-14 15:11

AVR学习笔记三、定时记数器0实验

1、定时/计数器0的计数实验
2、定时/计数器0的定时实验
3、定时/计数器0的比较匹配(CTC)实验
4、定时/计数器0的快速PWM实验
5、定时/计数器0的相位修正PWM实验

3.AVR学习笔记三、定时记数器0实验.rar (172.98 KB)
(下载次数: 4277, 2009-7-14 15:12 上传)
点赞  2009-7-14 15:12

AVR学习笔记五、异步串行通信(USART)实验

1、发送单个字节的实验
2、将接收到的数据原样发送回去的实验
3、一个完整的数据收发实验



5.AVR学习笔记五、异步串行通信(USART)实验.rar (760.79 KB)
(下载次数: 5058, 2009-7-14 15:13 上传)
点赞  2009-7-14 15:13

AVR学习笔记六、模拟比较器和ADC实验

1、模拟比较器实验:通过测量PA0口的电压,如果电压高于1.22V,则点亮LED2,如果低于1.22V则点亮LED1. 模拟比较其实一个很有用的功能,它可以用来检测系统电源电压,还可以进行模数转换。
2、模数转换ADC实验:通过测量PA0口的模拟电压值,将测得的电压值通过串口发送到计算机,通过串口助手显示电压值。



6.AVR学习笔记六、模拟比较器和ADC实验.rar (97.49 KB)
(下载次数: 3612, 2009-7-14 15:14 上传)
点赞  2009-7-14 15:14

AVR学习笔记七、基于DS18B20的温度测量实验

1、利用DS18B20实现简单的温度测量。在这个例子中主要是学习了DS18B20的基本操作时序,DS18B20的基本操作时序是十分严格的,如果不按照规定的时序操作,是读不出来数据的。而弄清了操作时序后,一切都会变得简单。
2、利用寄生电源供电方式对DS18B20进行操作,不但实现了温度的读取,还实现了对DS18B20的RAM区的读写操作。利用寄生电源的优点在于可以不必给DS18B20单独配备电源,从而能够更好的实现远程测温。
3、利用匹配指令实现多点测温。通过发送指定的DS18B20的ROM序列号,实现对连接的多个DS18B20中的一个进行读写。实现基本的多点测温试验。


7.AVR学习笔记七、基于DS18B20的温度测量实验.rar (575.81 KB)
(下载次数: 4422, 2009-7-14 15:15 上传)
点赞  2009-7-14 15:15

AVR学习笔记八、基于DS1302的实时时钟

利用DS1302实现简单的实时时钟。在这个例子中主要是学习了DS1302的基本操作时序,以及DS1302的控制指令


8.AVR学习笔记八、基于DS1302的实时时钟实验.rar (522.01 KB)
(下载次数: 4079, 2009-7-14 18:30 上传)
点赞  2009-7-14 18:30

AVR学习笔记九、基于AT24C16的I2C总线实验

1、利用模拟I2C接口的方法实现对AT24C16的读写,并通过LED的亮灭指示读出的数据是否正确。在I2C总线接口的学习中,我对学习板做了一些小小的改动,分别给SDA和SCL加了外接的4.7K上拉电阻,大家看程序的时候请一定注意
2、利用AVR的硬件TWI接口,使用查询法实现对AT24C16的读写,并通过LED的亮灭指示读出的数据是否正确。
3、利用AVR的硬件TWI接口,使用中断法实现对AT24C16的读写,同时将读取的数据发送到计算机串口,并通过LED的亮灭指示读出的数据是否正确。


9.AVR学习笔记九、基于AT24C16的I2C总线实验.rar (1.13 MB)
(下载次数: 5467, 2009-7-15 08:38 上传)
点赞  2009-7-15 08:38

AVR学习笔记十、基于数码管显示的流转灯

本实验利用数码管编写一个简单的程序实现流转灯效果。实例效果是:首先逐段显示字符“0”,然后让字符“0”的所有段流动起来。最后让字符“0”亮灭变化。整个程序循环执行,达到简单模拟广告灯的效果



10.AVR学习笔记十、基于数码管显示的流转灯.rar (28.16 KB)
(下载次数: 2530, 2009-7-15 08:40 上传)
点赞  2009-7-15 08:40

AVR学习笔记十一、AVR单片机内部EEPROM的读写实验

本实验利用WINAVR自带的EEPROM读写函数实现对AVR单片机内部EEPROM的读写,并通过学习板上的8个LED等显示读取的数据是否正确。同时也进行了掉电后再上电,然后读取EEPROM内容是否正确保存。

需要特别注意的是:在做这个实验的时候,熔丝位需要正确设置,应当选择熔丝位为“执行芯片擦除时保留EEPROM的内容”即EESAVE=0。



11.AVR学习笔记十一、AVR内部EEPROM的读写实验.rar (31.89 KB)
(下载次数: 2325, 2009-7-15 08:41 上传)
点赞  2009-7-15 08:41

AVR学习笔记十二、AVR单片机内部看门狗操作实验

本实验利用WINAVR自带的看门狗操作函数进行试验,利用LED的亮灭演示看门狗及时复位/没有及时复位的情况。


12.AVR学习笔记十二、AVR内部的看门狗操作实验.rar (24.7 KB)
(下载次数: 2299, 2009-7-15 08:54 上传)
点赞  2009-7-15 08:54

AVR学习笔记十三、模块化程序设计1

本实验利用模块化程序设计的方法,对LCD1602液晶的显示程序进行了模块化设计。本实验包含一个例子:LCD1602的模块化程序设计例子


13.AVR学习笔记十三、模块化程序设计1.rar (34.18 KB)
(下载次数: 2329, 2009-7-15 08:56 上传)
点赞  2009-7-15 08:56

AVR学习笔记十四、模块化程序设计2

这次主要学习了模块化程序设计时,文件的重复定义问题和全局函数、全局变量的定义和使用



14.AVR学习笔记十四、模块化程序设计2.rar (27.94 KB)
(下载次数: 2222, 2009-7-15 08:57 上传)
点赞  2009-7-15 08:57

AVR学习笔记十六、舵机控制实验

AVR学习笔记十六、舵机控制实验


16.AVR学习笔记十六、舵机控制实验.rar (1.13 MB)
(下载次数: 4764, 2009-7-15 14:26 上传)
点赞  2009-7-15 14:26

AVR学习笔记十七、LCD12232液晶控制实验

AVR学习笔记十七、LCD12232液晶控制实验
演示了利用图形点阵液晶显示数字,汉字和图形



17.AVR学习笔记十七、LCD12232液晶显示实验.rar (1.27 MB)
(下载次数: 4463, 2009-7-15 14:28 上传)
点赞  2009-7-15 14:28
学习笔记正是学习的好东东,顶一个,支持楼主!
点赞  2009-7-17 09:10
文件太多了,感谢楼主。
点赞  2009-7-17 09:37
这些是关于单片机实验的一些记录操作!
感谢。、
回复挣点币
点赞  2009-7-17 09:50
好资料,学习来了
点赞  2009-7-17 16:24
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复