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

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

W55MH32以太網(wǎng)單片機(jī)開發(fā)教程 第三十四章 TRNG——真隨機(jī)數(shù)

W55MH32 ? 來(lái)源:W55MH32 ? 作者: W55MH32 ? 2025-07-01 16:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

單芯片解決方案,開啟全新體驗(yàn)——W55MH32高性能以太網(wǎng)單片機(jī)

W55MH32是WIZnet重磅推出的高性能以太網(wǎng)單片機(jī),它為用戶帶來(lái)前所未有的集成化體驗(yàn)。這顆芯片將強(qiáng)大的組件集于一身,具體來(lái)說(shuō),一顆W55MH32內(nèi)置高性能Arm? Cortex-M3核心,其主頻最高可達(dá)216MHz;配備1024KB FLASH與96KB SRAM,滿足存儲(chǔ)與數(shù)據(jù)處理需求;集成TOE引擎,包含WIZnet全硬件TCP/IP協(xié)議棧、內(nèi)置MAC以及PHY,擁有獨(dú)立的32KB以太網(wǎng)收發(fā)緩存,可供8個(gè)獨(dú)立硬件socket使用。如此配置,真正實(shí)現(xiàn)了All-in-One解決方案,為開發(fā)者提供極大便利。

在封裝規(guī)格上,W55MH32提供了兩種選擇:QFN100和QFN68。

W55MH32L采用QFN100封裝版本,尺寸為12x12mm,其資源豐富,專為各種復(fù)雜工控場(chǎng)景設(shè)計(jì)。它擁有66個(gè)GPIO、3個(gè)ADC、12通道DMA、17個(gè)定時(shí)器、2個(gè)I2C、5個(gè)串口、2個(gè)SPI接口(其中1個(gè)帶I2S接口復(fù)用)、1個(gè)CAN、1個(gè)USB2.0以及1個(gè)SDIO接口。如此豐富的外設(shè)資源,能夠輕松應(yīng)對(duì)工業(yè)控制中多樣化的連接需求,無(wú)論是與各類傳感器、執(zhí)行器的通信,還是對(duì)復(fù)雜工業(yè)協(xié)議的支持,都能游刃有余,成為復(fù)雜工控領(lǐng)域的理想選擇。同系列還有QFN68封裝的W55MH32Q版本,該版本體積更小,僅為8x8mm,成本低,適合集成度高的網(wǎng)關(guān)模組等場(chǎng)景,軟件使用方法一致。

此外,本W(wǎng)55MH32支持硬件加密算法單元,WIZnet還推出TOE+SSL應(yīng)用,涵蓋TCP SSL、HTTP SSL以及 MQTT SSL等,為網(wǎng)絡(luò)通信安全再添保障。

為助力開發(fā)者快速上手與深入開發(fā),基于W55MH32L這顆芯片,WIZnet精心打造了配套開發(fā)板。開發(fā)板集成WIZ-Link芯片,借助一根USB C口數(shù)據(jù)線,就能輕松實(shí)現(xiàn)調(diào)試、下載以及串口打印日志等功能。開發(fā)板將所有外設(shè)全部引出,拓展功能也大幅提升,便于開發(fā)者全面評(píng)估芯片性能。

wKgZPGhjkceAQighABA5X7BENG0290.png

第三十四章 TRNG——真隨機(jī)數(shù)

在當(dāng)今數(shù)字化時(shí)代,信息安全已成為嵌入式系統(tǒng)設(shè)計(jì)中不可忽視的關(guān)鍵因素。從物聯(lián)網(wǎng)設(shè)備的身份認(rèn)證到加密通信的密鑰生成,高質(zhì)量的隨機(jī)數(shù)是構(gòu)建安全系統(tǒng)的基石。W55MH32內(nèi)置的真隨機(jī)數(shù)生成器(TRNG)模塊為開發(fā)者提供了硬件級(jí)別的隨機(jī)數(shù)解決方案。

本文將通過(guò)W55MH32 TRNG的工作原理、應(yīng)用場(chǎng)景、程序設(shè)計(jì)等方面對(duì)真隨機(jī)數(shù)進(jìn)行講解。

1TRNG概述

1.1簡(jiǎn)介

TRNG(True Random Number Generator)即真隨機(jī)數(shù)生成器,與偽隨機(jī)數(shù)生成器(PRNG)不同,其隨機(jī)性來(lái)源于物理噪聲,而非確定性算法。W55MH32的TRNG模塊利用芯片內(nèi)部的物理噪聲源(如熱噪聲、時(shí)鐘抖動(dòng)等)生成不可預(yù)測(cè)的隨機(jī)數(shù),適用于加密、安全認(rèn)證、隨機(jī)密鑰生成等對(duì)隨機(jī)性要求高的場(chǎng)景。

1.2硬件結(jié)構(gòu)

W55MH32的TRNG模塊主要由以下部分組成:

  1. 噪聲源:通?;贛OS管的熱噪聲或環(huán)形振蕩器的抖動(dòng),產(chǎn)生原始隨機(jī)信號(hào)。
  2. 放大與整形電路:增強(qiáng)噪聲信號(hào)并轉(zhuǎn)換為可處理的數(shù)字信號(hào)。
  3. 采樣電路:對(duì)噪聲信號(hào)進(jìn)行采樣,生成原始隨機(jī)比特流。
  4. 熵累積器:收集采樣得到的熵,積累足夠的隨機(jī)性。
  5. 隨機(jī)數(shù)生成器:將累積的熵轉(zhuǎn)換為可用的隨機(jī)數(shù)(如32位整數(shù))。
  6. 硬件測(cè)試與校準(zhǔn):確保噪聲源正常工作,必要時(shí)進(jìn)行校準(zhǔn)。

1.3真隨機(jī)與偽隨機(jī)的區(qū)別

隨機(jī)數(shù)在計(jì)算機(jī)科學(xué)中主要分為兩類——真隨機(jī)和偽隨機(jī),其對(duì)比如下所示:

特性

真隨機(jī)數(shù)(TRNG)

偽隨機(jī)數(shù)(PRNG)

隨機(jī)性來(lái)源

物理噪聲(熱噪聲、時(shí)鐘抖動(dòng))

數(shù)學(xué)算法(如線性同余法)

可預(yù)測(cè)性

不可預(yù)測(cè)(基于物理現(xiàn)象)

理論上可預(yù)測(cè)(已知種子和算法)

周期性

無(wú)周期性

存在周期性(周期長(zhǎng)度取決于算法)

硬件依賴

需要特定硬件模塊

純軟件實(shí)現(xiàn)

應(yīng)用場(chǎng)景

加密、安全認(rèn)證、密碼學(xué)

模擬、游戲、非安全場(chǎng)景隨機(jī)數(shù)

1.4工作流程

TRNG的工作流程可以分為以下幾個(gè)關(guān)鍵步驟:

  1. 噪聲采集階段:多個(gè)環(huán)形振蕩器同時(shí)工作,其輸出頻率的微小差異被捕獲并放大。這些差異作為原始隨機(jī)信號(hào)輸入到后續(xù)處理電路。
  2. 數(shù)字化階段:模擬的隨機(jī)信號(hào)被采樣并轉(zhuǎn)換為數(shù)字比特流。采樣過(guò)程通常使用高速時(shí)鐘進(jìn)行,確保捕獲到足夠的隨機(jī)信息。
  3. 隨機(jī)性增強(qiáng)階段:原始數(shù)字信號(hào)可能存在統(tǒng)計(jì)偏差,需要通過(guò)算法進(jìn)行后處理。W55MH32的TRNG使用一種稱為"異或樹"的結(jié)構(gòu),將多個(gè)環(huán)形振蕩器的輸出進(jìn)行異或運(yùn)算,增強(qiáng)隨機(jī)性并消除可能的偏差。
  4. 質(zhì)量檢測(cè)階段:生成的隨機(jī)數(shù)經(jīng)過(guò)實(shí)時(shí)統(tǒng)計(jì)測(cè)試,確保其符合隨機(jī)性標(biāo)準(zhǔn)。W55MH32的TRNG實(shí)現(xiàn)了兩種主要測(cè)試:
  5. 單比特頻率測(cè)試:確保0和1的出現(xiàn)概率接近50%
  6. 游程測(cè)試:檢測(cè)連續(xù)相同比特的長(zhǎng)度是否符合隨機(jī)分布
  7. 輸出階段:通過(guò)質(zhì)量檢測(cè)的隨機(jī)數(shù)被存儲(chǔ)在數(shù)據(jù)寄存器中,供CPU讀取使用。當(dāng)檢測(cè)到質(zhì)量問(wèn)題時(shí),TRNG會(huì)自動(dòng)禁用輸出并設(shè)置錯(cuò)誤標(biāo)志。

2應(yīng)用場(chǎng)景

  1. 加密密鑰生成:為AES、RSA等加密算法生成初始密鑰。
  2. 安全認(rèn)證:生成隨機(jī)挑戰(zhàn)值(Challenge)用于身份驗(yàn)證。
  3. 隨機(jī)數(shù)種子:為PRNG提供高質(zhì)量的初始種子。
  4. 安全協(xié)議:如TLS握手、VPN密鑰協(xié)商等場(chǎng)景。
  5. 游戲:需要高隨機(jī)性的虛擬骰子、卡牌等應(yīng)用。

3注意事項(xiàng)

  1. 低功耗模式:在睡眠或停機(jī)模式下,TRNG可能停止工作,需重新初始化。
  2. 噪聲源依賴性:溫度、電壓等環(huán)境因素可能影響噪聲源強(qiáng)度,導(dǎo)致隨機(jī)性波動(dòng)。
  3. 驗(yàn)證測(cè)試:在關(guān)鍵應(yīng)用中,建議對(duì)生成的隨機(jī)數(shù)進(jìn)行離線測(cè)試(如使用NIST測(cè)試工具)。
  4. 多線程安全:在RTOS環(huán)境中,訪問(wèn)TRNG時(shí)需加鎖,避免競(jìng)爭(zhēng)條件。

4程序設(shè)計(jì)

4.1TRNG_IntTest例程

TRNG_IntTest例程主要實(shí)現(xiàn)了基于W55MH32芯片的真隨機(jī)數(shù)生成器(TRNG)中斷測(cè)試功能。以下是實(shí)現(xiàn)過(guò)程和結(jié)果驗(yàn)證:

4.1.1執(zhí)行函數(shù)TRNG_Int()

TRNG的中斷配置、TRNG輸出使能、中斷使能、隨機(jī)種子設(shè)置和啟動(dòng)TRNG硬件主要在TRNG_Int()函數(shù)中實(shí)現(xiàn):

void TRNG_Int(void)
{
    NVIC_Configuration();
    TRNG_Out(ENABLE);
    TRNG_ITConfig(ENABLE);
    TRNG_SetPseudoRandom(0X12345560);
    TRNG_Start();
}

4.1.2配置嵌套向量中斷控制器

NVIC_Configuration()為中斷配置函數(shù):

void NVIC_Configuration(void)
{
    NVIC_InitTypeDef NVIC_InitStructure;
 
    NVIC_SetPriorityGrouping(NVIC_PriorityGroup_1);
 
    NVIC_InitStructure.NVIC_IRQChannel                  = TRNG_IRQn;
    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority =1;
    NVIC_InitStructure.NVIC_IRQChannelSubPriority       =1;
    NVIC_InitStructure.NVIC_IRQChannelCmd               = ENABLE;
    NVIC_Init(&NVIC_InitStructure);
}

該函數(shù)主要進(jìn)行了如下配置:

  1. NVIC_PriorityGroup_1:表示使用優(yōu)先級(jí)分組模式1,即:
  2. 搶占優(yōu)先級(jí)占1位(0-1)
  3. 子優(yōu)先級(jí)占3位(0-7)
  4. 中斷參數(shù)配置:
  5. 中斷源:TRNG_IRQn(真隨機(jī)數(shù)生成器中斷)
  6. 雙重優(yōu)先級(jí)機(jī)制:搶占優(yōu)先級(jí)1可以打斷更低搶占優(yōu)先級(jí)的中斷
  7. 子優(yōu)先級(jí)1:相同搶占優(yōu)先級(jí)時(shí)決定響應(yīng)順序
  8. 使能TRNG硬件中斷通道
  9. NVIC初始化

