Testes de Programas no uVision
Por: farney. • 16/6/2019 • Trabalho acadêmico • 981 Palavras (4 Páginas) • 149 Visualizações
Programas no uVision 2
Pisca LED - blink.c
#include <AT89X52.H>
// Prototipos das funções
void delay(void);
// Inicio do codigo
void main()
{
while(1)
{
P0_0 = 0; // Liga o LED
delay();
P0_0 = 1; // Desliga o LED
delay();
}
}
void delay(void)
{
int i;
for (i = 0; i < 30000; i++);
}
____________________________________________________________________________________________
/*
GPIO_1. Exemplo para ligar os LEDs conectados em P0.1, P0.3, P0.5 e P0.7 fazendo acesso aos bits
individuais.
*/
#include <AT89X52.H>
void main()
{
while(1)
{
P0_7 = 0;
P0_6 = 1;
P0_5 = 0;
P0_4 = 1;
P0_3 = 0;
P0_2 = 1;
P0_1 = 0;
P0_0 = 1;
}
}
____________________________________________________________________________________________
/*
GPIO_2. Exemplo para mostrar escrita de byte na Porta 0. Repetir a operação do GPIO_1, porém
escrevendo diretamente na porta 0.
*/
#include <AT89X52.H>
void main()
{
while(1)
{
P0 = 0x55;
}
}
____________________________________________________________________________________________
/*
GPIO_3.1 Exemplo para ligar e desligar um LED através de uma chave. O LED está ligado em P0.0 e a
chave em P3.2
*/
#include <AT89X52.H>
void main()
{
P3_2 = 1; // P3.2 como entrada
while(1)
{
if (P3_2 == 0) // Chave fechada?
{
P0_0 = 0; // Sim. Liga o LED
}
else
{
P0_0 = 1; // Não. Desliga o LED
}
}
}
____________________________________________________________________________________________
/*
GPIO_3.2. Repita o exemplo anterior, porém usando DEFINE para os pinos de IO.
*/
#include <AT89X52.H>
#define BOTAO P3_2
#define LED P0_0
#define LIGADO 0
#define DESLIGADO 1
#define FECHADO 0
#define ABERTO 1
void main()
{
BOTAO = 1; // P3.2 como entrada
while(1)
{
if (BOTAO == FECHADO)
{
LED = LIGADO;
}
else
{
LED = DESLIGADO;
}
}
}
____________________________________________________________________________________________
/*
GPIO_4. Ligar e desligar dois LEDs através de duas chaves. Um LED está ligado em P0.0 e o outro em
P0.1. Uma chave está ligada em P3.2 e a outra em P3.3. A chave em P3.2 controla o LED em P0.0 e a
chave em P3.3 controla o LED em P0.1. Usar DEFINE para os pinos de IO.
*/
#include <AT89X52.H>
#define BOTAO_1 P3_2
#define BOTAO_2 P3_3
#define LED_1 P0_0
#define LED_2 P0_1
#define LIGADO 0
#define DESLIGADO 1
#define FECHADO 0
#define
...