реклама на сайте
подробности

 
 
> непонятные наводки
JimBaton
сообщение Nov 24 2008, 21:00
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Столкнулся с какими-то странностями.Питаю контроллер от УСБ.Контроллер выдаёт на PB0 логическую 1.При нажатии кнопки 1, порт C должен светить всеми 8 светодиодами, при нажатии второи кнопки соответственно не светить.Так вот когда подносишь палец к кнопке появляются левые наводки и загораются в хаотичном порядке диоды а не то что должно.Кнопки шунтированы через 470 Ом а диоды через 330 Ом.В чем причина?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 29)
VDG
сообщение Nov 24 2008, 21:24
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 845
Регистрация: 10-02-06
Пользователь №: 14 193



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

а походу программа не выполняется, идет постоянный сброс с непредсказуемым поведением. запитайте от нормального блока питания, а не от USB (произносится Ю-ЭС-БИ, а не УСБ), тогда будет понятно виновато ли USB.

Сообщение отредактировал VDG - Nov 24 2008, 21:25


--------------------
Go to the top of the page
 
+Quote Post
МП41
сообщение Nov 25 2008, 06:58
Сообщение #3


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



От USB много раз приходилось питать микроконтроллеры, никогда не было ничего подобного. USB=УПШ smile.gif. А зачем шунтировали диоды?


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
TechMike
сообщение Nov 25 2008, 07:01
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302



Цитата(JimBaton @ Nov 25 2008, 00:00) *
Столкнулся с какими-то странностями.Питаю контроллер от УСБ.Контроллер выдаёт на PB0 логическую 1.При нажатии кнопки 1, порт C должен светить всеми 8 светодиодами, при нажатии второи кнопки соответственно не светить.Так вот когда подносишь палец к кнопке появляются левые наводки и загораются в хаотичном порядке диоды а не то что должно.Кнопки шунтированы через 470 Ом а диоды через 330 Ом.В чем причина?


От USB не питал пока, но когда делал схему на монтажке и силовая часть была на этой же плате, то обязательно подпирал на +питания каждый вход с датчиками или кнопками. Иначе контроллер сбрасывался периодически, при включении нагрузки.
Go to the top of the page
 
+Quote Post
sysel
сообщение Nov 25 2008, 09:42
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 3-07-07
Пользователь №: 28 852



Может быть JTAG не отключен ?
Чем тактируется микроконтроллер ?
Go to the top of the page
 
+Quote Post
nick-l
сообщение Nov 25 2008, 09:59
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 25-08-05
Пользователь №: 7 966



Резисторы необходимо ставить не шунтирующие а токоограничивающие (то есть последовательные) и не забыли ли подключть VCC (10 pin) к +5, CND (11 pin, 31pin). От USB макетки питал, все работало нормально. На схеме то основного, питания и включения резисторов нет, а согласно словесного описания они включены неверно.
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 10:09
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Да какая разница как УСБ произносится.Всем же понятно что это такое.У нас тут не американцы, а русские люди.Шунтировал диод и кнопки потому что так говорится во многих источниках что надо шунтировать чтобы не шел слишком большой ток.JTAG отключен.Контроллер тактируется от внцтреннего источника 8 Мгц.Я уже пробовал и напрямую без шунтирования.Вот только пока что нет возможности использовать обычный 5 вольтовый источник питания, нет под рукои.Когда заливаешь програмку типа бегущих огнеи то все нормально работает, а когда подключаю кнопки и делаю простеишую программу чтобы по нажатии кнопки загорался диод то ничего не работает.Работает но криво.Тоесть логическии ноль становится нифига не ноль а что-то среднее между нулём и единицей, тоесть диод еле светится а не должен так.

TechMike
подьясните что вы имеете ввиду под словом подпирал?

Agnd и Gnd к минусовои клемме, Avcc и Vcc к плюсовои.На схеме просто не нарисовал резисторы.Резисторы идут от каждой ножки контроллера последовательно с диодом или кнопкои.Похоже я не правильно выразился словом шунтирующие, подтягивающие вроде будет правильно.

Сообщение отредактировал JimBaton - Nov 25 2008, 10:12
Go to the top of the page
 
+Quote Post
МП41
сообщение Nov 25 2008, 10:15
Сообщение #8


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



Шутнтирование - это соединение в параллель, для ограничения тока обычно последовательно соединяют. Лучше покажите полную схему со всеми деталями. Вы её много раз видели и хорошо помните, людям же надо посмотреть и как можно быстро понять, что и как на ней.

Сообщение отредактировал МП41 - Nov 25 2008, 10:18


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 10:43
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Схема


На схеме еще должен быть резистор на 10КОм на ресете.Забыл нарисовать.

