www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 工業(yè)控制 > 電路設(shè)計(jì)項(xiàng)目集錦
[導(dǎo)讀]歡迎來到我的新項(xiàng)目,將Spotify Web API與我們的W5100S-EVB-Pico 2結(jié)合在CircuitPython上。這個(gè)項(xiàng)目顯示您的用戶名和您的Spotify網(wǎng)絡(luò)播放器上的當(dāng)前歌曲名稱到使用I2C協(xié)議與板連接的LCD屏幕上。

歡迎來到我的新項(xiàng)目,將Spotify Web API與我們的W5100S-EVB-Pico 2結(jié)合在CircuitPython上。這個(gè)項(xiàng)目顯示您的用戶名和您的Spotify網(wǎng)絡(luò)播放器上的當(dāng)前歌曲名稱到使用I2C協(xié)議與板連接的LCD屏幕上。

最初,這個(gè)項(xiàng)目是一個(gè)本地控制器,你可以通過選擇這個(gè)程序提供的功能來控制Spotify Web應(yīng)用程序播放器,但是由于音樂暫停/恢復(fù)API需要Spotify Premium工作,當(dāng)前的程序只允許打印你的名字。在這個(gè)程序中,跳過歌曲和暫停歌曲的模板已經(jīng)實(shí)現(xiàn)。

組件和電路python設(shè)置

對(duì)于硬件部分,您需要:

1. W5100S-EVB-Pico 2

2. 1602液晶顯示屏(I2C接口)

3. 搖桿模塊(Controller Knob模塊)

對(duì)于軟件部分,您需要:

1. CircuitPython

2. Spotify Web API

在開始項(xiàng)目之前,請(qǐng)確保按照本指南設(shè)置電路板。

按如下方式連接組件。

Spotify Web API設(shè)置

去Spotify的Web API網(wǎng)站注冊(cè)成為一名開發(fā)者。

要使用Spotify Web API,您首先需要轉(zhuǎn)到儀表板頁面并創(chuàng)建新應(yīng)用程序。

1. 你可以根據(jù)你的喜好來命名你的應(yīng)用。

2. 對(duì)于重定向URI,您需要使用以下URI才能使程序工作。

3. 選中Web API框

4. 保存應(yīng)用程序。

現(xiàn)在您已經(jīng)創(chuàng)建了應(yīng)用程序。接下來讓我們獲取客戶端憑據(jù)。

進(jìn)入儀表板上的應(yīng)用程序后,你應(yīng)該去設(shè)置查看你的ID和秘密。

微控制器的lib文件夾中創(chuàng)建一個(gè)secrets.py文件,并插入以下JSON

CircuitPython庫(kù)設(shè)置

在編寫項(xiàng)目代碼之前,從CircuitPython網(wǎng)站下載庫(kù)包,并將這些庫(kù)導(dǎo)入到lib文件夾中。

1. adafruit_wiznet5k

2. adafruit_connection_manager

3. adafruit_requests

接下來,從我的GitHub頁面下載hd44780庫(kù)。這是Bernhard Bablok對(duì)library的修改,因?yàn)槲矣龅搅艘恍╁e(cuò)誤,我對(duì)library的write功能做了一些修改。

在下一節(jié)中,我將從我的Youtube頻道中跟隨我在Spotify名稱顯示器上的系列來解釋代碼,因此將有三個(gè)部分

1. 在CircuitPython上使用Spotify API

2在CircuitPython上使用162lcd

3. Spotify歌曲名稱顯示器主要功能

1. Spotify API與CircuitPython

首先,將這些庫(kù)導(dǎo)入到CircuitPython上的程序中。

接下來,我們檢查secrets.py是否包含在lib文件夾中。

之后,使用以下代碼設(shè)置互聯(lián)網(wǎng)連接。

我們的設(shè)備現(xiàn)在可以連網(wǎng)了。讓我們從Spotify API獲取授權(quán)碼開始。

我們首先將客戶端信息和重定向URI導(dǎo)入到本地變量。

接下來,定義一個(gè)包含將在程序中使用的作用域的列表。

您可以參考Spotify Web API作用域頁面來閱讀更多關(guān)于不同作用域使用的信息。

要顯示我們的名稱,顯示當(dāng)前歌曲名稱,并修改Spotify播放器,我們將需要使用以下作用域。

1. user-read-private

2. user-read-currently-playing

3. user-modify-playback-state

參考Spotify API頁面,您需要訪問授權(quán)端點(diǎn)并重定向到特定頁面以獲取代碼。

在這個(gè)項(xiàng)目中,我們將授權(quán)url打印到編輯器的串行中,并通過web瀏覽器訪問它。

在頁面上,它為發(fā)出請(qǐng)求提供了一個(gè)明確的框架。

然而,由于我們不使用JS和express框架,我們需要了解代碼是如何工作的。

重定向調(diào)用只是重定向URL輸入。對(duì)于我們的程序,我們將打印URL到串行,并手動(dòng)單擊它來授權(quán)我們的設(shè)備并獲取代碼。

字串。stringify使用默認(rèn)連接器“&”連接JSON字典數(shù)據(jù)。

因此,我們可以創(chuàng)建要在串行上打印的手動(dòng)URL。

在作用域中,我使用%20來連接作用域,因?yàn)樗硎究瞻椎腢RL編碼。

之后,運(yùn)行程序一次并點(diǎn)擊鏈接。你應(yīng)該到達(dá)下面的頁面,上面有你自己的應(yīng)用程序名稱。

按下同意按鈕,您應(yīng)該被重定向到包含您的授權(quán)碼信息的http bin org鏈接。

復(fù)制授權(quán)代碼,我們現(xiàn)在可以使用它來交換授權(quán)令牌。

要交換令牌,我們首先需要參考Spotify OAuth頁面。

如您所見,我們將需要body參數(shù)和頭參數(shù)來進(jìn)行請(qǐng)求調(diào)用。

首先,讓我們創(chuàng)建body參數(shù)。將驗(yàn)證代碼從HTTP BIN Org粘貼到一個(gè)變量中,并在程序中創(chuàng)建以下字典。

這是請(qǐng)求調(diào)用的主體。接下來,讓我們創(chuàng)建header參數(shù)。

如上圖所示,我們需要在base64中制作我們的身份驗(yàn)證細(xì)節(jié)。

為此,我們需要首先導(dǎo)入binascii庫(kù),以UTF-8格式編碼憑證詳細(xì)信息,然后使用binascii的b2a_base64函數(shù)將其更改為base64格式。

但是由于該函數(shù)返回的是字節(jié)字符串對(duì)象而不是base64字符串,因此我們需要將字節(jié)字符串解碼回UTF-8并刪除末尾的結(jié)束字符。

之后,將編碼憑據(jù)和內(nèi)容類型都包含到headers參數(shù)中。

最后,使用參數(shù)發(fā)出HTTP請(qǐng)求以交換令牌。

令牌現(xiàn)在應(yīng)該被打印到代碼編輯器上的序列上。復(fù)制令牌并將其粘貼到lib文件夾中auth_token密鑰下的secrets.py文件中。

請(qǐng)注意,令牌只持續(xù)一個(gè)小時(shí),如果您完成了on過程,您應(yīng)該注釋令牌交換部分,以允許程序運(yùn)行其余部分。

我們現(xiàn)在已經(jīng)完成了Spotify Web API的授權(quán)過程。您可以通過嘗試使用以下代碼打印您的帳戶名來測(cè)試令牌

2. 1602液晶顯示屏(I2C接口)

接下來,讓我們討論一下如何使用CircuitPython在W5100S-EVB-Pico2上具有I2C接口的1602LCD模塊。

在我們的板中,它支持兩個(gè)I2C接口,供用戶使用I2C設(shè)備。

I2C設(shè)備連接示意圖

該模塊有四個(gè)端口,分別是Voltage, Ground, SCL和SDA。連接電壓端口到VBus為5V,并連接接地端口。接下來,我將GP2用于SDA端口,GP3用于SCL端口。

之后,讓我們將引腳制作成I2C對(duì)象。

在CircuitPython中,為了使引腳與I2C設(shè)備連接,我們需要使用以下代碼。

根據(jù)這個(gè)頁面,在連接完程序中的端口后,我們需要檢查我們的設(shè)備是否被鎖定,是否與我們的板通信。為此,我們需要調(diào)用下面的while循環(huán)。

