18.05.2014 Views

SISTEMA EMBARCADO DE AQUISIC¸ ˜AO DE DADOS ...

SISTEMA EMBARCADO DE AQUISIC¸ ˜AO DE DADOS ...

SISTEMA EMBARCADO DE AQUISIC¸ ˜AO DE DADOS ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

de mecanismo de decisão que seja parte do sistema embarcado. Os sistemas mais<br />

avançados atualmente têm um minúsculo e organizado sistema operacional sendo<br />

executado, gerenciando todas as tarefas do sistema. Eles são denominados de Real-<br />

Time Operating System (RTOS).<br />

Mais de uma tarefa pode estar sendo executada concorrentemente em um dispositivo<br />

embarcado e é trabalho do RTOS direcionar este tráfego. Mas o quê é<br />

tempo real? Na indústria de sistemas embarcados usamos o termo “tempo real”<br />

para nos referirmos a um sistema que deve computar um resultado, baseado em<br />

certas entradas, num tempo aceitável máximo, isto é, deve responder em tempo<br />

real.<br />

O C ANSI não possui programação concorrente. Utilizam serviços de Sistemas<br />

Operacionais multi-tarefa. Neste item será estudado o software uC/OS-II, um kernel<br />

(núcleo) preemptivo de tempo real. Os seguintes benefícios são obtidos com uso de<br />

um kernel preemptivo:<br />

• Facilita a construção dos programas, pois permite que as tarefas sejam usadas<br />

novamente;<br />

• Permite que as tarefas de mais alta prioridade tenham melhores respostas de<br />

tempo a eventos;<br />

• Gerência o uso de recursos compartilhados.<br />

Para uma descrição detalhada do kernel uC/OS-II consulte o livro (LABROSSE<br />

2002) que inclui um disquete contendo o código fonte do kernel. Por simplicidade,<br />

deste ponto em diante nós vamos referir ao kernel simplesmente como uC/OS. Interfaces<br />

para diversos microcontroladores e microprocessadores podem ser obtidas em<br />

(www.ucos-ii.com). O uC/OS é um kernel preemptivo multi-tarefa em tempo real.<br />

Está escrito em C com exceção de um pequeno módulo em assembly que é específico<br />

para cada CPU. Isto significa que o uC/OS pode ser adaptado facilmente para diversos<br />

processadores. De fato para uma ampla faixa de processadores, desde simples<br />

micro-controladores de 8 bits como o 8051, até CPUs de 32 bits. Uma desvantagem<br />

de se ter escrito o uC/OS em linguagem C é uma pequena perda de velocidade<br />

191

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!