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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> qtouch library
MAGician
сообщение Mar 22 2011, 18:44
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 69
Регистрация: 28-11-06
Из: Москва
Пользователь №: 22 847



Народ, кто использовал qtouch library?
Не могу разобраться какие библиотеки подключать. Тестовые примеры, какие-то сильно замудреные...
Хочу сделать обычный сенсорный выключатель на ATmega8.
Go to the top of the page
 
+Quote Post
ANT
сообщение Mar 22 2011, 19:28
Сообщение #2


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

Группа: Свой
Сообщений: 187
Регистрация: 22-06-04
Пользователь №: 127



Цитата(MAGician @ Mar 22 2011, 21:44) *
Народ, кто использовал qtouch library?
Не могу разобраться какие библиотеки подключать. Тестовые примеры, какие-то сильно замудреные...
Хочу сделать обычный сенсорный выключатель на ATmega8.

Мне кажется там разжёвано до безобразия, есть таблицы - какая либа к какому МК и каким сенсорам (файл Library_Selection_Guide.xls). Я пробовал QTouch и с GCC и с IAR на Mega16 и Mega32. IAR даёт код раза в 1,5 компактнее. И в том и другом случае работает как часы.
Go to the top of the page
 
+Quote Post
MAGician
сообщение Mar 22 2011, 20:05
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 69
Регистрация: 28-11-06
Из: Москва
Пользователь №: 22 847



Не могу понять откуда берется такая ошибка.
Код
Error    1    constant value required    D:/Atmel_QTouch_Libraries_4.3/Generic_QTouch_Libraries/AVR_Tiny_Mega_XMega/QTouch/common_files/qt_asm_tiny_mega.s    66    1    avr5g1_qt_example


Ссылается на эти строчки:
Код
    and  r19, r25
    out  REG( DDR, SNS1 ), r19
    in   r19, REG( DDR, SNSK1 )
    and  r19, r25


В свойствах компилятора прописано:
SNSK1=A
SNS1=B
Go to the top of the page
 
+Quote Post
ANT
сообщение Mar 23 2011, 08:01
Сообщение #4


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

Группа: Свой
Сообщений: 187
Регистрация: 22-06-04
Пользователь №: 127



[quote name='MAGician' date='Mar 22 2011, 23:05' post='903947']
Не могу понять откуда берется такая ошибка.
Код
Error    1    constant value required    D:/Atmel_QTouch_Libraries_4.3/Generic_QTouch_Libraries/AVR_Tiny_Mega_XMega/QTouch/common_files/qt_asm_tiny_mega.s    66    1    avr5g1_qt_example

...
Я сейчас попробовал перекомпилировать пример avr5g1_qt_example в AVR Studio 4.18 - ошибок нет. Поменял в файле touch_qt_config.h SNS1 и SNSK1 как у вас - тоже проблем не возникло. Видимо, проблема в компиляторе или настройках среды.
Go to the top of the page
 
+Quote Post
MAGician
сообщение Mar 24 2011, 05:09
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 69
Регистрация: 28-11-06
Из: Москва
Пользователь №: 22 847



Цитата(ANT @ Mar 23 2011, 11:01) *
Я сейчас попробовал перекомпилировать пример avr5g1_qt_example в AVR Studio 4.18 - ошибок нет. Поменял в файле touch_qt_config.h SNS1 и SNSK1 как у вас - тоже проблем не возникло. Видимо, проблема в компиляторе или настройках среды.


Обычные примеры у меня то-ж компилируются без ошибок, но как только я меняю МК на тот который мне нужен (ATmega88P), начинают валиться такие ошибки.
Хотя в документации написано что этот МК поддерживается библиотекой libavr4g1-4qt-k-0rs.a.
Причем неважно какие порты выставляю в параметрах SNSK1, SNS1.

В чем проблемы не пойму, уже всю голову сломал..... wacko.gif cranky.gif
Go to the top of the page
 
+Quote Post
ANT
сообщение Mar 24 2011, 08:11
Сообщение #6


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

