當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 充電吧
[導(dǎo)讀]? Zstack協(xié)議棧依靠協(xié)議棧內(nèi)部的OS(即OSAL)才能運(yùn)行起來(lái),OSAL提供的服務(wù)和管理包括:信息管理、任務(wù)同步、時(shí)間管理、中斷管理、任務(wù)管理、內(nèi)存管理、電源管理以及非易失存儲(chǔ)管理。1. 信息管

? Zstack協(xié)議棧依靠協(xié)議棧內(nèi)部的OS(即OSAL)才能運(yùn)行起來(lái),OSAL提供的服務(wù)和管理包括:信息管理、任務(wù)同步、時(shí)間管理、中斷管理、任務(wù)管理、內(nèi)存管理、電源管理以及非易失存儲(chǔ)管理。

1. 信息管理API

? 信息管理API為任務(wù)和處理單元之間的信息交換提供了一種具有不同處理環(huán)境的機(jī)制(例如,在一個(gè)控制循環(huán)中調(diào)用中斷服務(wù)常規(guī)程序或函數(shù))。這個(gè)API中國(guó)的函數(shù)可以使任務(wù)分配或回收信息緩沖區(qū),給其他任務(wù)發(fā)送任務(wù)信息以及接受回復(fù)信息。

1.1 osal_msg_allocate()

? 這個(gè)函數(shù)被一個(gè)任務(wù)調(diào)用去分配一個(gè)信息緩沖,這個(gè)任務(wù)/函數(shù)將填充這個(gè)信息并且調(diào)用osal_msg_send()發(fā)送消息到另一個(gè)任務(wù)中。函數(shù)原型如下:


????uint8?*osal_msg_allocate(?uint16?len?);


? 參數(shù)描述:

??? len是信息的長(zhǎng)度。

? 返回值:返回值是指向一個(gè)信息分配的緩沖區(qū)的指針。一個(gè)空值的返回表明信息分配操作失敗。

1.2 osal_msg_deallocate()

? 這個(gè)函數(shù)用來(lái)回收一個(gè)信息緩沖區(qū),在完成處理一個(gè)接受信息后這個(gè)函數(shù)被一個(gè)任務(wù)(或處理機(jī)單元)低啊用。函數(shù)原型如下:


????uint8?osal_msg_deallocate(byte?*msg_ptr);

? 參數(shù)描述:

msg_ptr是指向必須回收的信息緩沖的指針。

? 返回值:返回值指示了操作的結(jié)果。

ZSUCCESS:分配成功;

INVALID_MSG_POINTER:無(wú)效的信息指針;

MSG_BUFFER_NOT_AVAIL:緩沖區(qū)隊(duì)列。

1.3 osal_msg_send()

? 這個(gè)函數(shù)的功能是被一個(gè)任務(wù)調(diào)用,給另一個(gè)任務(wù)或者處理單元發(fā)送命令或數(shù)據(jù)信息。函數(shù)原型如下:

????uint8?osal_msg_send(?byte?destination_task?,?byte?*msg_ptr);


? 參數(shù)描述:

destination_task是接收信息任務(wù)的ID。

msg_ptr是指向必須包含信息的緩沖區(qū)的指針。msg_ptr必須執(zhí)行osal_msg_allocate()分配的一個(gè)有效緩沖區(qū)。


? 返回值:返回值是一個(gè)字節(jié),表明操作的結(jié)果。

ZSUCCESS:分配成功;

INVALID_MSG_POINTER:無(wú)效的信息指針;

INVALID_TASK:destination_task是無(wú)效的。

1.4 osal_msg_receive()

? 此函數(shù)被一個(gè)任務(wù)調(diào)用來(lái)檢索一條已經(jīng)收到的命令信息。調(diào)用osal_msg_receive()處理信息后,必須回收信息緩沖區(qū)。函數(shù)原型如下:


????uint8?*osal_msg_receive(?byte?task_id);


? 參數(shù)描述:task_id是調(diào)用任務(wù)(信息指定的)的標(biāo)識(shí)符。

? 返回值:返回值是一個(gè)指向包含該信息的緩沖區(qū)的指針,如果沒(méi)有已接收的信息,返回值為空(NULL)。

2. 任務(wù)同步API

