2、如下是spi主机中基于gpio的数据发送函数,gpio_do为数据线,gpio_sckl为时钟线,请补充完善代码中的空白内容。提示:set指令用于在某个引脚上输出高电平,clr指令用于将某个引脚清零。 int gpio_spi_send (unsigned char data) { //该spi接口工作模式中,cpol=____1____,cpha=____2____) unsigned char temdata; int count = 0; temdata = data; if (1 == (1 & ( temdata >>7))) { //输出命令字高位 set gpio_do; }else clr gpio_do; set gpio_sckl; //第一个时钟拉高,上跳沿,通知从设备采样 while (count < 8) { ____3____; if (1 == (____4____)) { //输出下一位数据 set gpio_do; }else clr gpio_do; clr gpio_sckl; //时钟拉低,下跳沿,主设备输出 nop; //空指令延时 set gpio_sckl; //时钟拉高,上跳沿,通知从设备采样 } clr gpio_sckl; //时钟拉低 }
3、简述集成电路总线i2c的特性、连接方法及其基本通信原理。
4、波特率是码元的传输速率,或者说对载波的调制速率,其与比特率的换算关系为:比特率=波特率*log2(n),即比特率=波特率 x 单个调制状态对应的二进制位数。 问题1:全宽码(nrz编码)是码元内部没有跳变的一种编码,请分析并给出该编码方式下波特率与比特率的比例。 问题2:(差分)曼彻斯特编码是一种中间有跳变的自同步编码,请分析并给出该编码方式下波特率与比特率的比例。