Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Своими руками

Своими руками Завершенные и текущие проекты, хард & софт

Ответ
 
Опции темы Опции просмотра
Старый 31.08.2017, 05:10   #1
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Сенсорный ввод на PIC

Доброго всем!

Пытаюсь собрать сенсорную панельку на PIC18F2580. И теорию и схему взял из статьи на Хабре: https://geektimes.ru/post/256674/

Так вот, уже на этапе калибровки контроллер не хочет работать как задумано. Программа стопорится на первом же цикле while, будто никакого заряда ёмкости и не происходит вовсе:

Код:
void CallibrateButtons(void) {
TRISB &= 0b11111000;  // порт на выход
LATB  &= 0b11111000;  // в порт ноль
idle_millisec = 2; OSCCON = OSCCON_START_STATE; SLEEP(); // Ждём пока стечёт заряд
microsec = 0;              // Счётчик микросекунд, инкементируется таймером
TMR0H = TIMER0_H; TMR0L = TIMER0_L; // Установка таймера на прерывание каждые 5с
TMR0ON = 1;                                      // Включили таймер
TRISB |= 0b00000111;                         // Порт на вход
while ( RB0 == 0 ) { __delay_us(1); };    // Вот тут висиииим =(
TMR0ON = 0;
button_1_open_time = microsec + 10; }
На всякий случай: резистор 1.3 МОм, конденсатор 27 пФ.

Есть идеи у кого-нибудь, с чем это может быть связано?
CocuckuH вне форума   Ответить с цитированием
Старый 31.08.2017, 09:24   #2
pasha_zv
Senior Member
 
Аватар для pasha_zv
 
Регистрация: 17.04.2010
Адрес: Ставрополь
Возраст: 46
Сообщений: 388
Вес репутации: 612/37
pasha_zv is a name known to allpasha_zv is a name known to allpasha_zv is a name known to allpasha_zv is a name known to allpasha_zv is a name known to allpasha_zv is a name known to all
По умолчанию Re: Сенсорный ввод на PIC

плату от флюса нормально то отмыл?
а то бывали чудеса.
__________________
не спится, не спится, не спиться бы мне ...
pasha_zv вне форума   Ответить с цитированием
Старый 31.08.2017, 12:34   #3
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от pasha_zv Посмотреть сообщение
плату от флюса нормально то отмыл?
а то бывали чудеса.
Да это ж ёмкостной датчик, ему флюс по боку должен быть...
CocuckuH вне форума   Ответить с цитированием
Старый 31.08.2017, 12:38   #4
DimaS
Senior Member
 
Регистрация: 05.04.2008
Адрес: Israel
Возраст: 44
Сообщений: 1,407
Вес репутации: 2098/70
DimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond repute
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от CocuckuH Посмотреть сообщение
Да это ж ёмкостной датчик, ему флюс по боку должен быть...
А утечка?
DimaS вне форума   Ответить с цитированием
Старый 31.08.2017, 12:39   #5
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,318
Вес репутации: 4442/103
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от CocuckuH Посмотреть сообщение
Да это ж ёмкостной датчик, ему флюс по боку должен быть...
ничего не получится. физика процесса не понята тс.
ampersant на форуме   Ответить с цитированием
Старый 31.08.2017, 12:50   #6
maagalex
Senior Member
 
Аватар для maagalex
 
Регистрация: 25.02.2007
Адрес: &Alex==Israel.BatYam
Возраст: 41
Сообщений: 4,109
Вес репутации: 2313/104
maagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond reputemaagalex has a reputation beyond repute
Отправить сообщение для maagalex с помощью ICQ Отправить сообщение для maagalex с помощью MSN Отправить сообщение для maagalex с помощью Skype™
По умолчанию Re: Сенсорный ввод на PIC

