Академический Документы
Профессиональный Документы
Культура Документы
ATIVIDADE PRÁTICA
CURITIBA-PR
2020
Estabelecendo estrutura principal e bibliotecas
#include <stdint.h>
#include <stdbool.h>
#include "inc/hw_memmap.h"
#include "driverlib/debug.h"
#include "driverlib/gpio.h"
#include "driverlib/sysctl.h"
Atividade 4
a) Fazer o Led vermelho piscar
Programa Base:
#include <stdint.h>
#include <stdbool.h>
#include "inc/hw_memmap.h"
#include "driverlib/debug.h"
#include "driverlib/gpio.h"
#include "driverlib/sysctl.h"
void main(void)
{
volatile uint32_t x;
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);//habilita o clock
de um periférico
while(!SysCtlPeripheralReady(SYSCTL_PERIPH_GPIOF))//espera até o
clock ser habilitado
{
}
GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1); //
Led Vermelho
while(1){
GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1, 0x2
for(x=0;x<200000;x++);
GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1, 0x0);//apaga o
pino
for(x=0;x<200000;x++);//dellay
}
}
b) Aumentar a frequência que pisca o LED
Para isto foi diminuído o delay contidos nas linhas de “For”, com isto os ciclos entre uma
operação e outra ficaram mais rápidas, fazendo com que a frequência aumentasse, neste
item temos que cuidar para não aumentar demasiadamente a frequência ao ponto.
Para esta etapa foi utilizado da seguinte forma:
for(x=0;x<20000;x++);//dellay Com este tempo o Led picou tão rápido que ficou
quase imperceptível, quando alterado para:
for(x=0;x<90000;x++); ficou mais evidente os ciclos de on e Off do Led vermelho.
while(1){
for(x=0;x<90000;x
for(x=0;x<90000;x++);//dellay
Para esta etapa, tendo em vista que foi solicitado apenas acender os Leds, acabamos por
deixar um tempo maior entre o processo de ligar, desta forma, podendo ser observado a
sequência de acendimento solicitada.
while(1){
}
Tarefa 5 – Escrever número no display de 7 segmentos
Conecte o display de 7 segmentos do kit de vocês (catodo comum) e faça-o piscar os números
de 0 até 9.