本节给出MT8880电话拨号芯片的驱动控制汇编程序,实现单片机控制MT8880完成拨号、收发DTMF数据与通信应答。
程序主要流程包括:DIAL拨号(置发送状态、依次发送电话号、处理结束符“A”或“B”)、接收应答的“#”号、发送数据(含校验字节)、查询应答并处理错误(超时重发)、读取/写入时间等。MT8880通过P1口低5位数据线与控制线(P1.7选通、P3.2方向控制)交互,实现DTMF收发与调制解调数据的双向传送。程序还包含DS1643实时时钟的初始化、读、写子程序,以及通过中断计数实现的定时处理。完整汇编源程序见附图。