主頁 >  其他 > ESP32之 ESP-IDF + Clion 開發環境搭建(一)—— Windows版

ESP32之 ESP-IDF + Clion 開發環境搭建(一)—— Windows版

2021-12-28 12:03:35 其他

本文章 來自原創專欄《ESP32教學專欄 (基于ESP-IDF)》,講解如何使用 ESP-IDF 構建 ESP32 程式,發布文章并會持續為已發布文章添加新內容! 每篇文章都經過了精打細磨!

↓↓↓通過下方對話框進入專欄主頁↓↓↓
CSDN 請求進入專欄       _ O x

是否進入ESP32教學專欄(基于ESP-IDF)?

       確定


ESP-IDF 是由樂鑫Espressif官方提供的一套ESP32系列SoC的物聯網開發套件(Espressif IoT Development Framework)提供了從工程創建,編譯,燒錄,除錯,量產等的完整解決方案,本文將介紹如何在Windows下搭建ESP-IDF開發環境,

敬告:

① 如果你想使用Arduino來開發ESP32,目前可參考的資料較多,請讀者自行查閱,
② 使用Arduino開發ESP32,很難發揮ESP32的全部實力,強烈推薦相關專業人士或技術愛好者轉為 ESP-IDF 開發
③ ESP-IDF是樂鑫官方推薦的SDK,

注意:

下文的 “開發環境”“編程環境” 的含義并非相同
 
編程環境:指代碼撰寫的人機互動環境,例如使Clion IDE或者VS Code等工具對開發環境的耦合和優化,
開發環境:指ESP-IDF工程的建立,配置,編譯,除錯,量產等基礎操作的環境,開發環境不包含編程環境

文章目錄

  • (一)開發環境搭建
    • 一、方法一:使用官方提供的安裝器
      • 1、安裝器簡介
      • 2、安裝器安裝程序
    • 二、方法二,使用命令列安裝
      • 1、安裝 `git for windows`
      • 2、獲取 ESP-IDF
      • 3、安裝所需工具
        • ① 使用PowerShell
        • ② 使用 cmd (命令提示符)
        • ③ 指定 espressif 的 git 服務器
      • 4、檢查前邊的作業是否成功
  • (二)idf.py 基本操作使用
  • (三)【全網獨家】對開發環境的優化,使其更好與IDE耦合
    • 一、鎖定Python路徑
    • 二、鎖定交叉編譯工具鏈路徑
  • (四)【全網獨家】Clion IDE For Windows 下 ESP-IDF 編程環境搭建

在文章開始之前,先感受一下Clion帶來的流暢絲滑的變成體驗吧!

① 絲滑頭檔案


② 絲滑結構體


③ 絲滑提示

(一)開發環境搭建

一、方法一:使用官方提供的安裝器

1、安裝器簡介

為簡化Windows下對ESP-IDF開發環境的安裝,樂鑫官方提供了Windows下ESP-IDF開發環境的快速安裝其器,有在線安裝版和離線安裝版兩個版本,

  • 在線安裝:在線安裝可以安裝 ESP-IDF 的所有版本,在安裝程序中,安裝程式只下載必要的依賴檔案,包括 Git For Windows 安裝器,在線安裝程式會將下載的檔案存盤在快取目錄%userprofile%/espressif 中,而IDF的存放目錄可自定義,

  • 離線安裝:離線安裝程式不需要任何網路連接,安裝程式中包含了所有需要的依賴檔案,包括 Git For Windows 安裝器,

2、安裝器安裝程序

此安裝程式會遵循以下步驟進行安裝:

  1. 安裝必要的組件:
    內置的 Python(多數腳本由python撰寫,需要使用python執行,為防止干擾到其他的python,安裝器會提供一個內置的python)
    交叉編譯器(這是在電腦上編譯ESP32可執行檔案必要的編譯器,由于為在一種平臺上編譯出另一平臺上的可執行檔案,故稱“交叉編譯器”)
    OpenOCD(針對高級用戶,這是ESP32進行JTAG除錯必要的組件,同樣也支持STLink對stm32進行在線除錯)
    CMake 和 Ninja 編譯工具 (這是連接源檔案和交叉編譯器的橋梁工具)
    ESP-IDF (這即為開發包,包含了ESP32系列的庫檔案和例程代碼,以及其他重要的工程依賴項)
  2. 配置相關環境變數
  3. 提供通過命令列快速使用idf工具的快捷方式

