Introdução

Referências

    Calendário Avaliação Microcontrolador Manuais Instalar Code Warrior Tutorial Code Warrior Debug Code Warrior Comentários nos programas

1 - Pisca LED

    Roteiro 1 Programa LED RGB

2 - GPIO

    Roteiro 2 Programa 8 LEDs Programa Push Buttons Macros GPIO Programação com GPIO

3 - ARM I

    Roteiro 3 ARM Cortex Programa em Assembly Programa Misto ARM e C

4 - ARM II

    Roteiro 4 Acessos à memória Visualização no osciloscópio Programa Misto ARM e C

5 - Display LCD

    Roteiro 5 Display LCD Caracteres especiais

6 - UART

    Roteiro 6 Comunicação Serial Tutorial Terminal Configuração UART0 Distribuição do Clock

7 - Conversão ASCII

    Roteiro 7 Conversão ASCII Acesso em vetores - C Funções LCD e UART

8 - Interrupção SysTick

    Roteiro 8 Esclarecimentos Questões Funções LCD e UART

9 - Interrupção UART-RX

    Roteiro 9 Leitura dos botões Controlador NVIC Esclarecimentos Funções LCD e UART

10 - Buffer Circular

    Roteiro 10 Buffer Circular Conversão ASCII Esclarecimentos Funções LCD e UART

11 - PWM

    Roteiro 11 PWM e Módulo TPM

12 - Input Capture

    Roteiro 12 Input Capture

13 - Conversor AD

    Roteiro 13 Conversor AD

Projeto

    Roteiro do projeto

EA871-2015 - Laboratório de Programação Básica de Sistemas Digitais

Programa do Curso - Calendário

Critério de Avaliação

Instalação do Code Warrior

Orientação de comentários

Manuais e Referências

Shield, Freedom, MCU, Cortex M0+

CodeWarrior - Como executar o seu primeiro programa

Tutorial para depuração com breakpoints e monitoramento de variáveis e memória

Roteiro 1 - Introdução, programa de piscar LEDs Verde e Vermelho

Programa Piscar LED Vermelho do LED RGB

Roteiro 2 - GPIO - acender 8 LEDs e ler 3 botões de pressão

Programa para a leitura dos 3 botões de pressão

Programa para acendimento dos 8 LEDs vermelhos

MKL25Z4.h Definições da GPIO

GPIO - Princípios e programação

Roteiro 3 - Introdução ao assembler do KL25 - instruções Thumb - ARM-Cortex-0

ARM Cortex M0+

Programa em Assembly - Pisca LED vermelho

Programa "pisca LED R" misto C e Assembly -- referência para os experimentos 3 e 4

Roteiro 4 - Assembly - Ciclos e execução das instruções

Exemplo de análise de acessos memória de programa em ASM

Como visualizar o clock e onda quadrada no osciloscópio

Roteiro 5 - Display LCD

Funcionamento da interface com display LCD

Display LCD – Criando caracteres especiais

Roteiro 6 - UART

Comunicação Serial Assíncrona - Conceitos Básicos

Tutorial sobre como configurar o terminal

Configuração da UART0 do KL25

Distribuição clock do KL25

Roteiro 7 - Cronômetro - impressão de variável inteira

Conversão inteiro (com sinal) para ASCII

Cuidado com acessos de escrita fora de vetores e strings.

Organização das funções do LCD e UART

Roteiro 8 - Interrupção Systick

Cronômetro com SysTick - Esclarecimentos

Perguntas para estudo

Roteiro 9 - Interrupções Receptor UART0 e Systick para leitura chaves por máquina de estado

Organizando a interrupção SysTick para leitura dos 3 botões de pressão

Controlador NVIC e Interrupção UART0 - conceitos

Roteiro 10 - Buffer Circular - Interrupção TX UART0 - Produtor Consumidor

Buffer circular de transmissão - Processos produtor - consumidor - condição de corrida

Melhorando conversão inteiro para ASCII

Roteiro 11 - PWM - controle do motor

Módulo TPM - Timer e PWM

Roteiro 12 - Input Capture

Input Capture - Principio de funcionamento

Roteiro 13 - Conversor AD - Voltímetro

Funcionamento do conversor AD

Roteiro do Projeto Final