Dron Kosher

В протеус работает, в железе нет...

18 сообщений в этой теме

Dron Kosher    0

Привет ребята.

Стараюсь соединить Atmega8 и матрицу на MAХ7219 посредством аппаратного SPI

в протеусе все прекрасно работает, а вот в железе получается полная чушь.

МК проверял простыми прошивками навроде мигать диодом - он работает.

Матрица тоже работает проверял в ардуине.

 

фьюзы МК не трогал, проверял - стоят дефолтные. 3F D9 E1

в коде выставил 1MHz . в протеусе тоже повторил все фьюзы

и всеравно в протеусе работает - в железе какое то невнятное мигание хаотичное...

 

Код и компиляция в Atmel Studio 7.0

Прошиваю через USBASP и AVR_DUDEPROG 3.3.

 

чую решение проблемы какое то элементарное, но я уже пару дней ничего не могу понять...

Может кто сталкивался с таким, помогите :)

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


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

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
COKPOWEHEU    248

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

Разумеется, надо прозвонить все контакты и соединения. Больше половины проблем возникает именно из-за того что где надо нет контакта, где не надо - есть, а где-то он не туда. Причем это случается не только у новичков.

  • Одобряю 1

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


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

контакты в порядке

попробовал прошивку с програмным SPI тоже не работает. перекидывал на другие порты - не помогло

а в протеусе всё работает как должно...

 

неопнятная фигня...

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


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

Предделитель выключен в фюзах на МК когда прошиваете? 
 

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


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

фьюзы вот такие, я честно говоря не в курсе кто из них предделитель.

59b3ab0fa08a6_-1.jpg.777741a49f1477934b143c000e1e96fa.jpg

пробовал ставить на 8 Мгц фьюзы, вот так:

Скрытый текст

 

59b3aba1d6acb_-2.jpg.3368bc53ae1b6991ed06fe8ce9d6a20e.jpg

 

общая картина не изменилась

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

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


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

В исходном коде который писал какая частота стоит в  #define F_CPU ?
В настройках невижу фюза на предделение частоты на 8, ХЗ почему. Сделай в проекте дефайновскую частоту 8Mhz проверь с ней в Протеусе, а потом пробуй в железе.

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


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

Частоту ставил  разную, вот таким образом:

вариант1 #define F_CPU 1000000UL для первой картинки фьюзов

вариант2 #define F_CPU 8000000UL для второй

всё по даташиту...

и так и сяк пробовал

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


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

Частота не должна играть роли, ведь SPI синхронный интерфейс. Разумеется, при условии что она не выше предельной для ведомого.

Еще могут быть ноги не настроены на выход (мы ж кода не видели), или к микросхеме не подключены какие-то элементы вроде токозадающего резистора, или все земли, мало ли (схему и плату мы тоже не видели)

Пока что я склоняюсь к мысли о неправильной разводке.

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


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

МК торчит в макетке, без какой либо обвязки. может и правда нужно обвязку какую добавить?

ноги настроены в протеусе же все же работает...

 

 

 

 

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


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

Протеус многое прощает. Земли и питания все подключены? Кварц, блокировочные конденсаторы? Ресет и ноги подтянуты к питанию?

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


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

земля и питание подключены, остального нету...

может подскажите какая минимальная обвязка требуется для Atmega8?

 

 

 

 

 

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


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

Обязательное - питание (оба!), земля (обе!)

Крайне желательно - фильтрующие конденсаторы, подтяжка RESET.

При настройки на внешний кварц - кварц и его конденсаторы.

При использовании SPI в режиме мастера - либо настроить вывод CS на выход, либо подтянуть к питанию (см. даташит)

Пока не увидим схемы, платы и кода - гадание на кофейной гуще.

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


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

спасибо всем за помощь

я пока склоняюсь к варианту - не хватает обвязки.( т.к. её нет вообще никакой)

т.к. код я использую разный, чужой из самых разных мест, а картина одна и таже  (описана в заголовке )

 

решил заказать отладочную плату для атмег, а затем уж продолжить мучения :)

 

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


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

Отладочную плату для атмег нужно было заказать лет 7 назад. Обвязки там минимум, пересильте себя, изучите вопрос. Припаять 4 конденсатора, по-моему совсем не проблема.

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


Ссылка на сообщение
Поделиться на других сайтах
Dron Kosher    0
3 часа назад, GOR23 сказал:

Отладочную плату для атмег нужно было заказать лет 7 назад. Обвязки там минимум, пересильте себя, изучите вопрос. Припаять 4 конденсатора, по-моему совсем не проблема.

7 лет назад я даже не думал про это :)

сижу вот изучаю, смотрю сейчас на платку с минимальной обвязкой атмеги там 3 резистора, 4 кондера и кварц

причем

два кондера идут на кварц, если от внутреннего RC генератора работать они не нужны.

2 резистора на светодиодки идут - тоже не нужны получается.

еще один ризистор на подтяжку резета к + питания и кнопочка к земле - хз, не вижу в этом особого смысла.

остаются два кондера, которые видимо по питанию как сглаживающие... неонятно пока

 

и вот неясно как это вот всё может повлиять на работу МК :)

вроде вообще никак.

 

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


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

Да, именно это я описал. Электролит + керамика от питания до земли, резистор 1 - 10 кОм от питания до ресета. Кондеры 20-60 пФ от XTAL1, XTAL2 до земли. Не забыть соединить оба питания (поскольку сверхточность от аналоговой части не нужна - можно соединить напрямую) и обе земли (тут уже независимо от точности).

Ну и внимательно посмотреть обвязку контроллера светодиодов, включая напряжения питания и токозадающий резистор.

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


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

заработала моя фигня, даже обидно что я так долго тупил и не слышал ваших советов :)

действительно достаточно было подключить питание к AREF, AVCC и землю на 22 лапку

 

спасибо вам ребята :)

 

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


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

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас