一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

CS創(chuàng)世SD NAND的存儲芯片應用方案

深圳市雷龍發(fā)展有限公司 ? 2023-11-15 18:09 ? 次閱讀

前言:

很感謝深圳雷龍發(fā)展有限公司為博主提供的兩片SD NAND的存儲芯片,在這里博主記錄一下自己的使用過程以及部分設計。

深入了解該產品:

拿到這個產品之后,我大致了解了下兩款芯片的性能。CSNP4GCR01-AMW是一種基于NAND閃存和SD控制器的4Gb密度嵌入式存儲;而CSNP32GCR01-AOW是一種基于NAND閃存和SD控制器的32Gb密度嵌入式存儲。與原始NAND相比其具有嵌入式壞塊管理和更強的嵌入式ECC。即使在異常斷電,它仍然可以安全地保存數(shù)據。作為一個存儲芯片,它確實做到了小巧,LGA-8的封裝對比我之前用到過的TF卡,只占到了其面積的三分之一,這樣對于一些嵌入式的設計就方便了很多。

image.php?url=YD_cnt_100_01S74cotZJkP

雷龍官方還很貼心的提供了樣品的測試板,在這款測試板上,我焊接了4GB的CSNP4GCR01-AMW上去,并且跑了一下分,對于一款小的存儲芯片而言,實在難得。

image.php?url=YD_cnt_100_01S74cwNmGXa

(上圖為測試板焊接圖)

博主日前在設計基于H616與NB-IOT的嵌入式智能儲物柜的時候考慮過存儲方面的問題,當時在SD NAND和EMMC與TF卡中徘徊,以下是幾個存儲類型的對比。

image.php?url=YD_cnt_100_01S74ct8xcnT

image.php?url=YD_cnt_100_01S74cuFWRNL

經過多方對比,本著不需要頻繁更換的原則,同時也為了更好的防水和成本考慮,最終決定使用雷龍公司的SD NAND 作為設計樣品的存儲部分。

此外,SD NAND還具有不用寫驅動程序自帶壞塊管理的NAND FLASH(貼片式TF卡),不標準的SDIO接口,也同時兼容SPI/SD接口,10萬次的SLC晶圓擦寫壽命,通過一萬次的隨機掉電測試耐高低溫,經過跑分測得,速度級別Class10。標準的SD2.0協(xié)議,普通的SD卡可以直接驅動,支持TF卡啟動的SOC都可以用SD NAND,而且雷龍官方還貼心的提供了STM32參考例程和原廠技術支持,這對于剛上手的小白而言,十分友好。

設計理念:

使用H616作為主控CPU并搭配NB-IOT來向申請下來的云端傳輸數(shù)據,當WIFI正常時,儲物數(shù)據每擱兩小時向云端傳輸一次,當有人取出物品時再次向云端發(fā)送一次數(shù)據(不保留在SD NAND中);一旦系統(tǒng)檢測到WIFI出現(xiàn)問題,儲物數(shù)據轉而存儲到SD NAND中,取物時輸入的物品ID和取出時間一并放入SD NAND中(我也是看中了SD NAND與原始NAND相比其具有嵌入式壞塊管理和更強的嵌入式ECC。即使在異常斷電,它仍然可以安全地保存數(shù)據這一點)。

部分SD NAND的參考設計

根據官方數(shù)據手冊提供的SD NAND參考設計,只占用8個GPIO,對于H616來說,確實很友好

image.php?url=YD_cnt_100_01S74csjjIkc

這里為了不泄露他人的勞動成果,我也就不粘PCB設計了。

image.php?url=YD_cnt_100_01S74cvEChCC

采用H616驅動SD NAND的示例代碼

