Comunicacion SPI entre dos atmega

Hola a todos, me disculpan si este tema ya está creado pero estuve buscando y no lo encontré...

Bueno, la idea es que necesito comunicar dos atmega640 para hacer una prueba, pero trato de hacerlo en proteus y no se si lo estoy simulando del todo bien, un atmega lo tengo como master y otro como slave pero usando configuración del spi por software, les pongo las imágenes para que sea mas claro esto.

El programa master solo envía un numero que va de 1 a 200 y en el slave debería recibir lo mismo pero recibo bien desde 1-99 y luego recibo 0 / 255

Código:
'codigo configuracion en el master
Config Spi = Soft , Din = Pine.7 , Dout = Portb.2 , Ss = Portc.5 , Clock = Portb.1 , Spiin = 255 , Mode = 1 , Speed = 1
Código:
'codigo configuracion en el slave
Config Spi = Soft , Din = Pind.6 , Dout = Porta.2 , Ss = Portd.3 , Clock = Portb.0 , Spiin = 255 , Mode = 1 , Speed = 1
El circuito en proteus
BBnZTQTJumbQUwoXs88mY262RxDkroPy9xoCBFBOj3c=w140-h99-p


Trasmisión del master y recepción del slave vistos en la uart ademas de lo que se ve en el spi
l7JpP5fWCmwrXpq_iUg6CyhQBTxJ0DN80sifvRM6dNw=w140-h131-p


aqui se "bloquea"
tA3j2QqH6w2oO-JbO4dlLmf2JTM-ZhfCWuKT0nIFzGg=w140-h134-p


vista del osciloscopio cuando se envía bien el dato
Hkz8OmjFN4y489iJOI93Rh2fLO7a1jGjvBinYvTQWYs=w89-h140-p


esta es la vista de todo lo que ha visualizado el osciloscopio, es normal que se vayan bajando así las señales?
A0hdr3THBOFxcsgZimsnoYPS_G7IQRucIe0UzLeSlTU=w140-h120-p


si necesitan otra información no duden en decirme, y gracias por adelantado

Ah se me olvidaba, estoy programando en Bascom-AVR.
 
Última edición por un moderador:
Atrás
Arriba