接下來,我們需要搜索I2C設(shè)備地址,以便我們的程序與之交互。使用i2c.sacn()函數(shù)查找地址,并用十六進(jìn)制對(duì)其進(jìn)行編碼,以將字符串轉(zhuǎn)換為十六進(jìn)制。

要檢查地址是否正確,您可以參考設(shè)備的數(shù)據(jù)表。對(duì)于162lcd模塊,地址應(yīng)該是0x27。這將用作HD44780對(duì)象的初始化地址。

現(xiàn)在,我們可以在程序中使用HD44780庫(kù)。讓我們談?wù)勎覍?duì)原始文件所做的更改。

我們對(duì)庫(kù)使用的導(dǎo)入進(jìn)行了更改。

原件:

改變:

首先,我改變了對(duì)象的初始化,因?yàn)槲以谑褂胊dafruit總線設(shè)備時(shí)遇到了錯(cuò)誤。

原件:

改變:

接下來,我用更長(zhǎng)的延遲和不同的方法更改了_write_to_i2c函數(shù),以便將數(shù)據(jù)寫入I2C設(shè)備,因?yàn)槲覀儾辉偈褂胊dafruit總線設(shè)備。我參考了I2C教程頁面將字節(jié)數(shù)據(jù)寫入地址。

原件:

改變:

我還增加了_strobe函數(shù)內(nèi)的延遲。

原件:

改變:

最后,我改變了寫函數(shù)的工作方式。在原始函數(shù)中,如果字符串超過16個(gè)字符,我們應(yīng)該寫入的行將不顯示剩余的字符。因此,我改變了庫(kù)的工作方式,這樣它就可以顯示每個(gè)字符,因?yàn)楦枨拿滞ǔ:荛L(zhǎng)。

首先,我檢查單詞是否超過16個(gè)字符。如果沒有超出,則在將字符寫入模塊時(shí)保持原始代碼。

接下來,我計(jì)算了歌曲中所有角色所需的最短臺(tái)詞。

我用了數(shù)學(xué)。將字符串的長(zhǎng)度除以16得到所需的行數(shù)。

我還初始化了一個(gè)filled_line變量,該變量存儲(chǔ)了我們已經(jīng)為lcd屏幕填充的行數(shù)。

start和end變量指向當(dāng)前正在打印的字符串的位置。

之后,我使用for循環(huán)打印所需的行。

每次迭代時(shí),我將行數(shù)增加1,并檢查行數(shù)是否大于2。

如果大于2,我將在LCD行上的每個(gè)字符中寫入空格。將字符寫入LCD屏幕的方法是首先將要打印的行地址寫入設(shè)備,然后我們將所需的字符寫入行。空格的ASCII碼為32。

之后,我們就可以開始打印字符了。

我首先找出(I %2) + 1要打印的行,這樣行可能的值是1和2。

然后,我們按照原始代碼從GitHub逐字打印字符串。

最后,我們更新要在下一次迭代中打印到屏幕上的字符的開始和結(jié)束位置。

下面是原始代碼和更新后的代碼的整個(gè)write函數(shù)。

原件:

改變:

然后,讓我們回到code.py文件。

首先使用庫(kù)設(shè)置顯示對(duì)象,并從secrets py文件中讀取驗(yàn)證令牌。使用地址0x27或從I2C.scan()函數(shù)打印的地址。

接下來,用任何字符串測(cè)試寫函數(shù),或者您可以使用我們之前獲得的Spotify用戶名,因?yàn)槲覀儗potify用戶名存儲(chǔ)在my_name變量中

現(xiàn)在,我們可以開始獲取當(dāng)前歌曲名稱以及如何使用控制器旋鈕來控制這個(gè)設(shè)備的部分。

3. Spotify歌曲名稱顯示的主要功能

對(duì)于本節(jié),我們將分為兩個(gè)部分,一個(gè)是打印歌曲名稱的主要功能,另一個(gè)是列出設(shè)備中可用功能的中斷功能。

在分開這兩個(gè)部分之前,我們可以先初始化這兩個(gè)部分中要使用的變量。

將模擬桿設(shè)置為控制器旋鈕的縱軸,將CountIO設(shè)置為控制器模塊上的按鈕。

與DigitalIO不同,CountIO存儲(chǔ)按鈕按下的變化次數(shù),而不是按鈕的當(dāng)前狀態(tài)。

