1 簡介
VxWorks是由風(fēng)河(Wind River)提供的實(shí)時(shí)操作系統(tǒng)(RTOS),VxWorks下的USB堆棧是支持USB串行適配器設(shè)備的,可以通過“USB轉(zhuǎn)串口”適配器訪問VxWorks目標(biāo)機(jī)控制臺。
本文將描述如何創(chuàng)建和部署VxWorks系統(tǒng)以支持“USB轉(zhuǎn)串口”適配器,以及如何將VxWorks系統(tǒng)的控制臺(console)重定向到該“USB轉(zhuǎn)串口”適配器。
2 前提條件
本文說明的前提條件是假設(shè)你正在使用:
- Wind River VxWorks 7,SR0660
- 從UEFI BIOS啟動的Intel平臺目標(biāo)機(jī)
- 一個(gè)USB閃存驅(qū)動器(最小4 GB)
- 一個(gè)USB轉(zhuǎn)串口適配器,支持3種類型的USB轉(zhuǎn)串口適配器:
3 創(chuàng)建并編譯VxWorks源碼編譯(VxWorks Source Build – VSB)項(xiàng)目
打開一個(gè)DOS shell,配置編譯環(huán)境,然后編譯項(xiàng)目:
cd < WIND_HOME > // your installation directory
wrenv -p vxworks-7
cd < YOUR_WORKSPACE > // your workspace
vxprj vsb create adapter_vsb -bsp itl_generic -smp -force -S
cd adapter_vsb // your workspace
vxprj vsb add USB_CLASS // add the USB class to the VSB
vxprj vsb add USB_HELPER // add the USB helper to the VSB
vxprj vsb add USB_SERIAL // add the USB serial class to the VSB
make -j 32 // build the VSB
4 創(chuàng)建和編譯一個(gè)基本的VxWorks鏡像項(xiàng)目(VIP)
按照下面的步驟創(chuàng)建一個(gè)基本的VxWorks鏡像項(xiàng)目(VIP)
cd ..
vxprj create -smp itl_generic adapter_vip -profile PROFILE_INTEL_GENERIC -vsb adapter_vsb
cd adapter_vip
vxprj vip component add INCLUDE_MULTI_STAGE_WARM_REBOOT
vxprj vip bundle add BUNDLE_STANDALONE_SHELL
// add support for all supported USB serial adapters
vxprj vip component add INCLUDE_USB_GEN2_SER_FTDI232
vxprj vip component add INCLUDE_USB_GEN2_SER_PL2303
vxprj vip component add INCLUDE_USB_GEN2_SER_WRS_CDC
vxprj vip component add INCLUDE_USB_GEN2_SERIAL_INIT
vxprj build
5 啟動目標(biāo)機(jī)上的VxWorks并測試“USB轉(zhuǎn)串口”的適配器
5.1部署UEFI Bootloader和VxWorks內(nèi)核映像
有關(guān)如何編譯并在USB閃存驅(qū)動器上部署UEFI引導(dǎo)加載程序(bootloader)以及VxWorks映像文件的說明,請參考itl_generic BSP自述(readme)文件,在下面路徑找到此自述(readme)文件:
\\vxworks-7\\pkgs_v2\\os\\board\\intel\\itl_generic-a.b.c.d\\itl_generic_readme.md
在按照以下說明部署UEFI引導(dǎo)加載程序(bootloader)和vxWorks內(nèi)核映像之后,你將在USB閃存驅(qū)動器上找到以下文件:
- EFI BOOT
- bootapp.sys
- BOOTIA32.EFI
- BOOTX64.EFI
5.2 準(zhǔn)備Intel的目標(biāo)機(jī)
配置目標(biāo)機(jī)的BIOS,然后從USB閃存驅(qū)動器引導(dǎo)目標(biāo)機(jī)。
將USB閃存驅(qū)動器連接到Intel目標(biāo)機(jī)。
將”USB轉(zhuǎn)串口“適配器鏈接到Intel目標(biāo)機(jī)。
5.3 啟動目標(biāo)機(jī)
給目標(biāo)機(jī)上電,目標(biāo)啟動后,你將看到內(nèi)核shell的提示符,你還將看到一條消息,表明”USB轉(zhuǎn)串口“適配器的驅(qū)動程序已經(jīng)初始化該設(shè)備。
Target Name: vxTarget
VxWorks 7 SMP 32-bit
Copyright 1984-2021 Wind River Systems, Inc.
Core Kernel version: 3.2.0.0
Build date: Jan 31 2021 11:44:04
Board: x86 Processor (ACPI_BOOT_OP) SMP/SMT PAE
CPU Count: 8
OS Memory Size: ~16224MB
ED&R Policy Mode: Permanently Deployed
Adding 8849 symbols for standalone.
- > Find USB-to-Serial adapter device: FTDI USB-to-Serial Adapter
Added new USB-to-Serial adapter device as /usb2ttyS/0
- > devs
drv refs name
...
12 [ 3] /usb2ttyS/0
...
- >
6 將VxWorks的控制臺重定向到/usb2ttyS/0
添加VxWorks控制臺組件INCLUDE_USB_GEN2_SERIAL_PCCONSOLE_INIT時(shí),將創(chuàng)建一個(gè)名為**/ttyUSB0 的新設(shè)備,該設(shè)備代表VxWorks I/O系統(tǒng)下的 /usb2ttyS/0**
vxprj vip component add INCLUDE_USB_GEN2_SERIAL_PCCONSOLE_INIT
vxprj vip component add INCLUDE_USB_GEN2_HELPER
vxprj vip parameter setstring CONSOLE_NAME "/ttyUSB0"
// check that the console name is /ttyUSB0
vxprj vip parameter value CONSOLE_NAME
CONSOLE_NAME = "/ttyUSB0"
// check that the console baud rate is 9600
vxprj vip parameter value CONSOLE_BAUD_RATE
CONSOLE_BAUD_RATE = (9600)
重新編譯VxWorks內(nèi)核并部署鏡像文件到目標(biāo)機(jī)上的USB閃存驅(qū)動器上。
7 重啟目標(biāo)機(jī)讓控制臺重定向到“USB轉(zhuǎn)串口”適配器
用串口線將連接到目標(biāo)機(jī)USB端口的“USB轉(zhuǎn)串口”適配器和一個(gè)工作機(jī)的串口連接起來,將USB閃存驅(qū)動器連接到目標(biāo)機(jī),然后重新啟動目標(biāo)機(jī)。
- > devs
drv refs name
...
3 [ 3] /ttyUSB0
...
2 [ 3] /tyCo/1 == > /ttyUSB0
12 [ 3] /usb2ttyS/0
- >
現(xiàn)在VxWorks的控制臺可通過PC控制臺(PC Console)和“USB轉(zhuǎn)串口”適配器連接來工作。
-
驅(qū)動器
+關(guān)注
關(guān)注
52文章
8236瀏覽量
146365 -
適配器
+關(guān)注
關(guān)注
8文章
1952瀏覽量
68026 -
VxWorks
+關(guān)注
關(guān)注
3文章
351瀏覽量
97077 -
RTOS
+關(guān)注
關(guān)注
22文章
813瀏覽量
119636 -
USB轉(zhuǎn)串口
+關(guān)注
關(guān)注
0文章
38瀏覽量
11657
發(fā)布評論請先 登錄
相關(guān)推薦
評論