單芯片解決方案,開啟全新體驗(yàn)——W55MH32 高性能以太網(wǎng)單片機(jī)
W55MH32是WIZnet重磅推出的高性能以太網(wǎng)單片機(jī),它為用戶帶來前所未有的集成化體驗(yàn)。這顆芯片將強(qiáng)大的組件集于一身,具體來說,一顆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 提供了兩種選擇:QFN68和QFN100。
W55MH32Q采用QFN68封裝版本,尺寸為8x8mm,它擁有36個(gè)GPIO、3個(gè)ADC、12通道DMA、17個(gè)定時(shí)器、2個(gè)I2C、3個(gè)串口、2個(gè)SPI接口(其中1個(gè)帶I2S接口復(fù)用)、1個(gè)CAN以及1個(gè)USB2.0。在保持與同系列其他版本一致的核心性能基礎(chǔ)上,僅減少了部分GPIO以及SDIO接口,其他參數(shù)保持一致,性價(jià)比優(yōu)勢顯著,尤其適合網(wǎng)關(guān)模組等對空間布局要求較高的場景。緊湊的尺寸和精簡化外設(shè)配置,使其能夠在有限空間內(nèi)實(shí)現(xiàn)高效的網(wǎng)絡(luò)連接與數(shù)據(jù)交互,成為物聯(lián)網(wǎng)網(wǎng)關(guān)、邊緣計(jì)算節(jié)點(diǎn)等緊湊型設(shè)備的理想選擇。 同系列還有QFN100封裝的W55MH32L版本,該版本擁有更豐富的外設(shè)資源,適用于需要多接口擴(kuò)展的復(fù)雜工控場景,軟件使用方法一致。更多信息和資料請進(jìn)入http://www.w5500.com/網(wǎng)站或者私信獲取。
此外,本W(wǎng)55MH32支持硬件加密算法單元,WIZnet還推出TOE+SSL應(yīng)用,涵蓋TCP SSL、HTTP SSL以及MQTT SSL等,為網(wǎng)絡(luò)通信安全再添保障。
為助力開發(fā)者快速上手與深入開發(fā),基于W55MH32Q這顆芯片,WIZnet精心打造了配套開發(fā)板。開發(fā)板集成WIZ-Link芯片,借助一根USB C口數(shù)據(jù)線,就能輕松實(shí)現(xiàn)調(diào)試、下載以及串口打印日志等功能。開發(fā)板將所有外設(shè)全部引出,拓展功能也大幅提升,便于開發(fā)者全面評(píng)估芯片性能。
若您想獲取芯片和開發(fā)板的更多詳細(xì)信息,包括產(chǎn)品特性、技術(shù)參數(shù)以及價(jià)格等,歡迎訪問官方網(wǎng)頁:http://www.w5500.com/,我們期待與您共同探索W55MH32的無限可能。
第十二章 高級(jí)定時(shí)器
W55MH32的高級(jí)控制定時(shí)器為TIM1和TIM8。
本章分為如下幾個(gè)小節(jié):
1 TIM1 和 TIM8 簡介
2 高級(jí)定時(shí)器寄存器描述
1 TIM1和TIM8概述
1.1 TIM1和TIM8簡介
高級(jí)控制定時(shí)器(TIM1 和 TIM8)由一個(gè) 16 位的自動(dòng)裝載計(jì)數(shù)器組成,它由一個(gè)可編程的預(yù)分頻器驅(qū)動(dòng)。它適合多種用途,包含測量輸入信號(hào)的脈沖寬度(輸入捕獲),或者產(chǎn)生輸出波形(輸出比較、PWM、嵌入死區(qū)時(shí)間的互補(bǔ) PWM 等)。使用定時(shí)器預(yù)分頻器和 RCC 時(shí)鐘控制預(yù)分頻器,可以實(shí)現(xiàn)脈沖寬度和波形周期從幾個(gè)微秒到幾個(gè)毫秒的調(diào)節(jié)。高級(jí)控制定時(shí)器(TIM1 和 TIM8)和通用定時(shí)器(TIMx)是完全獨(dú)立的,它們不共享任何資源。
1.2 TIM1和TIM8主要特性
TIM1和TIM8定時(shí)器的功能包括:
?16位向上、向下、向上/下自動(dòng)裝載計(jì)數(shù)器
?16位可編程(可以實(shí)時(shí)修改)預(yù)分頻器,計(jì)數(shù)器時(shí)鐘頻率的分頻系數(shù)為1~65535之間的任意數(shù)值
?多達(dá)4個(gè)獨(dú)立通道:
·······輸入捕獲
·······輸出比較
·······PWM生成(邊緣或中間對齊模式)
·······單脈沖模式輸出
?死區(qū)時(shí)間可編程的互補(bǔ)輸出
?使用外部信號(hào)控制定時(shí)器和定時(shí)器互聯(lián)的同步電路
?允許在指定數(shù)目的計(jì)數(shù)器周期之后更新定時(shí)器寄存器的重復(fù)計(jì)數(shù)器
?剎車輸入信號(hào)可以將定時(shí)器輸出信號(hào)置于復(fù)位狀態(tài)或者一個(gè)已知狀態(tài)
?如下事件發(fā)生時(shí)產(chǎn)生中斷/DMA:
·······更新:計(jì)數(shù)器向上溢出/向下溢出,計(jì)數(shù)器初始化(通過軟件或者內(nèi)部/外部觸發(fā))
·······觸發(fā)事件(計(jì)數(shù)器啟動(dòng)、停止、初始化或者由內(nèi)部/外部觸發(fā)計(jì)數(shù))
·······輸入捕獲
·······輸出比較
······剎車信號(hào)輸入
?觸發(fā)輸入作為外部時(shí)鐘或者按周期的電流管理
1.2 高級(jí)定時(shí)器功能框圖解析
高級(jí)定時(shí)器功能框圖如下:
高級(jí)控制定時(shí)器框圖
注: 根據(jù)控制位的設(shè)定,在 U(更新)事件時(shí)傳送預(yù)加載寄存器的內(nèi)容至工作寄存器事件中斷和 DMA 輸出高級(jí)定時(shí)器的框圖和通用定時(shí)器框圖很類似,只是添加了其它的一些功能,如:重復(fù)計(jì)數(shù)器、帶死區(qū)控制的互補(bǔ)輸出通道、斷路輸入等。相同內(nèi)容這里不再贅述,詳情請查看上一章節(jié)“第十一章 通用定時(shí)器(上篇)”的內(nèi)容。新增功能在高級(jí)定時(shí)器框圖的位置如下:
① 重復(fù)計(jì)數(shù)器
在 W55MH32 系列中,高級(jí)定時(shí)器 TIM1 和 TIM8 都有重復(fù)計(jì)數(shù)器。下面來介紹一下重復(fù)計(jì)數(shù)器有什么作用?在學(xué)習(xí)基本定時(shí)器和通用定時(shí)器的時(shí)候,我們知道定時(shí)器發(fā)生上溢或者下溢時(shí),會(huì)直接生成更新事件。但是有重復(fù)計(jì)數(shù)器的定時(shí)器并不完全是這樣的,定時(shí)器每次發(fā)生上溢或下溢時(shí),重復(fù)計(jì)數(shù)器的值會(huì)減一,當(dāng)重復(fù)計(jì)數(shù)器的值為 0 時(shí),再發(fā)生一次上溢或者下溢才會(huì)生成定時(shí)器更新事件。如果我們設(shè)置重復(fù)計(jì)數(shù)器寄存器 RCR 的值為 N,那么更新事件將在定時(shí)器發(fā)生 N+1 次上溢或下溢時(shí)發(fā)生。這里需要注意的是重復(fù)計(jì)數(shù)器寄存器是具有影子寄存器的,所以 RCR 寄存器只是起緩沖的作用。RCR 寄存器的值會(huì)在更新事件發(fā)生時(shí),被轉(zhuǎn)移至其影子寄存器中,從而真正生效。重復(fù)計(jì)數(shù)器的特性,在控制生成 PWM 信號(hào)時(shí)很有用,后面會(huì)有相應(yīng)的實(shí)驗(yàn)。
② 輸出比較
高級(jí)定時(shí)器輸出比較部分和通用定時(shí)器相比,多了帶死區(qū)控制的互補(bǔ)輸出功能。第②部分的 TIMx_CH1N、TIMx_CH2N 和 TIMx_CH3N 分別是定時(shí)器通道 1、通道 2 和通道 3的互補(bǔ)輸出通道,通道 4 是沒有互補(bǔ)輸出通道的。DTG 是死區(qū)發(fā)生器,死區(qū)時(shí)間由 DTG[7:0]位來配置。如果不使用互補(bǔ)通道和死區(qū)時(shí)間控制,那么高級(jí)定時(shí)器 TIM1 和 TIM8 和通用定時(shí)器的輸出比較部分使用方法基本一樣,只是要注意 MOE 位得置 1 定時(shí)器才能輸出。
③ 斷路功能
斷路功能也稱剎車功能,一般用于電機(jī)控制的剎車。F1 系列有一個(gè)斷路通道,斷路源可以是剎車輸入引腳(TIMx_BKIN),也可以是一個(gè)時(shí)鐘失敗事件。時(shí)鐘失敗事件由復(fù)位時(shí)鐘控制器中的時(shí)鐘安全系統(tǒng)產(chǎn)生。系統(tǒng)復(fù)位后,斷路功能默認(rèn)被禁止,MOE 位為低。使能斷路功能的方法:將 TIMx_BDTR 的位 BKE 置 1。斷路輸入引腳 TIMx_BKIN 的輸入有效電平可通過 TIMx_BDTR 寄存器的位 BKP 設(shè)置。使能剎車功能后:由 TIMx_BDTR 的 MOE、OSSI、OSSR 位,TIMx_CR2 的 OISx、OISxN 位,TIMx_CCER 的 CCxE、CCxNE 位控制 OCx 和 OCxN 輸出狀態(tài)。無論何時(shí),OCx和 OCxN 輸出都不能同時(shí)處在有效電平。
當(dāng)發(fā)生斷路輸入后,會(huì)怎么樣?
1.MOE 位被異步地清零,OCx 和 OCxN 為無效、空閑或復(fù)位狀態(tài)(由 OSSI 位選擇)。
2.OCx 和 OCxN 的狀態(tài):由相關(guān)控制位狀態(tài)決定,當(dāng)使用互補(bǔ)輸出時(shí):根據(jù)情況自動(dòng)控制輸出電平,參考《W55MH32 參考手冊.pdf》手冊
3.BIF 位置 1,如果使能了 BIE 位,還會(huì)產(chǎn)生剎車中斷;如果使能了 TDE 位,會(huì)產(chǎn)生DMA 請求。
4.如果 AOE 位置 1,在下一個(gè) 更新事件 UEV 時(shí),MOE 位被自動(dòng)置 1。
2 定時(shí)器初始化結(jié)構(gòu)體詳解
在標(biāo)準(zhǔn)庫函數(shù)頭文件w55mh32_tim.h中對定時(shí)器外設(shè)建立了四個(gè)初始化結(jié)構(gòu)體,分別為時(shí)基初始化結(jié)構(gòu)體TIM_TimeBaseInitTypeDef、 輸出比較初始化結(jié)構(gòu)體TIM_OCInitTypeDef、輸入捕獲初始化結(jié)構(gòu)體TIM_ICInitTypeDef和斷路和死區(qū)初始化結(jié)構(gòu)體TIM_BDTRInitTypeDef, 高級(jí)控制定時(shí)器可以用到所有初始化結(jié)構(gòu)體,通用定時(shí)器不能使用TIM_BDTRInitTypeDef結(jié)構(gòu)體, 基本定時(shí)器只能使用時(shí)基結(jié)構(gòu)體。接下來我們具體講解下這四個(gè)結(jié)構(gòu)體。
2.1 TIM_TimeBaseInitTypeDef
時(shí)基結(jié)構(gòu)體TIM_TimeBaseInitTypeDef用于定時(shí)器基礎(chǔ)參數(shù)設(shè)置,與TIM_TimeBaseInit函數(shù)配合使用完成配置。
代碼清單:高級(jí)定時(shí)器-1 定時(shí)器基本初始化結(jié)構(gòu)體
typedef struct { uint16_t TIM_Prescaler; // 預(yù)分頻器 uint16_t TIM_CounterMode; // 計(jì)數(shù)模式 uint32_t TIM_Period; // 定時(shí)器周期 uint16_t TIM_ClockDivision; // 時(shí)鐘分頻 uint8_t TIM_RepetitionCounter; // 重復(fù)計(jì)算器 } TIM_TimeBaseInitTypeDef;
TIM_Prescaler: 定時(shí)器預(yù)分頻器設(shè)置,時(shí)鐘源經(jīng)該預(yù)分頻器才是定時(shí)器計(jì)數(shù)時(shí)鐘CK_CNT,它設(shè)定PSC寄存器的值。 計(jì)算公式為:計(jì)數(shù)器時(shí)鐘頻率 (fCK_CNT) 等于 fCK_PSC / (PSC[15:0] + 1),可實(shí)現(xiàn)1至65536分頻。
TIM_CounterMode: 定時(shí)器計(jì)數(shù)方式,可設(shè)置為向上計(jì)數(shù)、向下計(jì)數(shù)以及中心對齊。高級(jí)控制定時(shí)器允許選擇任意一種。
TIM_Period: 定時(shí)器周期,實(shí)際就是設(shè)定自動(dòng)重載寄存器ARR的值,ARR 為要裝載到實(shí)際自動(dòng)重載寄存器(即影子寄存器)的值,可設(shè)置范圍為0至65535。
TIM_ClockDivision: 時(shí)鐘分頻,設(shè)置定時(shí)器時(shí)鐘CK_INT頻率與死區(qū)發(fā)生器以及數(shù)字濾波器采樣時(shí)鐘頻率分頻比。可以選擇1、2、4分頻。
TIM_RepetitionCounter: 重復(fù)計(jì)數(shù)器,只有8位,只存在于高級(jí)定時(shí)器。
2.2 TIM_OCInitTypeDef
輸出比較結(jié)構(gòu)體TIM_OCInitTypeDef用于輸出比較模式,與TIM_OCxInit函數(shù)配合使用完成指定定時(shí)器輸出通道初始化配置。高級(jí)控制定時(shí)器有四個(gè)定時(shí)器通道,使用時(shí)都必須單獨(dú)設(shè)置。
代碼清單:高級(jí)定時(shí)器-2 定時(shí)器比較輸出初始化結(jié)構(gòu)體
typedef struct { uint16_t TIM_OCMode; // 比較輸出模式 uint16_t TIM_OutputState; // 比較輸出使能 uint16_t TIM_OutputNState; // 比較互補(bǔ)輸出使能 uint32_t TIM_Pulse; // 脈沖寬度 uint16_t TIM_OCPolarity; // 輸出極性 uint16_t TIM_OCNPolarity; // 互補(bǔ)輸出極性 uint16_t TIM_OCIdleState; // 空閑狀態(tài)下比較輸出狀態(tài) uint16_t TIM_OCNIdleState; // 空閑狀態(tài)下比較互補(bǔ)輸出狀態(tài) } TIM_OCInitTypeDef;
TIM_OCMode: 比較輸出模式選擇,總共有八種,常用的為PWM1/PWM2。它設(shè)定CCMRx寄存器OCxM[2:0]位的值。
TIM_OutputState: 比較輸出使能,決定最終的輸出比較信號(hào)OCx是否通過外部引腳輸出。它設(shè)定TIMx_CCER寄存器CCxE/CCxNE位的值。
TIM_OutputNState: 比較互補(bǔ)輸出使能,決定OCx的互補(bǔ)信號(hào)OCxN是否通過外部引腳輸出。它設(shè)定CCER寄存器CCxNE位的值。
TIM_Pulse: 比較輸出脈沖寬度,實(shí)際設(shè)定比較寄存器CCR的值,決定脈沖寬度。可設(shè)置范圍為0至65535。
TIM_OCPolarity: 比較輸出極性,可選OCx為高電平有效或低電平有效。它決定著定時(shí)器通道有效電平。它設(shè)定CCER寄存器的CCxP位的值。
TIM_OCNPolarity: 比較互補(bǔ)輸出極性,可選OCxN為高電平有效或低電平有效。它設(shè)定TIMx_CCER寄存器的CCxNP位的值。
TIM_OCIdleState: 空閑狀態(tài)時(shí)通道輸出電平設(shè)置,可選輸出1或輸出0,即在空閑狀態(tài)(BDTR_MOE位為0)時(shí),經(jīng)過死區(qū)時(shí)間后定時(shí)器通道輸出高電平或低電平。它設(shè)定CR2寄存器的OISx位的值。
TIM_OCNIdleState: 空閑狀態(tài)時(shí)互補(bǔ)通道輸出電平設(shè)置,可選輸出1或輸出0,即在空閑狀態(tài)(BDTR_MOE位為0)時(shí),經(jīng)過死區(qū)時(shí)間后定時(shí)器互補(bǔ)通道輸出高電平或低電平, 設(shè)定值必須與TIM_OCIdleState相反。它設(shè)定是CR2寄存器的OISxN位的值。
2.3 TIM_ICInitTypeDef
輸入捕獲結(jié)構(gòu)體TIM_ICInitTypeDef用于輸入捕獲模式,與TIM_ICInit函數(shù)配合使用完成定時(shí)器輸入通道初始化配置。 如果使用PWM輸入模式需要與TIM_PWMIConfig函數(shù)配合使用完成定時(shí)器輸入通道初始化配置。
代碼清單:高級(jí)定時(shí)器 定時(shí)器輸入捕獲初始化結(jié)構(gòu)體
typedef struct { uint16_t TIM_Channel; // 輸入通道選擇 uint16_t TIM_ICPolarity; // 輸入捕獲觸發(fā)選擇 uint16_t TIM_ICSelection; // 輸入捕獲選擇 uint16_t TIM_ICPrescaler; // 輸入捕獲預(yù)分頻器 uint16_t TIM_ICFilter; // 輸入捕獲濾波器 } TIM_ICInitTypeDef;
TIM_Channel:捕獲通道ICx選擇,可選TIM_Channel_1、 TIM_Channel_2、TIM_Channel_3或TIM_Channel_4四個(gè)通道。它設(shè)定CCMRx寄存器CCxS位 的值。
TIM_ICPolarity:輸入捕獲邊沿觸發(fā)選擇,可選上升沿觸發(fā)、 下降沿觸發(fā)或邊沿跳變觸發(fā)。它設(shè)定CCER寄存器CCxP位和CCxNP位的值。
TIM_ICSelection:輸入通道選擇,捕獲通道ICx的信號(hào)可來自三個(gè)輸入通道,分別為TIM_ICSelection_DirectTI、 TIM_ICSelection_IndirectTI或TIM_ICSelection_TRC,具體的區(qū)別見下圖,輸入通道與捕獲通道IC的映射圖 。 如果是普通的輸入捕獲,4個(gè)通道都可以使用,如果是PWM輸入則只能使用通道1和通道2。它設(shè)定CCRMx寄存器的CCxS[1:0]位的值。
TIM_ICPrescaler: 輸入捕獲通道預(yù)分頻器,可設(shè)置1、2、4、8分頻,它設(shè)定CCMRx寄存器的ICxPSC[1:0]位的值。如果需要捕獲輸入信號(hào)的每個(gè)有效邊沿,則設(shè)置1分頻即可。
TIM_ICFilter: 輸入捕獲濾波器設(shè)置,可選設(shè)置0x0至0x0F。它設(shè)定CCMRx寄存器ICxF[3:0]位的值。一般我們不使用濾波器,即設(shè)置為0。
2.4 TIM_BDTRInitTypeDef
斷路和死區(qū)結(jié)構(gòu)體TIM_BDTRInitTypeDef用于斷路和死區(qū)參數(shù)的設(shè)置,屬于高級(jí)定時(shí)器專用,用于配置斷路時(shí)通道輸出狀態(tài),以及死區(qū)時(shí)間。 它與TIM_BDTRConfig函數(shù)配置使用完成參數(shù)配置。這個(gè)結(jié)構(gòu)體的成員只對應(yīng)BDTR這個(gè)寄存器,有關(guān)成員的具體使用配置請參考手冊BDTR寄存器的詳細(xì)描述。
代碼清單:高級(jí)定時(shí)器-4 斷路和死區(qū)初始化結(jié)構(gòu)體
typedef struct { uint16_t TIM_OSSRState; // 運(yùn)行模式下的關(guān)閉狀態(tài)選擇 uint16_t TIM_OSSIState; // 空閑模式下的關(guān)閉狀態(tài)選擇 uint16_t TIM_LOCKLevel; // 鎖定配置 uint16_t TIM_DeadTime; // 死區(qū)時(shí)間 uint16_t TIM_Break; // 斷路輸入使能控制 uint16_t TIM_BreakPolarity; // 斷路輸入極性 uint16_t TIM_AutomaticOutput; // 自動(dòng)輸出使能 } TIM_BDTRInitTypeDef;
TIM_OSSRState: 運(yùn)行模式下的關(guān)閉狀態(tài)選擇,它設(shè)定BDTR寄存器OSSR位的值。
TIM_OSSIState: 空閑模式下的關(guān)閉狀態(tài)選擇,它設(shè)定BDTR寄存器OSSI位的值。
TIM_LOCKLevel: 鎖定級(jí)別配置, BDTR寄存器LOCK[1:0]位的值。
TIM_DeadTime: 配置死區(qū)發(fā)生器,定義死區(qū)持續(xù)時(shí)間,可選設(shè)置范圍為0x0至0xFF。它設(shè)定BDTR寄存器DTG[7:0]位的值。
TIM_Break: 斷路輸入功能選擇,可選使能或禁止。它設(shè)定BDTR寄存器BKE位的值。
TIM_BreakPolarity: 斷路輸入通道BRK極性選擇,可選高電平有效或低電平有效。它設(shè)定BDTR寄存器BKP位的值。
TIM_AutomaticOutput: 自動(dòng)輸出使能,可選使能或禁止,它設(shè)定BDTR寄存器AOE位的值。
WIZnet 是一家無晶圓廠半導(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 多家分銷商,在香港、韓國、美國設(shè)有辦事處,提供技術(shù)支持和產(chǎn)品營銷。
香港辦事處管理的區(qū)域包括:澳大利亞、印度、土耳其、亞洲(韓國和日本除外)。
審核編輯 黃宇
-
單片機(jī)
+關(guān)注
關(guān)注
6067文章
44992瀏覽量
650626 -
寄存器
+關(guān)注
關(guān)注
31文章
5434瀏覽量
124556 -
定時(shí)器
+關(guān)注
關(guān)注
23文章
3298瀏覽量
118984
發(fā)布評(píng)論請先 登錄
第十章 W55MH32中斷應(yīng)用概覽

第二十二章 TIM——高級(jí)定時(shí)器

明德?lián)P視頻分享點(diǎn)撥FPGA課程---第十二章??學(xué)習(xí)自檢方法
「正點(diǎn)原子STM32Mini板資料連載」第十二章 定時(shí)器中斷實(shí)驗(yàn)
【正點(diǎn)原子Linux連載】第十二章官方SDK移植試驗(yàn)-摘自【正點(diǎn)原子】I.MX6U嵌入式Linux驅(qū)動(dòng)開發(fā)指南V1.0

詳解高精度定時(shí)器與高級(jí)控制定時(shí)器
高精度定時(shí)器與高級(jí)控制定時(shí)器 PWM 封波后再恢復(fù)的區(qū)別

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

第十二章 SysTick——系統(tǒng)定時(shí)器

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

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

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

評(píng)論