por RobL » 04 Jun 2011 15:14
O problema aqui parece que ficou entre duas palavras, simples e complexo.
Tarefas simples, parece pejorativa.
Nada disso.
Simples para um micro de 8 bits é fazer tarefas super complexas que fossem somente em 8 bits. Por exemplo decrementar n vezes um byte, no intervalo de 0 a 255. Atender interrupções, todas com operações em um byte, ou ainda um conjunto complexo de operações em um byte. Isto é simples para um micro de 8 bits. Aí, ele é o bicho. Mas veja que deixa de ser e por várias razões :
Decrementar 2 bytes já começa o problema. Piora com 3, 4 ...16 bytes.
Multiplicar um valor com 2 a 3 bytes pode render de 80 a 100 intruções e vários ciclos!!!! É uma tarefa simples, mas ficou complexa (difícil) para um micro de 8 bits.
Suponha que este micro tenha que atender várias interrupções e multiplicar outros valores similares aos acima.
Um micro com 32 bits faria em uma só instrução e em um só ciclo.!!!!
Ainda que um micro de 8 bits tenha um hardware multiplicador, essa tarefa ainda consome algo em relação a um micro de 32 bits.
Ainda que um micro como um AVR Xmega (8 bits) com DMA, Multiplicador por hardware, uma instrução por clock do oscilador (e não dividido por 4 como nos pics), sistema com interrupção determinístico, 32 registros work (contra um só do PIC 16, 18 ) não é uma tarefa simples, para determinados cálculos como acima, mas já é bem melhor.
Mas há uma outra vantagem nos micros de 32bits, a questão da qualidade do sistema, como um todo (sw + hw).
Esses micros já nasceram com um sistema de interrupção por falha ( exceção ).
Pode-se tratar um erro por um simples ruído, ou degeneração de um bit, over flow, etc, por uma interrupção específica, para cada caso.
Tudo isto pelo preço menor que um PIC!!!
Ninguém disse que um PIC não é capaz de fazer coisas de impressionar, mas podemos faze-las com muito mais segurança, simplicidade e menor preço.
Em outras palavras: Um simples Cortex M0, com preço de US$1.00 (um dollar) faz tudo o que um PIC16, 18, 24 faz, só que ficará batendo o pé, lhe perguntando, o que mais ? Um kit de desenvolvimento já com o compilador até 128Kb de flash custa 20 Euros. Não entendeu ? Sim por este preço você tem um compilador, um debugador, uma IDE bacana e poderosa e uma placa com um JTAG mais um chip com portas expandidas por uma barra de pinos. Nada de ter que comprar programador, caros debugadores que não funcionam, etc.
É só isso que tento dizer.
Para os afoitos, devagar. A migração não é simples, há vários fatores a considerar.