前言
前幾天收到了雷龍NAND的芯片,一共兩個(gè)芯片和一個(gè)轉(zhuǎn)接板,我之前也沒(méi)有使用過(guò)這款芯片,比較好奇,體驗(yàn)了一下,個(gè)人認(rèn)為,如果你畫(huà)PCB制作一些板子的話,很推薦,比SD卡要方便很多。剛好最近在做K210的火災(zāi)檢測(cè),就用這個(gè)SD NAND來(lái)體驗(yàn)一下。
一、NAND是什么?
不用寫(xiě)驅(qū)動(dòng)程序自帶壞塊管理的NAND Flash(貼片式TF卡),尺寸小巧,簡(jiǎn)單易用,兼容性強(qiáng),穩(wěn)定可靠,固件可定制,LGA-8封裝,標(biāo)準(zhǔn)SDIO接口,兼容SPI/SD接口,兼容各大MCU平臺(tái),可替代普通TF卡/SD卡,尺寸6x8mm毫米,內(nèi)置SLC晶圓擦寫(xiě)壽命10萬(wàn)次,通過(guò)1萬(wàn)次隨機(jī)掉電測(cè)試耐高低溫,支持工業(yè)級(jí)溫度-40°~+85°,機(jī)貼手貼都非常方便,速度級(jí)別Class10(讀取速度23.5MB/S寫(xiě)入速度12.3MB/S)標(biāo)準(zhǔn)的SD 2.0協(xié)議使得用戶可以直接移植標(biāo)準(zhǔn)驅(qū)動(dòng)代碼,省去了驅(qū)動(dòng)代碼編程環(huán)節(jié)。支持TF卡啟動(dòng)的SOC都可以用SD NAND,比eMMC便宜。
簡(jiǎn)單來(lái)說(shuō)就是貼片TF,但是穩(wěn)定性更高。
二、來(lái)看一看NAND
這是NAND的轉(zhuǎn)接板
這是NAND的芯片,可以看出尺寸非常小,非常適合用來(lái)畫(huà)板子,這樣可以省去貼SD卡卡座的步驟。
最后貼好就是這個(gè)樣子
先用crystaldiskmark跑一下看看
這個(gè)是跑出來(lái)的數(shù)據(jù),數(shù)據(jù)上來(lái)看,還不錯(cuò)。但是實(shí)際使用怎么樣呢
三、部署火災(zāi)檢測(cè)
將文件放入SD NAND中,然后把轉(zhuǎn)接板插在K210上
然后打開(kāi)MAXIPY運(yùn)行
兄弟們,驚呆了,強(qiáng)烈推薦!!!!用過(guò)K210的都知道,這個(gè)玩意比較挑內(nèi)存卡,普通的內(nèi)存卡它根本讀不到,結(jié)果這個(gè)芯片可以直接用,確實(shí)有點(diǎn)震驚到我。
我之前畫(huà)過(guò)一個(gè)K210,因?yàn)橘NSD卡卡座比較頭大,現(xiàn)在有了新方案可以代替他,是時(shí)候著手在畫(huà)一個(gè)了。
用來(lái)做DIY去代替內(nèi)存卡,直接貼在板子上,非常省空間!!!!
最后簡(jiǎn)單貼一下代碼,模型文件在QQ群里,感興趣的可以主頁(yè)加群
import sensor
import image
import lcd
import utime
import KPU as kpu
from machine import UART
from fpioa_manager import fm
lcd.init()
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.set_windowing((224, 224))
sensor.set_hmirror(0)
sensor.run(1)
fm.register(6, fm.fpioa.UART1_TX, force=True)
fm.register(7, fm.fpioa.UART1_RX, force=True)
uart_A = UART(UART.UART1, 115200, 8, 1, 0, timeout=1000, read_buf_len=4096)
task = kpu.load("/sd/yolov2.kmodel")
f=open("anchors.txt","r")
anchor_txt=f.read()
L=[]
for i in anchor_txt.split(","):
L.append(float(i))
anchor=tuple(L)
f.close()
a = kpu.init_yolo2(task, 0.6, 0.3, 5, anchor)
f=open("lable.txt","r")
labels_txt=f.read()
labels = labels_txt.split(",")
f.close()
while(True):
img = sensor.snapshot()
code = kpu.run_yolo2(task, img)
if code:
for i in code:
a=img.draw_rectangle(i.rect(),(0,255,0),2)
a = lcd.display(img)
for i in code:
lcd.draw_string(i.x()+45, i.y()-5, labels[i.classid()]+" "+'%.2f'%i.value(), lcd.WHITE,lcd.GREEN)
else:
a = lcd.display(img)
a = kpu.deinit(task)
————————————————
親愛(ài)的卡友們,歡迎光臨雷龍官網(wǎng),如果看完文章之后還是有疑惑或不懂的地方,請(qǐng)聯(lián)系我們,深圳市雷龍發(fā)展專(zhuān)注存儲(chǔ)行業(yè)13年,專(zhuān)業(yè)提供小容量存儲(chǔ)解決方案。
-
芯片
+關(guān)注
關(guān)注
450文章
49315瀏覽量
415484 -
NAND
+關(guān)注
關(guān)注
16文章
1639瀏覽量
135529 -
FlaSh
+關(guān)注
關(guān)注
10文章
1588瀏覽量
147250 -
火災(zāi)檢測(cè)
+關(guān)注
關(guān)注
0文章
5瀏覽量
6512
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論