[实训] 实验1-SPI数据传输基础实验(下)
目录
五、实验测试数据表格记录
六、实验数据分析及处理
七、实验结论与感悟
五、实验测试数据表格记录
实验现象数码管显示见第四节图4.4,示波器测量结果见下列图片。
图5.1 RST、MOSI/MISO波形测量结果 |
图5.2 SCLK、MOSI/MISO波形测量结果 |
仅调整示波器波形显示,使波形显示更为宏观,再次记录:
图5.3 RST、MOSI/MISO波形测量结果 |
图5.4 SCLK、MOSI/MISO波形测量结果 |
六、实验数据分析及处理
由于示波器仅有两通道,DS1302 的SPI有三根线,分别是 CE、I/O 和 SCLK,为方便数据分析,将图5.1、图5.2的测量结果通过PS技术组合,结果如下图6.1;图5.3、图5.4组合结果如下图6.2。
图6.1 三路波形显示结果 |
图6.2 三路波形显示结果 |
通过图6.1,在图显示波形的第一个RST=1内,即启动DS1302的周期中,可以看到有16个SCK脉冲信号,在前八个SCK 的上升沿,可以读出I/O数据为10110001为写入的寄存器地址(从地位开始写),即0x8D,可以得知,此段为读“年”数据的波形。
通过图6.2,可以看出,RST脉冲重复8次后,会延时大约4*2.000ms=8ms的时间,通过我编写的程序可知,该延时是由于数码管动态显示的8个delay_ms(1);产生的效果。
七、实验结论与感悟
通过本次实验,我自主完成了使用ARM实验箱实现了基于SPI的DS1302实时时钟显示实验,加深了对SPI数据传输的理解。我明白了在DS1302中写入数据,需要先写入地址/命令,然后才能写数据。对于DS1302的操作分两部分,一部分是控制字,也就是地址及命令字节,另一部分是数据。
感悟:通过本次实验,我深刻认识到实践的重要性。刚开始看完实验要求时,我认为这个实验很简单,然而当我真正开始做的时候,才意识到困难重重。从最开始的环境配置问题,例如没有相应芯片STM32F103ZC库、缺少J-Link驱动,Jlink-driver无法识别,到编译下载程序时遇到的问题,例如示例程序编译报错、头文件引用问题、代码语法错误或硬件错误等等。在这个过程中,我不断努力,查阅资料,经过不断的尝试,最终成功解决了所有的困难,并成功完成了实验。同时,我也意识到,在实践中遇到困难并不可怕,只要不断努力,寻找解决问题的方法,最终一定能够成功克服困难。