久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3463|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

MSP430F149控制ADF4360-7程序+資料

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
在應(yīng)用ADF4360-7時(shí)找到的學(xué)習(xí)應(yīng)用資料,用的是MSP430F149單片機(jī)。
資料包括
官方資料:芯片數(shù)據(jù)手冊(cè)、應(yīng)用手冊(cè)、開發(fā)板資料等
原理圖:ADF4360-7及控制部分原理圖(Altium Designer Winter 09 格式和PDF格式),所需元件封裝庫等
控制程序:基于MSP430F149的控制程序及其他參考程序
單片機(jī)源程序如下:
  1. /***********************************************************************************************
  2. 文件:ADF4370.H
  3. 作者:沨
  4. 用途:集成鎖相環(huán)ADF4360-7控制程序
  5. MCU: MSP430F149 晶振:8MHz
  6. 編譯器:IAR Ror MSP430 5.10
  7. 硬  件:2011_10_06
  8. 說明:
  9. 日期:下午 02:56 2011-12-5
  10. ***********************************************************************************************/

  11. #define uchar unsigned char
  12. #define uint unsigned int

  13. #define        PLL_SET_CE()                P5OUT |= BIT0        //P5.0->CE
  14. #define        PLL_CLR_CE()                P5OUT &=~BIT0

  15. #define PLL_SET_DATA()                P5OUT |= BIT1        //P5.1->DATA
  16. #define PLL_CLR_DATA()                P5OUT &=~BIT1
  17. #define PLL_SET_DATA_OUT()        P5DIR |= BIT1
  18. #define PLL_SET_DATA_IN()        P5DIR &=~BIT1
  19. #define PLL_DATA_IN                 (P5IN & BIT1)

  20. #define        PLL_SET_SCL()                P5OUT |= BIT3        //P5.3->SCL
  21. #define        PLL_CLR_SCL()                P5OUT &=~BIT3

  22. #define PLL_SET_LE()                P5OUT |= BIT4        //P5.4->LE
  23. #define PLL_CLR_LE()                P5OUT &=~BIT4

  24. #define PLL_LD_IN                 (P5IN & BIT5)
  25. #define PLL_IO_SET                 P5DIR = 0xDB;                //PLL端口配置


  26. //===========================變量定義=======================================
  27. /*-------------------------------------400MHz---------------------------------------------
  28. ----------------------------------------------------------------------------------------*/
  29. unsigned char CONTROL_LATCH[3]                ={0x0F,0xF1,0x20};               
  30. unsigned char N_COUNTER_LATCH[3]        ={0x00,0x0A,0X02};
  31. unsigned char R_COUNTER_LATCH[3]        ={0x30,0x00,0x09};

  32. void delay (unsigned int length)
  33. {
  34.         while (length >0)
  35.             length--;
  36. }

  37. //--------------------------------------------------------------------------------
  38. void DelaymS(uint ms)
  39. {
  40.     uint i;
  41.     while(ms--)   
  42.    {
  43.      for(i=1;i<(uint)(8*143-2);i++)
  44.          ;
  45.    }   
  46. }
  47. //---------------------------------
  48. //void WriteToADF4350(unsigned char count,unsigned char *buf);
  49. //---------------------------------
  50. //Function that writes to the ADF4350 via the SPI port. 函數(shù),該函數(shù)通過SPI端口寫入ADF4350。
  51. //--------------------------------------------------------------------------------
  52. void WriteToADF4360(unsigned char count, unsigned char *buf)
  53. {
  54.         unsigned        char        ValueToWrite = 0;
  55.     unsigned        char        i = 0;
  56.         unsigned        char        j = 0;
  57.         
  58.         PLL_SET_DATA_OUT();
  59.         
  60.         delay(10);
  61.         PLL_CLR_SCL();
  62.         PLL_CLR_LE();
  63.         delay(10);

  64.         for(i=0;i<count;i++)
  65.          {
  66.                  ValueToWrite = *(buf + i);
  67.                 for(j=0; j<8; j++)
  68.                 {
  69.                         if(0x80 == (ValueToWrite & 0x80))
  70.                         {
  71.                                 PLL_SET_DATA();          //Send one to SDO pin
  72.                         }
  73.                         else
  74.                         {
  75.                                 PLL_CLR_DATA();          //Send zero to SDO pin
  76.                         }
  77.                         delay(10);
  78.                         PLL_SET_SCL();
  79.                         delay(10);
  80.                         ValueToWrite <<= 1;        //Rotate data
  81.                         PLL_CLR_SCL();
  82.                 }
  83.         }
  84.         PLL_CLR_DATA();
  85.         delay(10);
  86.         PLL_SET_LE();
  87.         delay(10);
  88.         PLL_CLR_LE();
  89. }


  90. //---------------------------------
  91. //void ReadFromADF4350(unsigned char count,unsigned char *buf)從ADF4350讀取
  92. //---------------------------------
  93. //Function that reads from the ADF4350 via the SPI port. 該函數(shù)通過SPI端口從ADF4350中讀取數(shù)據(jù)。
  94. //--------------------------------------------------------------------------------
  95. void ReadFromADF4360(unsigned char count, unsigned char *buf)
  96. {
  97.         unsigned        char        i = 0;
  98.         unsigned        char        j = 0;
  99.         unsigned        int          iTemp = 0;
  100.         unsigned        char          RotateData = 0;

  101.         PLL_SET_DATA_IN();
  102.         
  103.         delay(1);
  104.         PLL_CLR_SCL();
  105.         PLL_CLR_LE();
  106.         delay(1);

  107.         for(j=0; j<count; j++)
  108.         {
  109.                 for(i=0; i<8; i++)
  110.                 {
  111.                         RotateData <<= 1;                //Rotate data
  112.                         delay(1);
  113.                         iTemp = PLL_DATA_IN;                        //Read DATA of ADF4350
  114.                         PLL_SET_SCL();        
  115.                         if(iTemp)
  116.                         {
  117.                                 RotateData |= 1;        
  118.                         }
  119.                         delay(1);
  120.                         PLL_CLR_SCL();
  121.                 }
  122.                 *(buf + j)= RotateData;
  123.         }         
  124.         delay(1);
  125.         PLL_SET_LE();
  126.         delay(1);
  127.         PLL_CLR_LE();
  128. }

  129. void PLL_set_frq (void)
  130. {        DelaymS(20);
  131.           PLL_SET_CE();
  132.         WriteToADF4360(3,R_COUNTER_LATCH);        
  133.         WriteToADF4360(3,CONTROL_LATCH);                //
  134.         DelaymS(50);        //需大于10mS
  135.         WriteToADF4360(3,N_COUNTER_LATCH);                //
  136. }