? 任務(wù)同步API使得任務(wù)等待事件發(fā)送,并在等待期間返回控制。這個(gè)API中的函數(shù)可以用來(lái)為一個(gè)任務(wù)設(shè)置事件,無(wú)論設(shè)置了什么事件都通知任務(wù)。

? 通過(guò)osal_set_event()這個(gè)函數(shù)調(diào)用,為一個(gè)任務(wù)設(shè)置事件的標(biāo)志。其函數(shù)原型如下:


????uint8?osal_set_event(?byte?task_id?,?UINT16?event_flag?);


? 參數(shù)描述:

task_id是設(shè)置事件的任務(wù)的標(biāo)識(shí)符。

event_flag是兩個(gè)字節(jié)的位圖且每個(gè)位詳述了一個(gè)事件。這僅有一個(gè)系統(tǒng)事件(SYS_EVENT_MSG),其余事件/位都是通過(guò)接收任務(wù)來(lái)規(guī)定的。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:成功;

INVALID_TASK:無(wú)效事件;

3. 定時(shí)器管理API

? 定時(shí)器管理API使Zstack內(nèi)部的任務(wù)和外部的應(yīng)用層任務(wù)都可以使用定時(shí)器。API提供了啟動(dòng)和停止一個(gè)定時(shí)器的功能,這個(gè)定時(shí)器可設(shè)定遞增的一毫秒。

3.1 osal_start_timer()

? 啟動(dòng)一個(gè)定時(shí)器時(shí)調(diào)用此函數(shù)。當(dāng)定時(shí)器終止時(shí),給定的事件位將設(shè)置。這個(gè)事件通過(guò)osal_start_timer()函數(shù)調(diào)用,將在任務(wù)中設(shè)置。函數(shù)原型如下:


????uint8?osal_start_timer(?UINT16?event_id?,?UINT16?timeout_value);


? 參數(shù)描述:

event_id是用戶確定事件的ID。當(dāng)定時(shí)器終止時(shí),該事件將被觸發(fā)。

timeout_value指定時(shí)器事件設(shè)置之前的時(shí)長(zhǎng)(以毫秒為單位)。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:成功;

NO_TIMER_AVAILABLE:沒(méi)有能夠啟動(dòng)定時(shí)器;

3.2 osal_start_timerEx() ? 類似于osal_start_timer(),增加了taskID參數(shù)。允許訪問(wèn)這個(gè)調(diào)用程序?yàn)榱硪粋€(gè)任務(wù)設(shè)置定時(shí)器。函數(shù)原型如下:


????uint8?osal_start_timerEx(?byte?taskID?,?UINT16?event_id?,?UINT16?timerout_value?);


? 參數(shù)描述:

taskID是定時(shí)器終止時(shí),獲取該事件任務(wù)的ID。

event_id是用戶確定事件的ID。當(dāng)定時(shí)器終止時(shí),該事件將被觸發(fā)。

timeout_value指定時(shí)器事件設(shè)置之前的時(shí)長(zhǎng)(以毫秒為單位)。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:成功;

NO_TIMER_AVAILABLE:沒(méi)有能夠啟動(dòng)定時(shí)器;


3.3 osal_stop_timer()


??? 此函數(shù)用來(lái)停止一個(gè)已啟動(dòng)的定時(shí)器,如果成功,函數(shù)將取消定時(shí)器并阻止設(shè)置調(diào)用程序中與定時(shí)器有關(guān)的時(shí)間。使用osal_stop_timer()函數(shù),意味著調(diào)用osal_stop_timer()的任務(wù)中定時(shí)器正在運(yùn)行。函數(shù)原型如下:


????uint8?osal_stop_timer(?UINT16?event_id?);


? 參數(shù)描述:

event_id是要停止的計(jì)時(shí)器的標(biāo)識(shí)符。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:關(guān)閉定時(shí)器成功;

INVALID_EVENT_ID:無(wú)效事件;

3.3 osal_stop_timerEx() ? 此函數(shù)功能是在不同的任務(wù)中中止定時(shí)器的,與osal_stop_timer()函數(shù)類似,只是指明了任務(wù)ID。函數(shù)原型如下:


????uint8?osal_stop_timerEx(?byte?task_id?,?UINT16?event_id?);


? 參數(shù)描述:

task_id:停止定時(shí)器所在的任務(wù)ID。

