WCH沁恒单片机
直播中

张红

7年用户 1264经验值
私信 关注
[问答]

CH582在不使用外部32K晶振下,使用2.4G通信无法正常通信怎么解决?




论坛各位老师好,我自己新做了一对板子(有发送板也有接收器),上面附件是接收器的原理图。两个板子之间在使用CH582作为2.4G实时通信,我的板子与开发板的区别在于没有使用32K晶体,其他感觉是一致的。目前调试情况是两个板子板上的按键,显示屏,USB,LED等都是正常工作的,但是2.4G工作不正常(发送电路板和接收器都不能正常工作),无法接收数据,也无法发送数据。 我在config.h文件下将 CLK_OSC32K  修改为2 ,问题依旧。如图所示:

我把同样的程序,下载到开发板上,是可以发送数据,也可以接收数据的。问题如下:

  1.32K的晶体没有如何修改程序适配,我看到config.h中文件要求不在此处修改,应该在工程配置中修改,这里指的是哪里?
  2.我的电路板其他接口都是正确的,说明最小系统没有问题,CH582的无线通信不需要外围器件,按说硬件电路没有什么问题,我该从哪里着手查到问题?
3.另外我在循环调用TMOS_GetSystemClock();函数的时候发现,返回值始终为0,是否可以说明时钟没有工作?
以下是新情况:
4.情况有变化,经过反复测量,接收端使用开发板,偶尔能够接收到我的电路板所发数据,查看接收到的第一个字节rssi为-18左右,我使用另外一块开发板作为发送端,此时接收端一直能接收到数据,显示RSSI为-19或者-20. 看到两个板子的RSSI是差不多的,请问各位老师,为什么我的电路板发送数据只能偶尔被接收到?,如图所示:
  
  

回帖(1)

李富才

2022-8-3 09:58:59
工程配置预处理在如图所在的地方修改:CLK_OSC32K修改为2.

在使用开发板的时候使用的是外部晶振还是内部晶振,可以也同样使用内部晶振做对比实验,
可以使用这个函数RTC_GetCycle32k()来看rtc有没有跑,另外可以将你的板子离得不要特别近。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分