Easyelectronics.ru

Электроника для всех
Текущее время: 27 мар 2017, 11:39

Часовой пояс: UTC + 5 часов



    • Изготовление печатных плат
    • Создание принципиальных схем и проектирование печатных плат
    • Симуляция работы на spice моделях
    • Просмотр GERBER файлов

Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Почему высокий уровень на пине?
СообщениеДобавлено: 24 окт 2016, 21:47 
Свой человек

Зарегистрирован: 15 авг 2016, 08:50
Сообщения: 80
Изображение
Кароч вот код начальной инициализации. Вопрос- почему пин РА0 находиться в высоком состоянии??? как будто он пулл ап на положительную шину.
Попробовал поставить внешний пулл даун резистор и все нормально стало, но без резюка - высокий уровень???
Код:
void PIN_MANAGER_Initialize(void) {
    LATA = 0x00;
    TRISA = 0x0B;
    ANSELA = 0x02;
    WPUA = 0x00;

    OPTION_REGbits.nWPUEN = 0x01;

    APFCON = 0x00;

    // enable interrupt-on-change individually   
    IOCAP0 = 1;

    // enable interrupt-on-change globally
    INTCONbits.IOCIE = 1;

}

void PIN_MANAGER_IOC(void) {
    if ((IOCAP0 == 1) && (IOCAF0 == 1)) {
        //@TODO Add handling code for IOC on pin RA0
        flag_PIR = 1;
        // clear interrupt-on-change flag
        IOCAF0 = 0;
        INTCONbits.IOCIF = 0;
    }
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 24 окт 2016, 23:08 
Свой человек

Зарегистрирован: 14 сен 2015, 08:50
Сообщения: 167
Откуда: Россия, Ростов-на-Дону
Я пиками не занимался, но думаю, что Вы настроили выход в "высокоимпедансном режиме", т.е. он без внутренней подтяжки. Соответственно на таком выходе в реальности может быть все что угодно. В протеусе после замыкания кнопкой на высокий уровень и последующим размыкании, будет некоторое время высокий уровень, а щатем он "стечет" в низкий.
Т.е. просто не надо выходы оставлять "в воздухе", т.е. без подтяжки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 25 окт 2016, 20:17 
Свой человек

Зарегистрирован: 15 авг 2016, 08:50
Сообщения: 80
во-первых это вход, во вторых а каким образом мне настроить по другому? или я вынужден ставить внешнюю подтяжку на землю чтоб там был стабильный ноль?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 25 окт 2016, 20:40 
Свой человек

Зарегистрирован: 14 сен 2015, 08:50
Сообщения: 167
Откуда: Россия, Ростов-на-Дону
roman89 писал(а):
во-первых это вход, во вторых а каким образом мне настроить по другому? или я вынужден ставить внешнюю подтяжку на землю чтоб там был стабильный ноль?

Хорошо, а какой должен быть уровень? Был высокий, затем кнопку отключили... почему уровень должен был измениться? Только если заряд куда-то стечет, но вход с высоким сопротивлением, в идеале с бесконечным, т.е. теоритически уровень так и должен оставаться высоким. В реальности он конечно стечет, но могут быть и наводки, т.е. на пине самопроизвольно появится высокий уровень.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 25 окт 2016, 21:36 
Свой человек

Зарегистрирован: 15 авг 2016, 08:50
Сообщения: 80
я кнопку даже не нажимаю. он с самого начала высокий в протеусе по крайней мере.
кароч ты советуешь просто ставить внешний 1к пулл даун резюк и все??


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 25 окт 2016, 22:03 
Свой человек

Зарегистрирован: 09 июн 2016, 13:49
Сообщения: 69
Откуда: Севастополь
Т.е. в железе не пробовал, а только "в протеусе по крайней мере" ?
Ну и стоит ли из-за такой херни людей отвлекать ?

Любители посимулировать должны знать, что если пин в PIC-е настроен как вход и у него выключена подтяжка, то он болтается в воздухе. Учитывая то, что он КМОП, напряжение на нем НЕОПРЕДЕЛЕНО, и может быть любым, хоть переменкой с 50Гц.
А то, что протеус его показывает высоким - это спецом для лохов, которые даташиты не читают.


Последний раз редактировалось -ALS- 25 окт 2016, 22:10, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 25 окт 2016, 22:05 
Старожил

Зарегистрирован: 10 окт 2014, 00:48
Сообщения: 2518
(и без "хоть" ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 25 окт 2016, 22:11 
Свой человек

Зарегистрирован: 09 июн 2016, 13:49
Сообщения: 69
Откуда: Севастополь
тоже верно :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 27 окт 2016, 09:52 
Свой человек

Зарегистрирован: 15 авг 2016, 08:50
Сообщения: 80
в реале тоже пробовал - прерывание не наступало вообще. я вродь где то видел что щас у пиков встроенная подтяжка к земле тоже есть, так это? то есть не пулл ап а пулл даун подтяжка. если так то как его включить чтоб не вешать внешний резюк?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 28 окт 2016, 04:00 
Свой человек

Зарегистрирован: 09 июн 2016, 13:49
Сообщения: 69
Откуда: Севастополь
Нет, пулл дауна у 12F1xxx точно нет.
Разве, может, у PIC24/PIC30, про них я не скажу. есть, не у всех.
В вашем случае - только внешний резистор.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему высокий уровень на пине?
СообщениеДобавлено: 28 окт 2016, 08:21 
Свой человек

Зарегистрирован: 14 сен 2015, 08:50
Сообщения: 167
Откуда: Россия, Ростов-на-Дону
-ALS- писал(а):
Нет, пулл дауна у 12F1xxx точно нет.
Разве, может, у PIC24/PIC30, про них я не скажу. есть, не у всех.
В вашем случае - только внешний резистор.

Или наоборот, если есть подтяжка к питанию - кнопку к земле.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB