2007AVR实验内容与要求(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上的全部的数字显示