Зачем так мучиться?
https://youtu.be/KmoG8AZ5bqg
maagalex вне форума   Ответить с цитированием
Старый 31.08.2017, 13:41   #7
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от maagalex Посмотреть сообщение
Зачем так мучиться?
https://youtu.be/KmoG8AZ5bqg
Дак можно вообще тогда ничё не делать, купить ардуину и скетчей накачать.
CocuckuH вне форума   Ответить с цитированием
Старый 31.08.2017, 13:42   #8
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от DimaS Посмотреть сообщение
А утечка?
Утечка с чего и куда?
CocuckuH вне форума   Ответить с цитированием
Старый 31.08.2017, 18:31   #9
Guaho
Senior Member
 
Аватар для Guaho
 
Регистрация: 28.06.2013
Возраст: 45
Сообщений: 660
Вес репутации: 1432/37
Guaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud ofGuaho has much to be proud of
По умолчанию Re: Сенсорный ввод на PIC

На мой взгляд, ёмкость конденсатора маловата. Чем меньше эта ёмкость, тем меньше влияние ёмкости тела человека на время заряда. Увеличьте ёмкость до 100 пФ, как в оригинальной схеме.
Guaho вне форума   Ответить с цитированием
Старый 31.08.2017, 18:46   #10
DimaS
Senior Member
 
Регистрация: 05.04.2008
Адрес: Israel
Возраст: 44
Сообщений: 1,407
Вес репутации: 2098/70
DimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond reputeDimaS has a reputation beyond repute
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от CocuckuH Посмотреть сообщение
Утечка с чего и куда?
Между входом проца и землей/питанием, между сконцами мегомного резистора, между обоими концами конденсатора.
Если флюс активный, и небыл прогрет до соотв. температуры, или просто дерьмовый флюс - оно все вполне может быть электропроводно, и для высокоимпедансных цепей может пагубно сказаться.
DimaS вне форума   Ответить с цитированием
Старый 31.08.2017, 18:52   #11
sdn_sdn
Member
 
Регистрация: 18.10.2016
Сообщений: 32
Вес репутации: 262/7
sdn_sdn is a jewel in the roughsdn_sdn is a jewel in the roughsdn_sdn is a jewel in the rough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от CocuckuH Посмотреть сообщение
Доброго всем!

Пытаюсь собрать сенсорную панельку на PIC18F2580. И теорию и схему взял из статьи на Хабре: https://geektimes.ru/post/256674/

Так вот, уже на этапе калибровки контроллер не хочет работать как задумано. Программа стопорится на первом же цикле while, будто никакого заряда ёмкости и не происходит вовсе:

Код:
void CallibrateButtons(void) {
TRISB &= 0b11111000;  // порт на выход
LATB  &= 0b11111000;  // в порт ноль
idle_millisec = 2; OSCCON = OSCCON_START_STATE; SLEEP(); // Ждём пока стечёт заряд
microsec = 0;              // Счётчик микросекунд, инкементируется таймером
TMR0H = TIMER0_H; TMR0L = TIMER0_L; // Установка таймера на прерывание каждые 5с
TMR0ON = 1;                                      // Включили таймер
TRISB |= 0b00000111;                         // Порт на вход
while ( RB0 == 0 ) { __delay_us(1); };    // Вот тут висиииим =(
TMR0ON = 0;
button_1_open_time = microsec + 10; }
На всякий случай: резистор 1.3 МОм, конденсатор 27 пФ.

Есть идеи у кого-нибудь, с чем это может быть связано?
Реализуйте, вместо этой бороды, программный CVD на данном мк.
Так же во многих мк, у микрочипа, есть апаратные модули CVD.
sdn_sdn вне форума   Ответить с цитированием
Старый 31.08.2017, 20:58   #12
petrd
Senior Member
 
Регистрация: 09.02.2008
Адрес: Воронеж
Возраст: 46
Сообщений: 1,699
Вес репутации: 1677/68
petrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant future
Отправить сообщение для petrd с помощью ICQ
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от DimaS Посмотреть сообщение
А утечка?
А RB0 в цифровой режим переведен?
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3)
petrd вне форума   Ответить с цитированием
Старый 01.09.2017, 02:40   #13
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от Guaho Посмотреть сообщение
На мой взгляд, ёмкость конденсатора маловата. Чем меньше эта ёмкость, тем меньше влияние ёмкости тела человека на время заряда. Увеличьте ёмкость до 100 пФ, как в оригинальной схеме.
Дельная мысль. Просто дома были только 27 пФ. Попробую, спасибо.

