Только вместо rlf я поставил rclf У моего пика такой команды нет.
Вполне возможно, для ПИК18 команды изменили, дополнили. Вообще-то я в АСМе не силен, изучал когда то на сайте Корабельникова, а потом вкусил РВР и .... Для моих любительских целей достаточно. Век живи - век учись! К концу жизни поймешь, что ничего не знаешь...
Не могу понять как определить кол-во циклов необходимых на выполнение вставки: ;delay = 100 machine cycles Pause movlw .33 ' число 33 movwf Reg_1 ' запись в переменную 1 цикл wr decfsz Reg_1, F ' 1 цикл goto wr ' 2 цикла итого 1 + 33*(1+2) = 100 здесь понятно! А вот тут никак не соображу: ;delay = 790 machine cycles Pause movlw .5 ' число 5 movwf Reg_1 ' запись в переменную 1 цикл movlw .2 ' число 2 movwf Reg_2 ' запись в переменную 1 цикл wr decfsz Reg_1, F ' 1 цикл goto wr ' 2 цикла decfsz Reg_2, F ' 1 цикл goto wr ' 2 цикла Итого 1 + 1 +( 5*(1+2)) * (2*(1+2)) =92 не могу сообразить как считать при введении второй переменной. Прошу помощи.
;delay = 790 machine cycles Pause movlw .5 ' 1 цикл movwf Reg_1 ' 1 цикл movlw .2 ' 1 цикл movwf Reg_2 ' 1 цикл wr decfsz Reg_1, F ' 1 цикл goto wr ' 2 цикла decfsz Reg_2, F ' 1 цикл goto wr ' 2 цикла
ivan_fd спасибо. мудрено блин. не дают покоя мне эти задержки в частотомере. Вот решил попробовать разобраться. Есть, пока далекая, мысль попробовать переделать под 40МГц генератора МК код частотомера на 16f84a. Там есть подсчет переполнений с дополнительной переменной. (терзают меня смутные сомнения, что самостоятельно разберусь. не завидую первопроходцам этого языка).
Сообщение отредактировал
доцент2 - Вт, 12.06.2018, 16:42
Есть, пока далекая, мысль попробовать переделать под 40МГц генератора МК код частотомера на 16f84a. Там есть подсчет переполнений с дополнительной переменной.
Там счет идет с предделителем, вообще голову сломаете.