Сообщение отредактировал JimBaton - Nov 25 2008, 10:45
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
МП41
сообщение Nov 25 2008, 10:51
Сообщение #10


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



На PB0 надо лог. 0 подать, а на PA0, PA1 включить внутренние подтягивающие резисторы.


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
bbill
сообщение Nov 25 2008, 10:53
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 21-10-05
Пользователь №: 9 941



Фактически входы А0,А1 у Вас висят в воздухе. Если они подтянуты внутренними резисторами к питанию, то, что нажата кнопка, что нет-все едино. Вам нужно входы А0,А1 притянуть через резисторы к общему проводу и контролировать появление "1" на входах.
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Nov 25 2008, 10:54
Сообщение #12


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Цитата(JimBaton @ Nov 25 2008, 15:43) *
Схема
На схеме еще должен быть резистор на 10КОм на ресете.Забыл нарисовать.

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


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
МП41
сообщение Nov 25 2008, 10:57
Сообщение #13


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



Цитата(bbill @ Nov 25 2008, 12:53) *
Фактически входы А0,А1 у Вас висят в воздухе. Если они подтянуты внутренними резисторами к питанию, то, что нажата кнопка, что нет-все едино. Вам нужно входы А0,А1 притянуть через резисторы к общему проводу и контролировать появление "1" на входах.

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


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 11:28
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



PB0 служит для генерации логической 1 которая подается через кнопки на А0,А1.Тоесть если я нажму одну из кнопок то на соответствующей ножке порта должна появиться логическая 1 и должно произоити определенное действие заложеное внутреннеи программои контроллера.На Протеусе все без проблем работает.
Go to the top of the page
 
+Quote Post
МП41
сообщение Nov 25 2008, 11:33
Сообщение #15


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



Цитата(JimBaton @ Nov 25 2008, 13:28) *
PB0 служит для генерации логической 1 которая подается через кнопки на А0,А1.Тоесть если я нажму одну из кнопок то на соответствующей ножке порта должна появиться логическая 1 и должно произоити определенное действие заложеное внутреннеи программои контроллера.На Протеусе все без проблем работает.

А питанием сгенерировать лог. 1 нельзя никак?
В протеусе нет помех и наводок. Вобщем, кнопки так обычно не делают. Обычно кнопка коротит на землю подтягивающий к питанию резистор, а факт "приземления" регистрируется портом.


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
nick-l
сообщение Nov 25 2008, 11:34
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 25-08-05
Пользователь №: 7 966



Эта схема должна работать если на PB0 выставлять НОЛЬ о на входах проверять ноль при включенных подтягивающих резисторах, без резисторов когда поднести палец к кнопке на входе может быть все что угодно (за счет наводки)
Go to the top of the page
 
+Quote Post
МП41
сообщение Nov 25 2008, 11:40
Сообщение #17


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



Теоретически на PB0 можно генерировать меандр, а на PA0 или PA1 измерять частоту и тем самым определять нажатие, но согласитесь, это не самый оптимальный и надёжный путь. Есть проверенное и логичное решение, просто воспользуйтесь им.


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 12:20
Сообщение #18


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Значит схема будет такой?PortA=&b11111111, с включеными подтягивающими резисторами.При нажатии кнопки я должен регистрировать на PA0 или PA1 логическии 0?Тоесть если включены подтягивающие резисторы то на всем порте соответственно держится логическая 1.Кнопки заземлены.Как только нажимаю кнопку логическая 1 идущая с порта А встречается с землёй и получается коротыш?.Или подтягивающие резисторы и включаются для того чтобы не было коротышей?

Сообщение отредактировал JimBaton - Nov 25 2008, 12:27
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
nick-l
сообщение Nov 25 2008, 12:35
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 25-08-05
Пользователь №: 7 966



Так как выводы PA0 и PA1 еще при инициализзации должны быть сконфигурированы на вход, то никакого коротыша не получается, а подтягивающий резистор то и нужен, для того чтобы на входе небыло непонятного состояния (или 1 кнопка отпущена или 0 кнопка нажата), это и есть "классика" для подключения малого колличества кнопок (которая во всех учебниках описана)
Go to the top of the page
 
+Quote Post
TechMike
сообщение Nov 25 2008, 12:36
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302



Цитата(JimBaton @ Nov 25 2008, 13:09) *
TechMike
подьясните что вы имеете ввиду под словом подпирал?


В моем случае была кнопка на один из портов tiny2313. Кнопка замыкала вход на землю, от +питания стоят резистор 1.5к на вход МК. Таким образом я в программе ловлю лог.0 на входе МК, что означает нажатие кнопки. И как показала практика, это хорошо защищило от помех по силовой части.
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 12:46
Сообщение #21


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



