首頁(yè) > 評(píng)測(cè) > 成功眾籌11萬(wàn)美金的開(kāi)源LA——DSLogic邏輯分析儀評(píng)測(cè)

成功眾籌11萬(wàn)美金的開(kāi)源LA——DSLogic邏輯分析儀評(píng)測(cè)

  • 作者:netlhx
  • 來(lái)源:21ic
  • [導(dǎo)讀]
  • 在電子世界特別是MCU的世界里,不管你是硬件工程師還是軟件工程師,邏輯分析儀(LOGIC ANALYZER,下文簡(jiǎn)稱(chēng)LA)都是必備工具之一。

測(cè)試序列三 UART通信及解碼

其實(shí)對(duì)于LA來(lái)說(shuō),通信協(xié)議分析才是它的強(qiáng)項(xiàng)。我們知道,各種電子設(shè)備或器件,彼此需要通過(guò)信號(hào)來(lái)進(jìn)行信息交換,MCU與各外設(shè)之間也需要與使用相應(yīng)的通信協(xié)議來(lái)進(jìn)行通信。常見(jiàn)的通信協(xié)議有UART/USART、I2C、SPI、1-WIRE等,這些通信協(xié)議都是通過(guò)電平的高、低及轉(zhuǎn)換,結(jié)合相應(yīng)的時(shí)序信息來(lái)表示特定的數(shù)據(jù)。比如UART通信時(shí),表示開(kāi)始的信號(hào)就是一個(gè)高低電平轉(zhuǎn)換,而結(jié)束信號(hào)則由一個(gè)低、高電平轉(zhuǎn)換來(lái)完成。對(duì)于軟、硬件工程師來(lái)說(shuō),這些通信信號(hào)是看不見(jiàn)、也摸不著的電子信號(hào),所以要想觀察這些信號(hào)是否正常,我們需要一個(gè)可視化設(shè)備來(lái)完成這個(gè)工作。示波器也能完成這個(gè)工作,但一般意義上的示波器只能觀看到電平的高低及轉(zhuǎn)換過(guò)程,時(shí)序信息也能看到。但面對(duì)眾多的通信協(xié)議標(biāo)準(zhǔn),到底一個(gè)信號(hào)表示什么意思,對(duì)工程師來(lái)說(shuō)是很困難的!這個(gè)時(shí)候就是LA大顯身手的時(shí)候了,因?yàn)長(zhǎng)A一般都內(nèi)置有特定的協(xié)議解碼功能,只要告訴LA,這個(gè)信號(hào)是用什么協(xié)議實(shí)現(xiàn),對(duì)應(yīng)通道的具體功能,那么LA就能將一次通信過(guò)程完美的解碼,并以非常人性化的方式呈現(xiàn)給用戶(hù)。

DSLOGIC支持多達(dá)44種通信協(xié)議,受益于開(kāi)源特性,這個(gè)數(shù)字還在繼續(xù)增長(zhǎng)中。

本次就UART做一個(gè)簡(jiǎn)單的解碼測(cè)試,UART初始設(shè)置參數(shù)如下

huart2.Instance = USART2;

huart2.Init.BaudRate = 115200;

huart2.Init.WordLength = UART_WORDLENGTH_8B;

huart2.Init.StopBits = UART_STOPBITS_1;

huart2.Init.Parity = UART_PARITY_NONE;

huart2.Init.Mode = UART_MODE_TX_RX;

huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;

huart2.Init.OverSampling = UART_OVERSAMPLING_16;

HAL_UART_Init(&huart2);

發(fā)送到電腦PC端的信息如下

HAL_UART_Transmit(&huart2, (uint8_t *)"Hello\r\n", 7, 100);

下面設(shè)置LA的解碼,點(diǎn)擊DSVIEW界面上的DECODER按鈕,從可用的下拉列表中選擇解碼協(xié)議UART,點(diǎn)擊旁邊的+號(hào),添加UART協(xié)議,此時(shí)彈出一個(gè)對(duì)話(huà)框,讓用戶(hù)設(shè)定UART參數(shù),探頭所使用的通道。這里只測(cè)試了TX發(fā)送功能,設(shè)置如下

秀外慧中16631.png

點(diǎn)擊OK按鈕,完成參數(shù)的設(shè)置。

在正式開(kāi)始測(cè)試UART協(xié)議解碼功能之前,再說(shuō)說(shuō)觸發(fā)器的功能及設(shè)置。

所謂觸發(fā)器,指的是在采集信號(hào)的時(shí)候,只有當(dāng)某個(gè)條件(如高、低電平或電平之間轉(zhuǎn)換)的時(shí)候,才正式開(kāi)始采集信號(hào)。這樣,我們?cè)诓杉盘?hào)的時(shí)候才不會(huì)手忙腳亂。DSVIEW的觸發(fā)功能獨(dú)樹(shù)一幟,觸發(fā)條件設(shè)置非常靈活。觸發(fā)條件可以是簡(jiǎn)單形式,也可以使用高級(jí)模式。下圖列出了高級(jí)觸發(fā)模式的對(duì)話(huà)框設(shè)置。

秀外慧中16826.png

該設(shè)置主要包括如下幾個(gè)方面:

觸發(fā)位置,從什么時(shí)候開(kāi)始采集信號(hào)

分階段觸發(fā),指定一系列的觸發(fā)條件,可以組合各采集通道的狀態(tài)來(lái)實(shí)現(xiàn)觸發(fā);也可以按先后條件來(lái)指定觸發(fā)邏輯