下面是關于H616驅動SD NAND的示例代碼,這里記錄一下自己當初的學習過程(注:這個代碼不能直接拿過來就用,而是要根據自己的需求修改)

  1. #include
  2. #include
  3. #include
  4. #include
  5. #include "h616_sdio.h"
  6. // 定義SDIO引腳
  7. #define SDIO_CMD_PIN 0
  8. #define SDIO_CLK_PIN 1
  9. #define SDIO_D0_PIN 2
  10. #define SDIO_D1_PIN 3
  11. #define SDIO_D2_PIN 4
  12. #define SDIO_D3_PIN 5
  13. // 定義NAND芯片命令
  14. #define CMD_READ 0x00
  15. #define CMD_WRITE 0x80
  16. #define CMD_ERASE 0x60
  17. #define CMD_STATUS 0x70
  18. #define CMD_RESET 0xff
  19. // 定義NAND芯片狀態(tài)
  20. #define STATUS_READY 0x40
  21. #define STATUS_ERROR 0x01
  22. // 初始化SDIO控制器
  23. void sdio_init()
  24. {
  25. // 設置SDIO引腳模式和速率
  26. h616_sdio_set_pin_mode(SDIO_CMD_PIN, H616_SDIO_PIN_MODE_SDIO);
  27. h616_sdio_set_pin_mode(SDIO_CLK_PIN, H616_SDIO_PIN_MODE_SDIO);
  28. h616_sdio_set_pin_mode(SDIO_D0_PIN, H616_SDIO_PIN_MODE_SDIO);
  29. h616_sdio_set_pin_mode(SDIO_D1_PIN, H616_SDIO_PIN_MODE_SDIO);
  30. h616_sdio_set_pin_mode(SDIO_D2_PIN, H616_SDIO_PIN_MODE_SDIO);
  31. h616_sdio_set_pin_mode(SDIO_D3_PIN, H616_SDIO_PIN_MODE_SDIO);
  32. h616_sdio_set_clock(H616_SDIO_CLOCK_FREQ_25MHZ);
  33. // 初始化SDIO控制器
  34. h616_sdio_init();
  35. }
  36. // 發(fā)送NAND芯片命令
  37. void nand_send_cmd(uint8_t cmd)
  38. {
  39. // 設置SDIO控制器傳輸模式和命令碼
  40. h616_sdio_set_transfer_mode(H616_SDIO_TRANSFER_MODE_WRITE);
  41. h616_sdio_set_command_code(cmd);
  42. // 發(fā)送命令
  43. h616_sdio_send_command();
  44. }
  45. // 發(fā)送NAND芯片地址
  46. void nand_send_addr(uint32_t addr)
  47. {
  48. // 設置SDIO控制器傳輸模式和地址
  49. h616_sdio_set_transfer_mode(H616_SDIO_TRANSFER_MODE_WRITE);
  50. h616_sdio_set_address(addr);
  51. // 發(fā)送地址
  52. h616_sdio_send_address();
  53. }
  54. // 讀取NAND芯片數(shù)據
  55. void nand_read_data(uint8_t *data, uint32_t size)
  56. {
  57. // 設置SDIO控制器傳輸模式
  58. h616_sdio_set_transfer_mode(H616_SDIO_TRANSFER_MODE_READ);
  59. // 讀取數(shù)據
  60. h616_sdio_read_data(data, size);
  61. }
  62. // 寫入NAND芯片數(shù)據
  63. void nand_write_data(const uint8_t *data, uint32_t size)
  64. {
  65. // 設置SDIO控制器傳輸模式
  66. h616_sdio_set_transfer_mode(H616_SDIO_TRANSFER_MODE_WRITE);
  67. // 寫入數(shù)據
  68. h616_sdio_write_data(data, size);
  69. }
  70. // 讀取NAND芯片狀態(tài)
  71. uint8_t nand_read_status()
  72. {
  73. uint8_t status;
  74. // 發(fā)送讀取狀態(tài)命令
  75. nand_send_cmd(CMD_STATUS);
  76. // 讀取狀態(tài)
  77. nand_read_data(&status, 1);
  78. return status;
  79. }
  80. // 等待NAND芯片準備就緒
  81. void nand_wait_ready()
  82. {
  83. uint8_t status;
  84. // 循環(huán)讀取狀態(tài),直到NAND芯片準備就緒
  85. do {
  86. status = nand_read_status();
  87. } while ((status & STATUS_READY) == 0);
  88. }
  89. // 讀取NAND芯片數(shù)據
  90. void nand_read(uint32_t page, uint32_t column, uint8_t *data, uint32_t size)
  91. {
  92. // 發(fā)送讀取命令和地址
  93. nand_send_cmd(CMD_READ);
  94. nand_send_addr(column | (page << 8));
  95. // 等待NAND芯片準備就緒
  96. nand_wait_ready();
  97. // 讀取數(shù)據
  98. nand_read_data(data, size);
  99. }
  100. // 寫入NAND芯片數(shù)據
  101. void nand_write(uint32_t page, uint32_t column, const uint8_t *data, uint32_t size)
  102. {
  103. // 發(fā)送寫入命令和地址
  104. nand_send_cmd(CMD_WRITE);
  105. nand_send_addr(column | (page << 8));
  106. // 寫入數(shù)據
  107. nand_write_data(data, size);
  108. // 等待NAND芯片準備就緒
  109. nand_wait_ready();
  110. }
  111. // 擦除NAND芯片塊
  112. void nand_erase(uint32_t block)
  113. {
  114. // 發(fā)送擦除命令和地址
  115. nand_send_cmd(CMD_ERASE);
  116. nand_send_addr(block << 8);
  117. // 等待NAND芯片準備就緒
  118. nand_wait_ready();
  119. }
  120. // 復位NAND芯片
  121. void nand_reset()
  122. {
  123. // 發(fā)送復位命令
  124. nand_send_cmd(CMD_RESET);
  125. // 等待NAND芯片準備就緒
  126. nand_wait_ready();
  127. }
  128. // 示例程序入口
  129. int main()
  130. {
  131. uint8_t data[2048];
  132. memset(data, 0x5a, sizeof(data));
  133. // 初始化SDIO控制器
  134. sdio_init();
  135. // 復位NAND芯片
  136. nand_reset();
  137. // 擦除第0塊
  138. nand_erase(0);
  139. // 寫入第0頁
  140. nand_write(0, 0, data, sizeof(data));
  141. // 讀取第0頁
  142. nand_read(0, 0, data, sizeof(data));
  143. return 0;
  144. }
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    459

    文章

    51927

    瀏覽量

    433693
  • 存儲
    +關注

    關注

    13

    文章

    4469

    瀏覽量

    86895
  • 內存卡
    +關注

    關注

    0

    文章

    63

    瀏覽量

    15030
