Перейти к содержанию
    

Нужна помощь в прошивании AVR

Здравствуйте, господа форумчане. Столкнулся со следующей проблемкой. После долгих недель штудировании теории и кодинга под avr (с использованием Proteus) решил перейти к практике. Запилил простенькую платку, которая связывала выводы программатора и выводы мк(VCC, GND, RESET, MISO, MOSI, SCK). Взял у друга Avrisp mkii и при первой же попытке прошить мк взлетает ошибка "Read voltage 0,0V is outside selected device's operating range: 1,8 V to 5,5 V"... Недолго думая совершил грандиозный поступок и прочитал даташит к программатору... Ага лопухнулся нужно отдельно запитать. Запитал от лабораторного блока 5V как по феншую. Read voltage 0,0V is outside selected device's operating range: 1,8 V to 5,5 V.

Недолго думая, подумал ещё, пришёл к выводу, что нужно поспать. Поспал. Проснулся, залез в интернет и нашёл схему для прошивки

 

 

post-72370-1340646101_thumb.png

Собрал, запитал.

Read voltage 0,0V is outside selected device's operating range: 1,8 V to 5,5 V.

Борюсь с этим уже не первую неделю) Формум хотел оставить на последок, чтобы лишний раз не беспокоить людей по мелочам. Но у меня ничего не вышло. Утопающий просит спасения, т.к. судя по проблеме рук у меня нет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В первый раз соединил VCC и GND программатора и контроллера и запитал их. Во второй раз всё как на приведённой выше схеме

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Read voltage 0,0V is outside selected device's operating range: 1,8 V to 5,5 V

AVRISP MKii не видит напряжения питания контроллера, о чём и говорит английским по белому.

Вывод AVRISP MKii должен быть соединён с VCC,AVCC контроллера и там должно быть +5V относительно GND.

Проверить можно даже без контроллера, подключив только блок питания +5V к AVRISP MKii. +5V -> VTG; GND -> GND.

Должно поменяться сообщение об ошибке, например, что не может обнаружить контроллер, прочитать сигнатуру ит.п.

Vasily_, контроллер ATmega8, обозначен на схеме в 1 посте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

AVRISP MKii не видит напряжения питания контроллера, о чём и говорит английским по белому.

Вывод AVRISP MKii должен быть соединён с VCC,AVCC контроллера и там должно быть +5V относительно GND.

Проверить можно даже без контроллера, подключив только блок питания +5V к AVRISP MKii. +5V -> VTG; GND -> GND.

Должно поменяться сообщение об ошибке, например, что не может обнаружить контроллер, прочитать сигнатуру ит.п.

Vasily_, контроллер ATmega8, обозначен на схеме в 1 посте.

 

Все выводы подсоеденины. Сейчас решил проверить сам программатор. Подал питание на VTG и GND и тут шляпа, пишет мне 0V ))

Изменено пользователем MySOL

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все выводы подсоеденины. Сейчас решил проверить сам программатор. Подал питание на VTG и GND и тут шляпа, пишет мне 0V ))

Может программатор дохлый.

Изменено пользователем electronics

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может программатор дохлый.

Ёлы-палы. Сам сейчас сижу думаю об этом. Но как такое могло произойти? Всегда подавал только рабочее напряжение

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну так есть два варианта - или шлейф в обрыве или прозвонить Vtg с GND , но я так понимаю источник питания в защиту не уходит. Тогда есть вариант с

Запилил простенькую платку....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну так есть два варианта - или шлейф в обрыве или прозвонить Vtg с GND , но я так понимаю источник питания в защиту не уходит. Тогда есть вариант с

Пичаль и расстройство, Vtg молчит. Хотя это всё очень странно, в даташите написанно, что у мк есть защита от кз

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пичаль и расстройство, Vtg молчит. Хотя это всё очень странно, в даташите написанно, что у мк есть защита от кз

Может напутали с цоколёвкой разъёма? зеркально или вверх ногами, вот и не видит. 2 - VCC; 6 - GND

12\

34 ) На плате, вид сверху на штырьки

56/

 

21\

43 ) Разъём mkII, цветной провод сверху, вид со стороны гнёзд

65/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может напутали с цоколёвкой разъёма? зеркально или вверх ногами, вот и не видит. 2 - VCC; 6 - GND

