Display 7 segmentos
Pedro Henrique Southier
Pato Branco, Abril 2014
INTRODUÇÃO
Utilizando do programa Code Composer e um kit launcher, foi desenvolvido um projeto (código e montagem) de um display de sete segmentos controlado por chaves de seleção.
PROCEDIMENTOS PARA ELABORAÇÃO DO CÓDIGO
O cálculo para definir o valor dos resistores para limitar a corrente no display de sete segmentos foi feito a partir da condições dadas pelo datasheet do msp430 que está mostrado na figura 1. Com uma corrente de 6mA, e utilizando a equação 1 e com algumas manipulações algébricas, definimos os valores dos resistores como sendo 183Ω, porém foram utilizados resistores de 200Ω.
Equação 1
Figura 1 – parâmetros das portas de saída.
O código descrito na figura 3 foi feito para acionar o display de sete segmentos e mostrar uma sequência de números de 0 a F em hexadecimal. Esses números são selecionados por 4 chaves de seleção e a tabela verdade das chaves esta mostrada abaixo.
Figura 2 – tabela verdade chaves
#include
#define ZERO 0X3F;
#define UM 0X06;
#define DOIS 0X5B;
#define TRES 0X4F;
#define QUATRO 0X66;
#define CINCO 0X6D;
#define SEIS 0X7D;
#define SETE 0X07;
#define OITO 0X7F;
#define NOVE 0x6F;
#define A 0X77;
#define B 0X7C;
#define C 0X39;
#define D 0X5E;
#define E 0X79;
#define F 0X71;
/*
* main.c */ int main(void) { WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer P1DIR &= ~(BIT0+BIT1+BIT2+BIT3); // P1 ENTRADA P1DIR |= BIT4+BIT5+BIT6; // P1 SAIDA P1OUT &= ~ (BIT4+BIT5+BIT6); // NIVEL BAIXO P2DIR = 0XFF; P1REN |= BIT0+BIT1+BIT2+BIT3; //HABILITA RESITORES DE PULL UP E PULL DOWN P1OUT &= ~ (BIT0+BIT1+BIT2+BIT3);//HABILITA RESISTORES DE