chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

【產(chǎn)品應(yīng)用】AWorksLP 樣例詳解(MR6450)—— HWTimer

ZLG致遠(yuǎn)電子 ? 2023-02-02 11:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

AWorksLP 對(duì)外設(shè)進(jìn)行了高度抽象化,為同一類(lèi)外設(shè)提供了相同的接口,應(yīng)用程序可以輕松跨平臺(tái)。本文以MR6450平臺(tái)為例,介紹AWorksLP HWTimer 外設(shè)基本用法。d2739af6-a278-11ed-ad0d-dac502259ad0.jpg 簡(jiǎn)介在AWorksLP中將硬件定時(shí)器分為了4類(lèi),即延時(shí)型、計(jì)數(shù)型、周期型和輸入捕獲型硬件定時(shí)器。

  • 延時(shí)型硬件定時(shí)器:

由硬件定時(shí)器外設(shè)提供的延時(shí)功能。

  • 計(jì)數(shù)型硬件定時(shí)器:

提供較精確的類(lèi)似時(shí)間戳的功能。

  • 周期型硬件定時(shí)器:

可設(shè)置中斷頻率的計(jì)數(shù)器,不僅能提供計(jì)數(shù)器的功能,也能根據(jù)中斷頻率提供更精確的定時(shí)。

  • 輸入捕獲定時(shí)器:可測(cè)量脈沖寬度或者測(cè)量頻率。


d2739af6-a278-11ed-ad0d-dac502259ad0.jpg 接口介紹延時(shí)型硬件定時(shí)器:

函數(shù)原型

簡(jiǎn)要描述

aw_err_t aw_hwtimer_delay (int fd, struct aw_timespec *p_tv);

延時(shí)

aw_err_t aw_hwtimer_delay_cancel (int fd);

取消延時(shí)

計(jì)數(shù)型硬件定時(shí)器:

函數(shù)原型

簡(jiǎn)要描述

aw_err_t aw_hwtimer_count_start (int fd);

啟動(dòng)一個(gè)計(jì)數(shù)型硬件定時(shí)器

aw_err_t aw_hwtimer_count_stop (int fd);

停止一個(gè)計(jì)數(shù)型硬件定時(shí)器

aw_err_t aw_hwtimer_count_get (int fd, uint64_t *p_count);

讀取計(jì)數(shù)值

aw_err_t aw_hwtimer_count_rate_get (int fd, uint32_t *p_rate);

獲取計(jì)數(shù)時(shí)鐘頻率

aw_err_t aw_hwtimer_count_rate_set (int fd, uint32_t rate);

設(shè)置計(jì)數(shù)時(shí)鐘頻率

aw_err_t aw_hwtimer_count_rate_set_accurate (int fd, uint32_t rate_numerator, uint32_t rate_denominator);

以精確化的方式設(shè)置計(jì)數(shù)時(shí)鐘頻率

aw_err_t aw_hwtimer_count_rate_get_accurate (int fd, uint32_t *p_rate_numerator, uint32_t *p_rate_denominator);

獲取計(jì)數(shù)時(shí)鐘頻率的精確描述

周期型硬件定時(shí)器:

函數(shù)原型

簡(jiǎn)要描述

aw_err_t aw_hwtimer_period_wait (int fd, uint32_t wait_ms);

等待定時(shí)器周期中斷

aw_err_t aw_hwtimer_period_intr (int fd);

打斷周期型定時(shí)器的等待操作

aw_err_t aw_hwtimer_period_start (int fd);

啟動(dòng)定時(shí)器

aw_err_t aw_hwtimer_period_stop (int fd);

停止定時(shí)器

aw_err_t aw_hwtimer_period_count_get (int fd, uint64_t *p_count);

讀取計(jì)數(shù)值

aw_err_t aw_hwtimer_period_count_freq_get (int fd, uint32_t *p_rate);

獲取周期型定時(shí)器的硬件計(jì)數(shù)頻率(不是中斷頻率)

