亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實戰(zhàn)洞察。

JerryScript 在 STM32F4-Discovery 與 NuttX 上的完整移植構(gòu)建與運(yùn)行指南

JerryScript 在 STM32F4-Discovery 與 NuttX 上的完整移植構(gòu)建與運(yùn)行指南 語言運(yùn)行時嵌入式物聯(lián)網(wǎng)編譯器【免費(fèi)下載鏈接】jerryscriptUltra-lightweight JavaScript engine for the Internet of Things.項目地址https://gitcode.com/gh_mirrors/je/jerryscript點(diǎn)擊查看免費(fèi)下載本指南基于 JerryScript 官方倉庫 targets/os/nuttx/README.md 整理完整講解如何將超輕量級 JavaScript 引擎 JerryScript 移植到 STM32F4-Discovery 開發(fā)板并運(yùn)行在 Apache NuttX 實時操作系統(tǒng)之上。讀完本文你將掌握從搭建交叉編譯環(huán)境、配置 NuttX 內(nèi)核、集成 JerryScript 應(yīng)用、生成 ROMFS 文件系統(tǒng)鏡像到燒錄固件并通過 NSH 串口 Shell 執(zhí)行 JavaScript 腳本的全套流程同時理解該移植背后的源碼級實現(xiàn)Kconfig 配置項、Makefile 構(gòu)建參數(shù)、端口適配層與 ARM 匯編的 setjmp/longjmp 實現(xiàn)。一、移植目標(biāo)與倉庫文件概覽JerryScript 官方為 NuttX 提供了獨(dú)立的移植目錄位于倉庫的 targets/os/nuttx 下目標(biāo)平臺組合為開發(fā)板STM32F4-Discovery意法半導(dǎo)體評估板搭載 Cortex-M4 內(nèi)核的 STM32F4 系列 MCU操作系統(tǒng)NuttXApache 基金會下的類 POSIX 實時操作系統(tǒng)文檔驗證環(huán)境Ubuntu 20.04 主機(jī)NuttX 最新實測可用版本為 10.2該目錄包含一組小而完整的移植文件各自職責(zé)如下文件作用Kconfig定義 JerryScript 在 NuttX 中的 Kconfig 菜單項開關(guān)、優(yōu)先級、棧大小Make.defs當(dāng)CONFIG_INTERPRETERS_JERRYSCRIPTy時將本目錄注冊進(jìn) NuttX 應(yīng)用構(gòu)建系統(tǒng)Makefile描述jerry應(yīng)用的編譯規(guī)則并調(diào)用 JerryScript 的tools/build.py交叉編譯核心靜態(tài)庫jerry-main.cjerry命令行的入口實現(xiàn)參數(shù)解析、REPL、腳本執(zhí)行、調(diào)試服務(wù)器jerry-port.cJerryScript 端口適配層日志、行讀取、fatal、時區(qū)、時間等接口的 NuttX 實現(xiàn)setjmp.S 與 setjmp.hCortex-M4 浮點(diǎn)上下文的 setjmp/longjmp 匯編實現(xiàn)與類型定義Makefile.travis用于 CI 的無交互自動構(gòu)建目標(biāo)安裝依賴、clone NuttX、配置、編譯整套移植以應(yīng)用的形式掛在 NuttX 的apps/interpreters/jerryscript路徑下隨 NuttX 固件一起編譯鏈接最終在設(shè)備上得到一個名為jerry的 NSH 命令。二、搭建 STM32F4-Discovery 構(gòu)建環(huán)境2.1 克隆所需項目先在主機(jī)上創(chuàng)建統(tǒng)一的工作目錄jerry-nuttx并克隆四個項目JerryScript 本體、NuttX 內(nèi)核10.2 分支、NuttX 應(yīng)用庫apps、kconfig 工具以及 ST-Link 燒錄工具# Create a base folder for all the projects. mkdir jerry-nuttx cd jerry-nuttx git clone https://github.com/jerryscript-project/jerryscript.git git clone https://github.com/apache/incubator-nuttx.git nuttx -b releases/10.2 git clone https://github.com/apache/incubator-nuttx-apps.git apps -b releases/10.2 git clone https://bitbucket.org/nuttx/tools.git tools git clone https://github.com/texane/stlink.git -b v1.5.1-patch執(zhí)行完成后目錄結(jié)構(gòu)應(yīng)為jerry-nuttx jerryscript | targets | os | nuttx nuttx apps tools stlink后續(xù)所有命令都假定你位于jerry-nuttx根目錄下執(zhí)行。2.2 安裝項目依賴JerryScript 提供了依賴安裝腳本 tools/apt-get-install-deps.sh可先運(yùn)行它補(bǔ)齊 JerryScript 本體的構(gòu)建依賴# Assuming you are in jerry-nuttx folder. jerryscript/tools/apt-get-install-deps.sh隨后分別安裝 NuttX 的交叉編譯工具鏈、構(gòu)建工具、以及 ST-Link 與串口通信工具# Toolchain dependencies of NuttX. sudo apt install gcc-arm-none-eabi binutils-arm-none-eabi # Tool dependencies of NuttX. sudo apt install \ bison flex gettext texinfo libncurses5-dev libncursesw5-dev \ gperf automake libtool pkg-config build-essential gperf genromfs \ libgmp-dev libmpc-dev libmpfr-dev libisl-dev binutils-dev libelf-dev \ libexpat-dev gcc-multilib g-multilib picocom u-boot-tools util-linux # ST-Link and serial communication dependencies. sudo apt install libusb-1.0-0-dev minicom其中g(shù)cc-arm-none-eabi用于交叉編譯 Cortex-M 固件genromfs用于后續(xù)生成 ROMFS 文件系統(tǒng)鏡像minicom用于連接開發(fā)板串口u-boot-toolsmkimage 等是 NuttX 構(gòu)建所需的輔助工具。三、把 JerryScript 應(yīng)用接入 NuttX 應(yīng)用樹NuttX 的應(yīng)用apps采用模塊化組織每個應(yīng)用位于apps/類別/應(yīng)用名目錄。這里需要把 JerryScript 的移植文件放到apps/interpreters/jerryscript# Assuming you are in jerry-nuttx folder. mkdir -p apps/interpreters/jerryscript cp jerryscript/targets/os/nuttx/* apps/interpreters/jerryscript/ # Or more simply: # ln -s jerryscript/targets/os/nuttx apps/interpreters/jerryscriptcp與符號鏈接兩種方式等價后者可避免文件復(fù)制便于同步修改。這一步生效的機(jī)制在 Make.defs 中當(dāng)配置項CONFIG_INTERPRETERS_JERRYSCRIPTy時CONFIGURED_APPS會追加$(APPDIR)/interpreters/jerryscript從而把該目錄納入 NuttX 整體構(gòu)建ifeq ($(CONFIG_INTERPRETERS_JERRYSCRIPT),y) CONFIGURED_APPS $(APPDIR)/interpreters/jerryscript endif而 Kconfig 定義了三個核心配置項INTERPRETERS_JERRYSCRIPT布爾開關(guān)默認(rèn)關(guān)閉default nINTERPRETERS_JERRYSCRIPT_PRIORITYjerry任務(wù)的優(yōu)先級默認(rèn) 100INTERPRETERS_JERRYSCRIPT_STACKSIZEjerry任務(wù)的棧大小字節(jié)默認(rèn) 16384。這些默認(rèn)值在 Makefile 中被直接引用為PRIORITY與STACKSIZE進(jìn)而通過Application.mk生成 NSH 內(nèi)建命令。四、構(gòu)建 kconfig-frontends 配置工具NuttX 的圖形化配置依賴kconfig-frontends工具集。如果系統(tǒng)包管理器已經(jīng)安裝了kconfig-frontends可跳過本節(jié)否則需要從之前克隆的tools倉庫中編譯安裝# Assuming you are in jerry-nuttx folder. cd tools/kconfig-frontends ./configure \ --disable-nconf \ --disable-gconf \ --disable-qconf \ --disable-shared \ --enable-static \ --prefix${PWD}/install make make install # Add install folder to PATH PATH${PWD}/install/bin:$PATH注意這里的 configure 選項禁用了nconf/gconf/qconf三種圖形前端、采用靜態(tài)鏈接--enable-static安裝到本地install目錄最后把該目錄加入PATH供后續(xù)menuconfig/olddefconfig使用。五、配置 NuttX 內(nèi)核并啟用 JerryScriptNuttX 的構(gòu)建配置全部存放在nuttx/.config文件中。首先基于官方提供的usbnsh配置模板初始化配置——該模板把 USB 作為 NSH 控制臺USB console shell# Assuming you are in jerry-nuttx folder. cd nuttx/tools # Configure NuttX to use USB console shell. ./configure.sh stm32f4discovery:usbnsh默認(rèn)情況下 JerryScript 處于禁用狀態(tài)需要手動開啟。官方提供了兩種方式交互式menuconfig5.1 節(jié)或直接修改.config文件5.2 節(jié)。5.1 方式一使用 menuconfig 交互配置# Assuming you are in jerry-nuttx folder. # Might be required to run make menuconfig twice. make -C nuttx menuconfig基礎(chǔ)配置必選啟用System Type - FPU supportSTM32F4 帶硬件浮點(diǎn)單元JerryScript 數(shù)學(xué)庫需要啟用 FPU 支持啟用Application Configuration - Interpreters - JerryScript即把CONFIG_INTERPRETERS_JERRYSCRIPT置為y。可選配置一啟用 ROMFS把 JavaScript 輸入文件燒錄進(jìn)設(shè)備 flash啟用File systems - ROMFS file system啟用Application configuration - NSH library - Scripting Support - Support ROMFS start-up script可選配置二啟用 MMCSD在開發(fā)板上掛載 micro-SD 卡。注意以下選項針對的是 STM32F4-Discovery 基板上的 micro-SD 卡槽啟用System Type - STM32 Peripheral Support - SDIO啟用RTOS Features - Work queue support - High priority (kernel) worker thread啟用RTOS Features - RTOS hooks - Custom board late initialization啟用RTOS Features - RTOS hooks - Enable on_exit() API啟用Driver Support - MMC/SD Driver Support禁用Driver Support - MMC/SD Driver Support - MMC/SD write protect pin禁用Driver Support - MMC/SD Driver Support - MMC/SD SPI transfer support啟用Driver Support - MMC/SD Driver Support - MMC/SD SDIO transfer support啟用File systems - FAT file system啟用File systems - FAT file system - FAT upper/lower names啟用File systems - FAT file system - FAT long file names5.2 方式二直接追加 .config 內(nèi)容無交互更簡單的做法是把所需配置直接追加到nuttx/.config末尾。最小啟用集合如下# Assuming you are in jerry-nuttx folder. cat nuttx/.config EOL CONFIG_ARCH_FPUy CONFIG_SCHED_ONEXITy CONFIG_INTERPRETERS_JERRYSCRIPTy CONFIG_INTERPRETERS_JERRYSCRIPT_PRIORITY100 CONFIG_INTERPRETERS_JERRYSCRIPT_STACKSIZE16384 EOL各選項含義CONFIG_ARCH_FPUy啟用 FPU對應(yīng) menuconfig 中的 FPU supportCONFIG_SCHED_ONEXITy啟用on_exit()API對應(yīng) RTOS hooksCONFIG_INTERPRETERS_JERRYSCRIPTy啟用 JerryScript 應(yīng)用CONFIG_INTERPRETERS_JERRYSCRIPT_PRIORITY100jerry任務(wù)優(yōu)先級CONFIG_INTERPRETERS_JERRYSCRIPT_STACKSIZE16384jerry任務(wù)棧大小字節(jié)??蛇x啟用 ROM 文件系統(tǒng)ROMFS# Assuming you are in jerry-nuttx folder. cat nuttx/.config EOL CONFIG_BOARDCTL_ROMDISKy CONFIG_FS_ROMFSy CONFIG_NSH_ROMFSETCy CONFIG_NSH_ROMFSMOUNTPT/etc CONFIG_NSH_INITSCRIPTinit.d/rcS CONFIG_NSH_ROMFSDEVNO0 CONFIG_NSH_ROMFSSECTSIZE64 CONFIG_NSH_DEFAULTROMFSy EOL這些選項讓 NSH 把 ROMFS 掛載到/etc并執(zhí)行init.d/rcS作為啟動腳本ROMFS 設(shè)備號、扇區(qū)大小等均可按需調(diào)整??蛇x啟用 MMCSD 驅(qū)動與 FAT 文件系統(tǒng)。以下選項針對 STM32F4-Discovery 基板上的 micro-SD 卡槽# Assuming you are in jerry-nuttx folder. cat nuttx/.config EOL CONFIG_STM32_SDIOy CONFIG_STM32_SDIO_DMAPRIO0x00010000 CONFIG_MMCSD_HAVE_CARDDETECTy CONFIG_BOARD_LATE_INITIALIZEy CONFIG_BOARD_INITTHREAD_STACKSIZE2048 CONFIG_BOARD_INITTHREAD_PRIORITY240 CONFIG_SIG_SIGWORK17 CONFIG_SCHED_WORKQUEUEy CONFIG_SCHED_HPWORKy CONFIG_SCHED_HPNTHREADS1 CONFIG_SCHED_HPWORKPRIORITY224 CONFIG_SCHED_HPWORKSTACKSIZE2048 CONFIG_BCHy CONFIG_ARCH_HAVE_SDIOy CONFIG_ARCH_HAVE_SDIOWAIT_WRCOMPLETEy CONFIG_ARCH_HAVE_SDIO_PREFLIGHTy CONFIG_MMCSDy CONFIG_MMCSD_NSLOTS1 CONFIG_MMCSD_MMCSUPPORTy CONFIG_MMCSD_SDIOy CONFIG_FS_FATy CONFIG_FAT_LCNAMESy CONFIG_FAT_LFNy CONFIG_FAT_MAXFNAME32 CONFIG_FAT_LFN_ALIAS_TRAILCHARS0 CONFIG_FSUTILS_MKFATFSy CONFIG_NSH_MMCSDSLOTNO0 EOL這段配置把 STM32 的 SDIO 外設(shè)、MMC/SD 驅(qū)動SDIO 傳輸模式、FAT 文件系統(tǒng)、板級后初始化線程以及內(nèi)核工作隊列一并打開為后續(xù)掛載 SD 卡讀取腳本文件做好準(zhǔn)備。六、為設(shè)備準(zhǔn)備 JavaScript 輸入文件JerryScript 在設(shè)備上需要 JavaScript 源文件作為輸入。根據(jù)第 5 步的選擇有兩種承載方式ROMFS燒錄進(jìn) flash或 SD 卡FAT32 文件系統(tǒng)。6.1 方式一由自定義目錄生成 ROMFS 鏡像如果使用了 MMCSD 方式可跳過本節(jié)。否則需要把存放 JS 文件的目錄打包成 C 頭文件。受 flash 容量限制盡量精簡目錄內(nèi)容# Assuming you are in jerry-nuttx folder. mkdir jerry-example # Let hello.js be a possible JavaScript input for JerryScript. cp jerryscript/tests/hello.js jerry-example # Generate ROMFS image from a custom folder. genromfs -f romfs_img -d jerry-example # Dump image as C header file and override NuttXs default ROMFS file. xxd -i romfs_img apps/nshlib/nsh_romfsimg.h # Add const modifier to place the content to flash memory. sed -i s/unsigned/const\ unsigned/g apps/nshlib/nsh_romfsimg.h流程說明genromfs把jerry-example目錄打包為 ROMFS 鏡像文件xxd -i把二進(jìn)制鏡像轉(zhuǎn)成 C 數(shù)組并覆蓋 NuttX 默認(rèn)的 [nsh_romfsimg.h] 模板注意該頭文件位于克隆的 apps 倉庫中并非 JerryScript 倉庫文件最后的sed把unsigned改成const unsigned使鏡像數(shù)據(jù)被放入只讀的 flash 段而非 RAM。倉庫自帶的示例 tests/hello.js 內(nèi)容僅一行print (Hello JerryScript!);非常適合作為 ROMFS 中的首個測試腳本。6.2 方式二把文件復(fù)制到 SD 卡如果使用了 ROMFS 方式可跳過本節(jié)。否則只需把 JS 文件復(fù)制到一張 FAT32 格式化的內(nèi)存卡上插入開發(fā)板的 micro-SD 卡槽即可。七、編譯 NuttX含 JerryScript在jerry-nuttx根目錄下執(zhí)行# Assuming you are in jerry-nuttx folder. make -C nuttx整個構(gòu)建鏈路中Makefile 扮演關(guān)鍵角色。它的libjerry目標(biāo)會調(diào)用 JerryScript 的tools/build.py交叉編譯四個靜態(tài)庫libjerry-core.a、libjerry-ext.a、libjerry-math.a、libjerry-port.a核心構(gòu)建參數(shù)如下libjerry: $(JERRYSCRIPT_ROOT_DIR)/tools/build.py \ --clean \ --ltoOFF \ --jerry-cmdlineOFF \ --jerry-mathON \ --amalgamON \ --mem-heap70 \ --profilees.next \ --compile-flag-I${NUTTX_INCLUDE_DIR} \ --toolchain$(abspath $(JERRYSCRIPT_ROOT_DIR)/cmake/toolchain_mcu_stm32f4.cmake)各參數(shù)含義--ltoOFF關(guān)閉鏈接期優(yōu)化避免交叉鏈接階段與 NuttX 工具鏈產(chǎn)生兼容問題--jerry-cmdlineOFF不構(gòu)建桌面版命令行程序因為 NuttX 側(cè)使用自帶的jerry-main.c--jerry-mathON啟用 JerryScript 內(nèi)置數(shù)學(xué)庫jerry-math替代 libm--amalgamON使用合并amalgamated單文件構(gòu)建方式減少目標(biāo)文件數(shù)量--mem-heap70內(nèi)部堆大小設(shè)為 70 KB這是面向 MCU 場景的緊湊配置--profilees.next采用 profiles/es.next.profile 功能集啟用完整的 ES.Next 特性--compile-flag-I${NUTTX_INCLUDE_DIR}把 NuttX 的include目錄加入頭文件搜索路徑--toolchaincmake/toolchain_mcu_stm32f4.cmake指定交叉編譯工具鏈文件。工具鏈文件 cmake/toolchain_mcu_stm32f4.cmake 定義了目標(biāo)平臺armv7l/STM32F4編譯標(biāo)志為-mlittle-endian -mthumb -mcpucortex-m4 -marcharmv7e-m -mfpufpv4-sp-d16 -mfloat-abihard編譯器為arm-none-eabi-gcc即針對帶單精度 FPU 的 Cortex-M4 硬浮點(diǎn) ABI 生成代碼。庫文件構(gòu)建完成后通過copylibs目標(biāo)復(fù)制到應(yīng)用目錄$(firstword $(AR)) x $逐個解包進(jìn) NuttX 鏈接ASRCS setjmp.S、CSRCS jerry-port.c、MAINSRC jerry-main.c則把三個移植源文件直接編入應(yīng)用。最終產(chǎn)物是nuttx.bin固件鏡像。八、燒錄固件到開發(fā)板連接開發(fā)板的 Mini-USB 口用于供電與燒錄編譯 ST-Link 工具并燒寫# Assuming you are in jerry-nuttx folder. make -C stlink release sudo stlink/build/Release/st-flash write nuttx/nuttx.bin 0x80000000x8000000是 STM32F4 內(nèi)部 flash 的起始地址st-flash會把nuttx.bin從該地址開始寫入。九、連接設(shè)備串口連接開發(fā)板的 Micro-USB 口用于串口通信。設(shè)備在主機(jī)上通常顯示為/dev/ttyACM0使用minicom以 115200 波特率連接sudo minicom --device/dev/ttyACM0 --baud115200在minicom中通過按鍵組合CTRL-A - Z - U設(shè)置Add Carriage Ret回車換行選項??赡苄枰聪麻_發(fā)板的RESET鍵并在控制臺上多次按EnterNSH 提示符才會出現(xiàn)NuttShell (NSH) NuttX-10.2.0 nsh十、在 NSH 中運(yùn)行 JerryScript10.1 無輸入文件運(yùn)行內(nèi)置演示直接在nsh提示符后輸入jerry不帶任何參數(shù)NuttShell (NSH) NuttX-10.2.0 nsh jerry No input files, running a hello world demo: Hello world 5 times from JerryScript無文件輸入時jerry先輸出提示并運(yùn)行一段內(nèi)置的 hello world 演示。10.2 運(yùn)行 ROMFS 中的腳本如果啟用了 ROMFS腳本位于掛載點(diǎn)/etc下直接以路徑傳入NuttShell (NSH) NuttX-10.2.0 nsh jerry /etc/hello.js10.3 運(yùn)行 SD 卡中的腳本啟用 MMCSD 后NuttX 初始化完成時 SD 卡讀卡器顯示為/dev/mmcsd0。先掛載再執(zhí)行NuttShell (NSH) NuttX-10.2.0 nsh mount -t vfat /dev/mmcsd0 /mnt nsh jerry /mnt/hello.js十一、jerry 命令行的源碼級解析設(shè)備上的jerry命令由 jerry-main.c 實現(xiàn)其執(zhí)行邏輯可分為三個階段。參數(shù)解析階段循環(huán)掃描命令行參數(shù)最多接受 16 個參數(shù)JERRY_MAX_COMMAND_LINE_ARGS。支持的選項與官方桌面版一致的子集選項說明-h/--help打印用法說明--log-level [0-3]設(shè)置日志級別0錯誤、1警告、2信息、3調(diào)試對應(yīng)JERRY_LOG_LEVEL_*--mem-stats啟用內(nèi)存統(tǒng)計JERRY_INIT_MEM_STATS并把日志級別設(shè)為 DEBUG--show-opcodes打印執(zhí)行的字節(jié)碼JERRY_INIT_SHOW_OPCODES | JERRY_INIT_SHOW_REGEXP_OPCODES--start-debug-server啟動調(diào)試服務(wù)器--debug-server-port [port]指定調(diào)試服務(wù)器端口默認(rèn) 5001其余非選項參數(shù)被收集為腳本文件名列表file_names[]。初始化與執(zhí)行階段調(diào)用jerry_init(flags)初始化引擎若開啟了調(diào)試服務(wù)器則通過擴(kuò)展庫jerryx_debugger_after_connect建立 TCP 與 WebSocket 雙重調(diào)試通道見 debugger-ws.c 等擴(kuò)展實現(xiàn)隨后把a(bǔ)ssert、gc、print三個原生函數(shù)注冊為全局對象方法jerryx_register_global。若無文件參數(shù)進(jìn)入jerryx_repl交互式 REPL 循環(huán)否則逐個調(diào)用jerryx_source_exec_script執(zhí)行腳本文件出現(xiàn)異常時打印未處理異常并以退出碼 1 終止。收尾階段調(diào)用jerry_run_jobs處理掛起的 Promise 微任務(wù)隊列最后jerry_cleanup釋放引擎資源。十二、端口適配層與底層支撐實現(xiàn)JerryScript 引擎與宿主系統(tǒng)之間通過端口層解耦NuttX 移植的端口實現(xiàn)集中在 jerry-port.c全部接口都很精簡jerry_port_log日志輸出NuttX 移植中為空實現(xiàn)消息被忽略因為控制臺輸出統(tǒng)一走print擴(kuò)展jerry_port_line_read讀取一行輸入返回 NULLREPL 輸入通道在 jerry-main.c 中另行處理jerry_port_fatal致命錯誤處理直接以錯誤碼調(diào)用exit()終止進(jìn)程jerry_port_local_tza本地時區(qū)偏移移植中固定返回 0即我們活在 UTCjerry_port_current_time當(dāng)前時間移植中返回 0設(shè)備通常無 RTC時間功能需按需擴(kuò)展。另一個關(guān)鍵底層依賴是setjmp/longjmp。JerryScript 的錯誤處理依賴這兩個函數(shù)而 STM32F4 使用了 FPU 寄存器NuttX 自帶的實現(xiàn)可能不保存浮點(diǎn)上下文因此移植目錄專門提供了 setjmp.S 與 setjmp.h。jmp_buf定義為 14 個uint64_t元素setjmp用stmia保存r4-r11與返回地址lrstr保存棧指針sp再用vstm保存浮點(diǎn)寄存器s16-s31longjmp按對稱順序恢復(fù)這些寄存器并把val作為setjmp的返回值若val為 0 則強(qiáng)制返回 1以區(qū)分直接調(diào)用返回 0與longjmp 返回兩種情形。十三、自動化構(gòu)建參考CI 腳本Makefile.travis 給出了完全無交互的自動化構(gòu)建流程與本文手動步驟一一對應(yīng)可作為腳本化移植的參考install-apt-get-depsapt 安裝gcc-arm-none-eabi與gperfinstall-kconfig克隆 nuttx/tools 并本地編譯安裝 kconfig-frontends含autoreconf --force --install兼容處理install-clone-nuttx克隆 nuttx 與 apps 的releases/10.2分支script-add-jerryscript-app用ln -s ../../jerryscript/targets/os/nuttx ../apps/interpreters/jerryscript建立應(yīng)用鏈接script-configure-usbnsh執(zhí)行configure.sh stm32f4discovery:usbnshscript向.config追加CONFIG_ARCH_FPUy、CONFIG_SCHED_ONEXITy、CONFIG_INTERPRETERS_JERRYSCRIPTy三項運(yùn)行make olddefconfig后執(zhí)行make -C ../nuttx完成固件構(gòu)建。十四、常見問題與關(guān)鍵要點(diǎn)菜單配置需運(yùn)行兩次官方文檔提示make menuconfig可能需要運(yùn)行兩次以刷新應(yīng)用菜單樹ROMFS 與 MMCSD 二選一兩種腳本承載方式互斥選擇其一即可第 6 步會明確Skip this section提示注意 flash 容量生成 ROMFS 鏡像前盡量精簡目錄體積STM32F4-Discovery 的 flash 有限堆大小與功能集可調(diào)--mem-heap7070 KB 堆與--profilees.next是 Makefile 中針對該板卡的默認(rèn)取舍開發(fā)者可按內(nèi)存預(yù)算調(diào)整串口參數(shù)固定使用 115200 波特率并通過minicom的CTRL-A - Z - U開啟回車選項否則輸入可能無法被正確解析USB 雙口分工Mini-USB 負(fù)責(zé)供電與 ST-Link 燒錄Micro-USB 負(fù)責(zé)串口控制臺二者不要混淆。至此一套STM32F4-Discovery NuttX 10.2 JerryScript的嵌入式 JavaScript 運(yùn)行環(huán)境已完整打通從交叉編譯、內(nèi)核配置、應(yīng)用集成、腳本燒錄到設(shè)備端執(zhí)行均可按本文步驟復(fù)現(xiàn)而 Kconfig、Makefile、jerry-main.c、jerry-port.c 與 setjmp.S 等文件則為二次定制如新增端口接口、調(diào)整任務(wù)棧、接入調(diào)試器提供了清晰的切入點(diǎn)。贊分享語言運(yùn)行時嵌入式物聯(lián)網(wǎng)編譯器【免費(fèi)下載鏈接】jerryscriptUltra-lightweight JavaScript engine for the Internet of Things.項目地址https://gitcode.com/gh_mirrors/je/jerryscript點(diǎn)擊查看免費(fèi)下載相關(guān)推薦Zephyr 在 Radxa ROCK 3BRockchip RK3568上的移植、構(gòu)建與 U-Boot 運(yùn)行指南Zephyr 在 Radxa ROCK 3BRockchip RK3568上的移植、構(gòu)建與 U Boot 運(yùn)行指南 Radxa ROCK 3B 是一款基于操作系統(tǒng)嵌入式RTOS物聯(lián)網(wǎng)Linux on Nios II在 Altera FPGA 上構(gòu)建與移植 Linux 內(nèi)核的完整指南Linux on Nios II在 Altera FPGA 上構(gòu)建與移植 Linux 內(nèi)核的完整指南 Nios II 是專為 Altera現(xiàn) IntelF操作系統(tǒng)內(nèi)核驅(qū)動驅(qū)動開發(fā)虛擬化嵌入式網(wǎng)絡(luò)存儲Zephyr RTOS 在 Raspberry Pi 5 上的移植與實戰(zhàn)指南構(gòu)建、串口調(diào)試與 Xen Dom0 運(yùn)行Zephyr RTOS 在 Raspberry Pi 5 上的移植與實戰(zhàn)指南構(gòu)建、串口調(diào)試與 Xen Dom0 運(yùn)行 導(dǎo)讀 本文基于 Zephyr 官方倉庫中操作系統(tǒng)嵌入式RTOS物聯(lián)網(wǎng)上一篇SpeechBrain 實戰(zhàn)使用 GigaSpeech 數(shù)據(jù)集訓(xùn)練 CTC 與 Transducer 語音識別模型下一篇如何快速獲取國家中小學(xué)智慧教育平臺電子課本一鍵下載PDF教材完整指南創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本在线不卡一二区| 超碰九九| 久久久精品91八戒| 少妇三p| 国产传媒1234区| 亚洲97网站| 国内一区二区免费| 欧美97av| 精品亚州18| 综合久| 日韩偷拍一区二区三区| 精品久久久久久无码| 人人摸人人舔一区二区| AV色五月| 久久97视频| 蘋果手機免費看成人Av| 日韩pv中文| 激情九月婷婷| www超碰| 秋霞色色影院| 精品久| 五月天AV资源| 亚洲色婷婷综合久久久久中文| 国产日韩欧美| 久久鲁夜| 欧洲亚洲人妻无码高清久久三区四区| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 少妇三p| 激情五月天校园春色网| 久久綜合很很很| 日本免费一区二| 婷婷五月天激情小说| 影音先锋中文字幕日本好一区二区| 成 人 A V免费视频在线观看| 极品白嫩美少妇在地板上位骑射淫水泛滥| 九九精品99| 欧美大香蕉久| 欧美不卡二区| 国产强奸超碰AV| 国产成人www免费人成看片| 国产福利视频精品视频| 久久黄人人爽视频| 超碰色97| 国产日逼视频| 激情五月婷婷| 欧州色图区| 中文字幕第页| 欧美激情超碰777| 天操天操夜操夜月操月年年操| 精品久一区免费| 东京热,男人的天堂| 亚洲资源网| 91夜色chaopeng| 色色色欧美| 91综合网| 国产成年女人免费视频播放a| 成人国产视频在线观看| 亚洲毛片久久| 国产农村妇女毛片精品久久| 综合久久2017| 久久性生大片免费观看性| 成人精品久久久午夜福利| 色翁荡息又大又硬又粗又爽| 婷婷91| 国产激情综合| 熟女一区二区| 97操97干| 成人一道本免费视频| 九9热伊人| 啊啊啊不要啊啊受不了了视频在线| 无码人妻精品一区二区三区九九 | 久久直播国产| 久久极品一区二区| 亚州人妻| 九九九成人| 成·人免费午夜在线观看| 亚洲精品乱码线路中文字幕 | 九九色热| 东京热,男人的天堂| 超碰色综合| 国产操逼逼网| 操逼视频国产无套| 996热| 花野真衣| 亚洲日韩狠狠撸视频| 欧美不卡五十路| 亚洲国产高清福利视频| 91久久伊人婷婷青青草| 亚洲欧美在线丝袜| 91精品无码人妻系列| 国产精品熟女九九九| 午夜一区| 丁香五月偷拍| 老色鬼成人精品视频下载大在线观看| 午夜无遮挡男女啪啪视频| 操屄不卡视频| 久久女女| 青娱乐日韩无码| 精品一区二区三区四区女| 夜夜黄| 人人妻人射| 中文字幕视频在线观看一区二区| 亚洲 欧美 另类 日韩 人妻一区| 日本久久久精品电影| 久久久新亚洲AV| 欧美一区二区亚洲天堂| 91老熟女91老女人| 国产区性爱在线视频秋霞豆 | 香蕉国产97| 熟女五十路一区二区三| 97超视频在线观看| 无码丰满熟妇一区二区浪潮AV| 久久婷婷一区二| 狠狠97| 日本欧美国内在线| 天天操妹子| 亚洲天堂 视频你懂的| 欧美中文狠| AV色五月天| 亚洲国产成人精品女人久久久| 色综合av男人天堂| 日韩电影免费网站麻豆视频| 欧美日韩一区二区三区四区蜜桃| 操学生天天| www.色吧5.com| 欧美精品人妻视频| 国产黄色小视频网站| 久久精品亚洲婷婷| 男女性感激情网站| 9.1小视频| 亚洲av无线观看| 欧美少妇高潮久久91| 亚洲国产成人精品999| 一区=区三区视频| 91在线欧美| 欧美最婬乱婬爆婬性视频 | 午夜毛片亚洲精品片国产久久久| 乱精品一区字幕二区| 天天色欧美| 国产精品久久9| 免费精品国偷自产在线在线| 色综合20p| 日韩人妻播放| 91热| 香港日本韩国人妇99www.wccm20| 二色av| 亚洲 暴爽 AV人人爽日日碰| 欧美成人色| 日韩亚洲中文字幕在线| 久久久精品国产亚洲伊人| 日韩精品电影| 天堂国产AV| 免费看A片毛毛片在线播| 91激情网| 免费综合亚洲中文| 亚洲情欲| 天天热精品| 色综合中文字幕不卡| 91东京热男人的天堂| 亚洲 综合 第一页| 日韩欧美视频青青| 狠狠中文字幕| 性色A∨91| 亚洲av热热色| 丁香久久| www色日本| 久久久久久久人妻丝袜| 久久影视二区三区行押| 天天爱天天韩国日本牛牛牛牛| 亚洲欧美激情小说| 日产中文字幕2020| 伊人综合色网| 日韩激情啪啪| 日韩欧洲操屄视频| 日日超碰亚洲| 欧美 色 亚洲| 大但人体久久久久| 久久视频,这里只有精品 | 欧美熟女逼久久久久久| 久久99国产综合精品女同| 秋霞一级视频在线观看免费| 免费的黄片有限公司| 人妻夜夜爽天天爽三区麻豆AV网站| 亚洲综合射| ,国产乱人伦精品一区二区三区| 成人麻豆av电影网站| 亚洲97精品| 超碰9 7女人| 97超碰总站| 91在线综合网| 欧美制服另类丝袜| 混色激情av| 日本久久天堂| 丁香啪啪| 国产成人无码久久精品| 偷拍 精品另类 凸凹了四区| 色综合天天| 丁香成人五月天| 欧洲综合视频| 亚洲爱爱视频一区二区| 九九九午夜| 另类视频在线| 大香蕉九九| 最近2019中文字幕国语免费版| 岛国免费视频在线| 超碰免费人妻人人| 91丨九色丨国产丨人妻在线 | 狠狠操官网| 91天天看| 欧美激情性久久久久久| 亚洲一区操| 操国产逼| 中文字幕精品区先锋资源| 午夜欧美女人操逼| 女人被添高潮免费视频| 超碰人人妻| 日韩草久视频| 九久9热| 日本一区99| 97精品久久久久久久| 青娱乐大香蕉| 91在线国产后入风骚翘臀美女素人| 91国内外在线| 午夜福利 成人 91| 日日骚AV| 中日韩久久久| 一区二区三区欧美激情| 一区二区 电影 亚洲| 国产第11页| 伊人性在线视频| 日韩有码专区| WWW啪啪的com| 激情五月天视频| 欧美综合站| 久久精品天美| 日本在线15p| 97综合在线| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场 | 日韩中文字幕国产| 人人操人人操草草| 久久怡红院| 夜夜爽妓女| 亚洲性猛| 91色拍| 国产一级137片内射麻豆| 自拍大香蕉乱插| 久久超碰久| 裸体1区| 精品美女少妇一区二区| 欧美日韩色综合网| 色婷婷在线视频| 超碰97色色| 欧美性第1页| 自拍偷拍草一草| 天美麻豆精品视频99| 黄总AV色图| 久久99久久99精品天美传媒棢·纸:. | 人伦四五区| 国产在线播放成人免费| 亚洲黄色a级片| 啊啊啊啊啊啊啊国| 999久久久久久久久| 91免费看一区二区三区| 色综合久久888| 级品肉射| 亚洲av国产av综合av卡| 久都青青视频| 九九碰九九爱97超碰| 国产精品香蕉热久久新品| 91欧美高清| 99蜜月精品久久| 黄色片一区二区三区四区五区| 97人人草| 91操熟女视频 | 日韩八十路老熟女| wwwxxx日本爽| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 欧美一区二区三区入口| 青青操在线亚洲视频观看欧美在线 | 91美女小视频| 久久超碰久| 亚洲丝袜二区在线| 我要看免费韩日黄片| 日韩一级二级三级免费看完整版国语版| 国产精品操| 色综合五月天| 亚洲色交| 欧美男女午夜啪啪| 家庭乱伦国产精品| 欧美狠狠弄| 日本乱人伦片中文三区| 国产男女无套97| 日本熟妇浓毛hdsex| 日本狠狠干| 91性感在线| 午夜男女爽爽爽在线视频| 国产吹潮女在线观看| 欧美亚洲| 国语精品av| 99热精品在线在线| 凹凸精品熟女在线观看| 亚洲欧美校园另类春色| 999久久久免费精品国产牛牛| 日本有码影片下载| 丰满美女一级毛片在线播放| 国产少妇肉丝在线观看| 五月综合视频| 青青草好吊色| 97综合在线观看| 一级毛片电影免费看| 人妻碰碰碰碰碰碰| 黄色香蕉视频网站一区| 偷拍五区| 超碰79人人乐| 亚洲日本激情| 蜜桃午夜视频一区二区 | 欧美激情片一区二区| 日韩三A大片在线观看| 久久人爽| 啊啊啊啊啊在线观看网址 | 五月婷婷综合网| 污色区网站| 夜夜国产一区| 丁香六月东京热| 97碰碰色| 亚洲人91| 色婷婷丁香五月| 在线亚洲 欧美 日本专区| 国产少妇高潮| 一区二区三区精品黑丝白丝酒店对鸡| 日本一区二区亚洲综合| 精品视频久久区| 亚州情色j区| 免费av高清无码| 亚洲天天精品| 国产精品网站www| 日本护士高潮| 亚洲自拍偷拍视频在线| 中文字幕1区2区| 97综合国产精品高潮久久| 免费强奸av| 亚洲成人激情小说视频| 欧美同性恋 的搜索结果 - 91n| 国产11页| 99亚洲精品| 亚洲精品人妻在线| AAAA级日本片免费视频| 亚洲色图8| 加勒比海成人视频网| 25国产精品免费观看| 乱论91| 成·人免费午夜在线观看| 97超色| 熟女欧美日韩综合婷婷| 久久久影院| 国内三级自拍小视频在线观看| 久久精品人人做人人看| 国产一国产一级毛片古装| 国产精品午夜精品| 超碰午夜| se,,,亚洲欧美| 色爱综合网欧美| 狠狠狠狠狠干| 精品久久久亚洲AV成人网站| 欧美性爱三区二区| 2018天天干在线视频| 免费a v| 中文字幕视频在线观看| 亚洲第一视频 欧美风情 日韩| 鸥美极品| 免费国产| 国产久9| 97欧美色综合| 麻豆国产视频精品观看| 国产操逼网站亚洲一级黄色| 日韩成人性日韩成人性爱视频在线免费观看 | 91少妇通奸网站| 亚洲Av噜噜一区二区三区妖精| 久九干| 天天操av懂色| 日韩天堂av电影在线观看 | 久久丁香久草综合网| 91性色| 老熟妇乱轮| 欧美综合网| 百度百度日本操逼| 国产高清视频无码在线| 久久成人国产精品| 国产 热久久久久国产精品| 国产九九久久久精品| 欧美国产精品| 久久激情四射婷婷丁香五月天| 欧美午夜视频| 人人九九精| 欧美亚洲韩国视频十五区| 久久久久久久综合,国产| 91精品久久久久久77777| 天天操天天7| 亚洲激情深爱文学小说网站| 我要色综合网站| 91综合网在线| 久久久精品91八戒| 嫩草一区二区在线观看| 看一级黄色视频| 丁香六月婷婷| 久久久久久大| 亚洲日本天堂| 校园激情狠狠四射| 国产精品人妻无码久久久老鸭窝| 不卡av在线中文字幕| 操逼逼中文字幕| www.夜夜操| 亚洲色图欧美色图制服丝袜| 日韩二区三四区五区六区在线看| 国产九九九九九九| 成年人免费观看网站| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 欧美第一页| 久久久久久久伊人精品| 国产精品亚洲免费| 国产av白丝| 91精品少妇搡搡搡| 98超碰欧美| 亚洲自拍偷拍视频在线 | 农村少妇久久久久久久| 欲色综合| 可以在线观看的黄色网址| www.大香| 丁香五月天啪啪| 黄色二级片网站| 黑人综合色| 中英熟女操女| 色婷婷综合网| 97精品中文字幕| 69一区二区三区 | 涩五月婷婷| 91精品国久久久久久无码| 欧美色图20P| 国产亚洲美日韩Aⅴ中文字幕无码成人| 丁香九月激情| 九九九草| 亞洲久久直播| 久久綜合很很很| 一区二区高清视频| 天天日少妇逼AV| 无码人妻丰满熟妇区毛片| 国产一区二区二区按摩精品啪视频| 欧美日韩国产色图在线| 欧美熟妇亚洲版| 深夜激情| 51久久夜色精品国产麻豆| 中文字幕视频免费| 免费中文综合精品| 久久99午夜精品一区人妻| 舔人妻中文免费视频| 无码外流操逼视频| 人妻出轨一区二区三区| 午夜性生活av免费在线看| 婷婷综合激情| 老熟女天天操| 国产情侣自拍在线播放| 97在线观看免费| 中文字幕精品一区二区精| 国产综合久久久鬼色| 美女裸体无遮挡永久免费观看网站| 91日韩在线| 新怡红院| 啪啪91| 91国产丝袜白虎| 另类一区| 三及片网站| 色综合天天| 亚洲人妻五月丁香婷婷| 麻豆久久久一区二区| 免费在线视频97| 五月天综合| 亚洲在线欧美| 校园春色宗合网| 91久久国产综合精品| 操逼网站网站| 亚洲免费日韩在线一区二区| 国产91av在线播放| 强奸熟女一区二区三区| 日韩性爱高清免费视频| 人人妻人人爽| 97色五月天完| 岛国片在线播放| 色www精品视频在线观看| 99久久精品无码一区二区| 91美女国产在线| 4399成人黄A片| 精品亚洲天堂| 熟女网站最新| 超碰97亚洲区| 伊人五月天| 欧美精品97| 久久色一区二区| 久久后入制服| 超碰精品日韩欧美国产| 东北老女人的激情视频| 久久久久国产精品片区无码直播| 啊啊啊好大好深| 中文字幕丝袜美腿| 亚洲最大无码中文字幕网站| 国产97在线视频| 青青草精玖玖69精品| 久久国内| 久久成年片色大黄全免费网站| 青青欧洲黑| 婷婷五月天色色| 日韩精品资源专区二区| 男人的天堂VA| 91丨精品丨国产丨丝袜| 99色综合| 在线视频免费播放一区| 日本熟妇浓毛hdsex| 欧美第二页午夜| 精久久久| 九月AV| 亚欧性爱ab| 午夜精品久久一区二区| 欧美极品少妇| 亚洲欧美setu| 久久女人视频| 五月香婷婷| 精品久久久久久中文| 国产97在线 | 亚洲| 啊啊啊啊啊好舒服视频| 综合 青草 伊久久 影院 综合| 这里都是精品在线观看| 日韩二三区| 在线亚洲欧美| 免费男人的天堂| 欧美日韩婷婷中文| 九久9热| 五月丁香影院| aaaa少妇高潮大片| 蜜乳Av成人片网站| 亚洲一卡二卡在线免费| 9999久久久| 全球成人中文在线| 欧美黄色大片在线观看| 尤物av网站免费在线播放| 伊人97| 欧美日日人人天天| 麻豆黄站| 亚洲男人天堂视频| 综合性视频99| 97av,com| 五十路熟女,国产欧美精品区一区二区三区 | 丝袜剧情| 成人美女av| 国产不卡免费在线视频| 综合免费无码中文| 亚洲欧综合另类无码一区| 亚洲图片激情综合另类| 精品国产91av一区二区三区| 国产隔壁老王影院在线| 国内三级自拍小视频在线观看| 插老姨肥穴| 色情五月综合婷婷| 国产高潮AA片免费看| 围产精品一区二区三区视频播放| 日韩精品1区2区中文字幕| 日韩三A大片在线观看| 91性高朝久久久久久久久| 蜜臀一区二区三区在线| 欧美精品精品一区二区| 欧美Aⅴ| 亚洲精品三区在线观看| 精品国产丝袜一区二区三区乱码| 熟女五十路一区二区三| 免费A V在线播放| 丁香五月综合| 久久天堂婷婷网| 中文字幕二区日韩天堂| 性色高清在线| 欧美精品三区| 国产自偷| 色在线视频导航| 免费观看性欧美一级| 亚洲天堂五月天国产| 五月婷婷六月天| 最新AVzaixian| 久久久不卡| 亚洲天堂欧美| 国产欧美日韩一区二区三区| 亚洲精品a人片在线观看视| 99热9| 精品人妻一区二区免费蜜桃| 亚洲综合一| 国产白丝网站| 台湾一区国产高清在线| 日韩av在线免费网站| 熟女精品一区二区三区| 日本欧美色| 91热热色| 亚洲 自拍偷拍 欧美| 狼人久草| 亚洲性猛| 91欧洲国产成人久久精品网站| 噜噜噜在线视频| 99久热| 九一性生活免费视频| 国产精品一区二区三区四区五区| 成人免费看吃奶视频网站| 婷婷深爱五月| juliaann丝袜大战黑鬼| 亚洲熟女av中文字幕| 午夜电影在线观看无码专区| 亚洲天堂女优在线| 老熟女阿 国产91| 久久久久亚洲AV无码专区少妇| 综合激情五月丁香| 久久高清无码夜夜操| 17c嫩草51久久91嫩草| 黑人精品欧美一区二区蜜桃| 天天日夜夜爽| 凌辱美少妇久久aV| 久久精品欧美一区二区三区不卡| 大黄片做爱的大的| 91天天综合在线| se吧提供91精品国产91久久久久久 | 亚洲电影91| 黄片免费日韩| 狼天天狼天天大香蕉| 欧美色图片欧美色图| 操逼天美3区| 麻豆久久久久久久久丝袜| 日本 情色 1区| 国产精品蜜乳AV| 九九九九九九九九九五码| 欧美裸体美女日麻屄| 九九综合色| 99视频自拍区| 国产 无码 一区二区| 欧美成人色| 蜜乳Av成人片网站| 欧美性爱一区二区三区四区| 91在线精品一区二区三区| 亚洲18禁| 天天看天天日| 夜夜高潮夜夜爽高清视频一| 亚洲无码com| 蜜臀精品1区2区| 青娱乐淫乱1314| 久久久久久久极品香蕉视频| www.激情| 色婷婷日韩精品一区二区三区| 精品黑人一区二区| 日韩91网| 蜜桃久久综合视频| 搡老熟女免费视频| 91成人在线| 亚洲阿v天堂无码z2018| 囯产精品强| 中文久久爆乳| 99999re| 高清不卡一二三区视频......| 日韩性爱长视频免费| 国产白嫩精品久久| 欧美日韩国产三级黄色| 久久精品91| 婷婷色网| 99亚洲国产精品色一区二区三区| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 狠狠中文字幕| rivers-china.com| 亚洲影视综合网| 超碰97人人cao| 99久在线精品99re8a| 在线性黄高清免费视频| 国产又粗又长又大的视频| 99视频在线| 九九AV| 丁香五月天久久精品视频一区二区三区| 国产精品网站免费| 欧美性xxxxx狂欢| 亚洲精品国产精品乱码不卡| 福利视频香蕉免费一区二区在线| 欧美亚洲性爱一区二区| 亚洲自拍天堂| 欧美熟妇色| 春色校园综合网| 亞洲久久直播| 亚洲欧美日韩偷拍色图| 久久综合久色欧美综合狠狠| 中出91| 一区二区三区高清天码| 四虎精品永久在线观看| 欧美97在线观看| 日本理论在线| 欧美性爱精品七区| 老鸭窝成人| 欧美一区二区传媒| 120分钟婬片免费看| 中文字幕高清精品一区| 97色欧洲| 成人精品视频一区二区| 欧美性生活免费网| 91亚洲网站| 在线观看午夜婷婷久久久久清性观看| 99热自拍| 欧美一级国产一级| 老司机福利青青草| 伊人欧美大香蕉视频| 青青草色情网站视频| 欧美性Fer办公室秘书| 日韩99神马视频播放片在线播放| 久久久国产亚洲精品系列| 91色图| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 高潮内射在线| 五月丁香啪啪网| 风流老熟女一区二区三区l| WWW.操逼.COM| 亚洲欧洲激情卡通另类文学四射小说网站 | 色欲人妻一区二区在线| 麻豆精品久久久久久久| 伊人五月天| 亚洲乱码尤物193YW| 国产成人 综合亚洲 天堂| 亚洲日韩国产精品| 91性感在线| 99少妇内射| 97在线播放| 男人天堂最新手机版在线青青草| 国产第11页| 久久骚少妇| 日本A级视频| 91+欧美| 67914在线精品观看| 国产精品久久久亚洲一区| 五月丁香综合| 七久久久| 人人喜人人妻| www.四虎在线| 密臀在线免费观看| 色色99| 青青草精玖玖69精品| 欧美另类色| 蜜桃av综合网发布| 国产高清26uuu| 尤物网址| 国产福利在线视频网站| 五月天久久综合网| 伊人精品久久网站| 日韩卡一卡二卡三在线| 国产免a费看黄片在线| 欧美精品日韩久久久九| 中文字幕交换人妻| 国产精品久久久三级无码| 日本精品第一视频在'| 亚洲成人久久美女| 深爱激情五月天| 台湾佬激情综合| 人人操肉肉| 97视频在线免费观看| 欧美综合网在线| J?P?NESEHD熟女熟妇伦| 欧美日韩国产一区二区小黄片大全| 簧片免费看视频| 九九久久综合| 成人五月香网在线| 夜夜操av亚洲一区二区| 亚洲色图欧美另类在线| 久久久97| 国产第12页| 国产特级毛片AAAAAA高潮流水 | 日韩天天综合| 国产91精品在线免费| 国产精品成久久久久午夜午夜| 九九精品99| 91超碰人人操| 色丁香五月婷婷| 91快色色色色色| 国产久久久久久久久一区二区| 91爽啪| 亚洲Av噜噜一区二区三区妖精| 啊啊在线| 一本色道无码DVD中文字幕| 国产日韩欧美亚洲精品95 | 加勒比中文av| 日韩操逼HD| 亚洲人人操| 超碰97欧美日韩| 国产午夜精品在线观看| 国产欧美岛国精品一区| 天天淫人人妻日日色| 嫩草91| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 一类av片在线看| 婷婷五月天激情小说| 欧美成人国产精品| 97色欧洲| 蜜乳AV免费观看| 日韩97超碰中文字幕| 啊啊啊啊好疼视频| 综合色久欲| 久久一二三四| 一级A啪啪啪啪| 国产青视频| 啊啊啊啊操死我| 欧美精品久久久久久久久88| 九九久久久九九| 欧美日韩不卡传媒| 黄片aaaaa一区| 开心六月色| 91青青草| 色情综合网| 成人精品水蜜桃久久久久久久| 十八禁啪啪视频| 久久婷婷五月综合| 超碰欧美97资源| 在线一道啪| 久久內射| 国产真乱mangent| 淫淫总合网| 18禁网站在线播放| 一区二区三区男女操逼黄色小电影| 午夜操一视频一区| 在线性黄高清免费视频| 9999九九九久久久| 中文字幕一区二区三区四区在线视频| 色色色综合网| 综合亚州欧美| 天堂8在线新版官网| 国产久久久久影院老熟女| 亚洲国产美女久久久久| 夜夜中出国产| 91精品国产91熟女| 婷婷五月色| 中文字幕一区二区三区人妻不卡 | 国产无马在线| 亚洲男人的天堂V| 在线视频亚洲无码| 青青草亚洲一区| 成 人 A V免费视频在线观看| 国产高清1234区| 欧美色就是色| 老女人日韩美91| 看免费一级在线播放毛片| 午夜天堂精品久久| 一级做a爰片久久毛片图片| 玖玖资源中文字幕制服丝袜| 免费av高清无码| 久草在| 日本精品无码三级网站| 无卡一区=区| 无码少妇精品一区二区60岁老人| 中文字幕国产| 亚洲色吧网| 午夜舔阴达高潮视频免费看| 大吊色| 美女一区二区国产精品| 亚洲中文字幕久久无码精品| 一级黄色影片| 青娱乐 成人娱乐在线| 欧美成人性活片| 青青草黑寡妇男人天堂| 色官网色综合| 一本久久久精品| 后X久久| 艹精品| 精品女同一区二区三区| 久操凹凸视频| 美女淫穴| 5278欧美一区二区三区| 97天天| 青青草日本中文字幕| 中文熟女五十乱码在线| 久久99热这里只频精品6学生| 麻豆区久久久久亚| 色啪网| 亚洲?V高清一区二区三区尤物| 69综合网| 伊人色综合网电影| 欧美日韩97| 2019午夜福利视频| 国产少妇与亚洲av| 欧美不卡二区| 国产一区二区二区按摩精品啪视频| 亚洲激情天堂网| 激情网五月天| 淫荡熟女乱伦网| 日本久久超碰| 搡老女人老91妇女熟女| 欧美黑人猛交春色影视大全| 国产麻豆福利av在线播放| 中文字幕后石码四区五区| 青草视频人妻在线观看| 欧美日韩情色一区二区| 亚洲一区二区三区欧美日韩| 欧美一区二区三区不卡高清视频| 91色综合色| 亚洲另类色图片| 99色在线视频| 人人操,操人人| 在线播放成人高清免费视频| 精品日日人妻| 久久 久久国内精品亚洲| 欧美最婬乱婬爆婬性视频| 五月丁香综合| 国产精品激情久久久久久久| 精品久久久av无码免费| 四虎在线视频| 天美传媒av在线| 亚洲综合影视| 俺去久久| 五月天色图影视| 国产精选三级在线观看| 欧美一区二区三区另类精品| 日韩综合无码一区久久92| 抽插亚洲无码| 噜噜瑟| 久久久91福利姬| 我中文字幕6区| 加勒比综合九九99视频在线播放| 亚洲 图片 综合91| 久久久久久人妻| 91精品国产高清久久久久久,亚洲成人| sewuyueav| 亚洲图片欧美另类综合免费视频大大香| 99re这里只有精品3| 丁香色婷婷| 国产版a级片直播在线| 国产传媒操逼视频| 日韩三A大片在线观看| 婷婷色色五月天福利| 91bbb| 啊啊嗯嗯好爽| 97精品视频| 69精品| 蜜臀视频网站| 欧美精品三级黄片| 日韩国产精品人妻无码久久久| 嗯嗯啊好爽| 97免费视频在线观看| 亚洲不卡三级手机播放| 亚洲伊人久久综合97| 26uuu久久| 亚洲av国产av综合av卡| 国产不良强奸视频免费看| 久艾草在线精品视频在线观看| 91在线精品一区二区三区| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 草草草视频在线免费看| 欧美AB在线| 在线不欧美| 欧美一区二区三区不卡高清视频| 欧美极品美女aaaaaa级黄片| 日韩性爱免费观看视频| 国产51色综合久久免费| 肉嘟嘟www视频在线观看高清| 国产午夜无码片在线观看影视| 国产精品免费美女视频| 9久久精品| 91女在线观看| 欧美韩国你懂得在线 | 免费AV中文网在线观看| 久久精品国产亚洲AV高清演员表| 黑人精品久久97| 人人妻天天做天天爽| 91精品丝袜久久久久久| 中文操逼字幕| 国产一在线观看| 日韩女模中文造逼| 欧美性爱97超碰| 久久久久久久久九九久孕交| 日本999精品| 啊啊啊快操我视频| 国产精品高朝久久久久久久| 久久精品28| 日本色色视频网站| 国产AV超爽| 99.色网| 精人妻无码一区二区三区伊人直播| 人妻久久| 狠狠操官网| 五月婷婷无码| 免费看污网址| 亚洲情色 欧美| 高清无码一区二区三区| 4399成人黄A片| 新97国产超碰| 91爱网| 亚洲第2页| 在线啊啊啊啊| 婷婷久久久精品| 亚洲春色欧美激情自拍| 五月婷婷丁香| 欧美青青视频| 高潮精品| 精品一区二区亚洲国产| 爱欲AV| 999精品乱码| 风流老熟女一区二区三区l| 综合久草| 麻豆一区二区三区在线看| 成人av福利在线观看| 久久久久久人妻| 日韩精品影视| 欧美日韩午夜精品一区二区三区 | 小电影欧美91| 亚洲日韩精品一区视频在线| 91蜜臀熟女| 超碰九九| 亚洲成人美女无吗| 欧美精品91| 久久一二三四| av九九| 死我十八禁| 亚一综合久久久久久久久久| 按摩中文字幕| 天天92av| 桃花色涩综合影院| 啊啊啊啊啊啊啊啊啊在线观看| 日韩一级性爱无码| 欧美极品女人的天堂| 91亚洲黄色网| 日本韩欧美在线播放a| 久久熟女久| 女同女同恋久久级三级| 97超碰天天| 9久在线视频只有精品| 亚洲有薄码区日本系列中文字幕| 天天欧美97| 超碰成人国产| 久久女女| 美女自卫慰黄网站免费| 国产精品粉嫩福利在线| 91久久精品中文字幕| 好舒服视频| 一区操逼日比视频| 色香伊人| 久久久麻豆精品| 91美女视频电影| 国产强奸超碰AV| 四虎影视永久在线观看精品免费网站 | 色小视频蜜乳| 欧美日综合| 亚洲黑丝在线| 啊啊啊无码| 亚洲熟妇丝袜在线观看| www.色吧5.com| 九一精品牛牛一区二区| 欧美性爱91| 欧亚揄拍偷拍精品视频| 日韩黄色一区二区三区| 国产精品一区二区麻豆| 99久视频| 国产女大学生AV| 青青操少妇| 无码WWW免费视频网站| 国产av色网| 可以看的av| 日本欧美中文字幕| 亚洲激情 欧美色图| 黄色AAAAA欧美| 久久久久幕乱码| 丝袜美腿诱惑亚洲欧美视频在线观看| 酒色综合网| 99re8超碰| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 九九热av| 欧美不卡在线美女| 亚洲成人精品在线一区| 夜夜 中文视频rt| 色色色99| av网站在线看| 一区二区视频你懂的| 最新日韩黄片| 9久精品| 99蜜桃臀亚洲成人在线观看| 玖玖玖玖精品国产剧情| 中文字幕乱码在线观看| 国产农村妇女精品一二区| 国产精品久久久久中文字幕| 清纯唯美第一页| 国产超碰在线一区| 不卡啪啪视频| 伊人热综合| 欧美黑人日韩少妇色情| 美国美女AV在线| 久久久久久久亚洲Av无码| 中国少妇啪啪视频| 久久久久久9999| 大香蕉啪啪啪| 人人看人人爰人人操| 久久久91| 激情综合网一盗摄| 久久女人视频| 久久久久久AⅤ无码免费肉站| 中文字幕97| 加勒比久久av| 99热精品青草在线 | 韩国毛片一区二区三区| 久久啊哟| 91丨九色丨43老版熟女| 奇米四色网| 91性网| 天天操天天日青青草超碰av| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 中日亚韩免费视频| 欧美性第一页| 欧美后入式| 久久一本大香蕉 | 日本三级黄页| 精品少妇人妻av久久免费| 欧美美女视频| 欧美97se| 99爱爱| 东北老女人的激情视频| 国产玖玖| 熟女视频久久| 午夜爽爽爽在线观看永久入口姬片| 亚洲成a人v欧美综合天堂下载| 久久超碰天天| 热热色色综合| 和协影院中文字幕三区| 熟妇亚洲一区二区三区| 亚洲少妇色| 久热久| 国产原创剧情在线丝袜 | 久久久久9999妇女| 久久99国产综合精品女同| 69人妻精品一区二区绯色| 999岛国大片| 911粉嫩人妻| 国产午夜无码片在线观看影视| 吖在线不卡一区二区国产剧情 | 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 九九九九一区| 精彩久久中文| 久久国语| 亚州日韩97| 嗯嗯,好大,好爽,好骚| 亚洲色性情三级| 超碰97玖玖爱| 日本97久久久精品| 一区二区 电影 亚洲| 97综合日韩| 日日AV加勒比| 嗯嗯啊啊好疼| 国产少妇高潮| 欧美色日| 精人妻无码一区二区三区伊人直播 | 国产刺激视频| 无码高清少妇久久| 最新日本中文字幕| 91欧洲国产成人久久精品网站| 中文字幕一区二区三区50路| 国产精品视屏| 午夜性生活av免费在线看| 青娱乐淫乱1314| 香蕉欧美| 欧美一区二区福利在线| 思思热久久成人| 亚洲一卡2卡3卡4卡乱码网站 | 久久久免费一级黄片|