Технический форум по робототехнике.
Chip15 » 17 мар 2008, 14:40
Всем привет. Не получается выставить задержку 1 сек.
- Код: Выделить всё • Развернуть
.nolist
.include "tn2313def.inc"
.list
.def temp =r16
.def temp2 =r20
.def delay1 =r17
.def delay2 =r18
.def delay3 =r19
rjmp Init
Init:
ser temp
out DDRA,temp
out DDRB,temp
out DDRD,temp
ldi delay1,0x00
ldi delay2,0x35
ldi delay3,0x0C
Start:
ldi temp,0b00000001
out PinB,temp
Loop:
subi Delay1,1
sbci Delay2,0
sbci Delay3,0
brcc Loop
clr temp2
out PinB,temp2
Loop2:
subi Delay1,1
sbci Delay2,0
sbci Delay3,0
brcc Loop2
rjmp Start
В реале больше 40 сек. Чувство что МК на пониженой частоте пашет.
Кварц подкидывал. Кстати он на 4 МГц. Еще по пути. Не доконца догоняю как выставлять фузы.
Галки поставил в CKSEL1 и SUT1. Остальные пустые.
Victorovych » 17 мар 2008, 15:47
Для начала скинь CKDIV8 в 1 (убери флажок)
Chip15 » 17 мар 2008, 15:51
нет его там.
Victorovych » 17 мар 2008, 16:17
Eсли перед каждым циклом предустановку delay1..delay3 делать, то должно раз в 40 полегчать
Последний раз редактировалось
Victorovych 17 мар 2008, 16:37, всего редактировалось 1 раз.
EdGull » 17 мар 2008, 16:33
Вот всё таки любим мы себе проблемы создавать на пустом месте...
- Код: Выделить всё • Развернуть
$regfile = "attiny2313.dat"
$crystal = 4000000
$baud = 9600
Dim I As Integer
Do
Incr I
Print "test I = " ; I
Waitms 1000
Loop
Chip15 » 17 мар 2008, 17:00
Я не волшебник. только учусь. Можите расшифровать команды, если не сложно

EdGull » 17 мар 2008, 17:11
Chip15 писал(а):Я не волшебник. только учусь. Можите расшифровать команды, если не сложно

какие именно?
Chip15 » 17 мар 2008, 17:16
- Код: Выделить всё • Развернуть
$regfile = "attiny2313.dat"
$crystal = 4000000
$baud = 9600
Dim I As Integer
Do
Incr I
Print "test I = " ; I
Waitms 1000
Loop
эти
EdGull » 17 мар 2008, 17:20
ну давай так, сам-то как думаешь какая команда что означает?
Добавлено спустя 1 минуту 20 секунд:а то я даже как-то растерялся...
на асме пишешь, а бейсиковские команды не знаешь...

Chip15 » 17 мар 2008, 17:31
- Код: Выделить всё • Развернуть
$regfile = "attiny2313.dat"
$crystal = 4000000 ;частота кристала
$baud = 9600 ;скорость
Dim I As Integer ;объявление переменной
Do
Incr I ;инкремеентирование переменной
Print "test I = " ; I ; вывод в уарт строки test I = "номер попытки"
Waitms 1000 ;ждем 1 сек
Loop
Victorovych » 17 мар 2008, 17:33
- Код: Выделить всё • Развернуть
.include "tn2313def.inc"
.list
.def temp =r16
.def temp2 =r20
.def delay1 =r17
.def delay2 =r18
.def delay3 =r19
rjmp Init
Init:
ser temp
out DDRA,temp
out DDRB,temp
out DDRD,temp
ldi delay1,0x00
ldi delay2,0x35
ldi delay3,0x0C
Start:
ldi temp,0b00000001
out PinB,temp
Loop:
subi Delay1,1
sbci Delay2,0
sbci Delay3,0
brcc Loop
ldi delay1,0x00
ldi delay2,0x35
ldi delay3,0x0C
clr temp2
out PinB,temp2
Loop2:
subi Delay1,1
sbci Delay2,0
sbci Delay3,0
brcc Loop2
ldi delay1,0x00
ldi delay2,0x35
ldi delay3,0x0C
rjmp Start
так попробуй
EdGull » 17 мар 2008, 17:35
ай маладца
9600 скорость уарта
print это вывод в уарт
Добавлено спустя 1 минуту 11 секунд:
Incr I - это не объявление, а инкрементироваие переменной, т.е. прибавление к ней единички
Chip15 » 18 мар 2008, 05:27
Victorovych , уже лудше. Возник вопрос:
1. Задержка примерно 3 сек. Из за чего так? У мя емкости в обвязке кварца на 33 стоят. (по дш 22 надо)
Добавлено спустя 26 минут 6 секунд:Все. Исправил. Немного поправил прогу и задержка стала расчетной

Вставил rcall Delay
Всем огромное спасибо. Помогли "чайнику"

Буду осваивать дальше

- Код: Выделить всё • Развернуть
.include "tn2313def.inc"
.list
.def temp =r16
.def temp2 =r20
.def delay1 =r17
.def delay2 =r18
.def delay3 =r19
rjmp Init
Init:
ser temp
out DDRA,temp
out DDRB,temp
out DDRD,temp
Delay:
ldi delay1,0x00
ldi delay2,0x35
ldi delay3,0x0C
Start:
ldi temp,0b00000001
out PinB,temp
Loop:
subi Delay1,1
sbci Delay2,0
sbci Delay3,0
brcc Loop
rcall Delay
ret
clr temp2
out PinB,temp2
Loop2:
subi Delay1,1
sbci Delay2,0
sbci Delay3,0
brcc Loop2
rcall Delay
ret
rjmp Start