4.1.3使能TRNG輸出功能

TRNG_Out()函數(shù)是TRNG初始化過(guò)程中的關(guān)鍵步驟,通過(guò)控制時(shí)鐘來(lái)啟用或禁用TRNG模塊,從而間接控制隨機(jī)數(shù)的生成:

void TRNG_Out(FunctionalStateNewState)
{
  if(NewState!= DISABLE)
  {
  RCC->RCC_SYSCFG_CONFIG=0x01;
  SYSCFG->SYSCFG_LOCK =0xCDED3526;
  SYSCFG->SSC_CLK_EN |= TRNG_RNG_ENABLE;
  }
  else
  {
  RCC->RCC_SYSCFG_CONFIG=0x00;
  SYSCFG->SSC_CLK_EN &=~TRNG_RNG_ENABLE;
  }
}

當(dāng)使能TRNG輸出時(shí),首先配置SYSCFG時(shí)鐘域(RCC_SYSCFG_CONFIG=0x01),然后向鎖定寄存器寫入特定密鑰(SYSCFG_LOCK=0xCDED3526)以解鎖SYSCFG寄存器,最后設(shè)置安全系統(tǒng)時(shí)鐘使能寄存器(SSC_CLK_EN)的對(duì)應(yīng)位以開啟TRNG時(shí)鐘。

當(dāng)失能輸出時(shí),則執(zhí)行相反操作:清除時(shí)鐘域配置并禁用TRNG時(shí)鐘。這種設(shè)計(jì)通過(guò)時(shí)鐘控制間接管理TRNG模塊,是低功耗和安全設(shè)計(jì)的常見(jiàn)做法,其中鎖定機(jī)制可防止意外修改寄存器。

4.1.4使能TRNG中斷

TRNG_ITConfig()是控制TRNG中斷功能的函數(shù),主要用于啟用或禁用TRNG模塊的中斷機(jī)制:

void TRNG_ITConfig(FunctionalStateNewState)
{
  if(NewState!= DISABLE)
  {
  TRNG->RNG_CSR|= TRNG_RNG_CSR_INTP_EN_Mask;
  }
  else
  {
  TRNG->RNG_CSR&=~TRNG_RNG_CSR_INTP_EN_Mask;
  }
}

當(dāng)傳入?yún)?shù)為ENABLE使能中斷時(shí),函數(shù)通過(guò)位操作(|=)將 TRNG控制狀態(tài)寄存器(RNG_CSR)中的中斷使能位(TRNG_RNG_CSR_INTP_EN_Mask)置 1,允許 TRNG在隨機(jī)數(shù)生成完成或檢測(cè)到錯(cuò)誤時(shí)觸發(fā)中斷。

當(dāng)傳入為DISABLE失能中斷時(shí),則通過(guò)位操作(&= ~)清除該位,禁用中斷功能。

4.1.5設(shè)置偽隨機(jī)數(shù)種子

通過(guò)TRNG_SetPseudoRandom()函數(shù)設(shè)置偽隨機(jī)種子,主要用于增強(qiáng)隨機(jī)數(shù)生成的質(zhì)量或?qū)崿F(xiàn)特定應(yīng)用場(chǎng)景:

void TRNG_SetPseudoRandom(uint32_t TRNG_PseudoRandom)
{
  TRNG->RNG_PN= TRNG_PseudoRandom;
}

該函數(shù)將傳入的32位種子值寫入RNG_PN寄存器。

4.1.6啟動(dòng)TRNG硬件

TRNG_Start()為啟動(dòng)TRNG(真隨機(jī)數(shù)生成器)的函數(shù),通過(guò)配置特定寄存器來(lái)激活TRNG模塊:

void TRNG_Start(void)
{
  TRNG->RNG_AMA&=~TRNG_RNG_AMA_PD_ALL_Mask;
  TRNG->RNG_CSR&=~TRNG_RNG_CSR_S128_TRNG0_Mask;
}

函數(shù)首先通過(guò)TRNG->RNG_AMA &= ~TRNG_RNG_AMA_PD_ALL_Mask來(lái)清除電源關(guān)閉位,將TRNG的模擬電路從低功耗模式喚醒,激活環(huán)形振蕩器等物理隨機(jī)源;接著通過(guò)TRNG->RNG_CSR &= ~TRNG_RNG_CSR_S128_TRNG0_Mask清除128位采樣模式標(biāo)志。這兩個(gè)步驟共同完成TRNG的啟動(dòng)初始化,為后續(xù)生成隨機(jī)數(shù)做準(zhǔn)備。

4.1.7中斷服務(wù)函數(shù)

RNG_IRQHandler()是處理TRNG中斷的函數(shù),主要用于響應(yīng)隨機(jī)數(shù)生成完成事件和檢測(cè)到的安全攻擊事件:

void RNG_IRQHandler(void)
{
    if(TRNG_GetITStatus(TRNG_IT_RNG0_S128)== SET)
    {
        printf("Rng : %08X %08X %08X %08X rn", TRNG->RNG_DATA, TRNG->RNG_DATA, TRNG->RNG_DATA, TRNG->RNG_DATA);
        TRNG_ClearITPendingBit(TRNG_IT_RNG0_S128);
    }
    if(TRNG_GetITStatus(TRNG_IT_RNG0_ATTACK)== SET)
    {
        TRNG_ClearITPendingBit(TRNG_IT_RNG0_ATTACK);
    }
    NVIC_ClearPendingIRQ(TRNG_IRQn);
}

當(dāng)128位隨機(jī)數(shù)生成完成(TRNG_IT_RNG0_S128標(biāo)志置位)時(shí),函數(shù)通過(guò)連續(xù)4次讀取RNG_DATA寄存器獲取128位隨機(jī)數(shù)(4個(gè)32位值)并打印輸出,隨后清除中斷標(biāo)志;當(dāng)檢測(cè)到安全攻擊(TRNG_IT_RNG0_ATTACK標(biāo)志置位)時(shí),清除中斷標(biāo)志。最后,函數(shù)清除NVIC中斷掛起標(biāo)志以允許后續(xù)中斷。

4.1.8主函數(shù)main()

主函數(shù)main()如下:

int main(void)
{
    RCC_ClocksTypeDef clocks;
 
    delay_init();
 
    UART_Configuration(115200);
    printf("TRNG Int Out Test.n");
    RCC_GetClocksFreq(&clocks);
 
    printf("SYSCLK: %3.1fMhz, HCLK: %3.1fMhz, PCLK1: %3.1fMhz, PCLK2: %3.1fMhz, ADCCLK: %3.1fMhzn",
           (float)clocks.SYSCLK_Frequency /1000000,(float)clocks.HCLK_Frequency/1000000,
           (float)clocks.PCLK1_Frequency /1000000,(float)clocks.PCLK2_Frequency/1000000,(float)clocks.ADCCLK_Frequency/1000000);
 
 
    TRNG_Int();
    while(1);
}

程序首先初始化延時(shí)函數(shù)并配置串口通信(波特率115200),隨后打印系統(tǒng)各時(shí)鐘頻率(SYSCLK、HCLK、PCLK1/2、ADCCLK)。接著調(diào)用TRNG_Int()函數(shù)初始化TRNG,該函數(shù)會(huì)配置NVIC中斷、使能TRNG輸出、設(shè)置中斷模式和偽隨機(jī)種子并啟動(dòng)TRNG。最后程序進(jìn)入無(wú)限循環(huán),等待TRNG生成128位隨機(jī)數(shù)時(shí)觸發(fā)中斷,由中斷處理函數(shù)RNG_IRQHandler()讀取并打印隨機(jī)數(shù)。

4.1.9下載驗(yàn)證

