Pages: 1 [2]   Go Down
Author Topic: Criando Bibliotecas para Arduino  (Read 1751 times)
0 Members and 1 Guest are viewing this topic.
BHZ, MG, Brazil
Offline Offline
Sr. Member
****
Karma: 10
Posts: 346
Android developer; Arduino enthusiast
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Tu quando começaste a mexer no Arduino já sabias usar microcontroladores?

Sim, mas apenas na universidade, onde fiz Engenharia Mecatronica. Na universidade eu usava microcontroladores (sobretudo os 8051) e protótipos baseados em CPUs Z80 (8-bits) e depois os 68000 (32-bits) , mas tudo isto diretamente com Assembly, e realmente havia uns bons 18 anos que não mexia com eles. Meu background em eletronica era razoavel, embora longe de ser excelente. Quanto a programação, tenho 25 anos de experiência em diversas linguagens.

Como vês, eu fui evangelizado a pensar em microcontroladores como algo onde o tamanho do código é sagrado, onde deve-se racionar instruções e ciclos de clock ao máximo, buscando o máximo de eficiência pelo mínimo de esforço.

Na época, escrevíamos os programas em Assembly em um editor bastante rudimentar, compilávamos para gerar o binário, que por sua vez era gravado em uma EPROM (daquelas que possuem uma abertura em cima para serem apagadas) e então instalados na placa-protótipo onde ficavam os circuitos e o microcontrolador ou CPU. Eles já tinham uma espécie de bootloader preparado para buscar o começo do programa na EPROM que usávamos. Cada aluno tinha seu conjunto de EPROMs.
Logged

Learn to live: Live to learn.
Showing off my work: http://arduino.cc/forum/index.php/topic,126197.0.html

'round the world...
Offline Offline
Faraday Member
**
Karma: 42
Posts: 3255
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Eh eh, há já uns bons anos que não uso (ou vejo) uma EPROM. smiley Eu usava-as com o 8051 há prai uns 10 anos.

Mas o objectivo da pergunta era mesmo para perceber porque tinhas usado o pinMode e/ou digitalWrite/Read sabendo microcontroladores e quão ineficientes essas funções são.
Eu uso essas funções quando (ultimamente não tenho feito nada disso) preciso de escrever algo rápido para testar e mais tarde se precisar então, uso a manipulação de portas com macros para obter o mínimo código possível.

No entanto, devo admitir que para principiantes em electrónica essas funções são excelentes porque evitam muitos problemas para quem pouco sabe de C. Para quem sabe C e microcontroladores, pode evitar usar essas funções e poupar imensa memória e ciclos. Daí eu ter dito anteriormente ao Marcelo que criar bibliotecas para acender ou apagar LEDs não é propriamente algo ideal porque apenas está a criar mais uma camada de código em cima de funções que por si só não são optimizadas. Já se o fizesse de forma optimizada para poupar memória seria excelente.

Neste momento estou a trabalhar numa biblioteca que vai aceder a um servidor para fazer download dos próximos autocarros a parar numa determinada paragem e a maior parte dos problemas que tenho são precisamente por querer poupar a memória flash e ROM ao máximo para que quem quiser usá-la não ter problemas com memória a menos no programa. Isto é algo que a maior parte das bibliotecas não liga puto pelo que tenho visto nas que fiz download.

Logged

Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

Pages: 1 [2]   Go Up
Jump to: