unsigned int spendticks= 0;
spendticks= TMR1L; //escribo la parte baja
*(&spendticks + 1) = TMR1H; //escrivo la parte alta accediendo a la siguiente pocision de memoria
(*((unsigned char*)&spendticks + 1))= TMR1H;(unsigned char*) ((unsigned char*)&spendticks + 1)Modificar el valor de esa posicion de memoria (*((unsigned char*)&spendticks + 1))(short int*)(&spendticks + 1) = TMR1H;pero no se porque da el error "error: (202) only lvalues can be assigned to or modified"
spendticks = (TMR1H <<8) + TMR1L;es porque genera demasiado codigo y el problema es que en estas lecturas cada microsegundo es importante:
asm("MOVFF TMR1L, main@spendticks");
asm("MOVFF TMR1H, main@spendticks+1");