Pular para o conteúdo principal

Laboratório 01

Atividade em Construção

A documentação desta atividade de laboratório está em processo de construção e por isso pode estar incompleta.

Utilize como base a descrição apresentada no Moodle da disciplina.

TarefaTemplateInícioFimConteúdo
LAB01Template 0125-Aug-202501-Sep-2025Revisão da programação em C;

Conteúdo

GitHub e Revisão da programação em C; Ambiente de desenvolvimento;

  • Uso do GitHub;
  • Crie uma organização no GitHub;
  • Adicione os membros do seu grupo;
  • Promova o professor como owner;
  • Ambiente de desenvolvimento;
  • Comandos básicos, git e GitHub;
  • Revisão da programação em C;

Verifique o seu ambiente de desenvolvimento

Git is the most widely used source-code management tool among professional developers.

  • Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
winget install --id Git.Git -e --source winget

Configurações do git:

git config --list --show-origin
Configure a ferramenta git

Configure o nome de usuário para todos os repositórios locais ligados às suas transações de commit:

git config --global user.name "Your Name"

Configure o email de usuário para todos os repositórios locais ligados às suas transações de commit:

git config --global user.email "you@example.com"

É recomendado verificar se a instalação do seu Git não está realizando nenhuma transformação entre LFs e CRLFs.

git config --global core.autocrlf false

Configure o git para usar o Visual Studio Code como editor padrão para tarefas como escrever mensagens de commit ou rebases interativos

git config --global core.editor "code --wait"

Liste as configurações aplicadas:

git config --list --show-origin

STM32CubeMX is an initialization code generator.

  • STM32CubeMX is a graphical tool that allows a very easy configuration of STM32 microcontrollers and microprocessors, as well as the generation of the corresponding initialization C code for the Arm® Cortex®-M core or a partial Linux® Device Tree for Arm® Cortex®-A core, through a step-by-step process.

Crie um novo repositório com base no template do LAB01

Escolha o Grupo e entre com o comando abaixo para criar o repositório no GitHub:

Cole o comando abaixo no prompt aberto na pasta de trabalho!

Use o comando abaixo para criar o repositório no GitHub com base no template do laboratório LAB01:

gh repo create ELT73A-S22-2025-2-A/LAB01 --private -p ELT73A-LAB-TPL/LAB01 -c

Acesse o diretório do repositório clonado:

cd LAB01

Abra o repositório clonado no VS Code:

code . --profile "STM32"

Requesitos

C:\msys64\msys2_shell.cmd -ucrt64
pacman -Syu
pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain

VScode com compilador GCC e o depurador GDB

Configure o Visual Studio Code para usar o compilador GCC e o depurador GDB

pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain

Check your MinGW installation

C:\msys64\ucrt64\bin

Verifique a versão do gcc e gdb.

gcc --version
gdb --version

Como formatar o seu código em C no VScode

Como formatar o seu código em C no VScode

Escolha e configuração de temas no VScode

Escolha e configuração de temas no VScode

code --list-extensions --profile "C/C++"
.vscode/extensions.json
{
"recommendations": [
"formulahendry.code-runner",
"ms-vscode.cmake-tools",
"ms-vscode.cpptools",
"ms-vscode.cpptools-extension-pack",
"ms-vscode.cpptools-themes",
"pkief.material-icon-theme",
"yzhang.markdown-all-in-one"
// Add other relevant extensions
]
}
.vscode/settings.json
{
"workbench.iconTheme": "material-icon-theme",
"editor.formatOnSave": true,
"C_Cpp.default.compilerPath": "C:/msys64/ucrt64/bin/gcc.exe",
"terminal.integrated.defaultProfile.windows": "Command Prompt",
"editor.formatOnPaste": true,
"[c]": {
"editor.defaultFormatter": "ms-vscode.cpptools"
},
"[markdown]": {
"editor.defaultFormatter": "yzhang.markdown-all-in-one"
}
}
mkdir helloworld
cd helloworld
code .
#include <stdio.h>

int main() {
printf("Hello World!");
return 0;
}
git init
git add .
git commit -m "First Commit!"

If you have a local Git repository you want to push to GitHub, you can use:

gh repo create ELT73A-S22-2025-2-X/helloworld --source=. --public --push

Description of the repository

gh repo edit -d "Description of the repository"

Repository home page URL

gh repo edit -h "https://ruseleredu.github.io/stm32doc/"

Make the repository available as a template repository

gh repo edit  --template

Uso do GitHub CLI

Create a new remote repository in a different organization

gh repo create ELT73A-S22-2025-2-X/LAB01 --public -c -l mit --add-readme -g C

Uso do git e GitHub

Instruções TODO

Esta atividade de laboratório tem como objetivo verificar a configuração adequada do ambiente de desenvolvimento para o STM32.

  • Crie uma organização baseada no nome do grupo;
  • Adicione os membros do seu grupo a organização;
  • Adicione o professor como membro da organização;
  • Crie um projeto em branco na pasta EmptyTest;
  • Importe um projeto em branco na pasta CubeMxTest;
  • Commit e push dos arquivos gerados;
  • Envie o link da organização (hyperlink);
  • Envie o link do repositório no GitHub (hyperlink);

Avaliação TODO

  • Crie uma organização baseada no nome do grupo - 10%
  • Adicione os membros do seu grupo a organização - 10%
  • Adicione o professor como membro da organização - 10%
  • Crie um projeto em branco na pasta EmptyTest - 25%
  • Importe um projeto em branco na pasta CubeMxTest - 25%
  • Envie o link da organização e do repositório no GitHub (hyperlink) - 20%