Hardware access implemented im assembly as native methods in Java classes.
Corrigido bug nas inicializacao das classes AIC_CAN e AIC_HOST_CAN que
violava o padrao ISO C++ e impedia estas classes de serem compiladas com o
g++ 3.4.3.
Alterados os nomes das classes utilizadas para sinalizar excecoes. Foram
removidos os prefixos que podem ser deduzidos a partir da hierarquia de
classes.
Corrigido o log dos comandos no IODaemon no modo debug. Agora e' logado o
codigo do comando em decimal.
Corrigido bug na classe HostCAN, que fazia com que a filtragem das mensagens
nao funcionasse. O centro de mensagens 15 foi desabilitado. A recepcao de
mensagens passou a funcionar no modo WriteOver.
Corrigido bug nos metodos Encoder::read() e Encoder::readAndClear(). O
calculo da conversao de numero de pulsos para radianos estava errado.
Removido o flag canWANT_EXCLUSIVE dos construtores das classes AIC_CAN e
AIC_HOST_CAN. Com isto pode-se compartilhar a placa PCICAN entre
aplicacoes.
Criado buffer de mensagens estatico nas classes AIC_CAN e AIC_HOST_CAN para
armazenar as mensagens destinada as outras instancias da classe.
Criada documentacao on-line para a biblioteca em C++ e em Java utilizando o
Doxygen.
Eliminada a documentacao utilizando o javadoc.
Ajustados os Makefiles para criar os arquivos .runinfo utilizados pelo
RTAI-3.x.
Removido o periodo do programa pid. Agora o controlador executa com ciclo
livre, temporizado pelo processo de amostragem.
Criado um destructor virtual para a classe AIC. A falta deste destructor
causava erro de segmentacao quando da destruicao do objeto.
Alterados programas em C++ para permitirem a passagem na linha de comando do
numero da porta de status a ser utilizada (porta de comando no caso do
aicd).
Criados os programas BrakeApply e BrakeRelease.
Criada a macro RESTORE_STRETCH, utilizada nas biblotecas nativas para
retornar o strech ao valor original.
Criadas versoes das macros SET_STRETCH e RESTORE_STRETCH que nao geram
codigo. Atraves de compilacao condicional as versoes que nao geram codigo
sao utilizadas quando o valor de strech e' negativo. Esta caracteristica e'
utilizada para utilizar o valor de stretch default da TINI.
Alterados o esquematico e o layout do PCB para utilizar 6N137 ao inves de
6N136.
Alterados os Makefiles dos programas que necessitam do suporte do RTAI para
funcionarem com o RTAI-3.x.
Alterados programas de teste e aplicativos em Java para eliminar excessoes
de endereco invalido, que nao sao mais geradas pela classe AIC.
Metodos das classes Brake, Index, Encoder e PWM implementados em Assembly
como metodos nativos.