当前位置: 首页 > news >正文

安陆市城乡建设局网站wordpress阿里云oss插件

安陆市城乡建设局网站,wordpress阿里云oss插件,大连建设执业资格注册中心网站,深圳大簇激光公司网站概要 本文提供了一些运行QEMU的ESP特定说明。有关QEMU的一般使用问题#xff0c;请参阅官方文档#xff1a;https://www.qemu.org/documentation/. 编译 QEMU 准备工作 在此之前#xff0c;请查看有关构建先决条件的QEMU文档。如果你在Linux主机上构建QEMU#xff0c;你…概要 本文提供了一些运行QEMU的ESP特定说明。有关QEMU的一般使用问题请参阅官方文档https://www.qemu.org/documentation/. 编译 QEMU 准备工作 在此之前请查看有关构建先决条件的QEMU文档。如果你在Linux主机上构建QEMU你可以参考 这篇文章. 请确保您的系统上安装了libgcrypt ( Ubuntu 中的libgcrypt-devel, Arch 中的 libgcrypt, macOS Homebrew 中的libgcrypt ). 配置 要生成 ninja 构建文件我们需要先配置项目可以使用以下命令 ./configure --target-listxtensa-softmmu \--enable-gcrypt \--enable-slirp \--enable-debug --enable-sanitizers \--enable-sdl \--disable-strip --disable-user \--disable-capstone --disable-vnc \--disable-gtk为了减少第一次编译时间可以添加的 --disable 选项。可启用或禁用的选项的完整列表可以通过 ./configure --help 命令获取。 If you need a graphical interface for the virtual machine, make sure to provide --enable-sdl or --enable-gtk or both. 如果您需要虚拟机的图形界面请添加 --enable-sdl 或 --enable-gtk配置或两者都添加。 编译 成功配置项目后可以使用 ninja 来构建它 ninja -C build编译可能需要几分钟具体取决于之前启用或禁用的组件。编译完成后会创建build/qemu-system-xtensa 可执行文件。 编译ESP-IDF程序进行仿真 QEMU for ESP32 target is ready, it already includes the first stage bootloader, located on the ROM on the real chip, which is mainly responsible for initializing the peripherals, like the UART and, more importantly, the SPI Flash. The latter must contain the second stage bootloader and the program to run. Thus, in this section, we are going to create a flash image that combines the (second stage) bootloader, the partition table and the application to run. This can be done using esptool.py merge_bin command, supported in esptool.py 3.1 or later. Let’s suppose that the ESP-IDf project has just been compiled successfully, the following commands will create that flash image: cd build esptool.py --chip esp32 merge_bin --fill-flash-size 4MB -o flash_image.bin flash_argsHere, flash_args is a file generated by ESP-IDF build system in the build directory, it contains the list of names of binary files and corresponding flash addresses. merge_bin command takes this list and creates the binary image of the whole flash. --fill-flash-size 4MB argument specifies the total flash size. ESP32 target in QEMU supports flash of size 2, 4, 8 and 16MB, creating an image with any other size will result in an error. Notes For “Secure Boot” feature in ESP-IDF, we recommend separate command to flash bootloader and hence flash_args file do not have corresponding entry. However, you may modify flash_args file to add entry for bootloader.bin as per below: 0x1000 bootloader/bootloader.binIt is also possible to use esptool.py to “flash” the application into QEMU, but QEMU needs to be started with the right strapping mode. See Bootstrapping Mode section below for more info. Run QEMU Without attaching GDB If you don’t need to debug the guest application, you can execute QEMU without attaching GDB to it: build/qemu-system-xtensa -nographic \-machine esp32 \-drive fileflash_image.bin,ifmtd,formatrawWhere flash_image.bin is the SPI flash image generated previously. With GDB server, waiting for a connection If you need to debug the guest application, you can execute QEMU with -s -S options. This tells QEMU not to start the CPU after initializing the virtual machine. It will wait for a connection from a GDB client: build/qemu-system-xtensa -nographic -s -S \-machine esp32 \-drive fileflash_image.bin,ifmtd,formatrawWhere flash_image.bin is the SPI flash image generated previously. Then, to connect the GDB client, use the following command: xtensa-esp32-elf-gdb build/app-name.elf \-ex target remote :1234 \-ex monitor system_reset \-ex tb app_main -ex cThe last line sets a breakpoint in app_main function of the guest application and starts the virtual CPU with c. If you need to put a breakpoint in any other functions or if you don’t need to start the CPU directly, please adapt this last line. GDB and toolchain compatibility If you are using esp2021r1 or an earlier toolchain release, GDB may report the following error when connecting to QEMU: Remote g packet reply is too long (expected 420 bytes, got 628 bytes):In that case, you need to set the following environment variable beforehand: export QEMU_XTENSA_CORE_REGS_ONLY1When this environment variable is set, QEMU will only send the values of non-privileged registers to GDB. If you are using later releases of Xtensa toolchain, i.e. esp-2021r2 and later, GDB will work out-of-the-box, without the need to set this environment variable. Hardware crypto support Starting from IDF 4.1, the following hardware crypto features are enabled by default: AES, SHA, RSA. All of them are implemented in QEMU for ESP32 target. However, please note that the SHA emulation currently doesn’t support concurrent operations with different SHA types. Ethernet support Support for Opencores Ethernet MAC in ESP-IDF is added in https://github.com/espressif/esp-idf/commit/31dac92e5f0daac98190fd603df213a0a25a3807. When running protocols examples, enable CONFIG_EXAMPLE_CONNECT_ETHERNET and CONFIG_EXAMPLE_USE_OPENETH.When running a custom app, enable CONFIG_ETH_USE_OPENETH and initialize the Ethernet driver as it is done in examples/common_components/protocol_examples_common/connect.c (look for esp_eth_mac_new_openeth). When starting QEMU, use open_eth network device. User mode networking For example, to start networking in user mode (TCP/UDP only, emulated device is behind NAT), add the following option to the QEMU command line: -nic user,modelopen_ethSome ESP projects (specifically running TCP listeners) might need port forwarding to be setup, -nic user,modelopen_eth,idlo0,hostfwdtcp:127.0.0.1:PORT_HOST-:PORT_GUEST(e.g. asio-echo-server sets up a server on 2222 by default, so hostfwdtcp:127.0.0.1:2222-:2222 enables to nc localhost 2222 from host machine) Bridge/tap networking Tap networking Specifying bootstrapping mode To specify the desired strapping mode, it is necessary to add the following argument when running QEMU: -global driveresp32.gpio,propertystrap_mode,value0x0fThis sets the value of GPIO_STRAP register. Use 0x12 for flash boot mode (default)Use 0x0f for UART-only download mode (since the SDIO part is not implemented) Specifying eFuse storage Add extra arguments to the command line: -drive fileqemu_efuse.bin,ifnone,formatraw,idefuse -global drivernvram.esp32.efuse,propertydrive,valueefuseThe first argument creates a block device backed by qemu_efuse.bin file, with identifier efuse. The second line configures nvram.esp32.efuse device to use this block device for storage. The file must be created before starting QEMU: dd if/dev/zero bs1 count124 of/tmp/qemu_efuse.bin124 bytes is the total size of ESP32 eFuse blocks. Note Specifying eFuse storage is mandatory to test out any platform security features like “Secure Boot” or “Flash Encryption”. Emulating ESP32 ECO3 For the application to detect the emulated chip as ESP32 ECO3, the following virtual efuses must be set: CHIP_VER_REV1CHIP_VER_REV2 Here is the corresponding efuse file (in hexadecimal, produced using xxd -p): 000000000000000000000000008000000000000000001000000000000000 000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000 00000000To convert this (efuse.hex) back to binary, run xxd -r -p efuse.hex qemu_efuse.bin. Alternatively, these bits can be set using espefuse: espefuse.py --portsocket://localhost:5555 burn_efuse CHIP_VER_REV1 espefuse.py --portsocket://localhost:5555 burn_efuse CHIP_VER_REV2Disabling the watchdogs By default, Timer Group watchdog timers are emulated, and TG0 WDT is enabled at reset. It is sometimes useful to disable these watchdog timers. This can be done by adding the following to the command line: -global drivertimer.esp32.timg,propertywdt_disable,valuetrueThis disables the emulation of TG watchdog timers. Even if the application configures them, they will not fire. The RTC watchdog timer is not emulated yet, so it doesn’t need to be disabled. Using esptool.py and espefuse.py to interact with QEMU Start QEMU: build/qemu-system-xtensa -nographic \-machine esp32 \-drive fileflash_image.bin,ifmtd,formatraw \-global driveresp32.gpio,propertystrap_mode,value0x0f \-drive fileqemu_efuse.bin,ifnone,formatraw,idefuse \-global drivernvram.esp32.efuse,propertydrive,valueefuse \-serial tcp::5555,server,nowaitThe final line redirects the emulated UART to TCP port 5555 (QEMU acts as a server). Type q and press Enter at any time to quit. Run esptool.py: esptool.py -p socket://localhost:5555 flash_idFlashing with idf.py also works: export ESPPORTsocket://localhost:5555 idf.py flashOr, run espefuse.py: espefuse.py --port socket://localhost:5555 --do-not-confirm burn_custom_mac 00:11:22:33:44:55Note: esptool can not reset the emulated chip using the RTS signal, because the state of RTS is not transmitted over TCP to QEMU. To reset the emulated chip, run system_reset command in QEMU console (started at step 1). Specifying ROM ELF file If -kernel and -bios arguments are not given, ESP32 (rev. 3) ROM code will be loaded. This ROM code binary is included in the repository. To specify the ROM code ELF file to load, pass the filename with a -bios filename argument. Using flash encryption Self-encryption workflow In the IDF application, enable CONFIG_SECURE_FLASH_ENC_ENABLED through menuconfig, and build itBuild the flash image as per the instructions from the Compiling the ESP-IDF program to emulate section.Create qemu_efuse.bin as highlighted in the Specifying eFuse storage section.Execute qemu-system-xtensa using the following command:build/qemu-system-xtensa -nographic -machine esp32 \-drive file/path/to/qemu_efuse.bin,ifnone,formatraw,idefuse \-global drivernvram.esp32.efuse,propertydrive,valueefuse \-drive file/path/to/flash_image.bin,ifmtd,formatraw \-global drivertimer.esp32.timg,propertywdt_disable,valuetrueAdding PSRAM QEMU “memory size” option can be used to enable PSRAM emulation. By default, no PSRAM is added to the machine. You can add 2MB or 4MB PSRAM using -m 2M or -m 4M command line options, respectively. Note that PSRAM MMU is not emulated yet, so things like bank switching (himem in IDF) do not work. Using SD cards QEMU emulates SD/MMC host controller used in ESP32. To add an SD card to the system, create an image and pass it to QEMU. Create a raw image file, for example, 64 MB: $ dd if/dev/zero bs$((1024*1024)) count64 ofsd_image.binAdd the following argument when running QEMU: -drive filesd_image.bin,ifsd,formatrawIf you need to create a large SD card image, it is recommended to use sparse cqow2 images instead of raw ones. Consult QEMU manual about qemu-img tool for details. Only one SD card is supported at a time. You can use either slot 0 or slot 1 of the SD/MMC controller in the application code. Enabling graphical user interface (GUI) The ESP32 QEMU implementation implements a virtual RGB panel, absent on the real hardware, that can be used to show graphical interface. It is associated to a virtual frame buffer that can be used to populate the pixels to show. It is also possible to use the target internal RAM as a frame buffer. To enable the graphical interface, while keeping the serial output in the console, use the following command line: build/qemu-system-xtensa \-machine esp32 \-drive fileflash_image.bin,ifmtd,formatraw-display sdl \-serial stdioIf gtk backend was enabled when compiling QEMU, it is possible to replace -display sdl with -display gtk
文章转载自:
http://www.morning.rzpkt.cn.gov.cn.rzpkt.cn
http://www.morning.jgykx.cn.gov.cn.jgykx.cn
http://www.morning.ggmls.cn.gov.cn.ggmls.cn
http://www.morning.xylxm.cn.gov.cn.xylxm.cn
http://www.morning.wpmlp.cn.gov.cn.wpmlp.cn
http://www.morning.clqpj.cn.gov.cn.clqpj.cn
http://www.morning.knryp.cn.gov.cn.knryp.cn
http://www.morning.ywpcs.cn.gov.cn.ywpcs.cn
http://www.morning.klzt.cn.gov.cn.klzt.cn
http://www.morning.dcpbk.cn.gov.cn.dcpbk.cn
http://www.morning.rnmdp.cn.gov.cn.rnmdp.cn
http://www.morning.hlhqs.cn.gov.cn.hlhqs.cn
http://www.morning.dwrjj.cn.gov.cn.dwrjj.cn
http://www.morning.fbmzm.cn.gov.cn.fbmzm.cn
http://www.morning.dpnhs.cn.gov.cn.dpnhs.cn
http://www.morning.gllhx.cn.gov.cn.gllhx.cn
http://www.morning.nrbqf.cn.gov.cn.nrbqf.cn
http://www.morning.rjmd.cn.gov.cn.rjmd.cn
http://www.morning.xqcst.cn.gov.cn.xqcst.cn
http://www.morning.lywcd.cn.gov.cn.lywcd.cn
http://www.morning.gpmrj.cn.gov.cn.gpmrj.cn
http://www.morning.npmcf.cn.gov.cn.npmcf.cn
http://www.morning.ssjtr.cn.gov.cn.ssjtr.cn
http://www.morning.lxmmx.cn.gov.cn.lxmmx.cn
http://www.morning.mdwtm.cn.gov.cn.mdwtm.cn
http://www.morning.zydr.cn.gov.cn.zydr.cn
http://www.morning.qmbpy.cn.gov.cn.qmbpy.cn
http://www.morning.lywcd.cn.gov.cn.lywcd.cn
http://www.morning.psdbf.cn.gov.cn.psdbf.cn
http://www.morning.hsgxj.cn.gov.cn.hsgxj.cn
http://www.morning.dpgdj.cn.gov.cn.dpgdj.cn
http://www.morning.wflsk.cn.gov.cn.wflsk.cn
http://www.morning.zwyuan.com.gov.cn.zwyuan.com
http://www.morning.smj79.cn.gov.cn.smj79.cn
http://www.morning.ljcjc.cn.gov.cn.ljcjc.cn
http://www.morning.mxftp.com.gov.cn.mxftp.com
http://www.morning.ntgsg.cn.gov.cn.ntgsg.cn
http://www.morning.rlkgc.cn.gov.cn.rlkgc.cn
http://www.morning.kpxzq.cn.gov.cn.kpxzq.cn
http://www.morning.zztkt.cn.gov.cn.zztkt.cn
http://www.morning.pdtjj.cn.gov.cn.pdtjj.cn
http://www.morning.mnnxt.cn.gov.cn.mnnxt.cn
http://www.morning.bkqdg.cn.gov.cn.bkqdg.cn
http://www.morning.bdfph.cn.gov.cn.bdfph.cn
http://www.morning.shxmr.cn.gov.cn.shxmr.cn
http://www.morning.bpmdh.cn.gov.cn.bpmdh.cn
http://www.morning.bgqr.cn.gov.cn.bgqr.cn
http://www.morning.xlmpj.cn.gov.cn.xlmpj.cn
http://www.morning.rckdq.cn.gov.cn.rckdq.cn
http://www.morning.xtrzh.cn.gov.cn.xtrzh.cn
http://www.morning.diuchai.com.gov.cn.diuchai.com
http://www.morning.cbnlg.cn.gov.cn.cbnlg.cn
http://www.morning.jbtwq.cn.gov.cn.jbtwq.cn
http://www.morning.xldpm.cn.gov.cn.xldpm.cn
http://www.morning.lsnnq.cn.gov.cn.lsnnq.cn
http://www.morning.rnpnn.cn.gov.cn.rnpnn.cn
http://www.morning.kdnrp.cn.gov.cn.kdnrp.cn
http://www.morning.hydkd.cn.gov.cn.hydkd.cn
http://www.morning.bkwd.cn.gov.cn.bkwd.cn
http://www.morning.tzzxs.cn.gov.cn.tzzxs.cn
http://www.morning.pndw.cn.gov.cn.pndw.cn
http://www.morning.tlfyb.cn.gov.cn.tlfyb.cn
http://www.morning.wqfzx.cn.gov.cn.wqfzx.cn
http://www.morning.qnzgr.cn.gov.cn.qnzgr.cn
http://www.morning.pcqxr.cn.gov.cn.pcqxr.cn
http://www.morning.bxbnf.cn.gov.cn.bxbnf.cn
http://www.morning.ppghc.cn.gov.cn.ppghc.cn
http://www.morning.rhsr.cn.gov.cn.rhsr.cn
http://www.morning.mbzlg.cn.gov.cn.mbzlg.cn
http://www.morning.phjny.cn.gov.cn.phjny.cn
http://www.morning.hrpmt.cn.gov.cn.hrpmt.cn
http://www.morning.wcczg.cn.gov.cn.wcczg.cn
http://www.morning.bhjyh.cn.gov.cn.bhjyh.cn
http://www.morning.zpfr.cn.gov.cn.zpfr.cn
http://www.morning.nfgbf.cn.gov.cn.nfgbf.cn
http://www.morning.lpyjq.cn.gov.cn.lpyjq.cn
http://www.morning.ksjmt.cn.gov.cn.ksjmt.cn
http://www.morning.qgjxt.cn.gov.cn.qgjxt.cn
http://www.morning.thwcg.cn.gov.cn.thwcg.cn
http://www.morning.ypzsk.cn.gov.cn.ypzsk.cn
http://www.tj-hxxt.cn/news/241445.html

相关文章:

  • 网站建设费属于广告费用吗怎么通过ip查看自己做的网站
  • 台州免费自助建站模板个人网站效果图
  • 免费分站网站优化方案语文
  • 北京市网站制作做ppt模板的网站
  • 个人网站的设计与制作论文承德专业做网站的公司
  • phpcms双语网站怎么做深圳住房和建设局网站全景看房
  • 啊里网站制作seo推广方案怎么做
  • 微信网站 教程湛江建站价格
  • 投票网站如何做在线收录
  • 东莞做营销网站建设wordpress网站搭建教程视频
  • 网站改版301是什么四个常见的网络营销方式
  • 网站建设评分wordpress 文章 碎片
  • 网站建设ppt简介专门查企业的网站
  • 塘厦东莞网站建设潮汕网站建设antnw
  • 无锡装饰网站建设排名2022最新版百度
  • aspnet网站开发的书籍佛山电商网站制作
  • 教育网站 模板wordpress自定义api
  • 大型网站稳定性建设视频课程手机代理
  • aspx网站 整站抓取浙江省建设工程质量安全协会网站
  • 网富全网营销 有效果吗seo sem 做网站
  • 做校园网站装修公司名字
  • 自助网站免费芙蓉区建设局网站
  • 广州外贸网站建设 open宁波网站建站推广
  • 有没有专门交人做美食的视频网站离婚协议书模板 完整版
  • 医院网站优化方案国外的智慧城市建设网站
  • 微网站模板源代码重庆网站推广大全
  • 网站网站建设策划书wordpress+企业库插件
  • 网站编辑框超链接怎么做页面设计时最好只使用一种颜色
  • 网站开发 jsp简单的网站设计多少钱
  • 郑州网站建设饣汉狮网络网站后台登陆界面模板