97色伦色在线综合视频,无玛专区,18videosex性欧美黑色,日韩黄色电影免费在线观看,国产精品伦理一区二区三区,在线视频欧美日韩,亚洲欧美在线中文字幕不卡

制作網(wǎng)站學(xué)什么專業(yè)網(wǎng)站建設(shè)與維護(hù)的軟件

鶴壁市浩天電氣有限公司 2026/01/24 15:27:40
制作網(wǎng)站學(xué)什么專業(yè),網(wǎng)站建設(shè)與維護(hù)的軟件,電信寬帶做網(wǎng)站服務(wù)器嗎,哪些網(wǎng)站可宣傳第五十章 machine.Timer類實(shí)驗(yàn) 本章將介紹machine模塊中的Timer類#xff0c;即定時(shí)器類。通過本章的學(xué)習(xí)#xff0c;讀者將學(xué)習(xí)到machine模塊中Timer類的使用。 本章分為如下幾個(gè)小節(jié)#xff1a; 18.1 machine.Timer類介紹 18.2 硬件設(shè)計(jì) 18.3 程序設(shè)計(jì) 18.4 運(yùn)行驗(yàn)證 18.1…第五十章 machine.Timer類實(shí)驗(yàn)本章將介紹machine模塊中的Timer類即定時(shí)器類。通過本章的學(xué)習(xí)讀者將學(xué)習(xí)到machine模塊中Timer類的使用。本章分為如下幾個(gè)小節(jié)18.1 machine.Timer類介紹18.2 硬件設(shè)計(jì)18.3 程序設(shè)計(jì)18.4 運(yùn)行驗(yàn)證18.1 machine.Timer類介紹machine.Timer類是machine模塊內(nèi)提供的類該類主要用于訪問和控制Kendryte K210硬件上的定時(shí)器硬件定時(shí)器可以用來定時(shí)觸發(fā)任務(wù)或者處理任務(wù)當(dāng)?shù)搅嗽O(shè)定的時(shí)間硬件定時(shí)器便會(huì)觸發(fā)中斷并且硬件定時(shí)器的計(jì)時(shí)精度相比軟件定時(shí)器要高得多。CanMV中的machine.Timer類定義了在給定時(shí)間段或在一段延遲后執(zhí)行一次回調(diào)指定回調(diào)的基本操作并同時(shí)可以配置machine.PWM類實(shí)現(xiàn)使用硬件定時(shí)器輸出PWM其中machine.PWM類將在后續(xù)的章節(jié)中進(jìn)行講解。machine.Timer類提供了Timer構(gòu)造函數(shù)用于創(chuàng)建一個(gè)Timer對(duì)象Timer構(gòu)造函數(shù)如下所示classTimer(id,channel,modeTimer.MODE_ONE_SHOT,period1000,unitTimer.UNIT_MS,callbackNone,argNone,startTrue,priority1,div0)通過Timer構(gòu)造函數(shù)可以通過指定參數(shù)創(chuàng)建并初始化一個(gè)Timer對(duì)象。id指的是定時(shí)器的編號(hào)可以是Timer.TIMER0、Timer.TIMER1或Timer.TIMER2它們分別對(duì)應(yīng)Kendryte K210硬件上的定時(shí)器0、定時(shí)器1和定時(shí)器2。channel指的是定時(shí)器的通道編號(hào)可以是Timer.CHANNEL0、Timer.CHANNEL1、Timer.CHANNEL2或Timer.CHANNEL3它們分別對(duì)應(yīng)Kendryte K210硬件定時(shí)器的通道0至通道3。mode指的是Timer對(duì)象的模式當(dāng)為Timer.MODE_ONE_SHOT時(shí)Timer對(duì)象會(huì)在超時(shí)一次后自動(dòng)停止單次定時(shí)器當(dāng)為Timer.MODE_PERIODIC時(shí)Timer對(duì)象會(huì)在超時(shí)后自動(dòng)重新開始計(jì)時(shí)直到被手動(dòng)停止計(jì)時(shí)周期定時(shí)器當(dāng)為Timer.MODE_PWM時(shí)Timer對(duì)象將用于配合machine.PWM類生成PWM。period指的是Timer對(duì)象的超時(shí)時(shí)間具體的時(shí)間單位由unit參數(shù)決定。unit指的時(shí)Timer對(duì)象超時(shí)時(shí)間的單位可以是Timer.UNIT_S、Timer.UNIT_MS、Timer.UNIT_US或Timer.UNIT_NS它們分別對(duì)應(yīng)秒、毫秒、微秒和納秒。callback指的是Timer對(duì)象的超時(shí)回調(diào)函數(shù)Timer對(duì)象將在計(jì)時(shí)超時(shí)后指定該函數(shù)需要注意的是該函數(shù)是在中斷上下文中被指定的。arg指的是傳遞給Timer對(duì)象超時(shí)回調(diào)函數(shù)的參數(shù)。start指的是是否在Timer對(duì)象構(gòu)造成功后便開始計(jì)時(shí)當(dāng)為True時(shí)Timer對(duì)象會(huì)在被構(gòu)造成功后便開始計(jì)時(shí)當(dāng)為False時(shí)Timer對(duì)象在被構(gòu)造成功后并不會(huì)開始計(jì)時(shí)。priority指的是Timer對(duì)象對(duì)應(yīng)硬件定時(shí)器的中斷優(yōu)先級(jí)可以指1~7數(shù)值越小中斷優(yōu)先等級(jí)越高。div指的是Timer對(duì)象對(duì)應(yīng)硬件定時(shí)器的分頻系數(shù)。Timer構(gòu)造函數(shù)的使用示例如下所示from machine import Timer deftimer_timeout_cb(timer):print(Timer timeout!)timer0Timer(Timer.TIMER0,Timer.CHANNEL0,modeTimer.MODE_PERIODIC,period500,unitTimer.UNIT_MS,callbacktimer_timeout_cb,arg{id:Timer.TIMER0},startFalse,priority1,div0)machine.Timer類為Timer對(duì)象提供了start()方法用于開啟Timer對(duì)象的計(jì)時(shí)start()方法如下所示Timer.start()start()方法用于開啟Timer對(duì)象的計(jì)時(shí)方法執(zhí)行后Timer對(duì)象便開始計(jì)時(shí)。start()方法的使用示例如下所示from machine import Timer timerTimer(Timer.TIMER0,Timer.CHANNEL0,startFalse)timer.start()machine.Timer類為Timer對(duì)象提供了stop()方法用于停止Timer對(duì)象的計(jì)時(shí)stop()方法如下所示Timer.stop()stop()方法用于停止Timer對(duì)象的計(jì)時(shí)方法執(zhí)行后Timer對(duì)象便會(huì)停止計(jì)時(shí)也不會(huì)再執(zhí)行超時(shí)回調(diào)函數(shù)。stop()方法的使用示例如下所示from machine import Timer timerTimer(Timer.TIMER0,Timer.CHANNEL0,startTrue)timer.stop()machine.Timer類為Timer對(duì)象提供了restart()方法用于重新開始Timer對(duì)象的計(jì)時(shí)restart()方法如下所示Timer.restart()restart()方法用于重新開始Timer對(duì)象的計(jì)時(shí)不論Timer對(duì)象是否處于計(jì)時(shí)狀態(tài)當(dāng)restart()方法執(zhí)行后Timer對(duì)象便會(huì)重新開始計(jì)時(shí)。restart()方法的使用示例如下所示from machine import Timer timerTimer(Timer.TIMER0,Timer.CHANNEL0,startTrue)timer.restart()18.2 硬件設(shè)計(jì)18.2.1 例程功能創(chuàng)建一個(gè)超時(shí)周期為500毫秒的周期定時(shí)器并再其超時(shí)回調(diào)函數(shù)中控制紅色LED切換亮滅狀態(tài)按下KEY0按鍵后啟動(dòng)周期定時(shí)器計(jì)時(shí)按下KEY1按鍵后停止周期定時(shí)器計(jì)時(shí)18.2.2 硬件資源雙色LEDLEDR - IO24獨(dú)立按鍵KEY0按鍵 - IO18KEY1按鍵 - IO1918.2.3 原理圖本章實(shí)驗(yàn)內(nèi)容主要講解machine.Timer類的使用無需關(guān)注原理圖。18.3 程序設(shè)計(jì)18.3.1 machine.Timer類有關(guān)machine.Timer類的介紹請(qǐng)見第18.1小節(jié)《machine.Timer類介紹》。18.3.2 程序流程圖圖18.3.2.1 machine.Timer類實(shí)驗(yàn)流程圖18.3.3 main.py代碼main.py中的腳本代碼如下所示from board import board_info from fpioa_manager import fm from maix import GPIO import time from machine import Timer fm.register(board_info.LEDR,fm.fpioa.GPIO0)fm.register(board_info.KEY0,fm.fpioa.GPIOHS0)fm.register(board_info.KEY1,fm.fpioa.GPIOHS1)ledrGPIO(GPIO.GPIO0,GPIO.OUT,value1)key0GPIO(GPIO.GPIOHS0,GPIO.IN,GPIO.PULL_UP)key1GPIO(GPIO.GPIOHS1,GPIO.IN,GPIO.PULL_UP)#Timer超時(shí)回調(diào)函數(shù)deftimer_timeout_cb(timer):argtimer.callback_arg()ifarg[id]Timer.TIMER0:ledr.value(not ledr.value())# 構(gòu)造Timer對(duì)象 timer0Timer(Timer.TIMER0,Timer.CHANNEL0,modeTimer.MODE_PERIODIC,period500,unitTimer.UNIT_MS,callbacktimer_timeout_cb,arg{id:Timer.TIMER0},startFalse,priority1,div0)whileTrue:ifkey0.value()0:time.sleep_ms(20)ifkey0.value()0:# 啟動(dòng)Timer timer0.start()whilekey0.value()0:pass elif key1.value()0:time.sleep_ms(20)ifkey1.value()0:# 停止Timer timer0.stop()whilekey1.value()0:pass time.sleep_ms(10)可以看到首先是初始化使用到獨(dú)立按鍵和LED的IO然后定義了一個(gè)函數(shù)作為Timer的超時(shí)回調(diào)函數(shù)函數(shù)主要實(shí)驗(yàn)了變更LED狀態(tài)的功能。接著便構(gòu)造了一個(gè)Timer對(duì)象Timer對(duì)象使用的是硬件定時(shí)器0的通道0并且是一個(gè)每間隔500毫秒超時(shí)一次的周期定時(shí)器。最后就是在一個(gè)循環(huán)中讀取按鍵的狀態(tài)當(dāng)讀取到KEY0按鍵被按下則啟動(dòng)Timer對(duì)象計(jì)時(shí)當(dāng)讀取到KEY1按鍵被按下則停止Timer對(duì)象計(jì)時(shí)。18.4 運(yùn)行驗(yàn)證將DNK210開發(fā)板連接CanMV IDE并點(diǎn)擊CanMV IDE上的“開始(運(yùn)行腳本)”按鈕后此時(shí)若按下KEY0按鍵則可以看到紅色LED因Timer對(duì)象以500毫秒的周期超時(shí)而以1000毫秒的周期進(jìn)行亮滅閃爍若接著按下KEY1按鍵則可以看到紅色LED因Timer對(duì)象被停止計(jì)時(shí)而保持當(dāng)前的狀態(tài)不再閃爍。
版權(quán)聲明: 本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)聯(lián)系我們進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

