Пт мар 04, 2022 16:13:07
.macro kca
; sei !!!!!
ldi temp,1
out sfior,temp
clr temp
sbr temp,0x02
out tccr0,temp
ldi temp,0x1
out timsk,temp
.endm
.cseg
.org 0x0000 ; или имя вектора сброса по reset
rjmp main_prog ; переход к началу программы пользователя,
; размещенной после блока векторов
; ВСЕХ ИМЕЮЩИХСЯ В МК ВЕКТОРОВ ПРЕРЫВАНИЙ
.org OVF0addr
rjmp koca
main_prog:
ldi temp,low(ramend)
out spl,temp
ldi temp,high(ramend)
out sph,temp
ldi temp1,128
sei ; перенести сюда
h: kca
ldi r18,0
out portd,r18
nop
rjmp h
koca:ldi r18,0xff
out ddrd,r18
out PORTD,r18
out tcnt0,temp1
; rjmp h это что за конструкция???!!!
; бесконечное обращение в точку вызова прерывания
; до полного исчерпания сткеа???
reti
Пт мар 04, 2022 16:57:33
хотя бы перераспределить вот так:
Пт мар 04, 2022 17:26:35
.nolist
.include "m8Adef.inc"
.list
.def temp = r16
.def temp1 = r17
.macro kca
;sei
ldi temp,1
out sfior,temp
clr temp
sbr temp,0x02
out tccr0,temp
ldi temp,0x1
out timsk,temp
.endm
.cseg
.org 0x0000 ; или имя вектора сброса по reset
rjmp main_prog ; переход к началу программы пользователя,
; размещенной после блока векторов
; ВСЕХ ИМЕЮЩИХСЯ В МК ВЕКТОРОВ ПРЕРЫВАНИЙ
.org OVF0addr
rjmp koca
main_prog:
ldi temp,low(ramend)
out spl,temp
ldi temp,high(ramend)
out sph,temp
ldi temp1,128
;sei
;h: kca; многократное дублирование макроса
; начальной настройки таймера
; должно быть
kca
sei
h:
ldi r18,0
out portd,r18
nop
rjmp h
koca:
ldi r18,0xff
out ddrd,r18
out PORTD,r18
out tcnt0,temp1
; rjmp h это что за конструкция???!!!
; бесконечное обращение в точку вызова прерывания
; до полного исчерпания сткеа???
reti
Пн мар 07, 2022 08:04:14
Ср мар 09, 2022 11:33:32
Чт мар 24, 2022 17:57:44
Сб мар 26, 2022 18:00:09
Сб мар 26, 2022 19:35:07
Сб мар 26, 2022 21:58:54
BOB51 писал(а):Зачем?
Вс мар 27, 2022 10:10:33
Вс мар 27, 2022 13:16:51
Вс мар 27, 2022 20:09:54
Вс мар 27, 2022 21:45:43
Пн мар 28, 2022 07:21:07
Пн мар 28, 2022 10:23:24
Пн мар 28, 2022 18:47:25
Вт мар 29, 2022 10:33:16
Вт мар 29, 2022 13:02:38
Вт мар 29, 2022 18:51:20
Ср мар 30, 2022 10:12:44