《微机原理及应用2018秋季第12讲作业.docx》由会员分享,可在线阅读,更多相关《微机原理及应用2018秋季第12讲作业.docx(3页珍藏版)》请在第一文库网上搜索。
1、姓名: XXX班级:) (日期:2018.10.8 )“微机原理及应用” 2018秋季第12讲作业(从下面开始)1 . 12C通讯接口的SCL信号是一种位同步信号,在其协议时序中“start”和“stop”是数 据帧同步时序。你认为mACKm时序的作用是什么?应答位(ACK):当发送方传送完8位时,发送方释放SDA,由接收方控制SDA,且SDA=O;2 .在12C互联系统中使用什么信息区分多个从设备?搜索关键词“I2C接口。了解I2C的 协议,能否确定12C互联系统中从设备的最大数量是多少?用IP来区分不同的设备,众所周知,电脑的IP是唯一的,所所以可以通过用IP来区分不同的设 备。I2C协议
2、规定,在启动总线后第1字节的高7位是从节点的寻址地址,第8位为方向位。所以 在单字节寻址中最多128个从设备。但又不能是同一类设备,因为在地址还要区分设备类型。3 .使用姿态传感器MPU9250感知的姿态信息,以及LED6x7Matr ix模块设计一个姿态指示器。4 .如果某MCU没有12C硬件单元,你能否使用普通GPlO实现I2C通讯接口的功能?如果可 以,请编程实现基本的数据传送(读/写)接口程序。可以用普通GPIO实现I2C通讯接口的功能。include 包含 AT89C51 的标准库include 包含 intrins. h 标准库,其中定义了_nop_ ()”define uc un
3、signed Char定义数据格式的缩写sbit SDA=P0; HC总线串行数据线sbit SCL=P1; /IIC总线串行时钟线bit NackFlag; 定义非应答标志void delay O /延时子程序,延时大约5us(_nop_ (); 与汇编中的NOP指令完全相同_nop_ ();_nop_ ();_nop_ ();)void Delayxlma (uc count) /延时子程序,延时大约 Ims(uc i, j;for (i=0; icount; i+)for (j=0; j0; i-) 发送 8 位(SDA=tcmps0x80; 根据IIC协议应从最高位开始发 SCL=I;
4、delay ();SDA=tcmps0x80; 根据IlC协议应从最高位开始发 SCL=I;delay ();SCL=O;tcmp=tcmpl; /待发数据左移,准备发送下一位 )void sendbyte (uc num, uc addr) 发送1字节数据到从器件子程序 send8bit (OxaO); 发送从器件地址ChkAck (); 检查应答位,每发一字节都要检查应答位Sendabit (addr); 发送数据地址 ChkACk ();sendebit (num); /发送待发数据ChkAck ();stop (); 全部发完后停止Delayxlms (10);)void main (void) 主函数,模拟实现HC总线的数据发送 (uc i;for (i=0; i=0xff; i+) 按要求产生并循环发送所有待发数据 (Sendbyte (i, i); 向从器件发送一字节数据DclayXlms (5);)while (1) ; 发送完毕,停止等待5 .分组讨论“球在平面上滚动效果”模拟算法,编程实现并测试效果。