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

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

3天內(nèi)不再提示

如何測試函數(shù)的正確與否呢

通信工程師專輯 ? 來源:通信工程師專輯 ? 作者:了凡三訓 ? 2022-11-03 09:52 ? 次閱讀

上堂課講到了測試函數(shù)的內(nèi)容,如何測試呢?要通過寫測試文件來檢驗函數(shù)的正確與否。這樣的方法不僅在MATLAB中有效,對于c、verilog等語言都有效。

一起來學習測試程序吧。真正的干貨!本程序還附帶了字節(jié)轉換的內(nèi)容。

為什么有這段?當年在研發(fā)衛(wèi)星地球站的時候,需要和ARM中的結果進行比對。于是留下了這段代碼!

%*********** 函數(shù)測試程序 ************%

%%%% File: test_function_crc_itu.m %%%%

%% date: 2010-04-07 author: 算法工匠 %%

%%% 程序說明

% 測試函數(shù)function_crc_itu結果和存儲表法是否一致。

% 函數(shù)按照ITU定義的生成多項式 G(x) = x^16 + x^12 + x^5 + 1

%%********** 程序主體 **********%%

data_binary = randint(1,100);

% 矩陣運算函數(shù)

crc_result = function_crc_itu(data_binary);

% 比特運算函數(shù)

crc_result1 = function_crc_itu_v1(data_binary);

% 用于查表法計算的等效檢驗。

% 在計算機中使用字節(jié)的概念。

%%%%% 字節(jié)轉換

for i = 1:length(data_binary)/4

% 高位進寄存器

data_16(i) = 2^3*data_binary((i-1)*4+1) + 2^2*data_binary((i-1)*4+2) + 2*data_binary((i-1)*4+3) + data_binary((i-1)*4+4) ;

end

for i = 1:4

% 寄存器0是高位

result_16(i) = 2^3*crc_result((i-1)*4+1) + 2^2*crc_result((i-1)*4+2) + 2*crc_result((i-1)*4+3) + crc_result((i-1)*4+4) ;

end

%%%% 文本存儲

data_hex = dec2hex(data_16);

fid = fopen('data_hex.txt', 'wt');

fprintf(fid, '%s ', data_hex);

fclose(fid);

result_hex = dec2hex(result_16);

fid = fopen('result_hex.txt', 'wt');

fprintf(fid, '%s ', result_hex);

fclose(fid);

%%% 結論

% 測試結果表明函數(shù)正確。

% function_crc_itu_v1適合在FPGA中使用。

% 2016-11-17

本程序中測試的函數(shù)不是上堂課給出的CRC生成函數(shù),需要同學們自己改動相關語句來完成上堂課所寫的函數(shù)的測試。自己動手,豐衣足食。不能老是靠老師扶著走。調完程序后還要干什么呢?寫報告。軟件測試報告或者仿真報告是必須要寫的。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5294

    瀏覽量

    119816
  • ITU
    ITU
    +關注

    關注

    1

    文章

    25

    瀏覽量

    14833
  • Verilog語言
    +關注

    關注

    0

    文章

    113

    瀏覽量

    8204

原文標題:計算機通信與網(wǎng)絡v2 實驗課程(6)

文章出處:【微信號:gh_30373fc74387,微信公眾號:通信工程師專輯】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    C語言main函數(shù)正確寫法

    大家好,我是嵌入式老林,從事嵌入式軟件開發(fā)多年,今天分享的內(nèi)容是C語言main函數(shù)正確寫法,希望能對你有所幫助
    發(fā)表于 07-11 11:51 ?1067次閱讀
    C語言main<b class='flag-5'>函數(shù)</b>的<b class='flag-5'>正確</b>寫法

    請問像CPU、DMA、HTU的MPU功能,有沒有什么人為加入故障的方法來測試一下MPU功能的好用與否?

    本帖最后由 一只耳朵怪 于 2018-5-25 17:26 編輯 您好,像CPU、DMA、HTU的MPU功能,有沒有什么人為加入故障的方法來測試一下MPU功能的好用與否
    發(fā)表于 05-25 07:18

    STM32F407VET6驅動LCD1602顯示,通過usmart測試函數(shù)執(zhí)行

    STM32F407VET6驅動LCD1602顯示,通過usmart測試函數(shù)執(zhí)行
    發(fā)表于 09-16 13:31

    如何去測試CAN接口通訊功能的正確

    如何去測試CAN接口通訊功能的正確?怎樣去設計驅動控制板的CAN通訊接口部分
    發(fā)表于 11-09 07:30

    為什么使用printf()函數(shù)去調試STM32串口卻無法接收正確數(shù)據(jù)

    為什么使用printf()函數(shù)去調試STM32串口無法接收正確數(shù)據(jù)?如何去解決這個問題?
    發(fā)表于 11-30 07:15

    如何對printf()函數(shù)或scanf()函數(shù)進行重定向

    怎樣用串口來測試代碼的正確與否?如何對printf()函數(shù)或scanf()函數(shù)進行重定向
    發(fā)表于 11-30 07:41

    如何對FLASH讀寫成功與否進行測試?

    如何對FLASH讀寫成功與否進行測試
    發(fā)表于 02-17 06:47

    Finsh自定義命令測試完循環(huán)執(zhí)行的函數(shù)后能夠退出回到終端界面嗎

    大家好!我們經(jīng)常會用Finsh自定義一些測試函數(shù),比如下面這樣的:void test_led(){led_on();}MSH_CMD_EXPORT
    發(fā)表于 07-26 11:18

    自定義函數(shù)測試學習工程

    自定義函數(shù)測試學習工程
    發(fā)表于 07-01 16:37 ?5次下載

    函數(shù)信號的產(chǎn)生與測試

    函數(shù)信號的產(chǎn)生與測試 一、           實驗目的 1、通過實驗掌握函數(shù)
    發(fā)表于 05-10 00:21 ?1278次閱讀
    <b class='flag-5'>函數(shù)</b>信號的產(chǎn)生與<b class='flag-5'>測試</b>

    Linux內(nèi)核模塊間函數(shù)調用正確方法

    模塊之間發(fā)生調用關系是常有的事情,下面以兩個模塊A、B,B使用A模塊提供的函數(shù)為例,講解正確使用的方法。
    發(fā)表于 04-28 17:00 ?2287次閱讀

    WINCC使用系統(tǒng)函數(shù)和運行系統(tǒng)腳本

    如果 HMI 設備支持用戶自定義函數(shù),可以將系統(tǒng)函數(shù)與用戶自定義函數(shù)代碼中的指令和條件結合使用。這樣,便可以根據(jù)特定的系統(tǒng)狀態(tài)來執(zhí)行自定義函數(shù)。此外,還可以計算系統(tǒng)
    的頭像 發(fā)表于 03-18 10:22 ?4302次閱讀
    WINCC使用系統(tǒng)<b class='flag-5'>函數(shù)</b>和運行系統(tǒng)腳本

    德索fakra連接器怎么測試才能知道它穩(wěn)定與否

    產(chǎn)品之前, 也要做好fakra連接器的測試檢測工作,那么fakra連接器怎么測試才能知道它穩(wěn)定與否,德索工程師認為五大檢測必不可少,具體內(nèi)容如下:
    的頭像 發(fā)表于 04-09 10:16 ?630次閱讀
    德索fakra連接器怎么<b class='flag-5'>測試</b>才能知道它穩(wěn)定<b class='flag-5'>與否</b>

    我們都要學會正確使用推拉力測試

    測試機的時候,都不會注意一些弊端,導致推拉測試機很容易損壞,所以為了延長推拉力測試機的使用壽命,我們都要學會正確使用推拉力測試機,那么該如
    的頭像 發(fā)表于 08-17 15:06 ?759次閱讀

    if嵌套函數(shù)正確輸入方法為

    輸入方法是在if語句內(nèi)部創(chuàng)建一個新的函數(shù)。這個函數(shù)可以是一個匿名函數(shù)或者是一個有名稱的函數(shù),具體取決于你的需求和偏好。下面是一個if嵌套函數(shù)
    的頭像 發(fā)表于 11-30 16:50 ?1295次閱讀