aw_err_t aw_hwtimer_period_count_freq_get_frac (int fd, aw_hwtimer_rate_t *p_rate);

以更精確的分?jǐn)?shù)形式獲取周期型定時(shí)器的硬件計(jì)數(shù)頻率(不是中斷頻率)

aw_err_t aw_hwtimer_period_intr_freq_set (int fd, uint32_t intr_freq);

設(shè)置中斷頻率

aw_err_t aw_hwtimer_period_intr_freq_get (int fd, uint32_t *p_intr_freq);

獲取中斷頻率

aw_err_t aw_hwtimer_period_intr_freq_set_frac (int fd, aw_const aw_hwtimer_rate_t *p_intr_freq);

設(shè)置中斷頻率(以更精確的分?jǐn)?shù)形式)

aw_err_t aw_hwtimer_period_intr_freq_get_frac (int fd, aw_hwtimer_rate_t *p_intr_freq);

獲取中斷頻率(以更精確的分?jǐn)?shù)形式)

輸入捕獲型硬件定時(shí)器:

函數(shù)原型

簡(jiǎn)要描述

aw_err_t aw_hwtimer_cap_start (int fd);

啟動(dòng)輸入捕獲型硬件定時(shí)器

aw_err_t aw_hwtimer_cap_stop (int fd);

停止輸入捕獲型硬件定時(shí)器

aw_err_t aw_hwtimer_cap_read (int fd, uint64_t *p_cap_val, uint32_t timeout_ms);

讀取一個(gè)捕獲到的事件的計(jì)數(shù)值

aw_err_t aw_hwtimer_cap_intr (int fd);

打斷阻塞read讀操作

aw_err_t aw_hwtimer_cap_config_set (int fd, aw_const aw_hwtimer_cap_config_t *p_config);

配置輸入捕獲型硬件定時(shí)器

aw_err_t aw_hwtimer_cap_config_get (int fd, aw_hwtimer_cap_config_t *p_config);

獲取輸入捕獲型硬件定時(shí)器的配置

d2739af6-a278-11ed-ad0d-dac502259ad0.jpg 使用樣例AWorksLP SDK相關(guān)使用請(qǐng)參考《AWorksLP SDK快速入門(mén)(MR6450)——開(kāi)箱體驗(yàn)》一文,本文不在贅述。1. 周期型定時(shí)器{SDK}\demos\peripheral\hwtimer路徑下為硬件定時(shí)器例程,默認(rèn)運(yùn)行的是demo_hwtimer.c 周期型定時(shí)器的代碼,例程關(guān)鍵代碼如下:

/** * \brief 硬件定時(shí)器中斷服務(wù)函數(shù)。 * \param[in] p_arg : 任務(wù)參數(shù) */static void mytimer_isr (void *p_arg){ aw_gpio_toggle((int)p_arg); aw_kprintf("enter isr \n\r");}
/** * \brief hwtimer 測(cè)試函數(shù) */aw_local void* __task_handle (void *arg){ int fd; aw_err_t ret; uint32_t count = 5; aw_hwtimer_rate_t p_intr_freq;
p_intr_freq.rate_denominator = 5; p_intr_freq.rate_numerator = 1;
fd = aw_open(CONFIG_DEMO_HWTIMER_PEROID_DEV_NAME, AW_O_RDWR, 0); if (fd < 0) { ? ? ? ?aw_kprintf("hwtimer open failed:%d \n\r", fd); ? ? ? ?while(1); ? ?}
ret = aw_hwtimer_period_intr_freq_set_frac(fd, &p_intr_freq); while (count) { aw_hwtimer_period_wait(fd, 500); mytimer_isr(arg); count --; }
// 配置每秒中斷2次 ret = aw_hwtimer_period_intr_freq_set(fd, 2);
ret = aw_hwtimer_period_start(fd); if (ret != AW_OK) { aw_kprintf("Timer allocation fail!\n"); }
ret = aw_hwtimer_period_wait(fd, AW_WAIT_FOREVER);
while (1) { aw_hwtimer_period_wait(fd, AW_WAIT_FOREVER); mytimer_isr(arg); }
for (;;) { aw_mdelay(1000); } aw_close(fd);
return 0;}