Группа: Свой
Сообщений: 187
Регистрация: 22-06-04
Пользователь №: 127



Цитата(MAGician @ Mar 24 2011, 08:09) *
Обычные примеры у меня то-ж компилируются без ошибок, но как только я меняю МК на тот который мне нужен (ATmega88P), начинают валиться такие ошибки.
Хотя в документации написано что этот МК поддерживается библиотекой libavr4g1-4qt-k-0rs.a.
Причем неважно какие порты выставляю в параметрах SNSK1, SNS1.

В чем проблемы не пойму, уже всю голову сломал..... wacko.gif cranky.gif

В таблице указано:
MCU Ports available for Qtouch
ATmega88P B,C,D
но в Атмеловском примере по умолчанию SNSK1=A, поэтому компилятор и ругается. Итак, при переходе с ATmega8515, который указан в примере, на Atmega88P нужно в ключах определить -ВSNSK1=B. После компиляции ошибка исчезает, но появляются новые: ругань на TIMSK и SFIOR. Это опять же связано с различием процессоров.
Правим строчки:
/* enable timer ISR */
// TIMSK |= (1u << OCIE1A);
TIMSK0 |= (1u << OCIE1A);
/* disable pull-ups */
// SFIOR |= (1u << PUD);
MCUCR |= (1u << PUD);
- и компиляция успешна.
Возможно, остались и другие проблемы, дерзайте sm.gif
Прикрепленные файлы
Прикрепленный файл  ______avr4g1_qt_example.rar ( 150.1 килобайт ) Кол-во скачиваний: 54
 
Go to the top of the page
 
+Quote Post
silverio
сообщение Mar 24 2011, 19:51
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 48
Регистрация: 14-06-09
Из: Киев
Пользователь №: 50 273



Вопрос к АНТ
- пробовали Wheel реализовывать при помощи библиотеки от Atmel?
Go to the top of the page
 
+Quote Post
ANT
сообщение Mar 24 2011, 19:58
Сообщение #8


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

Группа: Свой
Сообщений: 187
Регистрация: 22-06-04
Пользователь №: 127



Цитата(silverio @ Mar 24 2011, 22:51) *
Вопрос к АНТ
- пробовали Wheel реализовывать при помощи библиотеки от Atmel?

Нет - только кнопки.
Go to the top of the page
 
+Quote Post
MAGician
сообщение Mar 25 2011, 04:59
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 69
Регистрация: 28-11-06
Из: Москва
Пользователь №: 22 847



Цитата(ANT @ Mar 24 2011, 11:11) *
- и компиляция успешна.
Возможно, остались и другие проблемы, дерзайте sm.gif


Спасибо большое, разобрался, теперь буду пробовать все это в железе реализовать =)
Go to the top of the page
 
+Quote Post
smk
сообщение Jul 17 2011, 18:57
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



Цитата(ANT @ Mar 22 2011, 22:28) *
Мне кажется там разжёвано до безобразия, есть таблицы - какая либа к какому МК и каким сенсорам (файл Library_Selection_Guide.xls). Я пробовал QTouch и с GCC и с IAR на Mega16 и Mega32. IAR даёт код раза в 1,5 компактнее. И в том и другом случае работает как часы.

А QMatrix не пробовали? Вроде бы все понятно и как-бы разжевано, но либо не компилится либо не работает. Делал макет. ИАР после компиляции проигнорировал порт для X-выводов не смотря на явное указание. Если выводы правильные (GCC) то не выдает результат на для slider на для кнопок. В конечном итоге мне нужен слайдер из 8 каналов. Tiny961A. Прошу помочь. Спасибо.


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
ANT
сообщение Jul 18 2011, 10:10
Сообщение #11


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

Группа: Свой
Сообщений: 187
Регистрация: 22-06-04
Пользователь №: 127



Цитата(smk @ Jul 17 2011, 22:57) *
А QMatrix не пробовали? Вроде бы все понятно и как-бы разжевано, но либо не компилится либо не работает. Делал макет. ИАР после компиляции проигнорировал порт для X-выводов не смотря на явное указание. Если выводы правильные (GCC) то не выдает результат на для slider на для кнопок. В конечном итоге мне нужен слайдер из 8 каналов. Tiny961A. Прошу помочь. Спасибо.