Цитата:
Сообщение от DimaS Посмотреть сообщение
Между входом проца и землей/питанием, между сконцами мегомного резистора, между обоими концами конденсатора.
Если флюс активный, и небыл прогрет до соотв. температуры, или просто дерьмовый флюс - оно все вполне может быть электропроводно, и для высокоимпедансных цепей может пагубно сказаться.
Не, флюс - обычная канифоль, она не особо проводящая. Ну и я не сильно ею плату залил, грязи минимум. Плата на которой собран МК вообще изготовлена на заказ в Резоните, никаких "соплей" точно нет.

Плату сенсора попробую отмыть получше ещё, спасибо за наводку.

Как сделаю - отпишу тут.
CocuckuH вне форума   Ответить с цитированием
Старый 01.09.2017, 02:45   #14
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от petrd Посмотреть сообщение
А RB0 в цифровой режим переведен?
За состояние порта RB отвечают всего несколько регистров. Из них, кажется, три отвечают за прерывания. TRIS, LAT и PORT в коде видно.

Менять входной буфер ещё могут биты PCFG<3:0> в регистре ADCON1, но в моём случае есть

Код:
#pragma config PBADEN = OFF     // PORTB A/D Enable bit (PORTB<4:0> pins are configured as digital I/O on Reset)
Так как я их не меняю после старта, очевидно у меня
Код:
PCFG<3:0> = 0111
То есть RB0 должен быть настроен как цифровой, и я всё делаю как говорит автор оригинальной идеи.

Вероятно, дело действительно в малой ёмкости сенсора.
CocuckuH вне форума   Ответить с цитированием
Старый 01.09.2017, 07:37   #15
sdn_sdn
Member
 
Регистрация: 18.10.2016
Сообщений: 32
Вес репутации: 262/7
sdn_sdn is a jewel in the roughsdn_sdn is a jewel in the roughsdn_sdn is a jewel in the rough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Менять входной буфер ещё могут биты PCFG<3:0> в регистре ADCON1, но в моём случае есть
Код:
#pragma config PBADEN = OFF     // PORTB A/D Enable bit (PORTB<4:0> pins are configured as digital I/O on Reset)
Цитата:
Так как я их не меняю после старта, очевидно у меня
Код:
PCFG<3:0> = 0111
Откуда очевидно ? В зависимости от состояния бита PBADEN.
Цитата:
Note 1: The POR value of the PCFG bits depends on the value of the PBADEN bit in Configuration Register 3H.
When PBADEN = 1, PCFG<3:0> = 0000; when PBADEN = 0, PCFG<3:0> = 0111.
А PBADEN, по дефолту = 1
Цитата:
1--- -01-
(второй бит)
Так что прописать инициализацию нужно.
А вообще возьмите и проверьте напрямую цифровой он или нет и не гадайте.

Последний раз редактировалось sdn_sdn; 01.09.2017 в 07:51.
sdn_sdn вне форума   Ответить с цитированием
Старый 01.09.2017, 14:25   #16
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от sdn_sdn Посмотреть сообщение
Код:
#pragma config PBADEN = OFF     // PORTB A/D Enable bit (PORTB<4:0> pins are configured as digital I/O on Reset)
Код:
PCFG<3:0> = 0111
Откуда очевидно ? В зависимости от состояния бита PBADEN.

А PBADEN, по дефолту = 1
(второй бит)
Так что прописать инициализацию нужно.
А вообще возьмите и проверьте напрямую цифровой он или нет и не гадайте.
PBADEN = OFF
В конфиге это как раз обнуление этого бита.

А как проверить напряму цифровой он или нет?
CocuckuH вне форума   Ответить с цитированием
Старый 01.09.2017, 14:42   #17
petrd
Senior Member
 
