
рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░!
рдЖрдЬ рд╣рдо рдПрдХ рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рд╕реБрдВрджрд░ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореБрдХреНрдд рд╡рд┐рдХрд╛рд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдПрдХ рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред
рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдкрд░ рдирдП рд╕рд┐рд░реЗ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдЙрдмрдВрдЯреВ 16.04 xenial рдбреЗрд╕реНрдХрдЯреЙрдк x64 рдХреЗ рд╕рд╛рде рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдпрд╣ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рд╣реИред
рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ (рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ STM32F429 рдирд┐рдпрдВрддреНрд░рдХ рдФрд░ STM32F429DISCO рджреЗрд╡рдмреЛрд░реНрдб рд╣реИ), рдЖрдкрдХреЛ рдЗрд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд╣реА рд░рд╛рд╕реНрддреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╛рддрд╛ рд╣реИред
рдЕрдЧрд░ рддреИрдпрд╛рд░ рд╣реИ, рддреЛ рдЪрд▓реЛ рдЪрд▓рддреЗ рд╣реИрдВ
рдХрд░реНрд▓ рд╕реНрдерд╛рдкрдирд╛
sudo apt-get install curl
Vscode рд╕реНрдерд╛рдкрдирд╛
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/ sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list' sudo apt-get install apt-transport-https sudo apt-get update sudo apt-get install code
рд╣рд╛рде рд╕реЗ рдХреЛрдИ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
sudo apt-get install gcc-arm-none-eabi sudo apt-get install gdb-arm-none-eabi
Openocd рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
sudo apt-get install openocd
рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ рдФрд░ vscode рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
Vscode рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ code
рдХрдорд╛рдВрдб рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВред
рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдЕрдиреБрднрд╛рдЧ рдкрд░ рдЬрд╛рдПрдВ (Ctrl + Shift + X) ред
рд╣рдо рдирд┐рдореНрди рдкреНрд▓рдЧрдЗрдиреНрд╕ рдЦреЛрдЬрддреЗ рд╣реИрдВ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
- рдХреЛрд░реНрдЯреЗрдХреНрд╕-рдбрд┐рдмрдЧ marus25 рджреНрд╡рд╛рд░рд╛ред
- Microsoft рд╕реЗ C / C ++ ред
рдлрд╝рд╛рдЗрд▓ / рдУрдкрди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╝реЛрд▓реНрдбрд░ рдЦреЛрд▓реЗрдВ ред
рдбреАрдмрдЧ рд╕реЗрдХреНрд╢рди (Ctrl + Shift + D) рдкрд░ рдЬрд╛рдПрдВ ред
рдбреНрд░реЙрдкрдбрд╛рдЙрди рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рд╣рдо рдЯреЗрдХреНрд╕реНрдЯ рдиреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред
рд╣рдо рдЗрд╕рдХреЗ рдмрдЧрд▓ рдореЗрдВ рд╕реНрдерд┐рдд рдЧрд┐рдпрд░ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рдбрд┐рдмрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЗрдиреВ рдкреЙрдк рдЕрдк рд╣реЛрддрд╛ рд╣реИ, рдХреЙрд░реНрдЯреЗрдХреНрд╕-рдбрд┐рдмрдЧ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ ред
рдПрдХ рдЫрд┐рдкреА рд╣реБрдИ .vscode рдлреЛрд▓реНрдбрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд▓реЙрдиреНрдЪ рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╛рдЗрд▓ред json рдбрд┐рдмрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдИ рдЧрдИ рд╣реИ ред
рдпрджрд┐ рдпрд╣ рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рдпрдВ рдирд╣реАрдВ рдЦреБрд▓рддреА рд╣реИ, рддреЛ рдЗрд╕реЗ рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рд╕реЗ рдЦреЛрд▓реЗрдВ: рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рд╕реЗрдХреНрд╢рди (Ctrl + Shift + E) рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреЗрдбрд╝ рдореЗрдВ рдЪреБрдиреЗрдВред
Openocd рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗрдЯ рдХрд░реЗрдВ:
"configurations": [ { "name": "openocd", "request": "launch", "type": "cortex-debug", "cwd": "${workspaceRoot}", "servertype": "openocd", "executable": "build/lol.elf", "svdFile": "STM32F429.svd", "configFiles": [ "/usr/share/openocd/scripts/board/stm32f429discovery.cfg" ] } ]
рдЕрдВрддрд┐рдо рддреАрди рдЧреБрдг: рдпреЛрдЧрд┐рдиреА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд╕реНрдерд╛рди, svd рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд╕реНрдерд╛рди, рдУрдкрдирдХрд╛рдб рдХреЗ рд▓рд┐рдП рд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдорд╛рд░реНрдЧ, рдЕрдиреБрдХреВрд▓рди рдпреЛрдЧреНрдп рд╣реИред
рд╣рдо рд▓реЙрдиреНрдЪред рдЬрд╕рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рдбрд┐рдмрдЧ рд╕реЗрдХреНрд╢рди рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ, рд╡рд╣рд╛рдВ рд╣рдо рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдбреНрд░реЙрдк-рдбрд╛рдЙрди рдореЗрдиреВ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗред
рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рд╕реЗрдХреНрд╢рди рдореЗрдВ рдФрд░ .vscode рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рд▓реМрдЯрддреЗ рд╣реИрдВ , рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдирд╛рдордХ рдПрдХ рдирдИ рдлрд╛рдЗрд▓ рдЬреЛрдбрд╝реЗрдВред рдЗрд╕реЗ рдЦреЛрд▓реЗрдВ, рдЗрд╕реЗ рдЦреЛрд▓реЗрдВ, рд╡рд╣рд╛рдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд┐рдЦреЗрдВ:
{ "cortex-debug.armToolchainPath": "/usr/bin", "cortex-debug.openocdPath": "/usr/bin/openocd" }
рдЗрд╕рдХреЗ рдмрд╛рдж, .vscode рдореЗрдВ рдПрдХ рдФрд░ c_cpp_properties.json рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝реЗрдВ, рдЗрд╕реЗ рдЦреЛрд▓реЗрдВ рдФрд░ рд╡рд╣рд╛рдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд┐рдЦреЗрдВ:
{ "configurations": [ { "name": "vscode_stm32_c_cpp_properties", "compilerPath": "/usr/bin/arm-none-eabi-gcc", "includePath": [ "${workspaceRoot}/Inc/", "${workspaceRoot}/Drivers/CMSIS/Include/", "${workspaceRoot}/Drivers/CMSIS/Device/ST/STM32F4xx/Include/" ], "defines": [ "STM32F429xx" ], "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "gcc-x64" } ], "version": 4 }
F5 рджрдмрд╛рдХрд░ , рдЖрдк рдбрд┐рдмрдЧрд┐рдВрдЧ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ рддрд╛рдХрд┐ рдпреЛрдЧрд┐рдиреА-рдлрд╝рд╛рдЗрд▓ рд╕рд╣реА рдЬрдЧрд╣ рдкрд░ рд╣реЛ)ред
