51 与CC1101的应用 ,陷入死循环的问题,困扰我一周多了

2020-01-25 15:33发布

51单片机跟CC1100的应用问题。
其中有一个语句:while(MISO);
陷入死循环 不知道怎么解决??麻烦高手指点一下 不胜感激!!

一个复位的程序:陷入死循环了!!!!!
void RESET_CC1100(void)
{
        CSN = 0;
        while (MISO);
       
        SpiTxRxByte(CCxxx0_SRES);                 //写入复位命令
          
        while (MISO);
        CSN = 1;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
wanxuncpx
1楼-- · 2020-01-25 17:01
改一下,加入一个寄存器定时呗,看下面
void RESET_CC1100(void)  
{
    unsigned char i = 10;

    CSN = 0;  
    while (MISO);
    SpiTxRxByte(CCxxx0_SRES);  //写入复位命令   
    while (MISO)
    {
        if(--i)
            delay_nus(10)
        else break;
    }  
    CSN = 1;  
}
mcukiller
2楼-- · 2020-01-25 22:52
 精彩回答 2  元偷偷看……
草芥风中散
3楼-- · 2020-01-26 03:26
楼主问题解决了????我那个也是这样,模块买回来的时候测试是没问题的,加了一些其他驱动函数上去后就开始不能通信了~~~
种豆桃花源
4楼-- · 2020-01-26 07:11
我的也遇到同样问题了,知道原因的请告诉一声。
johnsonz999
5楼-- · 2020-01-26 09:11
CC1101没有正常工作
wuha
6楼-- · 2020-01-26 10:50
遇到过同样的问题,一般都是IO口配置的问题,或者硬件本身坏了,程序本身没问题,基本上所有的CC1101都是一模一样的程序。PS:CC1101很脆弱,调试的时候注意手上的静电哦。

一周热门 更多>