event_id:要停止的計(jì)時(shí)器的標(biāo)識(shí)符。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:關(guān)閉定時(shí)器成功;

INVALID_EVENT_ID:無(wú)效事件;

3.5 osal_GetSystemClock()

? 此函數(shù)功能為讀取系統(tǒng)時(shí)鐘。函數(shù)原型如下:


????uint8?osal_GetSystemClock(?void?);


? 返回值為以毫秒為單位的系統(tǒng)時(shí)鐘。
4. 中斷管理API

? 中斷管理API可以使一個(gè)任務(wù)與外部中斷互相交流。API中的函數(shù)允許和每個(gè)中斷去聯(lián)絡(luò)一個(gè)具體的服務(wù)流程。中斷可以啟用或禁用,在服務(wù)例程內(nèi)部,可以為其他任務(wù)設(shè)置事件。

4.1 osal_int_enable()

? 此函數(shù)的功能是啟用一個(gè)中斷,中斷一旦啟用將調(diào)用與該中斷相聯(lián)系的服務(wù)例程。函數(shù)原型如下:


????uint8?osal_int_enable(?byte?interrupt_id?);


? 參數(shù)描述:

interrupt_id:指明要啟用的中斷。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:開啟中斷成功;

INVALID_INTERRUPT_ID:無(wú)效中斷;

4.2 osal_int_disable()

? 此函數(shù)的功能是禁用一個(gè)中斷,當(dāng)禁用一個(gè)中斷時(shí),與該中斷相聯(lián)系的服務(wù)例程將不被調(diào)用。函數(shù)原型如下:

????uint8?osal_int_enable(?byte?interrupt_id?);


? 參數(shù)描述:

interrupt_id:指明要禁用的中斷。

? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:關(guān)閉中斷成功;

INVALID_INTERRUPT_ID:無(wú)效中斷;


5. 任務(wù)管理API

? 在OSAL系統(tǒng)中,API常用語(yǔ)添加和管理任務(wù)。每個(gè)任務(wù)由初始化函數(shù)和時(shí)間處理函數(shù)組成。

5.1 osal_init_system()

? 此函數(shù)功能為初始化OSAL系統(tǒng)。在使用任何其他OSAL函數(shù)之前必須先調(diào)用此函數(shù)啟動(dòng)OSAL系統(tǒng)。函數(shù)原型為:


????uint8?osal_init_system(?void?);


? 參數(shù)描述:

無(wú)。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:初始OSAL系統(tǒng)成功;

5.2 osal_start_system()

? 此函數(shù)是任務(wù)系統(tǒng)中的主循環(huán)函數(shù)。它將仔細(xì)檢查所有的任務(wù)事件,并且為含有該事件的任務(wù)調(diào)用任務(wù)事件處理函數(shù)。如果有特定任務(wù)事件,這個(gè)函數(shù)將為該任務(wù)調(diào)用事件處理例程來(lái)處理事件。相應(yīng)任務(wù)的事件處理例程一次處理一個(gè)事件。一個(gè)事件被處理后,剩余事件將等待下一次循環(huán)。如果沒(méi)有時(shí)間,這個(gè)函數(shù)時(shí)處理器程序處于睡眠模式。函數(shù)原型為:

????uint8?osal_start_system(?void?);


? 參數(shù)描述:

無(wú)。

? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:成功;


6. 內(nèi)存管理API

? 內(nèi)存管理API代表一個(gè)簡(jiǎn)單的內(nèi)存分配系統(tǒng)。這些函數(shù)允許動(dòng)態(tài)存儲(chǔ)內(nèi)存分配。

6.1 osal_mem_alloc()

? 此函數(shù)是一個(gè)內(nèi)存分配函數(shù),如果分配內(nèi)存成功,返回一個(gè)指向緩沖區(qū)的指針。函數(shù)原型如下:


????void?*osal_mem_alloc(?uint16?size?);


? 參數(shù)描述:

size:要求的緩沖區(qū)字節(jié)數(shù)值。


? 返回值:

指向新分配的緩沖區(qū)的空指針(應(yīng)指向目的緩沖類型)。

如果沒(méi)有足夠的內(nèi)存可分配,將返回NULL指針。

6.2 osal_mem_free()

