Sou iniciante em Microntroladores, e preciso fazer uma pesquisa sobre PIC32 ( Características, Registradores, Acesso à Memória, Aplicações, etc..) , e um dos pontos da pesquisa é criar um programa simples em Assembly ( utilizando o MPLAB ), e explicar debugando a aplicação, o que as instruções estão fazendo.Bom, já consegui compilar alguns programas para o PIC32 no MPLAB. Compilo, mas não sei o significado de várias coisas, por exemplo: tenho o trecho de código abaixo:
- Código: Selecionar todos
main:
addiu $sp,$sp,-16
sw $s8,8($sp)
addu $s8,$sp,$zero
sw $zero,0($s8)
addu $sp,$s8,$zero
lw $s8,8($sp)
addiu $sp,$sp,16
jr $ra
nop
.end main
O que seria por exemplo o $sp? Qual registrador ele referencia? E o zero?
( Desculpem a ignorância ).Sei que o recomendável seria começar por um microcontrolador mais simples como PIC16, etc....mas é que minha pesquisa é sobre o PIC32.
Se alguém pudesse postar um código assembly para PIC32 que fizesse uma simples soma de dois números, comentando as operações e as referências à registradores já seria de grande ajuda.Dei uma olhada no Datasheet, mas fiquei um tanto perdido.
Obrigado.