|
непонятные наводки |
|
|
|
Nov 25 2008, 11:34
|
Участник

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

|
Эта схема должна работать если на PB0 выставлять НОЛЬ о на входах проверять ноль при включенных подтягивающих резисторах, без резисторов когда поднести палец к кнопке на входе может быть все что угодно (за счет наводки)
|
|
|
|
|
Nov 25 2008, 12:20
|
Участник

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

|
Значит схема будет такой?PortA=&b11111111, с включеными подтягивающими резисторами.При нажатии кнопки я должен регистрировать на PA0 или PA1 логическии 0?Тоесть если включены подтягивающие резисторы то на всем порте соответственно держится логическая 1.Кнопки заземлены.Как только нажимаю кнопку логическая 1 идущая с порта А встречается с землёй и получается коротыш?.Или подтягивающие резисторы и включаются для того чтобы не было коротышей?
Сообщение отредактировал JimBaton - Nov 25 2008, 12:27
Эскизы прикрепленных изображений
|
|
|
|
|
Nov 25 2008, 12:35
|
Участник

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

|
Так как выводы PA0 и PA1 еще при инициализзации должны быть сконфигурированы на вход, то никакого коротыша не получается, а подтягивающий резистор то и нужен, для того чтобы на входе небыло непонятного состояния (или 1 кнопка отпущена или 0 кнопка нажата), это и есть "классика" для подключения малого колличества кнопок (которая во всех учебниках описана)
|
|
|
|
|
Nov 25 2008, 12:36
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302

|
Цитата(JimBaton @ Nov 25 2008, 13:09)  TechMike подьясните что вы имеете ввиду под словом подпирал? В моем случае была кнопка на один из портов tiny2313. Кнопка замыкала вход на землю, от +питания стоят резистор 1.5к на вход МК. Таким образом я в программе ловлю лог.0 на входе МК, что означает нажатие кнопки. И как показала практика, это хорошо защищило от помех по силовой части.
|
|
|
|
|
Nov 25 2008, 12:46
|
Участник

Группа: Участник
Сообщений: 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
|
|
|
|
|
Nov 25 2008, 14:38
|
Участник

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

|
в микросхемах на КМОП элементах верхний выходной ключ на p-канальном транзисторе, а нижний на n-канальном транзисторе, у p-канального сопротивление открытого канала немного выше чем у n-канального, поэтому при том же самом токе нагрузке падение на выходных ключах элемента вслучае подключения нагрузки к плюсу будет немного менше и соответственно немного меньше и рассеиваемая мощность (гдето на 0,1 вольна меньше, и в даташите это в электрических характеристиках тоже написано), это хоть и 2 мВт на элемент но всеже...
|
|
|
|
|
Nov 25 2008, 15:51
|
Участник

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

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

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

|
ну все равно как-то не так.Не привычно.Ну со временем-то конечно ко всему привыкаешь.
|
|
|
|
|
Nov 25 2008, 20:39
|

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

|
Цитата(JimBaton @ Nov 25 2008, 21:43)  ну все равно как-то не так.Не привычно.Ну со временем-то конечно ко всему привыкаешь. Не надо привыкать к плохому. 1. Будь мэном  используй С, а не Basic (это намного полезней и продуктивней). 2. Привыкай задавать числовым константам имена - тогда будет совершенно неважно что есть 0, а что 1.
--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
|
|
|
|
|
Nov 25 2008, 20:45
|
Участник

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

|
Ну у меня есть свои соображения насчет бэйсика.Хочу хоть чутка разобраться что такое контроллер.На бэйсике же всяко полегче для начинающего.А потом и на СИ переберусь.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|