Ср сен 26, 2018 13:01:32
Ср сен 26, 2018 13:06:51
Ср сен 26, 2018 13:10:44
Значит получается что что-то не так с исходным hex-ом.godrik123 писал(а):И самое интересное, если считать искалеченную прошивку в том виде, как она записалась, сохранить ее, стереть чип и залить сохраненную, то все происходит так как нужно!
Ср сен 26, 2018 13:15:38
Ср сен 26, 2018 13:19:13
Значит получается что что-то не так с исходным hex-ом.godrik123 писал(а):И самое интересное, если считать искалеченную прошивку в том виде, как она записалась, сохранить ее, стереть чип и залить сохраненную, то все происходит так как нужно!
Ср сен 26, 2018 13:21:37
Ср сен 26, 2018 13:25:58
Ср сен 26, 2018 13:38:09
Ср сен 26, 2018 13:44:58
Ещё как может, если адресация в hex-е не совпадает с адресным пространством МК. Но обычно в таких случаях прошивальщики матерятся.godrik123 писал(а):Мне кажется hex не может рушить процесс записи, хоть абрукадабру загоняй, записаться должен.
Ср сен 26, 2018 13:58:25
Ещё как может, если адресация в hex-е не совпадает с адресным пространством МК. Но обычно в таких случаях прошивальщики матерятся.godrik123 писал(а):Мне кажется hex не может рушить процесс записи, хоть абрукадабру загоняй, записаться должен.
Ср сен 26, 2018 14:14:41
Ср сен 26, 2018 14:56:39
Ср сен 26, 2018 22:22:49
Чт сен 27, 2018 03:27:32
Чт сен 27, 2018 09:56:26
Чт сен 27, 2018 10:33:13
Чт сен 27, 2018 13:56:15
Чт сен 27, 2018 20:30:00
.include "tn13def.inc"
.def temp=R16
.def temp1=R17
init:
clr r16
clr r17
clr r18
clr r19
clr r20
clr r21
clr r22
clr r23
clr r24
clr r25
clr r26
clr r27
clr r28
clr r29
clr r30
clr r31
ldi temp, RAMEND ; инииализация стека
out SPL, temp
ldi temp, 0b11111111 ; потр В на выход
out ddrb, temp
ldi temp, (1<<COM0A1)|(0<<COM0A0)|(1<<wgm00)|(1<<wgm01) ; режим быстрого ШИМ
out TCCR0A, temp
ldi temp, (1<<cs00) ; счетчик без предделителя
out tccr0b, temp
ldi temp1, 0 ; начальное значение ШИМ
out OCR0A, temp1
main:
cpi temp1, 255 ; сравниваем значение ШИМ с максимальным
breq endprog ; если да, то заканчиваем увеличение ШИМ
inc temp1 ; иначе увеличиваем значение ШИМ на 1
out OCR0A, temp1
rcall delay ; задержка
rjmp main ; замыкаем цикл
endprog: ; конец программы
ldi temp, 0 ; выключаем ШИМ
out TCCR0A, temp
out tccr0b, temp
ldi temp, 0b0001 ; устанавливаем на выходе ШИМ постоянную 1
out portb, temp
rjmp endprog
delay: ; задержка 18ms
ldi r19, 197
ldi r20, 234
loop:
dec r19
brne loop
dec r20
brne loop
ret
Чт сен 27, 2018 20:36:55
Чтож, тогда моя ставка не сыграла. В таком случае, если есть возможность, заполните буфер прошивальщика "00", прошейте МК, и считайте. Проверьте на нескольких МК, и если результат повторяется, то скорее всего имеются проблемы с алгоритмом программирования конкретного МК.godrik123 писал(а): Кстати ваша прога залилась с такими же пятнами.
Пт сен 28, 2018 04:38:21