Не пробовал sad.gif. Есть ещё практический момент: в эксплуатации Qtouch кнопок по сравнению с тактильной клавиатурой есть неудобства - случайное прикосновение вызывает срабатывание; высокие требования к источнику питания (дешёвые USB-зарядки не годятся, от них Qtouch с ума сходит).
Go to the top of the page
 
+Quote Post
smk
сообщение Jul 18 2011, 14:28
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



Цитата(ANT @ Jul 18 2011, 13:10) *
Не пробовал sad.gif. Есть ещё практический момент: в эксплуатации Qtouch кнопок по сравнению с тактильной клавиатурой есть неудобства - случайное прикосновение вызывает срабатывание; высокие требования к источнику питания (дешёвые USB-зарядки не годятся, от них Qtouch с ума сходит).

В отношении случайного касания - ну такая их природа. Можно пробовать фильтровать по времени удержания. В отношении питания, у меня стоит 7805 и пока нет повода для замечаний.


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
silverio
сообщение Jul 18 2011, 18:01
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 48
Регистрация: 14-06-09
Из: Киев
Пользователь №: 50 273



To SMK
Я недавно начал работать с QMATRIX, использую IAR.
Сделал отладочную плату:
3-button, 1- wheel, Atmega 168 - проект компилируется нормально, использовал v3g3_qm_example_iar за основу.
На данный момент работают только 3-button sad.gif , wheel - в процессе sm.gif
Go to the top of the page
 
+Quote Post
smk
сообщение Jul 19 2011, 07:07
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



Цитата(silverio @ Jul 18 2011, 21:01) *
To SMK
Я недавно начал работать с QMATRIX, использую IAR.
Сделал отладочную плату:
3-button, 1- wheel, Atmega 168 - проект компилируется нормально, использовал v3g3_qm_example_iar за основу.
На данный момент работают только 3-button sad.gif , wheel - в процессе sm.gif

А размер кода совпал с табличным? debug включен или выключен?


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
silverio
сообщение Jul 19 2011, 10:35
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 48
Регистрация: 14-06-09
Из: Киев
Пользователь №: 50 273



Согласно Library_Selection_Guide для моей отладочной платы:
megaAVR 8-bit ATmega168PA QM 4x2 IAR libv3g3_8qm_4x_2y_krs_2rs.r90
3733 bytes of CODE memory
189 bytes of DATA memory

При максимальном уровне оптимизации по размеру кода получилось:
4 590 bytes of CODE memory (+ 20 range fill )
343 bytes of DATA memory (+ 24 absolute )

debug выключен!

Сообщение отредактировал silverio - Jul 19 2011, 10:43
Go to the top of the page
 
+Quote Post
smk
сообщение Jul 19 2011, 14:56
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



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


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
comper
сообщение Jun 4 2012, 20:50
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 7-03-08
Из: Минск
Пользователь №: 35 707



Цитата(ANT @ Mar 22 2011, 22:28) *
Мне кажется там разжёвано до безобразия, есть таблицы - какая либа к какому МК и каким сенсорам (файл Library_Selection_Guide.xls). Я пробовал QTouch и с GCC и с IAR на Mega16 и Mega32. IAR даёт код раза в 1,5 компактнее. И в том и другом случае работает как часы.



у меня как часы не работает...
реализую qmatrix на Atmega16A
во всех даташитах разобрался вроде, действительно все разжевано, просто прочитать надо
все настройки нашел, все настроил под свои нужды. Делал на основе примера m16_qm_example_gnu. У меня конфигурация: 5 Х линий 4 У линии, 19 кнопок.
Кнопки развел на стеклотекстолите по рекомендациям Атмела. Дебаг в библиотеке не использую, использую экранчик двухстрочный, на который вывожу необходимую информацию. Обычно это:
qt_measure_data.channel_signals[]
qt_measure_data.channel_references[]
qt_get_sensor_delta()
qt_measure_data.qt_touch_status.sensor_states[]
собственно оно же и в дебаге выводится
Так вот данные какие-то чушь получаются. Кнопки не срабатывают. Данные конечно меняются, когда я палец прикладываю или руку, но меняются совершенно беспорядочно и какие-то неуместные значения показывает.
Читал и рекомендации QT and QM sensitivity tuning, менял значения, экспериментировал...но все тщетно
Осциллографа жаль нету сейчас дома. Не знаю как отладить эту всю бороду. Может кто подскажет, наведет на мысли...=)
Go to the top of the page
 
+Quote Post
comper
сообщение Jun 10 2012, 18:23
Сообщение #18


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 7-03-08
Из: Минск
Пользователь №: 35 707



вобщем немного разобрался...на осциллографе увидел, что пачки импульсов отправляются и вроде даже видно, что конденсатор заряжается. Но все равно не работает оно у меня.
Во-первых: когда я пытаюсь поменять burst_lengths - просто вообще исчезают эти пачки. Меняю как указано в qtouch library user guide. Как мне все-таки поменять эти значения?
Во-вторых: когда пытаюсь добавить в код примера свой код, там где написано /*Time critical host application code goes here*/ или /* Time Non-critical host application code goes here */, тоже напрочь замолкает микроконтроллер или время между пачками резко уменьшается. При чем кода я добавляю одну строчку, не важно чего, например инициализацию какой-нибудь неиспользуемой ноги(настраиваю на выход), чтобы индицировать нажатия.
Мозг уже отказывает думать, потому что долбусь этими сенсорами уже не первый день.
Подскажите, если кто знает...

может можно кому-то конкретно, кто разбирался, позадавать вопросы по поводу этой qtouch library?
Go to the top of the page
 
+Quote Post
addi
сообщение Mar 21 2014, 01:23
Сообщение #19


Знающий
****

Группа: Участник
Сообщений: 679
Регистрация: 9-08-06
Пользователь №: 19 422



Цитата(comper @ Jun 10 2012, 21:23) *
вобщем немного разобрался...на осциллографе увидел, что пачки импульсов отправляются и вроде даже видно, что конденсатор заряжается. Но все равно не работает оно у меня.
Во-первых: когда я пытаюсь поменять burst_lengths - просто вообще исчезают эти пачки. Меняю как указано в qtouch library user guide. Как мне все-таки поменять эти значения?
Во-вторых: когда пытаюсь добавить в код примера свой код, там где написано /*Time critical host application code goes here*/ или /* Time Non-critical host application code goes here */, тоже напрочь замолкает микроконтроллер или время между пачками резко уменьшается. При чем кода я добавляю одну строчку, не важно чего, например инициализацию какой-нибудь неиспользуемой ноги(настраиваю на выход), чтобы индицировать нажатия.
Мозг уже отказывает думать, потому что долбусь этими сенсорами уже не первый день.
Подскажите, если кто знает...

может можно кому-то конкретно, кто разбирался, позадавать вопросы по поводу этой qtouch library?

Здравствуйте!
Сталкнулся с похожей проблемой, но решения представленные выше не помогают
У меня IAR 6.12, Qtouch lib 4, atmega168PA
Использую libv3g3-8qt-k-2rs.r90 и пример v3g3_qt_example
При компиляции застреваю на qt_asm_tiny_mega.S с ошибками "Undefined symbol DDRA и Undefined symbol"
В файле touch_qt_config.h, исправил с порта D на С
#ifndef SNS1
#define SNS1 C
#endif
#ifndef SNSK1
#define SNSK1 B
#endif
в файле touch_api.h

исправил

#define JOIN( x, y ) x ## y
#define JOIN1( A, B, C ) A ## B ## C
на

#define JOIN( x, y ) x ## y
#define JOIN1( B, C )B ## C

Но все равно проблемы с портом А остаются
Подскажите кто знает как скомпилировать пример v3g3_qt_example для atmega168PA
Заранее благодарен
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 - 03:21
Рейтинг@Mail.ru


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