總之,DSLOGIC的觸發(fā)器設(shè)置非常靈活,可自由組合,實(shí)現(xiàn)一些高級(jí)的觸發(fā)功能。

根據(jù)UART通信協(xié)議規(guī)定,UART起始位始于一個(gè)高低轉(zhuǎn)換電平,所以如下圖所示,我們將觸發(fā)條件設(shè)置為下降沿,注意圖中UART2_TX通道中黃色的觸發(fā)條件設(shè)置。

秀外慧中17032.png

圖中上部列出來(lái)UART解碼后的詳細(xì)信息,可以看到我們發(fā)送的字符“Hello\r\n”,已經(jīng)全部發(fā)送,解碼是成功的。

事實(shí)上,DSLOGIC支持眾多的通信協(xié)議解碼,上面僅僅是冰山一角,更多的功能有待你進(jìn)一步發(fā)掘!

小結(jié)

總體來(lái)說(shuō),DSLOGIC是一款非常優(yōu)秀的產(chǎn)品。硬件基于Xilinx Spartan-6 FPGA+SDRAM的產(chǎn)品架構(gòu),可以提供高達(dá)400MHz的實(shí)時(shí)采樣,50MHz的狀態(tài)采樣,16M*16通道的采樣深度。16通道同時(shí)采樣能達(dá)最高100MHZ的采樣率,能保在證絕大多數(shù)情況下滿(mǎn)足你的需求。16級(jí)組合式高級(jí)觸發(fā)功能,輕松設(shè)定復(fù)雜的觸發(fā)條件,讓你在進(jìn)行協(xié)議分析及解碼時(shí)游刃有余。連續(xù)可調(diào)的電平閾值,大大降低了誤判和采樣毛刺產(chǎn)生的可能性。開(kāi)源軟件DSVIEW,支持高達(dá)44種通信協(xié)議的分析及解碼,從此,信號(hào)不只是概念,它們更是可愛(ài)的精靈,在DSLOGIC的魔力之下,它們就是一組跳動(dòng)的音符,在你創(chuàng)作的過(guò)程中,伴你一路前行!

作為一款新的產(chǎn)品,DSLOGIC也有一些需要改進(jìn)的地方。一是官方文檔比較少,這也許是技術(shù)類(lèi)創(chuàng)業(yè)者的通病,他們更關(guān)注自己產(chǎn)品的性能,愿意花更多的時(shí)間在產(chǎn)品本身,而對(duì)于產(chǎn)品文檔及周邊的關(guān)注相對(duì)較少。例如觸發(fā)器的高級(jí)設(shè)置中,初次上手者基本很難一次性設(shè)置成功,這時(shí)用戶(hù)希望能有一些簡(jiǎn)單的教程或手冊(cè)幫助他們快速上手。希望官方能逐漸完善產(chǎn)品文檔,這樣產(chǎn)品才會(huì)更加有競(jìng)爭(zhēng)力!眾多的產(chǎn)品使用者提出,DSLOGIC非常優(yōu)秀,配套的附件特別是探頭夾子,質(zhì)量一般,不過(guò)這方面的影響并不是太大。再有就是上位機(jī)軟件本身,可以改進(jìn)的空間還很大。比如DSLOGIC最多支持16通道的數(shù)據(jù)采樣,但是在DSVIEW上如果關(guān)閉部分通道的話(huà),未關(guān)閉的通道結(jié)果也會(huì)占據(jù)著整個(gè)界面本身,這樣顯示的結(jié)果就不是那么和諧。同時(shí)DSVIEW軟件本身也還有一些BUG,加上一些功能的設(shè)置不太人性化,這些都是需要改進(jìn)的地方。隨著產(chǎn)品慢慢完善,我相信,在測(cè)控儀器的天地,必將有DREAMSOURCELAB的一片天地!

國(guó)產(chǎn)、開(kāi)源這些概念,到了今天也許已不能引起你太多的激情。畢竟像XX之類(lèi)打著研發(fā)的幌子,騙取國(guó)人信任的情況讓我們傷透了心。但從DSLOGIC上,我們?cè)僖淮慰吹搅讼M苍S這只不過(guò)是燎原的一絲星火,青蘋(píng)之末的一縷微風(fēng),但我們始終要相信:美好的事情正在發(fā)生。

星星之火,可以燎原;始于青蘋(píng)之末的微風(fēng),也絕不會(huì)止于草莽之間!

參考資源

1. DREAMSOURCELAB官方主頁(yè):http://dreamsourcelab.com/index.html

2. KICKSTARTER眾籌頁(yè)面:https://www.kickstarter.com/projects/dreamsourcelab/dslogic-multifunction-instruments-for-everyone

3. DSVIEW軟件下載: http://dreamsourcelab.com/download.html

4. Xilinx Spartan-6 FPGA產(chǎn)品文檔:http://www.xilinx.com/support/documentation/data_sheets/ds162.pdf

5. 測(cè)試用代碼包:鏈接:http://pan.baidu.com/s/1gdYSfsv 密碼:g7im

 

——————本文系21ic原創(chuàng),未經(jīng)許可嚴(yán)禁轉(zhuǎn)載——————

  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評(píng)論

  • 聯(lián)系人:巧克力娃娃
  • 郵箱:board@21ic.com
  • 我要投稿
  • 歡迎入駐,開(kāi)放投稿

熱門(mén)標(biāo)簽
項(xiàng)目外包 more+