? 此函數(shù)用于釋放存儲(chǔ)空間,便于被釋放的存儲(chǔ)空間的再次使用,僅在內(nèi)存已經(jīng)通過(guò)調(diào)用osal_mem_alloc()被分配后才有效。函數(shù)原型如下:


????void?osal_mem_free(?void?*ptr?);


參數(shù)描述:

ptr:指向要釋放的緩沖區(qū)的指針。這個(gè)緩沖區(qū)必須在之前調(diào)用osal_mem_alloc()已被分配,為以前分配的空間。


? 返回值:

???????????? 無(wú)。
7. 電源管理API

? 當(dāng)安全關(guān)閉接收器或外部硬件時(shí),電源管理API為應(yīng)用程序或任務(wù)提供了告知OSAL的方法,使處理器轉(zhuǎn)入睡眠狀態(tài)。

? 電源管理API有2個(gè)函數(shù):osal_pwrmgr_device()和osal_pwrmgr_task_state()。第一個(gè)函數(shù)時(shí)設(shè)置設(shè)備的模式;第二個(gè)為電源狀態(tài)管理。

7.1 osal_pwrmgr_device()

? 當(dāng)升高電源或需要改變電源時(shí)(例如:電池支持的協(xié)調(diào)器),這個(gè)函數(shù)應(yīng)有中心控制實(shí)體(比如ZDO)調(diào)用。函數(shù)原型如下:


????void?osal_pwrmgr_device(?byte?pwrmgr_device);


? 參數(shù)描述:

pwrmgr_device:改變和設(shè)置電源的節(jié)省模式。

PWRMGR_ALWAYS_ON:沒(méi)有省電模式,設(shè)備可能使用主電源供電。

PWRMGR_BATTERY:打開省電模式。


? 返回值:

???????????? 無(wú)。


7.2 osal_pwrmgr_task_state()


? 每個(gè)任務(wù)都將調(diào)用此函數(shù)。此函數(shù)的功能是用來(lái)表決是否需要OSAL電源保護(hù)或推遲電源保護(hù)。當(dāng)一個(gè)任務(wù)被創(chuàng)建時(shí),默認(rèn)情況下電源狀態(tài)設(shè)置為保護(hù)模式。如果該任務(wù)一直想保護(hù)電源,就不必調(diào)用該函數(shù)。函數(shù)原型如下:

????void?osal_pwrmgr_task_state(?bytetask_id?,?byte?state);


? 參數(shù)描述:

state:改變一個(gè)任務(wù)的電源狀態(tài)。

PWRMGR_CONSERVE:打開省電模式,所有事件必須允許。事件初始化時(shí),此狀態(tài)位默認(rèn)狀態(tài)。

PWRMGR_HOLD:關(guān)閉省電模式。

? 返回值:

???????????? ZSUCCESS:成功。

INVALID_TASK:無(wú)效事件。

8.非易失性存儲(chǔ)管理API

? 非易失性存儲(chǔ)器API為應(yīng)用程序提供了一種吧信息永久保存到設(shè)備內(nèi)存的方法。它還能用于把Zigbee規(guī)范要求的某些項(xiàng)目永久保存到協(xié)議棧。NV函數(shù)的功能是讀寫任意數(shù)據(jù)類型的用戶自定義項(xiàng)目,比如結(jié)構(gòu)體和數(shù)組。用戶能通過(guò)設(shè)置合適的偏移和長(zhǎng)度來(lái)讀寫一個(gè)整體的項(xiàng)目或元素。API獨(dú)立于NV存儲(chǔ)介質(zhì),并且能用于實(shí)現(xiàn)閃存或EEPROM。

? 每個(gè)易失性的項(xiàng)目都僅有一個(gè)ID,當(dāng)一些ID由?;蚱脚_(tái)保留或運(yùn)用時(shí),應(yīng)用程序中有特定的一系列ID值。加入應(yīng)用程序創(chuàng)建自己的易失性項(xiàng)目,它必須從應(yīng)用范圍的值內(nèi)選擇一個(gè)標(biāo)識(shí)符。如表所示:


值 使用者 0x0000 保留 0x0001-0x0020 操作系統(tǒng)抽象層 0x0021-0x0040 網(wǎng)絡(luò)層 0x0041-0x0060 應(yīng)用支持子層 0x0061-0x0080 安全 0x0081-0x00A0 Zigbee設(shè)備對(duì)象 0x00A1-0x0200 保留 0x0201-0x0FFF 應(yīng)用程序 0x1000-0xFFFF 保留 ? 運(yùn)用API時(shí)需要注意以下幾個(gè)方面:

有一些模塊化調(diào)用函數(shù),操作系統(tǒng)可能需要較短的時(shí)間來(lái)完成(例如幾毫秒的時(shí)間),尤其是對(duì)NV寫入操作。

盡量不要頻繁地執(zhí)行NV寫入操作。

結(jié)構(gòu)體中一個(gè)或多個(gè)NV項(xiàng)目改變,尤其是從一個(gè)Zstack版本升級(jí)至另一個(gè)版本時(shí),必須擦除和重新初始化NV內(nèi)存。否則,修改NV項(xiàng)目的讀寫操作將失敗,或產(chǎn)生錯(cuò)誤結(jié)果。

8.1 osal_nv_item_init()

? 此函數(shù)用于初始化NV項(xiàng)目,用于檢查存在的NV的項(xiàng)目。如果不存在,它將通過(guò)這個(gè)函數(shù)去創(chuàng)建或初始化。假如存在,再調(diào)用osal_nv_read()或osal_nv_write()之前,每個(gè)項(xiàng)目都應(yīng)調(diào)用此函數(shù)。函數(shù)原型如下:


????uint8?osal_nv_item_init(?uint16?id?,?uint16?len?,?void?*buf);



? 參數(shù)描述:

id:用戶自定義項(xiàng)的ID。

len:項(xiàng)目字節(jié)長(zhǎng)度。

*buf:初始化數(shù)據(jù)指針。如沒(méi)初始化數(shù)據(jù),則設(shè)置為空。


? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:成功;

NV_ITEM_UNINIT:對(duì)象沒(méi)初始化;

NV_OPER_FAILED:操作失敗。


8.2 osal_nv_read()


? 此函數(shù)用于從NV中讀出數(shù)據(jù),用于從NV中帶用偏移的索引指向的項(xiàng)目中讀出整個(gè)項(xiàng)目或一個(gè)元素,讀出數(shù)據(jù)復(fù)制到*buf中。函數(shù)原型如下:

????uint8?osal_nv_read(?uint16?id?,?uint16?offset?,uint16?len?,?void?*buf);



? 參數(shù)描述:

id:用戶自定義項(xiàng)的ID。

offset:以字節(jié)為單位到項(xiàng)目的存儲(chǔ)偏移量

len:項(xiàng)目字節(jié)長(zhǎng)度。

*buf:數(shù)據(jù)讀取到緩沖區(qū)。

? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:成功;

NV_ITEM_UNINIT:對(duì)象沒(méi)初始化;

NV_OPER_FAILED:操作失敗。

8.3 osal_nv_write()

? 此函數(shù)用于寫入數(shù)據(jù)到NV中,用于從NV中帶用偏移的索引指向的項(xiàng)目中寫入整到整個(gè)NV項(xiàng)目中。函數(shù)原型如下:

????uint8?osal_nv_write(?uint16?id?,?uint16?offset?,uint16?len?,?void?*buf);



? 參數(shù)描述:

id:用戶自定義項(xiàng)的ID。

offset:以字節(jié)為單位到項(xiàng)目的存儲(chǔ)偏移量

len:項(xiàng)目字節(jié)長(zhǎng)度。

*buf:數(shù)據(jù)寫入到緩沖區(qū)。

? 返回值:返回值指示操作的結(jié)果。

ZSUCCESS:成功;

NV_ITEM_UNINIT:對(duì)象沒(méi)初始化;

NV_OPER_FAILED:操作失敗。



8.4 osal_offsetof()


? 此函數(shù)用于計(jì)算一個(gè)結(jié)構(gòu)體內(nèi)元素的偏移量,以字節(jié)為單位。用它來(lái)計(jì)算NV API函數(shù)使用的參數(shù)的偏移量。函數(shù)原型如下:

????uint8?osal_offsetof(?type?,?member);


? 參數(shù)描述:

????????????? type:結(jié)構(gòu)體類型。

???????????? member:結(jié)構(gòu)體成員

? 返回值:

??????????? 無(wú)。





本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