第9章 键盘输入接口与状态机设计.ppt

* 第9章 键盘输入接口与状态机编程 * 通用I/O数字输入接口设计 I/O输入输出接口,常为数字信号,可能是模拟信号比如AD,但内部转换为数字信号 * I/O输入接口硬件设计要点 模拟信号和数字信号 电压信号和电流信号 单次信号和连续信号 * I/O输入接口软件设计要点 用户程序需要首先对要使用的I/O口进行初始化设置,根据实际需要设定使用I/O口的工作方式(输出还是输入),当设定为输入方式时,还要考虑是否使用内部的上拉电阻。 I/O口用于输出时,应设置DDRx = 1或DDRx.n = 1,输出值写入PORTx或PORTx.n中。 I/O口用于输入时,应设置DDRx = 0或DDRx.n = 0。读取外部引脚电平时,应读取PINx.n的值,而不是PORTx.n的值。此时PORTx.n = 1表示该I/O内部的上拉电阻有效,PORTx.n = 0表示不使用内部上拉,外部引脚呈现三态高阻输入状态。一旦将I/O口的工作方式由输出设置成输入方式后,必须等待一个时钟周期后才能正确的读到外部引脚PINx.n的值。 * 按键输入接口设计 * 基于状态机的按键输入软件接口设计 无按键 状态0 有按键 状态1 等释放 状态2 0/0 (消抖) 1/0 1/0 (干扰) 0/1 (确认) 1/0 0/0 * #define key_input PIND.7 // 按键输入口 #

文档评论(0)

1亿VIP精品文档

相关文档