你可以在這個(gè)網(wǎng)站上了解更多。在我們的程序中,當(dāng)按鈕的初始狀態(tài)為高而按下狀態(tài)為低時(shí),我們計(jì)算下降邊的數(shù)量。

接下來,我們?cè)O(shè)置要打印到LCD屏幕的可用函數(shù)、一個(gè)電源變量和一個(gè)刷新計(jì)時(shí)器變量,它們類似于發(fā)送請(qǐng)求和刷新LCD屏幕的倒計(jì)時(shí)計(jì)時(shí)器。另外,設(shè)置一個(gè)常數(shù)204,它表示一個(gè)空響應(yīng)的狀態(tài)碼。

我們現(xiàn)在可以開始從Spotify Web Player獲取歌曲名稱。

從一個(gè)while循環(huán)開始,將power變量作為繼續(xù)while循環(huán)的條件。然后,我們調(diào)用中斷函數(shù),稍后我們將對(duì)其進(jìn)行編碼。

在while循環(huán)中,我們現(xiàn)在可以發(fā)送獲取當(dāng)前歌曲名稱的請(qǐng)求。

首先,讓我們參考URL端點(diǎn)上的Spotify頁面及其所需的參數(shù)。

從Spotify API頁面上獲取當(dāng)前歌曲選項(xiàng)卡,它顯示了端點(diǎn)和HTTP方法以及所需的標(biāo)頭。

我們首先用授權(quán)令牌設(shè)置GET請(qǐng)求的報(bào)頭。

然后,我們將檢查我們的倒計(jì)時(shí)計(jì)時(shí)器。

如果倒計(jì)時(shí)計(jì)時(shí)器小于0,那么我們將開始發(fā)出請(qǐng)求。

如果沒有,顯示將不會(huì)改變,我們將定時(shí)器減少1。

在請(qǐng)求部分,我們首先將倒計(jì)時(shí)計(jì)時(shí)器設(shè)置為5并清除顯示。然后,我們可以開始使用URL端點(diǎn)和授權(quán)頭發(fā)出請(qǐng)求。

通常,如果你打開了Spotify網(wǎng)絡(luò)播放器,你應(yīng)該會(huì)收到一個(gè)非空的回復(fù)。在這種情況下,您應(yīng)該成功地從請(qǐng)求中獲取JSON。

但是,如果您沒有打開Web Player并向該端點(diǎn)發(fā)出請(qǐng)求,您將收到一個(gè)空響應(yīng),并且您的程序?qū)⒃谧x取從GET請(qǐng)求獲得的JSON時(shí)出錯(cuò)。

因此,我們需要首先檢查響應(yīng)是否為空。

從這個(gè)頁面,你可以得到Spotify API空響應(yīng)的狀態(tài)碼,它是在我們的初始化部分定義的204。

如果狀態(tài)碼不是204,我們將從響應(yīng)中讀取JSON。

在我的程序中,我只會(huì)在Spotify Web Player播放歌曲時(shí)顯示名稱。因此,我需要JSON中的當(dāng)前播放狀態(tài)和歌曲名稱。

如果播放狀態(tài)為True,則顯示歌曲名稱。

如果播放狀態(tài)為False,那么我們?cè)诔绦蛑邢蛴脩麸@示設(shè)備暫?;蜿P(guān)閉。

對(duì)于狀態(tài)碼為204的情況,意味著Spotify播放器已關(guān)閉,我們顯示Spotify斷開連接的消息并關(guān)閉機(jī)器。

接下來,我們可以創(chuàng)建中斷函數(shù)

首先,我將power變量、操縱桿模塊按鈕的pressed_count變量和refresh_timer變量設(shè)置為全局變量,因?yàn)檫@些值將在此函數(shù)中更改。

此外,我們初始化了另一個(gè)計(jì)時(shí)器變量,用于模擬一個(gè)倒計(jì)時(shí)計(jì)時(shí)器,如果用戶在函數(shù)頁上閑置太長(zhǎng)時(shí)間,它可以幫助返回到主函數(shù),并初始化了用戶選擇在此函數(shù)頁中使用的函數(shù)選擇。

之后,我們檢查用戶是否在操縱桿模塊上執(zhí)行了任何按壓。

可以從pressed_count中讀取該值。計(jì)數(shù)變量,如果值不為0,那么我們將啟動(dòng)中斷函數(shù)。

如果變量為0,則忽略中斷函數(shù)并返回到主顯示代碼。

然后,我們將主代碼的計(jì)時(shí)器重置為-1,并將按鈕按下的計(jì)數(shù)重置為0,因?yàn)槲覀冃枰獧z查用戶是否通過按下按鈕從本頁選擇了任何功能。

清空LCD屏幕,顯示功能頁面的第一個(gè)選項(xiàng),即暫停功能。

接下來,我們編寫一個(gè)while循環(huán)來檢查用戶空閑時(shí)間是否過長(zhǎng)。在while循環(huán)結(jié)束時(shí),我們將中斷計(jì)時(shí)器的值減少1,并將按鈕按下計(jì)數(shù)重置為0。

在while循環(huán)中,我們首先設(shè)置更改選項(xiàng)的閾值。

我將上限閾值設(shè)置為55000,下限閾值設(shè)置為5000。如果操縱桿達(dá)到這兩個(gè)值,選項(xiàng)將分別轉(zhuǎn)到功能列表中的下一個(gè)功能或上一個(gè)功能。

對(duì)于每個(gè)更改,我們清除顯示并將新選擇打印到LCD屏幕上。

接下來,我們可以檢查用戶在選擇功能的動(dòng)作中是否按下了按鈕。如果count變量不為0,則表示用戶按下了操縱桿模塊。在這種情況下,我們立即將中斷定時(shí)器設(shè)置為其下限,重置計(jì)數(shù)變量并執(zhí)行所請(qǐng)求的功能。如果不是,我們簡(jiǎn)單地繼續(xù)中斷定時(shí)器的循環(huán),直到它達(dá)到下限。

正如介紹中所描述的,目前唯一支持的選項(xiàng)是退出設(shè)備,但我也檢查了Spotify API頁面并制作了暫停播放器的代碼。如果您有Spotify Premium,您可以測(cè)試和驗(yàn)證代碼。

對(duì)于退出設(shè)備的選項(xiàng),我們只需將power變量設(shè)置為False,設(shè)備將在返回主顯示代碼后退出。

對(duì)于暫停設(shè)備的選項(xiàng),我們可以參考Spotify API網(wǎng)頁,查看請(qǐng)求示例和響應(yīng)示例。

如網(wǎng)頁所述,我們需要使用HTTP PUT方法來暫停播放器。

雖然Spotify API網(wǎng)站的報(bào)頭只包括授權(quán)令牌,但在CircuitPython中,為了執(zhí)行PUT請(qǐng)求,我們還需要包括內(nèi)容類型和內(nèi)容長(zhǎng)度。

將這兩個(gè)參數(shù)分別設(shè)置為“application/json”和“0”,因?yàn)槲覀儾粫?huì)將任何數(shù)據(jù)放入API端點(diǎn)。

接下來,我們調(diào)用暫停API端點(diǎn)。如果成功,請(qǐng)求將返回一個(gè)空響應(yīng)。如果失敗,它將返回一個(gè)包含錯(cuò)誤原因的響應(yīng)。

因此,我們可以用下面的代碼發(fā)出暫停請(qǐng)求。

類似地,根據(jù)Spotify API頁面,跳過函數(shù)的工作原理與暫停函數(shù)相同,但使用不同的API端點(diǎn)。

至于Start/Resume回放功能,我沒有實(shí)現(xiàn)示例,因?yàn)樾枰~外的主體參數(shù)。

在我的程序中,我決定忽略這兩個(gè)函數(shù),并簡(jiǎn)單地將返回主菜單字符串打印到串行。

總之,這是我的程序的中斷函數(shù)。

最后,當(dāng)電源設(shè)置為False后,我清除了顯示,并在LCD屏幕上寫了一條關(guān)機(jī)消息,通知用戶設(shè)備已關(guān)機(jī)。

結(jié)論

這就是Spotify名稱顯示器的項(xiàng)目。我希望通過這個(gè)項(xiàng)目,你學(xué)會(huì)了如何在CircuirPython上使用W5100S-EVB-Pico 2操作I2C設(shè)備,將W5100S-EVB-Pico 2連接到Spotify Web API,并自己為Spotify制作本地控制器。

本文編譯自hackster.io

本站聲明: 本文章由作者或相關(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日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(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ì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

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

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(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)閉