• Welcome to LusoRobótica - Robótica em Português.
 

[duvida] timer clock output no arduino

Started by TigPT, 22 de January de 2009, 17:55

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

TigPT

Boas.. gostava de saber se alguém me consegue ajudar.

Preciso de fazer um clock em background do código principal num pin do arduino (por acaso quer dois diferentes mas para já um) de um sinal. pode ser um pwm para facilitar mas não tem que ser, basta que seja um on off constante 1010101010 a um ritmo de x miliseconds que eu possa definir.

Não sei se consegui explicar a minha ideia... acho que terei que fazer com interruptions com o timer2 mas não tenho certeza, alguém tem outra ideia ou me pode ajudar?

microbyte

Podes usar um timer como o 555 e fazer correr o código em função de cada "tick".

TigPT

Quote from: microbyte on 22 de January de 2009, 18:00
Podes usar um timer como o 555 e fazer correr o código em função de cada "tick".
Estes clocks vão variar durante o código pois vão controlar velocidade de motores steppers :|

Preciso de conseguir dar stepps (clocks) em background para não ficar o arduino sempre só de volta dos motores!

tr3s

Mesmo após aquele artigo sobre interrupts nao consegues?
Tr3s
Daniel Gonçalves

TigPT

Quote from: tr3s on 22 de January de 2009, 18:52
Mesmo após aquele artigo sobre interrupts nao consegues?

Com aquilo ainda não tentei pois não tenho tempo, altura de exames :P

Mas ei de tentar e deve de resolver, entretanto pode haver outra ideia milagrosa :D

metRo_

Só para ter a certeza tu queres uma PWM com duty-cycle = 50% e depois vais querer variar a frequencia?

TigPT

Não precisa ser de 50% desde que de um pulso (tamanho indefinido) de x em x microsegundos em que x vou variar durante o código.

metRo_

#7
mas tu queres que o tempo que está ligado seja o mesmo que o desligado, certo? e a outra coisa que eu disse, tu quando dizes "Estes clocks vão variar durante o código pois vão controlar velocidade de motores steppers :|" é a frequencia, certo?

TigPT

o tempo de on e off não precisa de ser igual, só preciso que o pulos (subir e descer) ocorra de x em x milisegundos (sim a frequencia), em que x pode ser uma variável do código ou então que eu altere este valor com algum método durante a execução do programa.

metRo_

Tive a ler aquele artigo e vai-te ajudar, alias um dos exemplos que ele dá é fazer o "TOGGLE", não sei como traduzir, talvez inverter o valor de um pin, em que podes defenir a frequência a que ele faz isto.

TigPT

Quote from: metRo_ on 22 de January de 2009, 21:05
Tive a ler aquele artigo e vai-te ajudar, alias um dos exemplos que ele dá é fazer o "TOGGLE", não sei como traduzir, talvez inverter o valor de um pin, em que podes defenir a frequência a que ele faz isto.
ok, obrigado, depois knd tiver tempo tento fazer com aquilo ;)

metRo_

Olha talvez tenha encontrado uma solução:
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010486

QuoteThe TC9400/TC9401/TC9402 are low-cost voltage-to-frequency (V/F)converters utilizing low power CMOS technology. The converters accept a variable analog input signal and generate an output pulse train whose frequency is linearly proportional to the input voltage. The devices can also be used as highly-accurate frequency-to-voltage (F/V)converters,accepting virtually any input frequency waveform and providing a linearly-proportional voltage output. A complete V/F or F/V system only requires the addition of two capacitors,three resistors,and reference voltage.

TigPT

Quote from: metRo_ on 25 de January de 2009, 15:48
Olha talvez tenha encontrado uma solução:
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010486

QuoteThe TC9400/TC9401/TC9402 are low-cost voltage-to-frequency (V/F)converters utilizing low power CMOS technology. The converters accept a variable analog input signal and generate an output pulse train whose frequency is linearly proportional to the input voltage. The devices can also be used as highly-accurate frequency-to-voltage (F/V)converters,accepting virtually any input frequency waveform and providing a linearly-proportional voltage output. A complete V/F or F/V system only requires the addition of two capacitors,three resistors,and reference voltage.
Muito interessante, também acredito que sirva, vou ter que testar assim que acabar os exames... ;)

Obrigado.

metRo_

Estás como eu... A primeira fase acaba quarta, altura em que espero que o meu arduino chegue a casa :)  ;D  :P

bragajam

Boa tarde, n sei se será o sitio mais adequado mas pesquisei o fórum e pareceu-me o mais aproximado do que pretendo saber(era aqui ou criar novo topico). Que é o seguinte:

http://arduino.cc/en/Tutorial/SecretsOfArduinoPWM descreve como alterar a frequencia do PWM do arduino, mas eu queria que alguem me explicasse quais as implicações disto na pratica, e se é uma solução aconselhada ou não( tipo a nivel da estabilidade dos progrmas) pois pelo k li aletra o tempo que as instruções demoram a ser executadas.

Também gostaria de saber de alguem mais experiente que eu se não haverá maneira mais alto nivel de fazer o mesmo.

Atentamente,
Paulo J. M.