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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8596|回復: 18
打印 上一主題 下一主題
收起左側

關于SI4438的射頻收發程序,包括四線SPI讀寫源程序

  [復制鏈接]
跳轉到指定樓層
樓主
這是SI4438的射頻收發程序,使用STM系列MCU通過四線SPI實現對SI4438的讀寫操作。

源程序見附件。

所有資料51hei提供下載:
SI4438 初始化 和收發函數.zip (16.56 KB, 下載次數: 154)



單片機源程序如下:
  1. #include "SI4463_src.h"

  2. /*********************************************************************
  3. **  Constant Declaration
  4. *********************************************************************/
  5. const u8 config_table[] = RADIO_CONFIGURATION_DATA_ARRAY;

  6. const u8 config_10k[] = RADIO_CONFIGURATION_DATA_10K;

  7. /*********************************************************************
  8. ** Nrf24l01_InterFace
  9. *********************************************************************/
  10. void SI4463_InterFace(void)
  11. {
  12.     //init io pin
  13.                 GPIO_Init(SI_SDN_GPIO,SI_SDN_PIN,GPIO_MODE_OUT_PP_HIGH_FAST);//SDN 引腳設置為輸出
  14.                 Init_SPI();
  15. }

  16. /*
  17. =================================================================================
  18. SI446X_CMD( );
  19. Function : Send a command to the device
  20. INTPUT   : cmd, the buffer stores the command array
  21.            cmdsize, the size of the command array
  22. OUTPUT   : NONE
  23. =================================================================================
  24. */
  25. void SI446X_CMD( u8 *cmd, u8 cmdsize )
  26. {
  27.     SI446X_WAIT_CTS( );
  28.     SS_LOW( );
  29.     while( cmdsize -- )
  30.     {
  31.         SPI_ExchangeByte( *cmd++ );
  32.     }
  33.     SS_HIGH( );
  34. }
  35. /*
  36. =================================================================================
  37. SI446X_POWER_UP( );
  38. Function : Power up the device
  39. INTPUT   : f_xtal, the frequency of the external high-speed crystal
  40. OUTPUT   : NONE
  41. =================================================================================
  42. */
  43. void SI446X_POWER_UP( u32 f_xtal )
  44. {
  45.     u8 cmd[7];
  46.     cmd[0] = POWER_UP;
  47.     cmd[1] = 0x01;
  48.     cmd[2] = 0x00;
  49.     cmd[3] = f_xtal>>24;
  50.     cmd[4] = f_xtal>>16;
  51.     cmd[5] = f_xtal>>8;
  52.     cmd[6] = f_xtal;
  53.     SI446X_CMD( cmd, 7 );
  54. }
  55. /*
  56. =================================================================================
  57. SI446X_READ_RESPONSE( );
  58. Function : read a array of command response
  59. INTPUT   : buffer,  a buffer, stores the data responsed
  60.            size,    How many bytes should be read
  61. OUTPUT   : NONE
  62. =================================================================================
  63. */
  64. void SI446X_READ_RESPONSE( u8 *buffer, u8 size )
  65. {
  66.     SI446X_WAIT_CTS( );
  67.     SS_LOW( );
  68.         SPI_ExchangeByte( READ_CMD_BUFF );
  69.         while( size -- )
  70.     {
  71.         *buffer++ = SPI_ExchangeByte( 0xFF );
  72.     }
  73.     SS_HIGH( );

  74. }
  75. /*
  76. =================================================================================
  77. SI446X_WAIT_CTS( );
  78. Function : wait the device ready to response a command
  79. INTPUT   : NONE
  80. OUTPUT   : NONE
  81. =================================================================================
  82. */
  83. void SI446X_WAIT_CTS( void )
  84. {
  85.     u8 cts;
  86.     for(u16 i=0xffff;i>0;i--) //5000次查詢等待
  87.     {
  88.         SS_LOW( );
  89.         SPI_ExchangeByte( READ_CMD_BUFF );
  90.         cts = SPI_ExchangeByte( 0xFF );
  91.         SS_HIGH( );
  92.                                 
  93.                                 if(cts == 0xFF)
  94.                                                 break;
  95.     }
  96. }
  97. /*
  98. =================================================================================
  99. SI446X_NOP( );
  100. Function : NO Operation command
  101. INTPUT   : NONE
  102. OUTPUT   : NONE
  103. =================================================================================
  104. */
  105. u8 SI446X_NOP( void )
  106. {
  107.     u8 cts;
  108.     SS_LOW( );
  109.     cts = SPI_ExchangeByte( NOP );
  110.     SS_HIGH( );
  111.         return cts;
  112. }

  113. /*
  114. =================================================================================
  115. SI446X_PART_INFO( );
  116. Function : Read the PART_INFO of the device, 8 bytes needed
  117. INTPUT   : buffer, the buffer stores the part information
  118. OUTPUT   : NONE
  119. =================================================================================
  120. */
  121. void SI446X_PART_INFO( u8 *buffer )
  122. {
  123.    
  124.                
  125. ……………………

  126. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼


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

使用道具 舉報

沙發
ID:1 發表于 2017-6-26 18:12 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

板凳
ID:202859 發表于 2017-9-12 14:52 | 只看該作者
非常感謝樓主無私奉獻,謝謝。
回復

使用道具 舉報

地板
ID:237261 發表于 2017-10-4 19:31 | 只看該作者
怎么沒有主函數部分?
回復

使用道具 舉報

5#
ID:289077 發表于 2018-3-8 11:07 | 只看該作者
感謝樓主,學習一下
回復

使用道具 舉報

6#
ID:289077 發表于 2018-3-8 11:08 | 只看該作者
感謝樓主,正好需要這個學習一下
回復

使用道具 舉報

7#
ID:68875 發表于 2018-3-10 11:59 | 只看該作者
不錯,有用,謝謝樓主分享
回復

使用道具 舉報

8#
ID:295566 發表于 2018-3-22 16:43 | 只看該作者
好東西啊 正好有用
回復

使用道具 舉報

9#
ID:289198 發表于 2018-9-26 16:19 | 只看該作者

感謝樓主,正好需要這個學習一下
回復

使用道具 舉報

10#
ID:140510 發表于 2018-9-28 13:18 | 只看該作者
感謝樓主,正好需要這個學習一下
回復

使用道具 舉報

11#
ID:199926 發表于 2018-11-30 09:38 | 只看該作者
感謝樓主,正好需要這個學習一下
回復

使用道具 舉報

12#
ID:223999 發表于 2018-12-29 09:43 | 只看該作者
留著備用
回復

使用道具 舉報

13#
ID:449525 發表于 2018-12-29 13:29 | 只看該作者
可以,現在可以用4463代替了,
麻煩樓主在寫一份吧。
回復

使用道具 舉報

14#
ID:524104 發表于 2019-4-28 23:41 | 只看該作者
正好要學習。有一些問題想解決。樓主給大家提供了一個學習機會。謝謝。
回復

使用道具 舉報

15#
ID:10007 發表于 2019-7-20 15:16 | 只看該作者
謝謝分享!
回復

使用道具 舉報

16#
ID:471332 發表于 2020-6-4 13:48 | 只看該作者
謝謝樓主分享
回復

使用道具 舉報

17#
ID:195752 發表于 2022-2-6 22:14 | 只看該作者
多謝樓主分享,刷新一下,重復扣分。
回復

使用道具 舉報

18#
ID:570554 發表于 2024-7-9 16:15 | 只看該作者
感謝樓主  雖然還不會用   正在努力沖鋒中
回復

使用道具 舉報

19#
ID:606120 發表于 2025-3-5 21:00 | 只看該作者
感謝樓主,學習一下
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 伊人久久综合 | a中文在线视频 | 久久精品网 | 国产婷婷精品av在线 | 精品国模一区二区三区欧美 | 国产精品亚洲欧美日韩一区在线 | 2023亚洲天堂 | 国产视频二区 | 国产一区二区三区久久久久久久久 | 成人一区二区三区 | 九九av| 亚洲综合一区二区三区 | 一级黄色毛片免费 | 人人干人人干人人 | 午夜电影一区二区 | 天天操天天射天天 | 日韩一区二区三区视频 | 欧美一区二 | 91av视频| 四虎在线观看 | 日韩激情视频一区 | 人人色视频 | 日本黄色一级视频 | 国产粉嫩尤物极品99综合精品 | 一级黄色片一级黄色片 | 欧美影院| 国产精品久久久久久久久久久久 | 亚洲精品电影网在线观看 | 日日操av | 久久国产视频网站 | 成人精品一区二区 | 一区观看| 男人的天堂在线视频 | 日韩一区二区三区视频 | 国产精品久久久99 | 成人免费一区二区三区视频网站 | 成人一级黄色毛片 | 日日天天 | 神马久久久久久久久久 | 久草热8精品视频在线观看 午夜伦4480yy私人影院 | 国产在线视频在线观看 |