程序下載運(yùn)行后,首先打印了示例名稱和系統(tǒng)各時(shí)鐘的頻率,然后便不停地打印生成的隨機(jī)數(shù):

wKgZPGhjlouAKjwLAAmyAjekxeM732.png

4.2TRNG_PollingTest例程

TRNG_PollingTest例程為TRNG的輪詢模式操作,與之前的中斷模式不同,此函數(shù)通過(guò)主動(dòng)查詢方式獲取隨機(jī)數(shù)。

4.2.1執(zhí)行函數(shù)TRNG_Polling()

TRNG的輸出使能、啟動(dòng)和查詢打印的功能主要在TRNG_Polling()函數(shù)中實(shí)現(xiàn):

void TRNG_Polling(void)
{
    uint32_tBuf[4];
    TRNG_Out(ENABLE);
    TRNG_Start();
    while(1)
    {
        if(0== TRNG_Get(Buf))
        {
            printf("Rng : %08X %08X %08X %08X rn",Buf[0],Buf[1],Buf[2],Buf[3]);
            TRNG_ClearITPendingBit(TRNG_IT_RNG0_S128);
        }
    }
}

首先定義了一個(gè)4元素的32位整數(shù)數(shù)組作為緩沖區(qū),然后調(diào)用TRNG_Out(ENABLE)使能TRNG輸出,并通過(guò)TRNG_Start()啟動(dòng)TRNG生成隨機(jī)數(shù)。隨后進(jìn)入無(wú)限循環(huán),不斷調(diào)用TRNG_Get()函數(shù)嘗試獲取隨機(jī)數(shù),當(dāng)該函數(shù)返回0時(shí)表示獲取成功,此時(shí)將4個(gè)32位隨機(jī)數(shù)打印輸出,并清除中斷標(biāo)志位(即使在輪詢模式下也需清除)。

TRNG_Start()和TRNG_Get()在上節(jié)內(nèi)容已經(jīng)講解,且主函數(shù)僅示例名稱和執(zhí)行函數(shù)有所修改,其他保持一致,這里就不再贅述。

4.2.2下載驗(yàn)證

程序下載運(yùn)行后,首先打印了示例名稱和各系統(tǒng)時(shí)鐘頻率,接著便不斷打印生成的隨機(jī)數(shù):

wKgZO2hjloqAMDLsAAoewriwtFI329.png

5總結(jié)

W55MH32的TRNG模塊為嵌入式系統(tǒng)提供了硬件級(jí)別的真隨機(jī)數(shù)生成能力,是構(gòu)建安全系統(tǒng)的重要組成部分。通過(guò)合理配置和使用,可以生成高質(zhì)量的隨機(jī)數(shù),滿足加密、認(rèn)證等安全敏感應(yīng)用的需求。

WIZnet是一家無(wú)晶圓廠半導(dǎo)體公司,成立于1998年。產(chǎn)品包括互聯(lián)網(wǎng)處理器iMCU?,它采用TOE(TCP/IP卸載引擎)技術(shù),基于獨(dú)特的專利全硬連線TCP/IP。iMCU?面向各種應(yīng)用中的嵌入式互聯(lián)網(wǎng)設(shè)備。

WIZnet在全球擁有70多家分銷商,在香港、韓國(guó)、美國(guó)設(shè)有辦事處,提供技術(shù)支持和產(chǎn)品營(yíng)銷。

