aniblue07_bendlr_back.gifaniblue07_bendlr_next.gif

Placa de desenvolvimento STK-300

 

 Esta placa, trata-se de uma das muitas placas utilizadas para desenvolvimento de aplicações com processadores da família AVR. Inclui muitas possibilidades, tais como entradas 8 analógicas de 10bits, leds de sinalização de porta, switchs para alteração de entradas digitais, porta de série, porta de programação ISP bem como slot de expansão de memória, para além disso é extremamente configurável. A programação desta, era feita através do software AVR-ISP, que se revelou quase sempre sem bugs e muito fácil de utilizar. No entanto, o hardware para a sua programação embora simples, teve que ser feito por nós, com base num esquema encontrado na Internet (www.lancos.com). Para tal, e para evitar problemas posteriormente, pois sabiamos que o programador iria ser intensivamente utilizado, resolvemos fazer uma placa para este.

placa do programador

O esquema bem como o acetato desta placa pode ser consultado em anexo 4. Este programador é ligado à porta paralela do PC e à porta ISP da placa do AVR.

Embora inicialmente esta placa tenha vindo munida de um cristal de 4MHz que era o responsável pela cadência do processador, lemos na Internet que era possível fazer o overclock sem inconvenientes para 6MHz. No entanto não o fizemos de início, pois a taxa de refrescamento da memória externa, era variável conforme o cristal, e como não tinhamos a certeza nem era necessário na altura, decidimos não fazer o overclock. No entanto, com o passar do tempo e com o adensar do código, decidimos fazer então a alteração uma vez que não iriamos utilizar a memória externa para guardar o mapa do mundo como estava inicialmente previsto. No entanto a alteração não foi para 6MHz mas sim para 8MHz por sugestão do Prof. Paulo Costa. De facto o micro funcionou bem como previsto, no entanto todos os parâmetros que eram afectados pela cadência do cristal tiveram que ser alterados, tais como os valores dos registos que definiam a velocidade da porta de série, valores da velocidade de conversão do A/D, entre outros. Ao fazermos esta alteração decidimos também descer a taxa de amostragem do A/D visto que este estava a amostrar a uma velocidade superior à aconselhada. Visto estarmos a utilizar ciclos de 30ms no programa do AVR (mais pormenores no capítulo do software), decidimos utilizar uma frequência de amostragem da ordem dos 67kHz. Dado que  a velocidade de cada conversão é da ordem dos 28 ciclos de relógio, e tratando-se de uma velocidade de relógio de 8MHz, então em cada ciclo do nosso programa poderia realizar até 8571 amostragens.

Quanto à utilização das portas desta placa, as únicas portas utilizadas são a A e a E. A Porta E tem ligada os bits correspondentes aos leds e aos switchs da placa distribuidora. O pinout é:

 

Pinout da porta E do AVR

 

Esta porta no entanto, alimenta também os integrados da placa distribuidora. A porta A por seu lado, possui a afamada porta de série por software. Esta porta implementada por nós para debug do programa do sistema. É controlada através de interrupções geradas no AVR. No entanto estes pormenores serão dados no capítulo da descrição do software. O seu pinout é o seguinte:

 

Pinout da porta A do AVR

aniblue07_bendlr_back.gifaniblue07_bendlr_next.gif