por Mersin » 31 Mar 2007 08:38
Amigos,
Resumindo a conversa até agora, ficou o seguinte:
1) Realmente para se criar uma matriz o CCS tenta alocar posições sequanciais na memória RAM, ou seja, os elementos de uma mesma matriz tem que estar em sequência dentro de um bloco contínuo de bytes;
2) Bom, a minha aplicação, possibilitou a divisão da matriz de 288 elementos em outras 4 matrizes, sendo uma utilizando os 96 bytes do banco 2, outra os 96 do banco 3, e outras duas contendo 48 bytes que ficam respectivamente no bloco 0 e 1; Dessa forma resolvi o meu problema.
3) Quanto à área de memória denominada "accesses memory" equivalentes aos 16 últimos bytes dos bancos 1, 2 e 3, realmente não garantem integridade dos dados colocados lá, pois representa uma espécie de "lixo" para muita coisa que o mC faz, tipo, o comando setup_timer por exemplo, utiliza uma ou duas posições dessa parte, já outras funções, utilizam outros desses bytes, de maneira que se colocarmos algum dado lá, devemos saber que este poderá ser mudado a qualquer momento.
Em fim, graças à fragmentação de minha matriz, não precisei de trocar de mC ou mesmo de utilizar RAM externa, agradeço a TODOS os que me ajudaram nesse tópico... e aqui deixo minha mensagem,,,
"não desanimem não!!!! tem que ter fé!!!"
Abraços!
Mersin