domingo, 17 de agosto de 2014

Interrupção no Arduino

    Recentemente tive o prazer de fazer um mini-curso sobre Arduino ministrado pelo PET de Mecatrônica/BSI da minha Faculdade  IFET/jf. Nesse evento tive uma ótima oportunidade de dar uma reciclada na forma de programar. Aprendi muito! E uma item em especial que destaco e justamente sobre o uso da interrupção com o Arduino.
    Já sabia que a placa poderia fazer tal ação, mas desconhecia como era feito a programação e o raciocínio. Achei muito interessante e bem poderosa a ferramenta. E gostaria de apresentar algo aqui no blog. Então vamos lá!

    Interrupções são funções que são chamadas quando algum evento externo acontece. Quando isso acontece o programa principal é parado, a função de interrupção é chamada e após sua execução o programa principal pode, ou não voltar a ser executado a partir de onde foi interrompido. Existem diversos tipos de interrupções, mas no Arduino vamos tratar de duas.


quarta-feira, 6 de agosto de 2014

Botão reset externo do Arduino

   Bom, a alguns dias um amigo meu comentou que possui um estudo de automação em sua casa, e ja ocorreu algumas vezes do projeto travar e ele ter que desparafusar toda sua caixa que contém o arduino, roteador e etc para apenas resetar seu Arduino. Com isso ele me perguntou se existe alguma solução para fazer esse reset.

    O ATMega, quando ligado, está com o pino 1 (reset), em nível alto (1). Ao aplicarmos 0v (nível baixo) neste pino, o ATMega é resetado.

    Repare que no barramento inferior do Arduino Uno, logo abaixo do microcontrolador, temos um dos pinos com a marcação RESET. Podemos utilizar este pino para resetar o microcontrolador, simplesmente aplicando à ele 0 volts.
   
 

domingo, 3 de agosto de 2014

Temperatura Interna do Arduino

    Navegando na net achei um artigo muito bom para testar o funcionamento do arduino em função da temperatura interna do Arduino, vale a pena monitorar seus sketchs e testar.
    
  Nesse artigo vamos explorar o sensor de temperatura interno do ATmega328P, que também está agregado ao conversor A/D.    


  O sensor é um diodo que produz uma tensão proporcional a temperatura interna do microcontrolador. No ATmega328P este sensor está ligado ao canal 8 (ADC8) do conversor. O sensor possui uma relação linear entre tensão e temperatura, porém a tensão de saída do sensor varia de um chip para outro, devido ao seu processo de fabricação.

    A temperatura interna do microcontrolador aumenta durante o seu funcionamento e, por exemplo, se um pino é usado para acionar um LED, a temperatura irá aumentar mais.

    A temperatura interna pode ser monitorada para verificar se não há problema no sistema. Por exemplo, se a temperatura durante o funcionamento normal acresce por volta de 5°C e no momento ela atingiu 20°C a mais, isso indica um problema no sistema.

    A faixa de temperatura de operação do Atmega328 vai de -40°C a 85°C, conforme exibido em sua folha de dados.