然而,官方提供的安裝器并非十全十美,安裝程序中可能會出現各種問題,而且相對第二種方法(命令列)錯誤不容易定位,

因此這里給出一個折中的方法,對于使用安裝器的安裝,優先使用離線安裝器,離線安裝不成功且錯誤很難修復的,使用第二種命令列法在線安裝ESP-IDF,

若使用Windows下官方提供的安裝器,請參考官方文章:https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/windows-setup.html#get-started-windows-tools-installer
下載一個合適版本的安裝器,最好使用離線安裝器,安裝一個合適版本的IDF,(本文發布時,最新穩定版為v4.3.2)

請務必了解:!!!!!!!!

  1. 安裝器默認ESP-IDF放置路徑默認填的是“你的桌面\esp-idf”,強烈不推薦使用此路徑,建議改成"D:\esp-idf"等
  2. 安裝器默認IDF工具安裝路徑默認為“你的個人檔案夾\.espressif”(例如 Windows10 或 Windows11 為“C:\Users\你的用戶名\.espressif”),包含上文除了ESP-IDF其他的組件,此路徑不建議更改!使用默認即可,全部安裝大約占用 800M 左右的儲存空間,
  3. 無論如何,請保證兩者安裝路徑不得包含空格特殊符號非Ascii字符如漢字等,如果你的用戶名包含上述內容也不行,務必更改安裝路徑,如果有疑問,請評論區留言或私信博主,

二、方法二,使用命令列安裝

使用安裝器進行離線安裝不成功且錯誤很難修復的,使用第二種命令列法在線安裝ESP-IDF

1、安裝 git for windows

方法很多,不再贅述,確保git安裝成功且能在命令列中使用

安裝成功

PS D:\> git

usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
           [--super-prefix=<path>] [--config-env=<name>=<envvar>]
           <command> [<args>]

These are common Git commands used in various situations:
	...

安裝失敗,或環境變數未設定

PS D:\> sdsd
sdsd : 無法將“sdsd”項識別為 cmdlet、函式、腳本檔案或可運行程式的名稱,請檢查名稱的拼寫,如
果包括路徑,請確保路徑正確,然后再試一次,

2、獲取 ESP-IDF

進入你想放置ESP-IDF檔案夾的目錄,然后執行以下命令獲取esp-idf(git會自動創建esp-idf檔案夾)

例如:進入目錄D:\,使用cd命令

PS C:\Users\Augtons> cd d:\
PS D:\>

① 例如,獲取4.3.2版本發行版,(在此文章發布時,此為最新的穩定版,可能將來會成為舊版)

PS D:\> git clone -b v4.3.2 --recursive https://github.com/espressif/esp-idf.git esp-idf-v4.3.2

git會自動創建esp-idf-v4.3.2檔案夾

② 再如,獲取master分支(通常不是發行版,也可能不是穩定版,如果你并不確定自己要使用哪個版本,而是僅僅是想要入門ESP32開發,建議使用此命令克隆master分支

PS D:\> git clone --recursive https://github.com/espressif/esp-idf.git

git會自動創建esp-idf檔案夾

如果你想要獲取其他版本,請從ESP-IDF官方github或者gitee查看最新發行版,并使用提供的對應版本的命令列
Github 發行版頁 :https://github.com/espressif/esp-idf/tags
Gitee 發行版頁:https://gitee.com/EspressifSystems/esp-idf/releases

3、安裝所需工具

默認IDF工具安裝路徑默認為“你的個人檔案夾\.espressif”(例如 Windows10 或 Windows11 為“C:\Users\你的用戶名\.espressif”),包含上文除了ESP-IDF其他的組件,雖然官方提供了這個安裝目錄的更改方法,但是此路徑仍然不建議更改

① 使用PowerShell

PowerShell 進入到 esp-idf目錄,路徑和檔案名支持使用Tab補全

PS D:\> cd esp-idf
PS D:\esp-idf\> .\install.ps1

如果系統提示類似下文的資訊,請更改使用命令提示符安裝

PS D:\esp-idf> .\export.ps1

.\export.ps1 : 無法加載檔案 D:\esp-idf\export.ps1,因為在此系統上禁止運行腳本,有關詳細資訊,請參閱 https:/go.microsoft
.com/fwlink/?LinkID=135170 中的 about_Execution_Policies,
所在位置 行:1 字符: 1

Win + R 鍵打開運行,輸入cmd即可打開命令提示符

② 使用 cmd (命令提示符)

cmd與powershell不同的是,cmd切換盤符不能用cd命令,參考第一行

C:\Users\Augtons> d:

D:\> cd esp-idf

D:\esp-idf> install.bat

如果安裝程序很慢,或者中途有無法連接服務器等不順利的情況,請按如下方案進行安裝,

③ 指定 espressif 的 git 服務器

如果安裝程序很慢,或者中途有無法連接服務器等不順利的情況,請指定 espressif 的 git 服務器,

添加一個系統環境變數IDF_GITHUB_ASSETS內容為dl.espressif.com/github_assets

再使用①或②完成下面的作業

4、檢查前邊的作業是否成功

全部安裝成功后,在esp-idf目錄下用cmd執行export.bat

D:\esp-idf> export.bat

如果出現如下輸出,即前邊的作業成功

Done! You can now compile ESP-IDF projects.
Go to the project directory and run:

  idf.py build

(二)idf.py 基本操作使用

創建一個名為NAME的工程

PS xxx\> idf.py create-project NAME

打開menuconfig 工程配置選單

PS xxx\工程根目錄> idf.py menuconfig

編譯

PS xxx\工程根目錄> idf.py build

燒錄

#指定燒錄埠,以COM3為例
PS xxx\工程根目錄> idf.py -p COM3 flash

#自動檢測埠(從最大的開始檢測)
PS xxx\工程根目錄> idf.py flash

監視器(使用Ctrl+]退出監視器)

#指定監視埠,以COM3為例
PS xxx\工程根目錄> idf.py -p COM3 monitor

#自動檢測埠(從最大的開始檢測)
PS xxx\工程根目錄> idf.py monitor

使用組合命令(同樣使用Ctrl+]退出監視器)
idf.py的命令可以組合使用

如:編譯+燒錄+監視

#指定燒錄 & 監視的埠,以COM3為例
PS xxx\工程根目錄> idf.py -p COM3 build flash monitor 

#自動檢測埠(從最大的開始檢測)
PS xxx\工程根目錄> idf.py build flash monitor

對于其他的功能,請使用--help打開幫助,如下
Commands:行之后即為idf.py所有命令,本文不再贅述

PS D:\> idf.py --help