12\

34 ) На плате, вид сверху на штырьки

56/

 

21\

43 ) Разъём mkII, цветной провод сверху, вид со стороны гнёзд

65/

Благодарю, в даташите распиновка выводов была не со стороны гнёзд а вид сверху, не знал. Вопрос решён.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравстуйте!

Продскажите пожалуйста где у меня ошибка. Я написал программу для ATtiny13A. В симуляторе AVR Studio все работает как надо, а как прошиваю ничего не горит. Пробывал прошить скачаную программу из инета, все заработала.

Это моя первая программа, опыта работы с AVR Studio нет. Программатор AVR Dragon, прошивку программатора обновил вчера через AVR Studio.

.device ATtiny13A
.nolist
.include "C:\Program Files\Atmel\AVR Tools\AvrAssembler2\Appnotes\tn13Adef.inc"
.list

.def temp = r16
.def Delay1 = r17
.def Delay2 = r18
.def Delay3 = r19

.cseg
.org 0

rjmp RESET; Reset Handler
rjmp EXT_INT0; IRQ0 Handler
reti;rjmp PCINT0; PCINT0 Handler
reti;rjmp TIM0_OVF; Timer0 Overflow Handler
reti;rjmp EE_RDY; EEPROM Ready Handler
reti;rjmp ANA_COMP; Analog Comparator Handler
reti;rjmp TIM0_COMPA; Timer0 CompareA Handler
reti;rjmp TIM0_COMPB; Timer0 CompareB Handler
reti;rjmp WATCHDOG; Watchdog Interrupt Handler
reti;rjmp ADC; ADC Conversion Handler

;*******************************************************************************
*******

Reset:
;задержка запуска после сброса
    ldi Temp,0
    ldi Temp,0
    
;Назначаем входы и выходы портов (0-вход, 1-выход)
    ldi temp, 0b111101
    out DDRB, temp

;Включаем подтяжку и задаем начальное состояние выходов
    ldi temp, 0b000010
    out PORTB ,temp
    
;Настраиваем регистр MCUCR на разрешение прерываний с 0 на 1
;и устанавливаем режим Power-down
    ldi temp, 0b00110011
    out MCUCR, temp
    
;разрешаем внешние прерывания на INT0
    ldi temp, 0b01000000
    out GIMSK, temp

sei            ;разрешить прерывания


EXT_INT0:
    sei

    ldi temp, 0b00110011
    out MCUCR, temp
        
    sbis PinB, 1;ждем нажатия кнопки (0-выполняем, 1-пропускаем)
    sleep

puch:;ждем отпускания кнопки
    sbic PinB, 1
    rjmp puch

;Настраиваем разрешение прерываний с 1 на 0
    ldi temp, 0b00110010
    out MCUCR, temp

Loop:
    sbi PortB, 4  ;включаем светодиод          

;задержка 7 милисекунд
    ldi Delay1, 0x78
    ldi Delay2, 0x05
    ldi Delay3, 0x00
    rcall Delay

    cbi PortB, 4  ;тушим светодиод
    
;задержка 1 милисекунда
    ldi Delay1, 0xC8
    ldi Delay2, 0x00
    ldi Delay3, 0x00
    rcall Delay    

;если кнопка не нажата продолжаем гореть
    sbis PinB, 1
    rjmp Loop
    
puch1:;ждем отпускания кнопки
    sbic PinB, 1
    rjmp puch1
    
    rjmp EXT_INT0

    
Delay:
    subi Delay1,1
    sbci Delay2,0
    sbci Delay3,0
    brcc Delay
    ret

Вот схема всего устройства. Это фонарь с магнитным управлением, кнопку нажал светодиод загорелся, еще раз нажал потух и микроконтроллер ушол в спящий режим. Я на первом этапе поставил только геркон, 2 резистора и светодиод, вместо транзистора.

post-28542-1366383768_thumb.png

Изменено пользователем Valek

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очень уж странная у Вас схема... Здесь получается, что при срабатывании мосфета, питание, подаваемое на контроллер, просаживается до ноля.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Продскажите пожалуйста где у меня ошибка. Я написал программу для ATtiny13A.

А инициализация стека?

            ldi        temp, LOW(RAMEND)
            out        SPL, temp

Добавить в самом начале.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...