кароче все получилось

пока пробую писать на Бэйсике.Вот код.Как для начинающего это кажется немного странным.

$regfile = "m16def.dat"
Config Portc = Output
Config Porta = Input
Config Portb = Output
Porta = &B11111111 включаем подтягивающие резисторы и соответственно порт выдает логическии 1


Do
If Pina.0 = 0 Then Portc = &B11110000 при появлении на ноге А0 лог 0, записываем в PortC 11110000

If Pina.1 = 0 Then Portc = &B00001111
If Pina.2 = 0 Then Portc = &B00111100
If Pina.3 = 0 Then Portc = &B11111111
Loop
Go to the top of the page
 
+Quote Post
МП41
сообщение Nov 25 2008, 13:11
Сообщение #22


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



Ничего, привыкните, потом смешно будет smile.gif. Кстати и светодиоды обычно включают анодом к питанию, а катодом через резистор к МК. Считается, что в этом направлении МК бОльший ток держит.


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
VDG
сообщение Nov 25 2008, 14:06
Сообщение #23


Знающий
****

Группа: Участник
Сообщений: 845
Регистрация: 10-02-06
Пользователь №: 14 193



Цитата(МП41 @ Nov 25 2008, 17:11) *
Считается, что в этом направлении МК бОльший ток держит.

Считалось. Сейчас у большинства контроллеров нагрузочная способность выводов сбалансирована для втекающих и вытекающих токов.


--------------------
Go to the top of the page
 
+Quote Post
nick-l
сообщение Nov 25 2008, 14:38
Сообщение #24


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 25-08-05
Пользователь №: 7 966



в микросхемах на КМОП элементах верхний выходной ключ на p-канальном транзисторе, а нижний на n-канальном транзисторе, у p-канального сопротивление открытого канала немного выше чем у n-канального, поэтому при том же самом токе нагрузке падение на выходных ключах элемента вслучае подключения нагрузки к плюсу будет немного менше и соответственно немного меньше и рассеиваемая мощность (гдето на 0,1 вольна меньше, и в даташите это в электрических характеристиках тоже написано), это хоть и 2 мВт на элемент но всеже...
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 15:51
Сообщение #25


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Цитата(МП41 @ Nov 25 2008, 16:11) *
Ничего, привыкните, потом смешно будет smile.gif. Кстати и светодиоды обычно включают анодом к питанию, а катодом через резистор к МК. Считается, что в этом направлении МК бОльший ток держит.


Неудобно подключать таким образом диод так как возникает путаница.Если нужно зажечь диод, то на порт нужно подать не лог 1 а лог 0
Go to the top of the page
 
+Quote Post
bloodden
сообщение Nov 25 2008, 17:20
Сообщение #26


Бывалый
***

Группа: Validating
Сообщений: 375
Регистрация: 19-10-05
Из: Kiev, UA
Пользователь №: 9 853



Цитата(JimBaton @ Nov 25 2008, 17:51) *
Неудобно подключать таким образом диод так как возникает путаница.Если нужно зажечь диод, то на порт нужно подать не лог 1 а лог 0

А что Вам мешает перед записью в порт инвертировать?


--------------------
Заходите кому надо на мой сайт
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 18:43
Сообщение #27


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



ну все равно как-то не так.Не привычно.Ну со временем-то конечно ко всему привыкаешь.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Nov 25 2008, 20:39
Сообщение #28


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(JimBaton @ Nov 25 2008, 21:43) *
ну все равно как-то не так.Не привычно.Ну со временем-то конечно ко всему привыкаешь.

Не надо привыкать к плохому.
1. Будь мэномwink.gif используй С, а не Basic (это намного полезней и продуктивней).
2. Привыкай задавать числовым константам имена - тогда будет совершенно неважно что есть 0, а что 1.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Nov 25 2008, 20:45
Сообщение #29


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Ну у меня есть свои соображения насчет бэйсика.Хочу хоть чутка разобраться что такое контроллер.На бэйсике же всяко полегче для начинающего.А потом и на СИ переберусь.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Nov 25 2008, 20:56
Сообщение #30


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(JimBaton @ Nov 25 2008, 23:45) *
Ну у меня есть свои соображения насчет бэйсика.Хочу хоть чутка разобраться что такое контроллер.На бэйсике же всяко полегче для начинающего.А потом и на СИ переберусь.
Неверный ответ.
Настоятельно рекомендую ASM, а никак уж не basic - он никаким боком не будет полезен, коме Экселя и Аксеса. Поймёшь ASM никаких трудностей с С вообще не будет. Это я как бывший препод со стажем говорюwink.gif


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 11:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01664 секунд с 7
ELECTRONIX ©2004-2016