Регистрация: 09.02.2008
Адрес: Воронеж
Возраст: 46
Сообщений: 1,699
Вес репутации: 1677/68
petrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant futurepetrd has a brilliant future
Отправить сообщение для petrd с помощью ICQ
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от CocuckuH Посмотреть сообщение
PBADEN = OFF
А как проверить напряму цифровой он или нет?
В отладке посмотреть содержимое регистра ADCON1.
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3)
petrd вне форума   Ответить с цитированием
Старый 01.09.2017, 18:39   #18
sdn_sdn
Member
 
Регистрация: 18.10.2016
Сообщений: 32
Вес репутации: 262/7
sdn_sdn is a jewel in the roughsdn_sdn is a jewel in the roughsdn_sdn is a jewel in the rough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от CocuckuH Посмотреть сообщение
PBADEN = OFF
В конфиге это как раз обнуление этого бита.
Да, что - то я слона и не заметил.
Цитата:
Сообщение от CocuckuH Посмотреть сообщение
PBADEN = OFF

А как проверить напряму цифровой он или нет?
Напейсанием тестовой программки с кнопкой и светодиодом.
sdn_sdn вне форума   Ответить с цитированием
Старый 01.09.2017, 23:44   #19
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от petrd Посмотреть сообщение
В отладке посмотреть содержимое регистра ADCON1.
У меня почему-то клон Pickit2 с Mplab X не хочет отлаживать. Шить через официальную прогу - шьёт, а при попытке отладить прошивку, говорит "not dklab device".

Я так понимаю, он ругается что это клон. Купить оригинал или хотя бы копию оригинала пока руки никак не доходят... Так-то с отладчиком в мильён раз удобнее, конечно было бы.
CocuckuH вне форума   Ответить с цитированием
Старый 02.09.2017, 07:14   #20
smart_pic
Senior Member
 
Регистрация: 08.12.2008
Адрес: Ставрополь
Возраст: 54
Сообщений: 960
Вес репутации: 2006/62
smart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond repute
Отправить сообщение для smart_pic с помощью Skype™
По умолчанию Re: Сенсорный ввод на PIC

вот делал сенсорную клавиатуру, может кому пригодится.
Полученное значение счетчика сравниваем с пороговым значением и затем принимается решение о касании к кнопке.
Калибровка происходит при старте. Для калибровки достаточно считать значение когда кнопки не касаются.
Код:
//****************************************************************************
void CAP_keyboard1(void)
{
    CAPkey1_TRIS=0;
    CAPkey1_OUT=0;

    TMR1H = 0x00;
    TMR1L = 0x00;
    T1CON = 0x20;
    
    INTCONbits.GIE=0;            // disable interrupts
    CAPkey1_TRIS=1;
    T1CONbits.TMR1ON=1;            //  старт таймера
    while(CAPkey1_I == 0) ;
    T1CONbits.TMR1ON=0;            //  стоп таймера
    INTCONbits.GIE=1;            // enable interrupts

    cap_timer1.byte.HB=TMR1H;
    cap_timer1.byte.LB=TMR1L;

    CAPkey1_OUT=0;
    CAPkey1_TRIS=0;            // разрядили вход
}
//****************************************************************************
вот фото макета.
Сенсорные кнопки выполнены напылением, диаметр кнопок примерно 15-20мм.
Миниатюры
IMG_0008м.jpg  
smart_pic вне форума   Ответить с цитированием
Старый 12.09.2017, 20:07   #21
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Всем спасибо за участие!

Наконец заработало. В коде проблем не было.

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

В моём случае, на плате было место, где провода, идущие от сенсора, из-за слишком большого количества припоя очень близко проходили рядом с землёй, из-за чего (видимо через остатки флюса) образовывалась паразитная ёмкость либо небольшая проводимость на землю, которая не давала зарядиться сенсору.

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

Весь код оформил в подключаемый файл, а также всё подробно описал в отдельной статье, кому интересно:
http://chipinfo.pro/mcu/pic/sensor.shtml
CocuckuH вне форума   Ответить с цитированием
Старый 14.09.2017, 09:21   #22
smart_pic
Senior Member
 
Регистрация: 08.12.2008
Адрес: Ставрополь
Возраст: 54
Сообщений: 960
Вес репутации: 2006/62
smart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond repute
Отправить сообщение для smart_pic с помощью Skype™
По умолчанию Re: Сенсорный ввод на PIC

