资料介绍
2007 AVR 实验内容与要求(4)
[实验四]定时器及键盘接口的应用
[实验目的]
1. 了解定时器结构、功能及应用。
2. 熟悉基于状态机设计的软件设计方法和矩阵键盘的应用设计实现。
3. 设计并实现一个改进型的电话拨号系统。
[实验内容]:
1. 使用定时器的产生特定频率,输出到蜂鸣器上产生不同的音调。
2. 用状态机设计的思想,设计键盘输入接口。
3.
综合利用实验板上定时器,蜂鸣器,键盘,LED显示模块,设计一个电话拨号系统。
[实验步骤]:
1.
参考第八章例8.7的硬件电路以及软件设计,利用AVR的16位T/C1的比较匹配功能,发出
不同频率的音调。
2. 参考9.3.2 定时扫描方式的键盘接口程序,以及图9-
7的键盘部分硬件连线电路,实现基于状态机思想的键盘扫描。
3. 仔细思考例9.3,回答以下问题:
•
本例中,在T/C0的中断服务中进行了LED的扫描,而读键盘和键盘处理是在主程序中完
成的。如果将读键盘和键盘处理也放在T/C0中断中完成是否可以?请深入分析这两种
处理方式的优点和缺点,说明原因。
• 在read_keyboard()中,行线输出语句为什么重复2次?
•
说明在read_keyboard()中,key_mask的作用,另外是否可以将变量key_line和key_v
alue定义成普通的局部动态变量?为什么?
4. 在例9.3的基础上,改进实现一个电话拨号系统:
1.
实验板上的矩阵键盘共包含有12个按键,其中10个作为数字“0,1,2….9”的数字输
入,其他两个为功能键,一个是总清除键“#”,一个是修改键“*”。修改程序,键
盘上数字键功能不变,而“#”键的功能为总清除(即清除LED上的全部的数字显示