Ola pessoal estou tentando fazer um projeto utilizando o arduino, esse projeto consiste em receber dados de sensores de temperatura , pressao e rotacao de um motorzinho e guarda-los na memoria interna do arduino para depois acessa-los pelo computador.
O meu problema é que no meu curso de engenharia eletrica eu aprendi a fazer esse tipo de sistema muito bem, porem era em Assembly e nos antigos 8051 e 8086, e nao faço a minima ideia de como fazer esse banco de dados numa linguagem de alto nivel como o C ( sei programar legal em C, mas nao para o Atmel)
Em assembly eu deveria alocar um espaco na memoria e fazer um ponteiro identificar uma posicao na pilha e comeca-la a preencer com os dados em um timer pre determinado.
mas em C?
se alguem tiver alguma ideia ou algum link com codigo poderiam me passar? eu ja procurei em varios sites, e nada de achar solucao, talves eu que nao saiba procurar mas sei la ne?? auhdaudaudahud
Att
Ramzoloide Modofocka!
Também podes programar o Arduino em Assembly, se te sentires mais à vontade. Precisas de baixar o AVRStudio do site da ATMEL e programar. Vais no entanto sentir algumas dificuldades em termos de linguagem porque o 8051 e 8086 eram CISC (Complex instruction set computer) e os AVR (e PIC também) são RISC (Reduced Instruction Set Computer), logo têm menos instruções disponíveis.
A parte de programar o vector para aquisição de dados em C é exactamente igual para o AVR como para um computador normal uma vez que o compilador trata de gerir a memória. O maior problema que terás será com as temporizações... mas aí só conheço mesmo como usar o C normal e não com a linguagem do AVR.
Exemplos para timers em C no AVR.
http://winavr.scienceprog.com/avr-gcc-tutorial/control-avr-8-bit-timer-counter0-using-avr-gcc.html
http://blog.stranadurakov.com/2009/04/01/set-up-avr-timer-interrupt/
Repare que a quantidade de RAM disponível em uma placa Arduino não ultrapassa 2kB (8kB num Mega).
Se você for capturar os dados de tempos em tempos do Arduino para o PC, melhor usar um shield de logging de dados, que guarda os dados em um cartão SD.
Aí, para pegar os dados que estão no Arduino, basta retirar o cartão SD do shield e pô-lo no PC.