在代碼中先使用了aw_hwtimer_period_intr_freq_set_frac 接口,以分?jǐn)?shù)的形式設(shè)置中斷頻率,使用aw_hwtimer_period_start接口啟動(dòng)定時(shí)器。在循環(huán)中使用aw_hwtimer_period_wait 接口阻塞等待中斷的產(chǎn)生、中斷產(chǎn)生后繼續(xù)執(zhí)行mytimer_isr函數(shù)使LED 燈狀態(tài)翻轉(zhuǎn),由于設(shè)置的頻率為五分之一,所以5秒LED 燈的狀態(tài)翻轉(zhuǎn)一次;循環(huán)一定次數(shù)后用aw_hwtimer_period_intr_freq_set 接口設(shè)置中斷頻率為2HZ,循環(huán)等待中斷、翻轉(zhuǎn)LED。實(shí)驗(yàn)現(xiàn)象為L(zhǎng)ED燈先以5s的頻率閃爍,同時(shí)串口打印同時(shí)信息。閃爍一定次數(shù)后以0.5s的頻率LED閃爍,同時(shí)串口打印信息。

下表為使用硬件周期型定時(shí)器,在中斷中進(jìn)行引腳翻轉(zhuǎn),通過(guò)邏輯分析儀所測(cè)量出的實(shí)際數(shù)據(jù),在使用設(shè)計(jì)時(shí)可作為部分參考依據(jù)。

定時(shí)時(shí)間(s)

實(shí)際時(shí)間(s)

0.010000000

0.010000115

0.020000000

0.019999940

0.030000000

0.029999980

0.040000000

0.040000035

0.050000000

0.049999830

0.100000000

0.100000075

0.200000000

0.200000020

0.500000000

0.500000070

1.000000000

1.000000760

2.000000000

1.999999340

3.000000000

3.000002760

4.000000000

4.000001980

5.000000000

5.000004310

10.000000000

10.000008300

2.計(jì)數(shù)型定時(shí)器在config配置腳本中選擇hwtimer count計(jì)數(shù)型定時(shí)器測(cè)試如圖1所示。d29dd4b0-a278-11ed-ad0d-dac502259ad0.png圖1 計(jì)數(shù)型定時(shí)器例程保存后重新Build工程,編譯好后運(yùn)行的是demo_hwtimer_count.c的代碼,例程關(guān)鍵代碼如下:

aw_local void* __task_handle (void *arg){ uint32_t count = 0; int fd, led_fd; int ret; uint32_t start_count; fd = aw_open(CONFIG_DEMO_HWTIMER_PEROID_DEV_NAME, AW_O_RDWR, 0); if (fd < 0) { aw_kprintf("hwtimer open fail! :%d\n",fd); return; } /* 打開(kāi)設(shè)備會(huì)點(diǎn)亮LED */ led_fd = aw_open("/dev/led_run", AW_O_RDWR, 0); if (led_fd < 0) { aw_kprintf("led open fail! :%d\n", led_fd); aw_close(fd); return; } ret = aw_hwtimer_count_rate_get(fd, &start_count); if (ret != AW_OK) { aw_kprintf("Timer count rate get fail!\n"); aw_close(fd); aw_close(led_fd); return; } // 設(shè)置時(shí)鐘頻率 ret = aw_hwtimer_count_rate_set(fd, start_count/2); if (ret != AW_OK) { aw_kprintf("Timer count rate set fail!\n"); aw_close(fd); aw_close(led_fd); return; } ret = aw_hwtimer_count_start(fd); if (ret != AW_OK) { aw_kprintf("Timer start fail!\n"); aw_close(fd); aw_close(led_fd); return; } for (;;) { aw_led_toggle(led_fd); aw_mdelay(500); aw_led_toggle(led_fd); aw_hwtimer_count_get(fd, &count); aw_kprintf("Count is %d\r\n", count); } aw_close(fd); aw_close(led_fd); return 0;}

在上述代碼中使用了aw_hwtimer_count_rate_get接口獲取改定時(shí)器時(shí)鐘頻率,可以在調(diào)試模式下查看獲取到的參數(shù),為100M 如圖2所示。d2bcdc8e-a278-11ed-ad0d-dac502259ad0.png圖2查看參數(shù)使用aw_hwtimer_count_rate_set接口設(shè)置定時(shí)器時(shí)鐘的頻率為50M,使用aw_hwtimer_count_start接口開(kāi)啟定時(shí)器,使用aw_hwtimer_count_get接口在循環(huán)中每延時(shí)500ms獲取一次計(jì)數(shù)值,并在串口中打印,打印結(jié)果如圖3所示。

d2ce07ac-a278-11ed-ad0d-dac502259ad0.png

圖3串口打印計(jì)數(shù)值打印出的計(jì)數(shù)值中,相鄰兩個(gè)計(jì)數(shù)值之差為25M,是由于設(shè)置定時(shí)器頻率為50M,每延時(shí)500ms計(jì)數(shù)值增加25M。3.延時(shí)型定時(shí)器在config配置腳本中選擇hwtimer delay延時(shí)型定時(shí)器測(cè)試如圖4所示。d2dbe886-a278-11ed-ad0d-dac502259ad0.png圖4計(jì)數(shù)型定時(shí)器例程保存后重新Build工程,編譯好后運(yùn)行的是demo_hwtimer_count.c的代碼,例程關(guān)鍵代碼如下:

aw_local void* __task_handle (void *arg){ int i; int fd; aw_err_t ret; aw_timespec_t timespec; aw_timestamp_t start_timestamp, stop_timestamp; aw_timestamp_freq_t timestamp_freq; uint64_t delay_ns, diff; uint32_t ns_numerator = 1000000000;
timestamp_freq = aw_timestamp_freq_get(); while (0 == (timestamp_freq % 10)) { timestamp_freq /= 10; ns_numerator /= 10;}
fd = aw_open(CONFIG_DEMO_HWTIMER_DELAY_DEV_NAME, AW_O_RDWR, 0); if (fd < 0) { aw_kprintf("hwtimer open failed:%d \n\r", fd); while(1); }
delay_ns = 2001000; for (i = 0; i < 100; i++) { timespec.tv_sec = delay_ns / 1000000000u; timespec.tv_nsec = (uint32_t)(delay_ns % 1000000000u);
start_timestamp = aw_timestamp_get(); ret = aw_hwtimer_delay(fd, ×pec); if (ret !=AW_OK) { aw_kprintf("hwtimer delay failed:%d \n\r", ret); } aw_barrier(); stop_timestamp = aw_timestamp_get();
stop_timestamp -= start_timestamp; diff = stop_timestamp; diff *= ns_numerator; diff /= timestamp_freq;
diff = diff - delay_ns; aw_kprintf( "hwtimer_delay delay = %u,diff = %u ns\n", (uint32_t)delay_ns, (uint32_t)diff); delay_ns += 100000; } aw_close(fd); return 0;}

上述代碼中在延時(shí)開(kāi)始前使用aw_timestamp_get接口記錄時(shí)間戳,使用aw_hwtimer_delay接口進(jìn)行延時(shí),延時(shí)結(jié)束后記錄結(jié)束時(shí)間戳,用兩個(gè)時(shí)間戳的差值通過(guò)換算,用于對(duì)比延時(shí)不同時(shí)間下與timestamp相比的誤差,并在串口中打印,打印后增加延時(shí)時(shí)間,再次循環(huán),串口打印結(jié)果如下圖所示。d2e8114c-a278-11ed-ad0d-dac502259ad0.png圖5串口打印結(jié)果因外設(shè)接口調(diào)用時(shí)代碼執(zhí)行需要時(shí)間以及晶振等硬件會(huì)導(dǎo)致誤差,分析例程打印數(shù)據(jù)可得,延時(shí)性定時(shí)器的軟件開(kāi)銷(xiāo)在同一硬件以及接口下,其誤差基本是一致的。4. 捕獲型定時(shí)器

{SDK}\demos\peripheral\cap路徑下為捕獲型定時(shí)器例程,例程關(guān)鍵代碼如下:

/* 單邊沿觸發(fā)*/static void test_cap_single_edge( int fd, int gpio_cap, uint32_t ms, aw_hwtimer_cap_config_t *p_config, int is_rising){ uint64_t cap_val1, cap_val2; aw_err_t ret;
// 制造兩次上升沿 mk_edge(gpio_cap, 5); aw_task_delay(ms); mk_edge(gpio_cap, 5);
// 此時(shí)應(yīng)該產(chǎn)生了兩次捕獲事件 // 把它們讀出來(lái) ret = aw_hwtimer_cap_read(fd, &cap_val1, AW_WAIT_FOREVER); if (AW_OK != ret) { aw_kprintf("cap read cap_val1 failed \n"); return; } ret = aw_hwtimer_cap_read(fd, &cap_val2, AW_WAIT_FOREVER); if (AW_OK != ret) { aw_kprintf("cap read cap_val2 failed \n"); return; }
cap_val2 -= cap_val1; cap_val2 *= 1000000; cap_val2 /= p_config->sample_rate;
if (is_rising) { aw_kprintf("two rising edge between %u ms \n", ms + 5); } else { aw_kprintf("two falling edge between %u ms \n", ms + 5); } aw_kprintf("two capture events between %llu us \n", cap_val2);}
static void demo_cap_base(int gpio_cap){ int fd; aw_err_t ret; aw_hwtimer_cap_config_t config;
// 使得測(cè)試GPIO輸出為0 aw_gpio_set(gpio_cap, 0);
fd = aw_open(CONFIG_DEMO_HWTIMER_CAP_DEV_NAME, AW_O_RDWR, 0); if (fd < 0) { aw_kprintf("cap open failed!\n"); return; }
// 獲取捕獲定時(shí)器的配置 ret = aw_hwtimer_cap_config_get(fd, &config); if (ret != AW_OK) { aw_kprintf("cap config get failed...\r\n"); aw_close(fd); return ; }
#if CONFIG_SINGLE_EDGE int is_rising; // 配置為上升沿觸發(fā)捕獲 config.cap_edge_flags = AW_CAPTURE_RISING_EDGE; is_rising = 1; ret = aw_hwtimer_cap_config_set(fd, &config); if (ret != AW_OK) { aw_kprintf("cap config set failed...\r\n"); aw_close(fd); return ; }
ret = aw_hwtimer_cap_start(fd); if (ret != AW_OK) { aw_kprintf("cap start failed...\r\n"); aw_close(fd); return ; } test_cap_single_edge(fd, gpio_cap, 20, &config, is_rising);#endif
aw_close(fd);}

在CAP 例程中默認(rèn)使用的是timer5_chan0,這個(gè)通道對(duì)應(yīng)的引腳是PF08,可以通過(guò)查看工程下timer5_chan0對(duì)應(yīng)的.h文件得知所使用的引腳的編號(hào)為168,通過(guò)查看hpm_pin.h頭文件可知編號(hào)168對(duì)應(yīng)的引腳為PF08 如下圖所示。d2f71a48-a278-11ed-ad0d-dac502259ad0.png圖6默認(rèn)通道d314c250-a278-11ed-ad0d-dac502259ad0.png圖7對(duì)應(yīng)引腳編號(hào)

d325495e-a278-11ed-ad0d-dac502259ad0.png

圖8對(duì)應(yīng)引腳本實(shí)驗(yàn)中還用到了PF09 這個(gè)引腳,用于產(chǎn)生捕獲事件,PF09 和 PF08 這兩個(gè)引腳在開(kāi)發(fā)板上并沒(méi)有引出來(lái),不利于這次實(shí)驗(yàn),需要修改這兩個(gè)引腳。d33596e2-a278-11ed-ad0d-dac502259ad0.png圖9捕獲產(chǎn)生引腳參考{SDK} platforms\platform-hpm-aworks-lp\boards\EPC6450-AWI\dts 下的pins.dts 引腳描述文件,找到timer4_chan1 如圖10所示,timer4_chan1 使用的引腳是PE25, 對(duì)應(yīng)著開(kāi)發(fā)板排針 UTX1 絲印的位置。d3458d7c-a278-11ed-ad0d-dac502259ad0.png圖10捕獲產(chǎn)生引腳打開(kāi)配置界面將timer5_chan0修改為timer4_chan1 如圖11所示,修改后點(diǎn)擊保存,重新build工程。d359fd16-a278-11ed-ad0d-dac502259ad0.png圖11配置界面將CAP_GPIO 對(duì)應(yīng)的引腳改為PIN_PE24,對(duì)應(yīng)著開(kāi)發(fā)板排針 URX1 絲印的位置,如圖12所示。

d3735f7c-a278-11ed-ad0d-dac502259ad0.png

圖12CAP引腳將 PE25 , PE24 這兩個(gè)引腳,也就是排針上 URX1 和 UTX1 短接。

d38306fc-a278-11ed-ad0d-dac502259ad0.png

圖13引腳位置上訴代碼中使用aw_hwtimer_cap_config_get接口獲取捕獲定時(shí)器的配置信息,配置AW_CAPTURE_RISING_EDGE單通道模式后使用aw_hwtimer_cap_config_set接口配置捕獲定時(shí)器。使用aw_hwtimer_cap_start接口啟動(dòng)定時(shí)器。在test_cap_single_edge函數(shù)中調(diào)用mk_edge函數(shù)制造兩次上升沿,使用aw_hwtimer_cap_read接口讀取這兩次事件捕獲到的計(jì)數(shù)值,計(jì)算出差值后在串口上顯示。在test_cap_single_edge函數(shù)中使用mk_edge函數(shù)中控制CAP_GPIO引腳輸出高電平后延時(shí)5ms再輸出低電平。延時(shí)20ms后再次調(diào)用mk_edge函數(shù),因此兩次上升沿事件間隔應(yīng)為25ms。串口打印結(jié)果如下圖所示。d3a7e5c6-a278-11ed-ad0d-dac502259ad0.png圖14串口打印結(jié)果

至此,所有類(lèi)型的硬件定時(shí)器樣例均已展示完畢,在軟件應(yīng)用設(shè)計(jì)中可根據(jù)實(shí)際需求選取不同類(lèi)型的定時(shí)器進(jìn)行使用。更多其他類(lèi)型外設(shè)的用法介紹,請(qǐng)關(guān)注后續(xù)同系列推文~

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    9518

    瀏覽量

    156993
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3368

    瀏覽量

    123519
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    固件燒錄速度實(shí)測(cè):JTAG比UART快6.8倍

    在批量生產(chǎn)場(chǎng)景中,固件燒錄效率直接影響產(chǎn)線(xiàn)節(jié)拍與交付能力。如何選擇最優(yōu)燒錄方式?本文以ZLG致遠(yuǎn)電子MR6450系列核心板為,通過(guò)實(shí)測(cè)數(shù)據(jù)為您解析。MR6450核心板MR6450是Z
    的頭像 發(fā)表于 01-27 11:34 ?267次閱讀
    固件燒錄速度實(shí)測(cè):JTAG比UART快6.8倍

    瑞薩RL78/F22 MCU基于e2studio開(kāi)發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用工程

    瑞薩RL78/F22 MCU基于e2studio開(kāi)發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用工程
    的頭像 發(fā)表于 01-14 15:31 ?5743次閱讀
    瑞薩RL78/F22 MCU基于e2studio開(kāi)發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用<b class='flag-5'>樣</b><b class='flag-5'>例</b>工程

    瑞薩RL78/F25 MCU基于IAR開(kāi)發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用工程

    瑞薩RL78/F25 MCU基于IAR開(kāi)發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用工程
    的頭像 發(fā)表于 01-05 14:59 ?6658次閱讀
    瑞薩RL78/F25 MCU基于IAR開(kāi)發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用<b class='flag-5'>樣</b><b class='flag-5'>例</b>工程

    MR30分布式I/O助力物流分揀系統(tǒng)智能化升級(jí)

    本文以MR30分布式I/O在某大型電商物流中心分揀系統(tǒng)的應(yīng)用為,詳細(xì)闡述其在合流、分揀、分流、分運(yùn)全流程中的模塊化應(yīng)用方案。
    的頭像 發(fā)表于 10-31 10:58 ?1037次閱讀
    <b class='flag-5'>MR</b>30分布式I/O助力物流分揀系統(tǒng)智能化升級(jí)

    基于開(kāi)源鴻蒙的圖片編輯開(kāi)發(fā)(2)

    本期內(nèi)容介紹基于開(kāi)源鴻蒙在RK3568上開(kāi)發(fā)圖片編輯的全流程,分為上篇和下篇,本篇為下篇,主要介紹標(biāo)記、保存圖片功能。
    的頭像 發(fā)表于 10-31 09:19 ?3194次閱讀
    基于開(kāi)源鴻蒙的圖片編輯開(kāi)發(fā)<b class='flag-5'>樣</b><b class='flag-5'>例</b>(2)

    基于開(kāi)源鴻蒙的圖片編輯開(kāi)發(fā)(1)

    本期內(nèi)容介紹基于開(kāi)源鴻蒙在RK3568上開(kāi)發(fā)圖片編輯的全流程,分為上篇和下篇,本篇為上篇,主要介紹添加相冊(cè)圖片、編譯圖片功能。
    的頭像 發(fā)表于 10-31 09:16 ?3061次閱讀
    基于開(kāi)源鴻蒙的圖片編輯開(kāi)發(fā)<b class='flag-5'>樣</b><b class='flag-5'>例</b>(1)

    新潔能NCE65TF099:高頻開(kāi)關(guān)性能如何賦能不同產(chǎn)品應(yīng)用?

    在當(dāng)今快速發(fā)展的電子技術(shù)領(lǐng)域,高頻開(kāi)關(guān)性能已成為衡量功率器件性能的關(guān)鍵指標(biāo)之一。新潔能憑借其卓越的高頻開(kāi)關(guān)性能,正在為各種產(chǎn)品應(yīng)用帶來(lái)前所未有的賦能與變革。本文將深入探討新潔能NCE65TF099
    的頭像 發(fā)表于 10-20 16:21 ?813次閱讀
    新潔能NCE65TF099:高頻開(kāi)關(guān)性能如何賦能不同<b class='flag-5'>產(chǎn)品應(yīng)用</b>?

    MR30分布式I/O模塊在化工行業(yè)的應(yīng)用

    氧化鋁等化工行業(yè)實(shí)現(xiàn)穩(wěn)定生產(chǎn)。本期案例使用的MR30系列分布式I/O產(chǎn)品MR30-FBC-PN、MR30-16DI、MR30-16DO、
    的頭像 發(fā)表于 09-05 11:30 ?613次閱讀

    MR30分布式I/O模塊在涂裝產(chǎn)線(xiàn)中的應(yīng)用

    某裝備制造企業(yè)主要從事自動(dòng)化焊割、涂裝生產(chǎn)線(xiàn)的設(shè)計(jì)與制造,其中涂裝生產(chǎn)線(xiàn)涉及噴砂、噴漆、熱處理、廢氣處理等工藝。明達(dá)技術(shù)的MR30系列分布式I/O,性能穩(wěn)定,易上手,方便接線(xiàn),助力企業(yè)提升產(chǎn)品
    的頭像 發(fā)表于 08-27 15:38 ?582次閱讀
    <b class='flag-5'>MR</b>30分布式I/O模塊在涂裝產(chǎn)線(xiàn)中的應(yīng)用

    基于開(kāi)源鴻蒙的AVPlayer視頻播控開(kāi)發(fā)

    在開(kāi)源鴻蒙生態(tài)建設(shè)中,多媒體能力是構(gòu)建豐富用戶(hù)體驗(yàn)的核心要素。本開(kāi)發(fā)基于AVPlayer實(shí)現(xiàn),AvPlayer支持流媒體和本地資源解析、媒體資源解封裝、視頻解碼和渲染功能,適用于對(duì)媒體資源進(jìn)行端
    的頭像 發(fā)表于 08-21 10:22 ?2797次閱讀
    基于開(kāi)源鴻蒙的AVPlayer視頻播控開(kāi)發(fā)<b class='flag-5'>樣</b><b class='flag-5'>例</b>

    基于開(kāi)源鴻蒙的視頻播放開(kāi)發(fā)

    在開(kāi)源鴻蒙生態(tài)建設(shè)中,多媒體能力是構(gòu)建豐富用戶(hù)體驗(yàn)的核心要素。本開(kāi)發(fā)針對(duì)視頻播放場(chǎng)景,聚焦開(kāi)源鴻蒙原生媒體框架,通過(guò)Video組件實(shí)現(xiàn)視頻資源加載、播放狀態(tài)控制及多樣化展示形態(tài)。重點(diǎn)演示組件化
    的頭像 發(fā)表于 08-19 10:41 ?1603次閱讀
    基于開(kāi)源鴻蒙的視頻播放開(kāi)發(fā)<b class='flag-5'>樣</b><b class='flag-5'>例</b>

    RISC-V和ARM有何區(qū)別?

    在微處理器架構(gòu)領(lǐng)域,ARM與RISC-V是兩個(gè)備受關(guān)注的體系。ZLG致遠(yuǎn)電子在推出ARM核心版后,又推出了基于RISC-V的MR6450核心版,這引發(fā)了人們對(duì)這兩種架構(gòu)差異的深入探討。ARM
    的頭像 發(fā)表于 06-24 11:38 ?2014次閱讀
    RISC-V和ARM有何區(qū)別?

    基于瑞薩電子RA8T2 sensorless方案的工程 可對(duì)電流環(huán)進(jìn)行TCM化設(shè)置

    基于瑞薩電子RA8T2 sensorless方案的工程 可對(duì)電流環(huán)進(jìn)行TCM化設(shè)置
    的頭像 發(fā)表于 06-04 18:29 ?1100次閱讀

    湖南銀河電氣有限公司產(chǎn)品應(yīng)用案例

    湖南銀河電氣有限公司產(chǎn)品應(yīng)用案例
    發(fā)表于 04-23 11:21 ?0次下載

    RISC-V生態(tài)崛起:政策落地與高性能芯片的崛起

    近期,RISC-V生態(tài)取得重要進(jìn)展,包括高性能核心板的推出和在工業(yè)自動(dòng)化、物聯(lián)網(wǎng)等領(lǐng)域的廣泛應(yīng)用。其中,致遠(yuǎn)電子MR6450系列RISC-V核心板,憑借高性能和豐富的通信接口,成為工業(yè)控制和物聯(lián)網(wǎng)
    的頭像 發(fā)表于 03-06 11:35 ?1393次閱讀
    RISC-V生態(tài)崛起:政策落地與高性能芯片的崛起