2 Replies Latest reply on Sep 27, 2014 5:29 AM by user_14586677

    writing data on external eeprom via psoc

    vinay.bhatt

       i am  transfering data from hyperterminal to psoc and writing it  on external eeprom but not working attaching the code. pls suggest.

        • 1. Re: writing data on external eeprom via psoc
          user_1377889

          Do not forget that every write to the SPIM causes a byte to be sent back that you have to read off. It seems that the logic depending on the bytes read from SPI do not reflect that.

             

          Keep in mind that the SPIM has got 2 FIFO buffers, so there is no need to wait for the transmission is done except you want the ss-signal to toggle. Writes to SPIM are blocking until there is room in the buffer.

             

          Some other points I would suggest you to change:

             

          Do not define loop variables as global (outside main() ) this may lead to an error easily.

             

          The interrupt handler within isr_2 is clobbered, one of the special comments has been deleted by accident

             

          The interrupt routine in isr_uart is fairly long and contains delays. This is something you should strongly avoid. Interrupt handlers work bet when they just remove the interrupt cause and set a flag on which the main-loop reacts on.

             

          There is a different (safer) way to write interrupt handlers that avoids changes in the generated files which can be overwritten accidently, have a look (search) for CY_ISR and CY_ISR_PROTO in the "System Reference Guide" to be found from Creator's Help.

             

           

             

          Bob

          • 2. Re: writing data on external eeprom via psoc
            user_14586677

            Generally speaking variables used in ISR routines should

               

            be declared as volatile.

               

             

               

                

               

                      http://www.barrgroup.com/Embedded-Systems/How-To/C-Volatile-Keyword

               

             

               

            Regards, Dana.