Usage: idf.py [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...

 ESP-IDF CLI build management tool. For commands that are not known to idf.py an attempt
 to execute it as a build system target will be made.

Options:
 --version                       Show IDF version and exit.
 --list-targets                  Print list of supported targets and exit.
 -C, --project-dir PATH          Project directory.
 -B, --build-dir PATH            Build directory.
 -w, --cmake-warn-uninitialized / -n, --no-warnings
                                 Enable CMake uninitialized variable warnings for CMake
                                 files inside the project directory. (--no-warnings is now
                                 the default, and does not need to be specified.) The
                                 default value can be set with the
                                 IDF_CMAKE_WARN_UNINITIALIZED environment variable.

 -v, --verbose                   Verbose build output.
 --preview                       Enable IDF features that are still in preview.
 --ccache / --no-ccache          Use ccache in build. Disabled by default. The default
                                 value can be set with the IDF_CCACHE_ENABLE environment
                                 variable.

 -G, --generator [Ninja|MinGW Makefiles]
                                 CMake generator.
 -D, --define-cache-entry TEXT   Create a cmake cache entry. This option can be used at
                                 most once either globally, or for one subcommand.

 -b, --baud INTEGER              Baud rate for flashing. The default value can be set with
                                 the ESPBAUD environment variable. This option can be used
                                 at most once either globally, or for one subcommand.

 -p, --port TEXT                 Serial port. The default value can be set with the
                                 ESPPORT environment variable. This option can be used at
                                 most once either globally, or for one subcommand.

 --help                          Show this message and exit.

Commands:
 all                    Aliases: build. Build the project.
 app                    Build only the app.
 app-flash              Flash the app only.
 bootloader             Build only bootloader.
 bootloader-flash       Flash bootloader only.
 build-system-targets   Print list of build system targets.
 clean                  Delete build output files from the build directory.
 confserver             Run JSON configuration server.
 create-component       Create a new component.
 create-project         Create a new project.
 efuse_common_table     Generate C-source for IDF’s eFuse fields.
 efuse_custom_table     Generate C-source for user's eFuse fields.
 encrypted-app-flash    Flash the encrypted app only.
 encrypted-flash        Flash the encrypted project.
 erase_flash            Erase entire flash chip.
 erase_otadata          Erase otadata partition.
 flash                  Flash the project.
 fullclean              Delete the entire build directory contents.
 gdb                    Run the GDB.
 gdbgui                 GDB UI in default browser.
 gdbtui                 GDB TUI mode.
 menuconfig             Run "menuconfig" project configuration tool.
 monitor                Display serial output.
 openocd                Run openocd from current path
 partition_table        Build only partition table.
 partition_table-flash  Flash partition table only.
 post_debug             Utility target to read the output of async debug action and stop
                        them.

 python-clean           Delete generated Python byte code from the IDF directory
 read_otadata           Read otadata partition.
 reconfigure            Re-run CMake.
 set-target             Set the chip target to build.
 show_efuse_table       Print eFuse table.
 size                   Print basic size information about the app.
 size-components        Print per-component size information.
 size-files             Print per-source-file size information.
 uf2                    Generate the UF2 binary with all the binaries included
 uf2-app                Generate an UF2 binary for the application only

(三)【全網獨家】對開發環境的優化,使其更好與IDE耦合

我們知道,在之前我們使用idf.py之前都執行了一個export.bat,實際上,這個bat檔案有擴充環境變數的行為,擴充之后,才能正常使用idf.py工具,

不幸的是,export.bat對環境變數的擴充并非永久的,這是樂鑫官方防止因為此擴充而影響到原本的環境變數,因此,樂鑫要求每次手動執行export.bat來臨時擴充環境變數,這個擴充只能影響當前命令列視窗,視窗一旦關閉,下次使用又要執行export.bat來手動擴充,

這樣做雖然有好處,但是由于此方案只對當前命令列視窗生效,因此,這不利于在IDE中使用ESP-IDF,因為IDE并沒有命令列視窗這個概念,(即使你在IDE自帶的終端中執行了export.bat,但IDE的其他服務如加載CMake專案等操作并不在你手動執行擴充的終端里執行,因此這套方案對IDE的支持并不現實)你可能曾經嘗試在IDE中加載ESP-IDF工程,但是以失敗告終,原因就在于此

網上的其他方法比如在Windows系統環境變數里加入export.bat擴充的那些路徑,但是這樣做缺點很明顯,這樣做是永久設定環境變數,因此會影響到其他地方,例如,你的電腦里有自己的Python環境,再將ESP-IDF內置的Python環境加入環境變數會沖突(系統只會使用相對靠前的路徑)因此,這方法雖然可行,但是影響過大,

博主花費了一段時間,閱讀esp-idf的cmake腳本源代碼之后,分析出了一種更好的方法,

下面介紹這種全網首創的方法,鎖定相關路徑,

一、鎖定Python路徑

打開esp-idf下的tools\cmake檔案夾,
例如D:\esp-idf-v4.3.2\tools\cmake\

分別打開build.cmakeproject.cmake,搜索set_default,找到類似下方的文本

注意:不同版本的esp-idf中這句話的位置可能不同,甚至可能只在一個檔案中出現,但是不用擔心,只要保證把所有的地方找到并按下文操作即可

如果你的電腦里有vscode,可以直接用vscode打開esp-idf下的tools\cmake目錄,直接搜索set_default再逐個點開檢查即可,

set_default(python "python")set_default(PYTHON "python") 后邊引號中的python改成esp-idf內置的python的 絕對路徑,在.espressif檔案夾內

參考上文 “(一) - 一 - 2 安裝器安裝程序”
“(一) - 二 - 3 —— 安裝所需工具”

例如若路徑為C:\Users\用戶名\.espressif\python_env\idf4.3_py3.8_env\Scripts\python.exe

set_default(python "python")
	↓改為
set_default(python "C:\Users\用戶名\.espressif\python_env\idf4.3_py3.8_env\Scripts\python.exe")
/******************/
set_default(PYTHON "python")
	↓改為
set_default(PYTHON "C:\Users\用戶名\.espressif\python_env\idf4.3_py3.8_env\Scripts\python.exe")

請按照自己的實際情況來,

二、鎖定交叉編譯工具鏈路徑

打開esp-idf下的tools\cmake檔案夾,
例如D:\esp-idf-v4.3.2\tools\cmake\

找到所有形如toolchain-esp**.cmake的檔案,打開

toolchain-esp32.cmake舉例,檔案很短,有如下幾行

set(CMAKE_C_COMPILER 	xtensa-esp32-elf-gcc)
set(CMAKE_CXX_COMPILER 	xtensa-esp32-elf-g++)
set(CMAKE_ASM_COMPILER 	xtensa-esp32-elf-gcc)

我們也要將xtensa-esp32-elf-gcc等替換成其絕對路徑,例如這個工具鏈可能在
C:\Users\用戶名\.espressif\tools\xtensa-esp32-elf\esp-2020r3-8.4.0\xtensa-esp32-elf\bin\目錄下

因此

set(CMAKE_C_COMPILER 	C:\Users\用戶名\.espressif\tools\xtensa-esp32-elf\esp-2020r3-8.4.0\xtensa-esp32-elf\bin\xtensa-esp32-elf-gcc.exe)
set(CMAKE_CXX_COMPILER 	C:\Users\用戶名\.espressif\tools\xtensa-esp32-elf\esp-2020r3-8.4.0\xtensa-esp32-elf\bin\xtensa-esp32-elf-g++.exe)
set(CMAKE_ASM_COMPILER 	C:\Users\用戶名\.espressif\tools\xtensa-esp32-elf\esp-2020r3-8.4.0\xtensa-esp32-elf\bin\xtensa-esp32-elf-gcc.exe)

改好保存即可

其余的以此類推,其余的所有工具鏈都在C:\Users\用戶名\.espressif\tools\下,按照檔案名找即可,本文不在贅述,改好保存即可

(四)【全網獨家】Clion IDE For Windows 下 ESP-IDF 編程環境搭建

本文默認大家已經成功安裝Clion,安裝方法自行查閱,很簡單,本文不再贅述,

參考本文(二)idf.py基本操作使用,創建一個工程,
用Clion打開這個工程,選擇加載CMake專案(無彈窗則自動加載)

加載程序中可能出現找不到cmake檔案的錯誤,如下圖,是環境變數中缺少IDF_PATH原因導致,可以按照以下方法完成修復,

下文之所以后邊分了兩種情況,是因為esp32的ESP-IDF和esp8266的RTOS SDK 都用到了這個IDF_PATH環境變數,可能會造成沖突,請讀者根據自己的情況選擇合適的方法,

電腦里沒有 ESP8266 RTOS SDK 且 之后不打算使用RTOS SDK開發esp8266的,可永久指定IDF_PATH路徑,一勞永逸



電腦里已經安裝過 ESP8266 RTOS SDK 或 之后打算使用RTOS SDK開發esp8266的,并與ESP-IDF共存的,需要打開該工程根目錄下的CMakeLists.txt,指定未找到的cmake檔案的絕對路徑


將前邊的$ENV{IDF_PATH}替換成真實路徑,例如

include(D:\esp-idf\tools\cmake\project.cmake)

或者,參考方法一,分別建立IDF32_PATHIDF8266_PATH兩個環境變數,分別改成esp-idf路徑和esp8266-rtos-sdk的路徑,之后在此CMakeLists.txt改成如下即可

include($ENV{IDF32_PATH}\tools\cmake\project.cmake)

如果你是按照前文所述方法的安裝的esp-idf,則不再會有其他的錯誤,如果仍然有錯誤,歡迎評論區留言或私信,祝大家搭建順利!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/395382.html

標籤:其他

上一篇:facebook鏈接的檢查串列是FB頁面還是FB個人資料?

下一篇:帶你從零玩轉云服務器

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more