Цитата(izerg @ Aug 10 2009, 13:03)

Приведите пример кода, в котором хотите использовать такую задержку.
Хочу установить pinState в 1 для 1, 2.... 7 cycles и потом возвратить в высокоимпедансное состояние
goto($ + delay); /* pseudocode, normally will yield error */
pinState = 1; /* force the pin to 1 */
pinState = 1; /* force the pin to 1 */
pinState = 1; /* force the pin to 1 */
pinState = 1; /* force the pin to 1 */
pinState = 1; /* force the pin to 1 */
pinState = 1; /* force the pin to 1 */
pinState = 1; /* force the pin to 1 */
pinStateTRIS = 0; /* float the pin */
Цитата(Goodefine @ Aug 10 2009, 13:17)

Код
#define TICK 2
...
void delay_variable(uint8 tick)
{
for(uint8 i=tick;i;i--) __delay_cycles(TICK);
}
...
delay_variable(x);
Резолюция кода есть 2 или больше системных циклов. То что надо - резолюция из одного системного цикла. Описание кода в начале темы есть резолюция из 2 цикла.
Сообщение отредактировал Student2 - Aug 10 2009, 11:35