ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
6 мая
1716 Топик полностью
Этo_Я_oпять (20.12.2003 14:09, просмотров: 1) ответил a на Я думаю вместо unsigned char tb=SPSR; volatile unsigned char tb=SPSR; поможет
Неа. Получается ТО ЖЕ САМОЕ - сохраняет чуток по другому, но опять не то 232 tb=SPDR;
\ 0000002C B11F IN R17,0x0F <--- прочитал в R17 байт из SPDR
\ 0000002E 8248 ST Y,R4 <----- ЗАЧЕМ-ТО сохранил R4
233 if (prxb) *prxb=tb;
\ 00000030 2F18 MOV R17,R24
\ 00000032 2B19 OR R17,R25
\ 00000034 F019 BREQ ??XchByte_4
\ 00000036 8118 LD R17,Y <---- Вот он взял в R17 сохраненный выше R4, тем самым (ОПЯТЬ ЖЕ - ЗАЧЕМ???)
\ 00000038 01FC MOVW R31 : R30,R25 : R24
\ 0000003A 8240 ST Z,R4 <---- а сохранил все равно R4. Даже если бы сохранил R17, все равно это было бы уже не значение, полученное из SPDR, а тот же R4


Короче, код стал медленнее, чем был до того.