收藏 人收藏

    評論

    相關推薦

    創(chuàng)世CS SD NAND 8GByte產品特性介紹#芯片 #SDNAND #8GB #CS創(chuàng)世 #存儲

    NAND
    深圳市雷龍發(fā)展有限公司
    發(fā)布于 :2025年04月24日 17:50:09

    CS創(chuàng)世SD NAND【貼片式sd卡】的測試使用說明

    今天收到了來自深圳市雷龍發(fā)展有限公司寄來的存儲卡,它是一款自帶壞塊管理的貼片式NAND Flash,適用于嵌入式系統(tǒng)。SD NAND尺寸小巧,支持SPI/
    的頭像 發(fā)表于 02-17 15:45 ?280次閱讀
    <b class='flag-5'>CS</b><b class='flag-5'>創(chuàng)世</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>【貼片式<b class='flag-5'>sd</b>卡】的測試使用說明

    CS創(chuàng)世SD NAND【貼片式sd卡】的測試使用說明

    STM32參考例程,適用于需要大容量存儲但對穩(wěn)定性要求高的MCU項目。 []()   芯片規(guī)格型號   CSNP32GCR01-AOW []()   轉接板型號   SD NAND測試
    發(fā)表于 02-12 15:05

    SD NAND、SPI NAND 和 Raw NAND 的定義與比較

    問題,再也不用為SD卡的接觸穩(wěn)定性操心!   SD nandSD 卡、SPI Nor flash、 nand flash、eeprom
    發(fā)表于 01-15 18:15

    【半導體存儲】關于NAND Flash的一些小知識

      前言   作為一名電子專業(yè)的學生,半導體存儲顯然是繞不過去的一個坎,今天聊一聊關于Nand Flash的一些小知識。   這里十分感謝深圳雷龍發(fā)展有限公司為博主提供的兩片CS創(chuàng)世
    發(fā)表于 12-17 17:34

    關于SD NAND 的概述

    。   雷龍科技旗下的CS創(chuàng)世品牌自2016年成立以來,一直專注于采用國際先進的芯片設計和技術,結合本地化的生產和制造優(yōu)勢,為客戶提供高品質的產品和服務。在眾多產品中,CS
    發(fā)表于 12-06 11:22

    如何格式化貼片式SD卡/貼片式TF卡(SD NAND)#電路知識 #pcb設計 #芯片 #存儲芯片 #嵌入式

    存儲芯片
    深圳市雷龍發(fā)展有限公司
    發(fā)布于 :2024年11月19日 15:13:14

    一文帶你了解什么是SD NAND存儲芯片

    的市場份額,有著不可取代的地位。   隨著芯片的發(fā)展存儲芯片的趨勢也開始不甘落后,有著越來越多的新型的芯片問世,這里就要提起SD NAND
    發(fā)表于 11-13 15:20

    一文帶你了解什么是SD NAND存儲芯片

    的市場份額,有著不可取代的地位。 隨著芯片的發(fā)展存儲芯片的趨勢也開始不甘落后,有著越來越多的新型的芯片問世,這里就要提起SD NAND
    的頭像 發(fā)表于 11-13 15:17 ?1647次閱讀
    一文帶你了解什么是<b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲芯片</b>

    ESP32應用教程—SD NAND如何記錄飛控LOG#SDNAND #硬件 #存儲芯片

    存儲芯片
    深圳市雷龍發(fā)展有限公司
    發(fā)布于 :2024年10月09日 16:51:51

    SD NAND在智能眼鏡上的怎么應用

    隨著智能時代的到來,智能眼鏡的產品不斷的更新迭代,越來越接近我們大眾的生活,翻譯、音頻、視頻、導航等功能也日益完善。同時也越來越考驗存儲芯片的容量和存儲芯片的大小。 SD NAND是一
    的頭像 發(fā)表于 09-14 09:55 ?574次閱讀
    <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>在智能眼鏡上的怎么應用

    SD NAND測試套件:提升存儲芯片驗證效率

    SD NAND轉接板和燒錄座是一種專為工程師設計的輔助工具,它能夠將不同尺寸的SD NAND芯片轉換為通用TF接口封裝,從而方便地進行性能測
    的頭像 發(fā)表于 08-13 09:44 ?575次閱讀
    <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>測試套件:提升<b class='flag-5'>存儲芯片</b>驗證效率

    CS創(chuàng)世 SD NANDSD NAND芯片的測評與使用(基于卷積神經網絡的數(shù)字識別)

    時常會影響系統(tǒng)的穩(wěn)定性,因此一個可以反復擦拭的穩(wěn)定存儲芯片顯得十分重要。 通過將測試板和芯片進行簡單的焊接,我們可以像使用SD卡一樣對SD NAND
    發(fā)表于 07-24 18:24

    Flash閃存簡介及“SD NAND Flash”產品測試#存儲芯片 #sd卡? #NAND #TF卡

    存儲芯片
    深圳市雷龍發(fā)展有限公司
    發(fā)布于 :2024年06月26日 18:11:03

    SD NAND 簡介

    SD NAND是一種創(chuàng)新的存儲芯片,可直接貼片,又名貼片式TF卡、貼片式T卡、貼片式SD卡、貼片式內存卡、SD Flash、
    的頭像 發(fā)表于 05-29 16:34 ?1581次閱讀
    <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b> 簡介