




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)二 linux內(nèi)核的編譯與內(nèi)核模塊基礎(chǔ)實(shí)驗(yàn):linux內(nèi)核的編譯與內(nèi)核模塊實(shí)驗(yàn)?zāi)康呐c意義配置編譯linux內(nèi)核,配置編譯hello world內(nèi)核模塊 實(shí)驗(yàn)環(huán)境Ubuntu 10.04+PC平臺(tái);目標(biāo)機(jī):友善之臂MINI2440實(shí)驗(yàn)內(nèi)容配置編譯linux內(nèi)核,在開發(fā)板上運(yùn)行該內(nèi)核,基于內(nèi)核樹編譯hello world內(nèi)核模塊,并動(dòng)態(tài)加載該模塊。實(shí)驗(yàn)內(nèi)容及步驟目標(biāo)板一般已經(jīng)燒寫缺省的linux系統(tǒng),本實(shí)驗(yàn)需要編譯定制的linux內(nèi)核,并在構(gòu)建好的內(nèi)核樹基礎(chǔ)上編譯簡(jiǎn)單的內(nèi)核模塊編譯內(nèi)核注意:編譯內(nèi)核需要設(shè)置交叉編譯環(huán)境為 4.4.3 版本的編譯器解壓內(nèi)核源代碼Linux 內(nèi)核的源代碼包位于光盤
2、的 linux 目錄,您在該目錄下還會(huì)看到類似 linux-2.6.32.2-mini2440_20110413.tar.gz 的文件。把內(nèi)核源代碼包復(fù)制到某一個(gè)目錄,進(jìn)入該目錄,運(yùn)行以下命令:(將該文件放置在D:share文件夾下)rootlocalhost root# cd /mnt/hgfs/share/ rootlocalhost share# tar xvzf linux-2.6.32.2-mini2440-20110413.tar.gz -C /opt/FriendlyARM/mini2440/ 按照缺省配置文件編譯內(nèi)核進(jìn)入內(nèi)核源代碼目錄,然后執(zhí)行“make menuconfig”
3、 ,rootlocalhost share# cd /opt/FriendlyARM/mini2440/ linux-2.6.32.2/rootlocalhost kernel-2.6.13# make menuconfig出現(xiàn)配置內(nèi)核界面,選擇進(jìn)入“Load an Alternate Configuration File”配置欄:輸入配置文件名如 config_mini2440_x35 并回車,再選擇進(jìn)入Save an Alternate Configuration File,保存文件名為.config,在主菜單里選擇退出并保存設(shè)置。輸入以下命令,開始編譯內(nèi)核: #make zImage編譯
4、結(jié)束后,會(huì)在 arch/arm/boot 目錄下生成 linux 內(nèi)核映象文件:zImage注意:剩下的實(shí)驗(yàn)過程需要編譯定制的內(nèi)核才能進(jìn)行編譯定制內(nèi)核在選定缺省配置文件編譯內(nèi)核的基礎(chǔ)上,可以對(duì)默認(rèn)的配置進(jìn)行修改。對(duì)每一個(gè)配置選項(xiàng),用戶有三種選擇,它們分別代表的含義如下:或*將該功能編譯進(jìn)內(nèi)核不將該功能編譯進(jìn)內(nèi)核M將該功能編譯成可以在需要時(shí)動(dòng)態(tài)插入到內(nèi)核中的代碼例如:取消新內(nèi)核中的對(duì)LED的驅(qū)動(dòng)支持執(zhí)行“make menuconfig” ,在Device Drivers菜單中,選擇進(jìn)入 Character devices - - -,找到并選中 LEDs 驅(qū)動(dòng),支持,如圖取消掉選項(xiàng)前的*號(hào)即可。
5、這里我們選擇M:將LED驅(qū)動(dòng)編譯成可以在需要時(shí)動(dòng)態(tài)插入到內(nèi)核中的代碼例如置Mini2440 LEDs Driver選項(xiàng)前為M此時(shí)在內(nèi)核根目錄 kernel-2.6.32.2下輸入 make modules 命令將在drivers/char/ 目錄下生成可動(dòng)態(tài)加載的內(nèi)核模塊mini2440_leds.ko此時(shí)在內(nèi)核根目錄 kernel-2.6.32.2下輸入 make zImage,生成新的zImage加載新內(nèi)核把要下載的zImage拷貝到共享文件夾share下:將在drivers/char/ 目錄下生成可動(dòng)態(tài)加載的內(nèi)核模塊mini2440_leds.ko也拷貝到共享文件夾share下:注意將上
6、圖的qq2440_leds.ko改為mini2440_leds.ko(或找到linux中找到該文件,將其復(fù)制粘貼到windows環(huán)境中)(1)連接好串口,打開超級(jí)終端,上電啟動(dòng)開發(fā)板,進(jìn)入BIOS 功能菜單:(2)接上 USB 電纜,在windows平臺(tái)工具dnw下打開dnw.exe程序。(3)將開發(fā)板上的S2 接到Nor Flash 標(biāo)識(shí)一側(cè),啟動(dòng)開發(fā)板(4)在BIOS 主菜單中選擇功能號(hào)k,開始下載 linux 內(nèi)核zImage(5) 點(diǎn)擊“USB Port-Transmit”選項(xiàng),并選擇打開相應(yīng)的編譯好的內(nèi)核文件 zImage(6)下載完畢,BIOS 會(huì)自動(dòng)燒寫內(nèi)核到Nand Flash
7、 分區(qū)中,并返回到主菜單,選擇功能號(hào)b,引導(dǎo)系統(tǒng),或者將S2 接到Nand Flash一側(cè),啟動(dòng)開發(fā)板本開發(fā)板的啟動(dòng)模式選擇,是通過撥動(dòng)開關(guān) S2 來(lái)決定的:根據(jù)目標(biāo)板提示:S2 接到Nor Flash 標(biāo)識(shí)一側(cè)時(shí),系統(tǒng)將從Nor Flash 啟動(dòng);新內(nèi)核取消掉LED驅(qū)動(dòng)支持后,開發(fā)板上的LED指示燈將不再閃爍。啟動(dòng)時(shí)的命令行提示#open device leds: No such file or directory這是因?yàn)閼?yīng)用程序不知道該設(shè)備已經(jīng)不再支持,在超級(jí)終端中輸入:vi /etc/init.d/rcS將文件/etc/init.d/rcS中的“/etc/rc.d/init.d/leds
8、 start”前加“#”注釋掉(請(qǐng)備份,實(shí)驗(yàn)結(jié)束后恢復(fù)該文件)接下來(lái)的實(shí)驗(yàn)需要將文件/etc/init.d/rcS中的“/etc/rc.d/init.d/leds start”注釋掉構(gòu)造并運(yùn)行簡(jiǎn)單的內(nèi)核模塊本節(jié)演示了如何將qq2440_leds模塊編譯并裝載到內(nèi)核中。mini2440_leds.c文件#define DEVICE_NAME ledsstatic unsigned long led_table = S3C2410_GPB(5),S3C2410_GPB(6),S3C2410_GPB(7),S3C2410_GPB(8),;static unsigned int led_cfg_tab
9、le = S3C2410_GPIO_OUTPUT,S3C2410_GPIO_OUTPUT,S3C2410_GPIO_OUTPUT,S3C2410_GPIO_OUTPUT,; module_init(dev_init);module_exit(dev_exit);MODULE_LICENSE(GPL);MODULE_AUTHOR(FriendlyARM Inc.);下面我們來(lái)演示如何加載led燈模塊。為了將文件/kernel-2.6.32.2/drivers/char下的.o文件轉(zhuǎn)化成.ko可執(zhí)行模塊,須在終端/opt/FriendlyARM/mini2440/kernel-2.6.32.2下,
10、輸入下述命令:顯示下圖結(jié)果:再將生成的qq2440_leds.ko模塊拷貝到共享文件夾下:rootlocalhost kernel-2.6.13# cp drivers/char/ mini2440_leds.ko /mnt/hgfs/share/然后在超級(jí)終端輸入rz命令,發(fā)送share文件夾下的mini2440_leds.ko模塊到開發(fā)板。超級(jí)終端輸入:Insmod mini2440_leds.ko之后,就可以控制小燈了 接下來(lái)我們對(duì)開發(fā)板led燈進(jìn)行測(cè)試:(指令led X Y可以控制小燈的明滅,X表示小燈的次序;Y取值為0時(shí),小燈熄滅,取1時(shí),小燈亮起)首先在超級(jí)終端界面輸入命令led
11、0 0, led 1 0, led 2 0, led 3 0, 使小燈按由內(nèi)而外的順序依次熄滅。再輸入led 3 1,led 2 1,led 1 1,led 0 1,使小燈按由外而內(nèi)的順序依次亮起。最后使第一,三個(gè)小燈亮起,舉手等待老師檢查。選作實(shí)驗(yàn):編寫內(nèi)核模塊的makefile并實(shí)現(xiàn)內(nèi)核對(duì)驅(qū)動(dòng)的支持實(shí)驗(yàn)?zāi)康呐c意義配置編譯linux內(nèi)核,配置編譯hello world內(nèi)核模塊 實(shí)驗(yàn)環(huán)境Ubuntu 10.04.4+PC平臺(tái);目標(biāo)機(jī):友善之臂MINI2440實(shí)驗(yàn)內(nèi)容配置編譯linux內(nèi)核,在開發(fā)板上運(yùn)行該內(nèi)核,基于內(nèi)核樹編譯hello world內(nèi)核模塊,并動(dòng)態(tài)加載該模塊。實(shí)驗(yàn)內(nèi)容及步驟目標(biāo)板
12、一般已經(jīng)燒寫缺省的linux系統(tǒng),本實(shí)驗(yàn)需要編譯定制的linux內(nèi)核,并在構(gòu)建好的內(nèi)核樹基礎(chǔ)上編譯簡(jiǎn)單的內(nèi)核模塊編譯內(nèi)核注意:編譯內(nèi)核需要設(shè)置交叉編譯環(huán)境為 4.4.3 版本的編譯器解壓內(nèi)核源代碼Linux 內(nèi)核的源代碼包位于光盤的 linux 目錄,您在該目錄下還會(huì)看到類似 linux-2.6.32.2-mini2440_20110413.tar.gz 的文件。 把內(nèi)核源代碼包復(fù)制到某一個(gè)目錄,進(jìn)入該目錄,運(yùn)行以下命令:t #tar xvzf linux-2.6.32.2-mini2440-20110413.tar.gz C /opt/FriendlyARM/mini2440按照缺省配置文件
13、編譯內(nèi)核進(jìn)入內(nèi)核源代碼目錄,然后執(zhí)行“make menuconfig” ,出現(xiàn)配置內(nèi)核界面,選擇“Load an Alternate Configuration File”配置欄:在主菜單里選擇退出并保存設(shè)置。輸入以下命令,開始編譯內(nèi)核: #make zImage編譯結(jié)束后,會(huì)在 arch/arm/boot 目錄下生成 linux 內(nèi)核映象文件:zImage注意:剩下的實(shí)驗(yàn)過程需要編譯定制的內(nèi)核才能進(jìn)行編譯定制內(nèi)核在選定缺省配置文件編譯內(nèi)核的基礎(chǔ)上,可以對(duì)默認(rèn)的配置進(jìn)行修改。對(duì)每一個(gè)配置選項(xiàng),用戶有三種選擇,它們分別代表的含義如下:或*將該功能編譯進(jìn)內(nèi)核不將該功能編譯進(jìn)內(nèi)核M將該功能編譯成可以
14、在需要時(shí)動(dòng)態(tài)插入到內(nèi)核中的代碼例如:取消新內(nèi)核中的對(duì)LED的驅(qū)動(dòng)支持在Device Drivers菜單中,選擇進(jìn)入 Character devices - - -,找到并選中 LEDs 驅(qū)動(dòng),支持,如圖取消掉選項(xiàng)前的*號(hào)即可。這里我們選擇M:將LED驅(qū)動(dòng)編譯成可以在需要時(shí)動(dòng)態(tài)插入到內(nèi)核中的代碼例如置MINI2440 LEDs Driver選項(xiàng)前為M此時(shí)在內(nèi)核根目錄 kernel-2.6.32.2下輸入 make modules 命令將在drivers/char/ 目錄下生成可動(dòng)態(tài)加載的內(nèi)核模塊mini2440_ mini2440_leds.ko加載新內(nèi)核(1)連接好串口,打開超級(jí)終端,上電啟動(dòng)
15、開發(fā)板,進(jìn)入BIOS 功能菜單:(2)接上 USB 電纜,在windows平臺(tái)工具dnw下打開dnw.exe程序。(3)將開發(fā)板上的S2 接到Nor Flash 標(biāo)識(shí)一側(cè),啟動(dòng)開發(fā)板(4)在BIOS 主菜單中選擇功能號(hào)k,開始下載 linux 內(nèi)核zImage(5) 點(diǎn)擊“USB Port-Transmit”選項(xiàng),并選擇打開相應(yīng)的編譯好的內(nèi)核文件 zImage(6)下載完畢,BIOS 會(huì)自動(dòng)燒寫內(nèi)核到Nand Flash 分區(qū)中,并返回到主菜單,選擇功能號(hào)b,引導(dǎo)系統(tǒng),或者將S2 接到Nand Flash一側(cè),啟動(dòng)開發(fā)板本開發(fā)板的啟動(dòng)模式選擇,是通過撥動(dòng)開關(guān) S2 來(lái)決定的:根據(jù)目標(biāo)板提示:S
16、2 接到Nor Flash 標(biāo)識(shí)一側(cè)時(shí),系統(tǒng)將從Nor Flash 啟動(dòng);新內(nèi)核取消掉LED驅(qū)動(dòng)支持后,開發(fā)板上的LED指示燈將不再閃爍。啟動(dòng)時(shí)的命令行提示#open device leds: No such file or directory這是因?yàn)閼?yīng)用程序不知道該設(shè)備已經(jīng)不再支持,在超級(jí)終端中輸入:vi /etc/init.d/rcS將文件/etc/init.d/rcS中的“/etc/rc.d/init.d/leds start”前加“#”注釋掉(請(qǐng)備份,實(shí)驗(yàn)結(jié)束后恢復(fù)該文件)接下來(lái)的實(shí)驗(yàn)需要將文件/etc/init.d/rcS中的“/etc/rc.d/init.d/leds start”
17、注釋掉構(gòu)造并運(yùn)行簡(jiǎn)單的內(nèi)核模塊本節(jié)演示了如何將mini2440_leds模塊編譯并裝載到內(nèi)核中。mini2440_leds.c文件#define DEVICE_NAME ledsstatic unsigned long led_table = S3C2410_GPB(5),S3C2410_GPB(6),S3C2410_GPB(7),S3C2410_GPB(8),;static unsigned int led_cfg_table = S3C2410_GPIO_OUTPUT,S3C2410_GPIO_OUTPUT,S3C2410_GPIO_OUTPUT,S3C2410_GPIO_OUTPUT,;
18、 module_init(dev_init);module_exit(dev_exit);MODULE_LICENSE(GPL);MODULE_AUTHOR(FriendlyARM Inc.);下面我們來(lái)演示如何加載led燈模塊。為了將文件/kernel-2.6.32.2/drivers/char下的.o文件轉(zhuǎn)化成.ko可執(zhí)行模塊,須在終端/opt/FriendlyARM/mini2440/kernel-2.6.32.2下,輸入下述命令:make modules顯示下圖結(jié)果: 再將生成的mini2440_leds.ko模塊拷貝到共享文件夾下:cp /kernel-2.6.32.2/mini24
19、40_leds.ko C /mnt/hgfs/share然后在超級(jí)終端輸入rz命令,發(fā)送mini2440_leds.ko模塊到開發(fā)板。 接下來(lái)我們對(duì)開發(fā)板led燈進(jìn)行測(cè)試:(指令led X Y可以控制小燈的明滅,X表示小燈的次序;Y取值為0時(shí),小燈熄滅,取1時(shí),小燈亮起)首先在超級(jí)終端界面輸入命令led 0 0, led 1 0, led 2 0, led 3 0, 使小燈按由內(nèi)而外的順序依次熄滅。再輸入led 3 1,led 2 1,led 1 1,led 0 1,使小燈按由外而內(nèi)的順序依次亮起。最后使第一,三個(gè)小燈亮起,舉手等待老師檢查。選作實(shí)驗(yàn):編寫內(nèi)核模塊的makefile并實(shí)現(xiàn)內(nèi)核對(duì)
20、驅(qū)動(dòng)的支持實(shí)驗(yàn)?zāi)康呐c意義學(xué)習(xí)針對(duì)內(nèi)核模塊的makefile的編寫實(shí)驗(yàn)環(huán)境Ubuntu 10.04.4+PC平臺(tái);目標(biāo)機(jī):友善之臂MINI2440實(shí)驗(yàn)內(nèi)容編寫新加驅(qū)動(dòng)程序的makefile文件,并編寫Kconfig文件。把Led Module 加入內(nèi)核代碼樹,并編譯。實(shí)驗(yàn)內(nèi)容及步驟編譯并測(cè)試LED驅(qū)動(dòng)程序編譯LED驅(qū)動(dòng)一個(gè)大型的驅(qū)動(dòng)程序的源文件和頭文件往往放在內(nèi)核樹驅(qū)動(dòng)目錄中的一個(gè)子目錄中,本實(shí)驗(yàn)嘗試將LED驅(qū)動(dòng)程序的源文件放入一個(gè)目錄中進(jìn)行編譯。打開/kernel-2.6.32.2/drivers/char目錄下的Kconfig文件編輯配置文件Kconfig,加入驅(qū)動(dòng)選項(xiàng)使之在 make me
21、nuconfig的時(shí)候出現(xiàn)Mini2440內(nèi)核中該目錄下的Kconfig文件中已經(jīng)添加了LED驅(qū)動(dòng)的配置選項(xiàng),這里不再直接選中該選項(xiàng)進(jìn)行配置,而是將LED驅(qū)動(dòng)的選項(xiàng)放入一個(gè)目錄下,所以將這里的配置注釋掉,并在下方添加語(yǔ)句source drivers/char/test/Kconfig:在kernel-2.6.32.2/drivers/char/目錄下建立test目錄,并在其中建立Kconfig文件,編輯“Kconfig文件并在其中添加以下命令(可以把剛才注釋的語(yǔ)句復(fù)制過來(lái)):當(dāng)配置好后運(yùn)行make menuconfig,進(jìn)入字符驅(qū)動(dòng)配置目錄,會(huì)發(fā)現(xiàn)配置好的目錄:輸入回車進(jìn)入目錄,可見到配置好的
22、目錄選項(xiàng)到這里,雖然可以在配置內(nèi)核的時(shí)候進(jìn)行選擇,但實(shí)際上此時(shí)執(zhí)行編譯內(nèi)核還是不能把mini2440_leds.c編譯進(jìn)去的,還需要在 Makefile中把內(nèi)核配置選項(xiàng)和真正的源代碼聯(lián)系起來(lái)。將kernel-2.6.32.2/drivers/char/mini2440_leds.c復(fù)制入test目錄中。打開kernel-2.6.32.2/drivers/char/Makefile文件,在語(yǔ)句obj-$(CONFIG_MINI2440_LEDS) += mini2440_leds.o前加#注釋掉該語(yǔ)句。在該文件中添加obj-$(CONFIG_MINI2440_ADC) += test/語(yǔ)句。在test目錄下創(chuàng)建空文檔Makefile,編輯Makefile,在Makefile中添加語(yǔ)句obj-$(CONFIG_MY_LEDS) += mini2440_leds.o,保存退出。按照第1節(jié)中編譯定制的內(nèi)核的步驟將LED驅(qū)動(dòng)程序編譯為可動(dòng)態(tài)加載的模塊。運(yùn)行make modules后在/drivers/char/test中可找到編譯好的驅(qū)動(dòng)模塊mini2440_leds.ko測(cè)試LED驅(qū)動(dòng)驅(qū)動(dòng)程序是操作系統(tǒng)中的特定模塊,作為中間層負(fù)責(zé)計(jì)算機(jī)硬件和用戶程序之間的交互。所以有了LED的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信息技術(shù)必修一《數(shù)據(jù)與計(jì)算》第二章第二節(jié)《程序設(shè)計(jì)語(yǔ)言基本知識(shí)》教學(xué)設(shè)計(jì)
- 定西師范高等專科學(xué)?!渡茖W(xué)基礎(chǔ)二:細(xì)胞生物學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 沈陽(yáng)職業(yè)技術(shù)學(xué)院《中醫(yī)藥文化與養(yǎng)生》2023-2024學(xué)年第二學(xué)期期末試卷
- 駐馬店職業(yè)技術(shù)學(xué)院《寫意畫》2023-2024學(xué)年第二學(xué)期期末試卷
- 阜陽(yáng)幼兒師范高等??茖W(xué)?!峨娮泳€路CAD技術(shù)B》2023-2024學(xué)年第二學(xué)期期末試卷
- Unit 3 Amazing animals PartA (教學(xué)設(shè)計(jì))-2024-2025學(xué)年人教PEP版(2024)英語(yǔ)三年級(jí)上冊(cè)
- 鹽城師范學(xué)院《現(xiàn)代材料分析技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東云浮中醫(yī)藥職業(yè)學(xué)院《民俗學(xué)與民間文學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鋼軌購(gòu)銷合同范本
- 山西大同大學(xué)《三維機(jī)械CAD實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 1《挑戰(zhàn)第一次》第1課時(shí) 說(shuō)課稿 -2023-2024學(xué)年道德與法治二年級(jí)下冊(cè)統(tǒng)編版
- 預(yù)防性試驗(yàn)四措一案及施工方案
- 第十八屆“地球小博士”全國(guó)地理知識(shí)科普競(jìng)賽題庫(kù)(附答案)
- 第13課《 擴(kuò)音系統(tǒng)的控制》說(shuō)課稿 2023-2024學(xué)年 浙教版六年級(jí)下冊(cè)信息科技
- 高校國(guó)有資產(chǎn)管理的三個(gè)維度與內(nèi)部控制
- 2025甘肅省事業(yè)單位聯(lián)考招聘(3141人)高頻重點(diǎn)提升(共500題)附帶答案詳解
- JJF 1176-2024(0~2 300) ℃鎢錸熱電偶校準(zhǔn)規(guī)范
- 8.4+同一直線上二力的合成課件+2024-2025學(xué)年人教版物理八年級(jí)下冊(cè)
- 2024年河北省邢臺(tái)市公開招聘警務(wù)輔助人員(輔警)筆試專項(xiàng)訓(xùn)練題試卷(2)含答案
- 家政公司服務(wù)員考試題庫(kù)單選題100道及答案解析
- 人工智能:AIGC基礎(chǔ)與應(yīng)用 課件 實(shí)訓(xùn)項(xiàng)目九 使用度加創(chuàng)作工具和剪映進(jìn)行智能化短視頻創(chuàng)作
評(píng)論
0/150
提交評(píng)論