復(fù)制代碼

123.png (6.79 KB, 下載次數(shù): 212)

123.png

ADF4360-7應(yīng)用資料.rar

4.5 MB, 下載次數(shù): 18, 下載積分: 黑幣 -5

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:632612 發(fā)表于 2019-10-30 12:52 | 只看該作者
謝謝樓主的分享
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 56pao在线| 亚洲一区二区在线免费观看 | 精品久久久久久亚洲精品 | 国产线视频精品免费观看视频 | 久久久久久国产精品免费免费狐狸 | 黑人精品 | 91se在线 | 欧美激情欧美激情在线五月 | 日本偷偷操 | 日韩 欧美 二区 | 精品一二区 | 狠狠影院 | 国产日韩精品视频 | 第一区在线观看免费国语入口 | 99久久中文字幕三级久久日本 | 国产成人精品一区 | 麻豆精品国产91久久久久久 | 欧美性猛交一区二区三区精品 | 夜夜操天天干 | 国产一区二区三区四区五区加勒比 | 91精品国产综合久久久动漫日韩 | 国产精品久久精品 | 一级片av | 亚洲 欧美 日韩在线 | va精品| 91精品国产91久久综合桃花 | 国产一区不卡在线观看 | 久久激情网 | 精品国产乱码久久久久久老虎 | 亚洲免费一区 | 久久婷婷麻豆国产91天堂 | 久久久www成人免费无遮挡大片 | 亚洲成av人影片在线观看 | 天天宗合网| 国产精品免费一区二区三区四区 | 国产精品自拍视频网站 | 羞羞的视频免费看 | 久久精品国产一区二区电影 | 一区二区三区网站 | 精品一区二区三区不卡 | 亚洲欧美激情视频 |