430SPI读取SST25VF016B跑飞

2019-07-15 15:10发布

测试SPI读取ID一读取就跑飞[AppleScript] 纯文本查看 复制代码
#include "spi.h"#include "sst25.h"void delay(unsigned long ms);      //延时毫秒函数void SYS_Init();           //系统时钟初始化函数unsigned long int id1,id2;int main( void ){  // Stop watchdog timer to prevent time out reset  WDTCTL = WDTPW + WDTHOLD;  SYS_Init();  SPI_Init();  _EINT();  while(1){  id1=Read_ID();_NOP();id2=Jedec_ID_Read() ;    _NOP();  }}
这是主函数,请教!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
小马哥996
1楼-- · 2019-07-15 17:10
 精彩回答 2  元偷偷看……
anderson916
2楼-- · 2019-07-15 17:44
帮顶
mmuwyrwe
3楼-- · 2019-07-15 23:28
进死循环,我暂停竟然回到了时钟配置里边了,看门狗和时钟中断标志位都置位,什么情况
zhaojiacai
4楼-- · 2019-07-16 03:28
[C] 纯文本查看 复制代码
//系统时钟初始化函数void SYS_Init(){      unsigned int i;      WDTCTL=WDTPW+WDTHOLD;   //关闭看门狗      FLL_CTL0 |= XCAP18PF;   // Set load capacitance      FLL_CTL1 |=FLL_DIV1;      //FLL+ Divide Px.x/ACLK 1      FLL_CTL1 &=~XT2OFF;     //XT2有效 8MHz      while((IFG1&OFIFG)!=0)  //当OFIFG等于0的时候结束,说明晶体振荡器正常工作了      {          IFG1 &=~OFIFG;      //清除晶体振荡器失效标志OFIFG标志        //  delay();            //等待50us          for(i = 400;i>0; i--);  }  FLL_CTL1 |=SELM_XT2 ;         //Select XT2 for CPU MCLK  FLL_CTL1 |=FLL_DIV_8;      //FLL+ Divide Px.x/ACLK By 8  每个时钟周期为1us      FLL_CTL1 |=SELM1+SELS;       //MCLK Source Select 1   Peripheral Module Clock Source:SMCLK
不是程序就得换个晶振看看了

一周热门 更多>