云空間搭建網(wǎng)站網(wǎng)站制作最

云空間搭建網(wǎng)站,網(wǎng)站制作最,網(wǎng)絡(luò)營(yíng)銷的特點(diǎn)是什么,網(wǎng)站建設(shè)設(shè)計(jì)模板政府招投標(biāo)項(xiàng)目大文件傳輸解決方案探索 作為山東濟(jì)南一家軟件公司項(xiàng)目負(fù)責(zé)人#xff0c;近期我們正全身心投入一個(gè)政府招投標(biāo)項(xiàng)目。在項(xiàng)目

2026/01/23 17:02:01

教育培訓(xùn)類網(wǎng)站模板二級(jí)域名做網(wǎng)站注意

教育培訓(xùn)類網(wǎng)站模板,二級(jí)域名做網(wǎng)站注意,dede 友情鏈接 網(wǎng)站簡(jiǎn)況 調(diào)用,石家莊建站工具撰寫實(shí)踐報(bào)告是學(xué)生從理論走向?qū)嵺`的重要環(huán)節(jié)#xff0c;但許多同學(xué)在面對(duì)“實(shí)習(xí)經(jīng)歷如何系統(tǒng)呈現(xiàn)”“內(nèi)容如何條理

2026/01/23 10:46:01

網(wǎng)站建設(shè)辶金手指排名十一資陽(yáng)優(yōu)化團(tuán)隊(duì)市場(chǎng)

網(wǎng)站建設(shè)辶金手指排名十一,資陽(yáng)優(yōu)化團(tuán)隊(duì)市場(chǎng),做茶葉網(wǎng)站公司,wordpress 功能塊網(wǎng)絡(luò)設(shè)置與故障排除全攻略 在當(dāng)今數(shù)字化時(shí)代,網(wǎng)絡(luò)已經(jīng)成為我們生活中不可或缺的一部分。無論是在家中辦公、娛樂,還是

2026/01/23 07:25:02