硬件资源:ATmega8开发板2块,NRF24L01模块2块,DS1302时钟模块
要实现功能:开发板1读取时钟模块数据,通过SPI接口发送到NRF24L01模块,射频发出,另一个NRF24L01模块射频接收,通过SPI接口传递给另一块开发板,然后结果显示在串口工具中
程序设计:1,对于SPI接口的理解,首先要明确SPI接口所说的“主机”和“从机”,在本例中,2个开发板都是主机,射频模块都是从机(不要误以为接收信号的开发板是从机)。
2,一个NRF24L01模块设置为了发射,另一个设置为了接收,所以程序中没有用到中断,有兴趣的朋友可以试一试在同一个射频模块中实现发射和接收功能,此时必须用到中断;
3,发送延时和接收延时最好设置为相同或相近,否则可能会有问题出现;
图1是硬件实物图,图二为程序运行结果,
本项目使用两块ATmega8开发板及NRF24L01模块实现无线时钟同步。一块开发板读取DS1302时钟数据并通过SPI接口发送至NRF24L01模块,另一模块接收并传递给第二块开发板显示。设计中考虑了SPI接口配置、射频模块设置及延时匹配等问题。
4387

被折叠的 条评论
为什么被折叠?



