Esses compiladores da Mikroeletronika, não gosto. nunca vi um programa tão bugado.
Olá aos amigos do forum.
Quanto aos comentários sobre programar em C para Pic, deixo um pouco de minha experiencia, embora não seja o relativo ao tópico, também não pretendo fazer propaganda.
Já tentei aprender asm, mas é um pouco complicado para quem não teve nenhuma base. Desisti, ficando um bom tempo longe.
Em 2008, conheci o CCS, quebrei muito a cabeça com ele e quase nenhum programa, rodava no Isis. Mesmo assim, não deixei de tentar. Investi em vários livros em português, que hoje posso afirmar com certeza que não são mais do que um curso básico de C e alguns exemplos (esses sim "bugados"!) vindos do help do próprio compilador (quanto desperdicio de dinheiro).
Parei novamente, quando no fim de 2009, resolvi tentar mais uma vez. Neste tempo meus conhecimentos de lógica e linguagem C, já tinham sido alimentados pela faculdade.
Por aí, entra o mikroC. No começo, foi dificil, pois os comandos do CCS são diferentes (vale lembrar que lógica é lógica e C é C). Umas buscas na internet, exemplos, e simulações quase em tempo real no Isis, me animaram.
O primeiro programa, rodou perfeito tanto no Isis quanto no protoboard. Foi então que resolvi comprar uma apostila sobre o dito compilador e programação para pic.
O compilador cheio de bibliotecas prontas (isto nos deixa mal acostumados), facilita muito. Mas surgiram os problemas. Um pic ou qualquer outro que seja, é cheio de recursos como o professor minilathe esclareceu. É como entrar em uma fabrica enorme sozinhos e ter que colocar ela pre funcionar sem a ajuda de ninguém (veja o "trampo"! e ainda pra quem nunca teve contato! mas é bem por aí).
Até este ponto, saber o asm, lhe dá o profundo conhecimento do hardware à ser trabalhado, e facilita sua vida com o C depois. Afirmo isto, pois tenho amigos que programam em asm, e a convivencia nos ensina muito, mas não é o meu caso.
Certa vez um colega disse que para usar de boa maneira o pic, seria preciso ler e entender o datasheet. Não raciocinei na hora, mas hoje com certeza esta leitura lhe abre as portas afim de lhe mostrar o rumo para uma programação, talvez não à mais rápida em processamento, mas eficiente. O datasheet, tem seus inconvenientes, muitas vezes é confuso.
No site da mikroe, não tem muito tempo, disponibilizaram gratuitamente (sendo gratuito, não é propaganda!) e com mais de 100 paginas, um livro online que mostra este lado de como é o pic (o modelo escolhido foi o 16F877) por dentro e sua programação em asm. Ele assemelha-se à um gigante datasheet, com imagens que mudam totalmente a forma de ver os perifericos, interrupções, etc. Este livro aliado à linguagem C, afirmo me incentivou e muito.
Que o professor minilathe, nos esclareça, mas interrupções em um pic, sempre doi no calcanhar de qualquer um. Foi com o mikroC que pude fazer a primeira e perfeita simulação no isis e protoboard, ele não é perfeito, tem lá seus bugs, mas com um pouco de lógica é possivel resolver certos problemas.
Quanto um pic ser cheio de recursos ou qual é o melhor para iniciar, cabe ao programador ter em mente o que deseja ser realizada na tarefa e escolher um que será capaz de executa-las, atingindo suas expectativas. Um Pic16f628a é barato e fácil de encontrar, sendo o mais comum para iniciantes. Outra dica é o 16F88, que apesar de 18 pinos e muito parecido com o 628A, tem conversor AD, porém não muito comum.
Não sou programador de pic, estou iniciando. Fico satisfeito por encontrar a ferramenta adequada ao aprendizado, e mais ainda em poder transmitir aos membros do forum. Como disseram cada qual sua opinião, esta é a minha.
Grande abraço à todos.