香港辦事處管理的區(qū)域包括:澳大利亞、印度、土耳其、亞洲(韓國(guó)和日本除外)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    十四章 USART——串口通訊

    本章介紹了USART串口通訊,含物理層(RS-232、TTL電平)、協(xié)議層(波特率、數(shù)據(jù)幀),及W55MH32的USART功能與應(yīng)用。
    的頭像 發(fā)表于 06-14 16:30 ?946次閱讀
    第<b class='flag-5'>十四章</b> USART——串口通訊

    十四章 ADC(下篇)

    文章介紹了基于W55MH32的三個(gè)ADC例程:ADC_Double雙模式同步采樣兩通道,ADC_Single單通道采樣,ADC_VrefintTemper采集內(nèi)部傳感器與參考電壓,均用DMA傳輸數(shù)據(jù)、串口輸出,介紹系統(tǒng)初始化等流程。
    的頭像 發(fā)表于 05-29 17:48 ?335次閱讀
    第<b class='flag-5'>十四章</b> ADC(下篇)

    W55MH32高性能以太網(wǎng)單片機(jī)開發(fā)課件 第十四章 ADC(上篇)

    本章介紹了W55MH32的12位ADC(上篇),其有18通道,支持單次、連續(xù)等轉(zhuǎn)換模式,具有自校準(zhǔn)、模擬看門狗等功能。還含ADC_AnalogWatchdog 例程,可監(jiān)測(cè)電壓超閾值并觸發(fā)中斷。
    的頭像 發(fā)表于 05-28 13:52 ?169次閱讀
    <b class='flag-5'>W55MH32</b>高性能<b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>開發(fā)</b>課件 第<b class='flag-5'>十四章</b> ADC(上篇)

    WIZnet W55MH32以太網(wǎng)單片機(jī)開發(fā)教程第十一章 通用定時(shí)器(下篇)

    本章為W55MH32通用定時(shí)器的下篇,介紹了TIM_InputCapture 等 4 個(gè)程序設(shè)計(jì)例程,涉及輸入捕獲、PWM 輸出、中斷測(cè)試、觸摸檢測(cè)等功能和例程下載驗(yàn)證情況,如串口輸出、波形檢測(cè)等。
    的頭像 發(fā)表于 05-28 10:48 ?419次閱讀
    WIZnet <b class='flag-5'>W55MH32</b><b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>開發(fā)</b>教程第十一章 通用定時(shí)器(下篇)

    WIZnet W55MH32以太網(wǎng)單片機(jī)開發(fā)教程 第十一章 通用定時(shí)器(上篇)

    本章介紹了W55MH32的通用定時(shí)器TIM2~TIM5,其由 16 位計(jì)數(shù)器等構(gòu)成,具輸入捕獲等功能,有多種計(jì)數(shù)模式及時(shí)鐘選擇。對(duì)例程進(jìn)行了講解并下載驗(yàn)證,TIM9~14功能類似,詳見(jiàn)《W55MH32參考手冊(cè)》。
    的頭像 發(fā)表于 05-28 10:12 ?342次閱讀
    WIZnet <b class='flag-5'>W55MH32</b><b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>開發(fā)</b>教程 第十一章 通用定時(shí)器(上篇)

    W55MH32高性能以太網(wǎng)單片機(jī)教程 第九章 窗口看門狗(WWDG)

    本章介紹了W55MH32的窗口看門狗(WWDG),其用于監(jiān)測(cè)軟件故障,具可編程遞減計(jì)數(shù)器等特性。從寄存器、中斷喂狗和復(fù)位測(cè)試兩個(gè)程序例程進(jìn)行講解。
    的頭像 發(fā)表于 05-27 10:26 ?339次閱讀
    <b class='flag-5'>W55MH32</b>高性能<b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>單片機(jī)</b>教程 第九章 窗口看門狗(WWDG)

    第二章 開發(fā)板與芯片介紹 詳解W55MH32芯片及開發(fā)

    本章介紹了W55MH32芯片及開發(fā)板。該芯片采用Cortex-M3內(nèi)核,主頻216MHz,集成以太網(wǎng)功能,有L和Q兩種型號(hào)。配套開發(fā)板L-EVB功能豐富、Q-EVB為最小系統(tǒng)板,均含仿
    的頭像 發(fā)表于 05-26 09:19 ?383次閱讀
    第二章 <b class='flag-5'>開發(fā)</b>板與芯片介紹  詳解<b class='flag-5'>W55MH32</b>芯片及<b class='flag-5'>開發(fā)</b>板

    第一章 W55MH32 高性能以太網(wǎng)單片機(jī)的學(xué)習(xí)方法概述

    本章介紹W55MH32的學(xué)習(xí)方法,建議先了解硬件資源,按基礎(chǔ)篇、入門篇循序漸進(jìn)學(xué)習(xí)。參考兩份手冊(cè),提供例程資料,還給出官網(wǎng)、github 等學(xué)習(xí)資料查找渠道。讓我們一起踏上W55MH32高性能
    的頭像 發(fā)表于 05-26 09:07 ?90次閱讀
    第一章 <b class='flag-5'>W55MH32</b> 高性能<b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>單片機(jī)</b>的學(xué)習(xí)方法概述

    第十章 W55MH32中斷應(yīng)用概覽

    本章講述了W55MH32中斷應(yīng)用,涵蓋異常類型、NVIC介紹、優(yōu)先級(jí)定義與分組,闡述中斷編程三要點(diǎn)(使能中斷、配置 NVIC、編寫服務(wù)函數(shù)),并強(qiáng)調(diào)優(yōu)先級(jí)分組設(shè)置注意事項(xiàng)。
    的頭像 發(fā)表于 05-22 17:07 ?1021次閱讀
    第十章 <b class='flag-5'>W55MH32</b>中斷應(yīng)用概覽

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機(jī)學(xué)習(xí)之路!

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機(jī)學(xué)習(xí)之路!即刻開啟W55MH32學(xué)習(xí)之旅!本教系列程配套官方手冊(cè)與W55MH32L
    的頭像 發(fā)表于 05-07 18:51 ?364次閱讀
    即刻啟程,踏上<b class='flag-5'>W55MH32</b>高性能<b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>單片機(jī)</b>學(xué)習(xí)之路!

    WIZnet高性能以太網(wǎng)單片機(jī)W55MH32重磅發(fā)布!

    WIZnet高性能以太網(wǎng)單片機(jī)W55MH32重磅發(fā)布!本文詳細(xì)解析了W55MH32芯片的高性能網(wǎng)絡(luò)處理能力與硬件資源,以及兩款開發(fā)板(L/Q
    的頭像 發(fā)表于 05-07 16:17 ?386次閱讀
    WIZnet高性能<b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>W55MH32</b>重磅發(fā)布!

    labview怎么輸出不重復(fù)的整數(shù)隨機(jī)數(shù)

    大佬們我想問(wèn)一下怎么能夠生成不重復(fù)的隨機(jī)數(shù),labview能夠輸出整數(shù)隨機(jī)數(shù)
    發(fā)表于 04-16 11:15

    LuatOS開發(fā)之4G模組隨機(jī)數(shù)(random)|實(shí)戰(zhàn)指南

    本次學(xué)習(xí)的實(shí)戰(zhàn)是關(guān)于4G模組LuatOS開發(fā)隨機(jī)數(shù)示例指南,希望大家有所收獲。
    的頭像 發(fā)表于 11-30 09:51 ?760次閱讀
    LuatOS<b class='flag-5'>開發(fā)</b>之4G模組<b class='flag-5'>隨機(jī)數(shù)</b>(random)|實(shí)戰(zhàn)指南

    解析Air780E模組LuatOS開發(fā)隨機(jī)數(shù)(random) 示例篇

    本文主要解析的是低功耗4G模組Air780E的LuatOS開發(fā)隨機(jī)數(shù)(random)實(shí)例,我以整理成文分享給大家。
    的頭像 發(fā)表于 11-29 20:23 ?578次閱讀
    解析Air780E模組LuatOS<b class='flag-5'>開發(fā)</b>的<b class='flag-5'>隨機(jī)數(shù)</b>(random) 示例篇

    雅特力AT32 MCU的隨機(jī)數(shù)生成

    概述產(chǎn)品和生態(tài)系統(tǒng)安全性的需求比以往任何時(shí)候都更加重要。隨機(jī)數(shù)是所有安全系統(tǒng)的核心,其質(zhì)量會(huì)影響設(shè)計(jì)的安全性。因此在沒(méi)有內(nèi)置硬件TRNG的AT32的微控制器系列中,如何提高隨機(jī)數(shù)的有
    的頭像 發(fā)表于 08-30 12:26 ?1289次閱讀
    雅特力AT32 MCU的<b class='flag-5'>隨機(jī)數(shù)</b>生成