Посмотрел статью.
Одно небольшое замечание. Если используем порт с внутренними подтягивающими резисторами , то в конфигурации порта их нужно отключить, иначе получите проблему с симптомами , которые уже описали.
Резистор на +Питания ставить больше 470кОм особо не имеет смысла, так как на практике трудно обеспечить высокое сопротивление материалов сенсорной клавиатуры. Всегда есть утечки на землю. В итоге получаем резистивный делитель и Конденсатор нашей сенсорной клавиатуры не заряжается до порогового напряжения входа микроконтроллера с вытекающими последствиями.

Последний раз редактировалось smart_pic; 14.09.2017 в 09:29.
smart_pic вне форума   Ответить с цитированием
Старый 14.09.2017, 10:10   #23
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от smart_pic Посмотреть сообщение
Посмотрел статью.
Одно небольшое замечание. Если используем порт с внутренними подтягивающими резисторами , то в конфигурации порта их нужно отключить, иначе получите проблему с симптомами , которые уже описали.
Резистор на +Питания ставить больше 470кОм особо не имеет смысла, так как на практике трудно обеспечить высокое сопротивление материалов сенсорной клавиатуры. Всегда есть утечки на землю. В итоге получаем резистивный делитель и Конденсатор нашей сенсорной клавиатуры не заряжается до порогового напряжения входа микроконтроллера с вытекающими последствиями.
Спасибо за замечания!

Добавил в раздел "на что обратить внимание".
CocuckuH вне форума   Ответить с цитированием
Старый 15.09.2017, 06:26   #24
BarsTmb
Senior Member
 
Аватар для BarsTmb
 
Регистрация: 30.03.2011
Адрес: Тамбов
Возраст: 49
Сообщений: 337
Вес репутации: 1339/41
BarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud ofBarsTmb has much to be proud of
По умолчанию Re: Сенсорный ввод на PIC

Ещё замечание. Никогда в программах "для заказчика" (для себя любимого можете делать как Вам угодно) не используйте конструкции, приводящие к ситуации, когда устройство внешне кажется полностью неработоспособным.
В вашем случае - это бесконечный цикл на кнопке. Любая грязь или утечка - и капут всей системе. Обязательно оставляйте способы аварийного выхода - например по таймеру или поставив счётчик максимума циклов. В интерфейс Вашего пакета подпрограмм можно ввести аварийный флаг и функцию проверки исправности сенсоров.
__________________
Присмотрелись мы - и действительно!

Последний раз редактировалось BarsTmb; 15.09.2017 в 06:36.
BarsTmb вне форума   Ответить с цитированием
Старый 15.09.2017, 16:01   #25
CocuckuH
Member
 
Аватар для CocuckuH
 
Регистрация: 27.05.2015
Возраст: 27
Сообщений: 50
Вес репутации: 103/11
CocuckuH will become famous soon enoughCocuckuH will become famous soon enough
По умолчанию Re: Сенсорный ввод на PIC

Цитата:
Сообщение от BarsTmb Посмотреть сообщение
Ещё замечание. Никогда в программах "для заказчика" (для себя любимого можете делать как Вам угодно) не используйте конструкции, приводящие к ситуации, когда устройство внешне кажется полностью неработоспособным.
В вашем случае - это бесконечный цикл на кнопке. Любая грязь или утечка - и капут всей системе. Обязательно оставляйте способы аварийного выхода - например по таймеру или поставив счётчик максимума циклов. В интерфейс Вашего пакета подпрограмм можно ввести аварийный флаг и функцию проверки исправности сенсоров.
В данном случае, если сенсор будет по какой-то причине неисправен - всё устройство можно тупо выкинуть.
CocuckuH вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помехоустойчивость схем на PIC StrDm Вопросы начинающих 20 07.06.2014 09:36
PIC vs AVR - быстродействие на математике tem-ya Микроконтроллеры других производителей 121 11.04.2011 13:32
компаратор на PIC sergxxx Продукция MICROCHIP 6 25.11.2008 16:56


Часовой пояс GMT +3, время: 18:12.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot