This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Please xplain

  259           c1_tx_fifo_in_gc++;
   \   0000001C   ....               LDI     R30, LOW(c1_tx_fifo_in_gc)
   \   0000001E   ....               LDI     R31, HIGH(c1_tx_fifo_in_gc)
   \   00000020   ....               LDI     R19, (c1_tx_fifo_in_gc) >> 16
   \   00000022   BF3B               OUT     0x3B, R19
   \   00000024   8100               LD      R16, Z
   \   00000026   9503               INC     R16
   \   00000028   8300               ST      Z, R16
    260                 c1_tx_fifo_in_gc &= (MAX_TX_FIFO - 1);
   \   0000002A   9110....           LDS     R17, LWRD(c1_tx_fifo_in_gc)
   \   0000002E   9310....           STS     LWRD(c1_tx_fifo_in_gc), R17
   \   00000032   E000               LDI     R16, 0
   \   00000034   BF08               OUT     0x38, R16

please explain the above, I am unable to understand the Assembly routines for the above two "C Statements".

Parents
  • I am concerned of assemly because, in my program I am trying to send some data out through USART using buffres.

    That reasoning doesn't work. That is no reason to start worrying about assembly code. More so if you don't know enough assembly to be able to do that yourself.

    If you want to worry about something, worry about the code you wrote, not about the code the compiler created out of it.

    But , there is no proper data from USART as I expected (i.e., I am not getting, that I have sent).

    Telling us what you don't get doesn't help anyone solve your problem. What do you get, instead? What is not "proper" about that?

Reply
  • I am concerned of assemly because, in my program I am trying to send some data out through USART using buffres.

    That reasoning doesn't work. That is no reason to start worrying about assembly code. More so if you don't know enough assembly to be able to do that yourself.

    If you want to worry about something, worry about the code you wrote, not about the code the compiler created out of it.

    But , there is no proper data from USART as I expected (i.e., I am not getting, that I have sent).

    Telling us what you don't get doesn't help anyone solve your problem. What do you get, instead? What is not "proper" about that?

Children
No data