порты ввода/вывода Attiny2313

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

Здравствуйте, столкнулся с такой проблемой спаял не большую платку и для индикации работы микроконтроллера подсоединил светодиод к одному порту.
Так вот теперь не как не могу заставить его гореть =))))))))
код простейший вывести 1 на все ноги порта D
пони прог говорит что программируется и всё ок мерю напряжения на ногах контроллера на каждом по разному от 0.1 до 0.4В :dont_know:
а у порта B где-то и по 1В есть
питание мерил 4.5В подаётся.

в чём может быть дело ?
код

Код: Выделить всё

;------------------------- Псевдокоманды управления

.include "tn2313def.inc"	; Присоединение файла описаний
.list					; Включение листинга

.def	temp = r16		; Определение главного рабочего регистра
.def 	rab = r17		; Определение рабочего регистра
	        .cseg 			; Выбор сегмента программного кода
		.org	0		; Устанеовка текущего адреса на ноль
;-------------------------- Инициализация портов ВВ
		lDI		temp,0xFF
		out		DDRD,temp	; Записываем 11111111 в DDRD (порт PD на выход)
		out		PORTD, temp	; Записываем его же в PORTD (включаем внутр. резисторы)
;------------------------- Начало основного цикла программы
		LDI		rab,0xff
main:	
		out		portD,rab
		rjmp	main	
Собрал только левую часть индикатор ещё не припаян
Изображение
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15693
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

:))) :))) :)))
а где анод???
(скоко валерианки принялось?)
Реклама
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1327
Зарегистрирован: Вс дек 11, 2011 05:43:30
Откуда: Екатеринодар

Сообщение conler »

:))
Последний раз редактировалось conler Пн июн 11, 2012 07:49:10, всего редактировалось 1 раз.
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

BOB51 писал(а)::))) :))) :)))
а где анод???
(скоко валерианки принялось?)
Вы про светодиод ? я его 3 раза перепаивал =) теперь правильно стоит, но я всё равно мерю напряжение на ногах контроллера а там оно как-то маленькое =(
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 15693
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

хи-хи... :tea:
наиболее распространенный вариант:
+питания -> резистор токоограничитель -> анод светодиода -> катод светодиода -> вывод микросхемы
светодиод включен при логическом нуле выданном в соответствующий бит порта
тогда можно гарантировать, что на выводе порта будет где-то 0,4-0,8 вольта и от при "статическом" состоянии
ежли подан какой либо меандр - обычный вольтметр ничего путнего не покажет :)
Реклама
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

А в моём случае что ? почему может не работать ?
добился того что при считывании fuse или памяти он мигает раза 2 только почему?
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

pokk, Вы сконфигурировали весь порт D на ВЫХОД, о каких подтягивающих резисторах может идти речь в коде? Более того, Вы выставили 1 на всех ногах, включая те, на которых кнопки. Кнопки, которые подключены к земле. Не трудно догадаться, что будет при нажатии на кнопку...
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

pokk, Вы сконфигурировали весь порт D на ВЫХОД, о каких подтягивающих резисторах может идти речь?
Это была скорее всего опечатка (взял старый код а комментарии не изменил).
Изображение
Вот по таблице из даташита на ATTINY2313 на стр 47
DDxn=1 PORTxn=1 Output High (Source) как я понял на выходе порта логическая единица
Более того, Вы выставили 1 на всех ногах, включая те, на которых кнопки. Кнопки, которые подключены к земле.
Кнопки я почти не трогал =)) но было дела как пару раз нажал не знаю в какой прошивки
Не трудно догадаться, что будет при нажатии на кнопку...
Пойдёт ток =))))) :) Получается у меня эти два пина умерли ?
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

То что Вы даташит читаете, это конечно очень хорошо. И конфигурацию Вы поняли верно. :)
pokk писал(а):Пойдёт ток =)))))
Угу. Короткого замыкания. :wink: Попробуйте на другой порт светик перебросить, код-то верный. Правда основной цикл можно и пустым оставить, Вы уже записали в порт

Код: Выделить всё

out      PORTD, temp   ; Записываем его же в PORTD (выставив 1 на всех пинах порта)
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

edm2007, сделал как вы и написали повесил ещё один светодиод,как рассказал ВОВ51
наиболее распространенный вариант:
+питания -> резистор токоограничитель -> анод светодиода -> катод светодиода -> вывод микросхемы
но реакции не какой это не дало. решил проверить fuse при нажатии на кнопку считывания оба этих светодиода мигнули 2 раза после я изменил код так что бы только один определённый загорелся и при считывании fuse один и мигнул как и надо было. так же они мигают при выполнении любой операции в пони прог. изредка мигают когда подсоединяю разъём =)
что-то мне тут кажется с тактовым сигналом не то (у меня правда у кварца одного кондёра нету =)),но так как мк программируется и считывает значит он работает от внутреннего генератора )
Изображение
с фьюзами я уже по баловался не много не какого результата не дало :(
CKSEL3..0=0100 внутренний RC генератор
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Да, если программатор МК видит, то с тактирование все нормально. Питание МК-то в норме? А то вот это
pokk писал(а):...они мигают при выполнении любой операции в пони прог...
на паразитное питание похоже...
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

Нормальное 4.5В
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

на паразитное питание похоже...
возможно чего-то паразитное =) у меня тут 2 провода идут (SCK) и (MISO)
они могут влиять ?
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Я немного про другое. :) Вывод Reset МК (1) к плюсу питания подтянут через резистор?
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

Нет сейчас сделаю =)
edm2007,благодарю за помощь теперь всё заработало !! ура =) :))
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

Т.е у меня была проблема в то что пин reset находился в высокоомном состоянии и ловил помехи и соответственно мк каждый раз перезагружался или даже не включался. А при программировании от программатора подавался сигнал логической единички и на короткое время мк выполнял программу так ?
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Вот и замечательно. :) Вообще у МК есть встроеный резистор на этой линии, но его номинал слишком высокий, чтобы нормально удержать линию. Потому обязательно нужно подтягивать внешним резистором. Как правило, достаточно 10К.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Сообщение pokk »

Вообще у МК есть встроеный резистор на этой линии, но его номинал слишком высокий, чтобы нормально удержать линию.
Опередили с ответом только что хотел узнать зачем он там нужен :))
Ещё раз спасибо всем!!!
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»