Na ultima postagem sobre o Picaxe comentei que pretendia compra um para testá-lo e aprender sobre ele. Pois bem, comprei um 08M, o mais simples de todos com exceção do picaxe 08.
A montagem que descrevo aqui é bastante simples, mas não deixa de ser útil para aqueles, que como eu, estão começando a programar o picaxe. A idéia é receber o sinal 0 a 5v de um potenciômetro através de uma entrada analógica que em 10 bits retorna um valor de 0 a 1023 (2^10 = 1024 valores possíveis), mudar esse valor para uma escala de 75 a 225 e usando a função "servopos pino, valor”, aplicá-lo ao servo ligado ao pino 4 do picaxe através de um resistor de 330R, recomendado pelo manual.
O diagrama é mostrado no vídeo. Dependendo da marca do servo utilizado existe uma variação das cores dos fios de conexão. O positivo normalmente é vermelho o negativo preto ou marrom e o fio de sinal amarelo ou branco. Pra garantir é melhor pesquisar pelo modelo do servo. O potenciômetro pode ser de qualquer valor.
Um cuidado especial deve ser tomado com a alimentação do picaxe. Inverter positivo e negativo significa queimá-lo. Não é aconselhável, também, usar tensões acima de 5v.
O código:
O código:
symbol pot_value = w1
symbol servo_value = w2
init: servo 4,75 ; inicializa o servo
main: 'loop principal
READADC10 2, pot_value ' le o valor do potenciometro ligado ao pino 2 e armazena em pot_value
pot_value = pot_value * 5 / 34 ' mudando da escala lida no pot 0 - 1023 para 75 a 225 aprox
servo_value = pot_value + 75
servopos 4,servo_value 'manda o valor para o servo no saida 4 do picaxe (pino 3 do CI)
goto main 'fim do loop principal