|
TSC (Touch sensing controller) на STM32F051 |
|
|
|
Sep 19 2013, 14:45
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Выполняю проект по разработке устройства. Нужно реализовать управление сенсорными кнопками. Всего кнопок 14. Контроллер использую только STM32F051. Вот схема данного устройства: http://www.picshare.ru/view/2993892/Кнопки расположены вот так: http://www.picshare.ru/view/2993980/Скачал библиотеку "STM32F0xx_STMTouch_Lib_V1.0.1" на сайте ST, но как с ней работать ума не приложу. Непонятен сам алгоритм работы, что зачем вызывать. Информации по данному контроллеру очень мало. Прошу помощи по работе с TSC под STM32F051. Кто работал с данной периферией? Есть ли рабочие примеры или документация (желательно на русском, а то с английским не очень дружу)
|
|
|
|
|
Sep 20 2013, 11:01
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Я бы и не создавал эту тему если бы не было вопросов  Мне хотя бы понять алгоритм работы, как и что инициализировать, что запускать. Я кстати сам предпочитаю работать напрямую с регистрами, но в последнее время пристрастился к библиотекам и функциям. Буду ждать...
|
|
|
|
|
Oct 7 2013, 09:49
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Да уж... тут без пол литра не разобраться  А зачем осциллограф нужен?
|
|
|
|
|
Oct 8 2013, 08:39
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Какой кварц использовали внешний или внутренний, на какой частоте тактировали шину AHB?
Какие библиотеки нужно подключить для работы с TSC? А то у меня при компиляции миллион ошибок. Работаю в Coocox IDE Подключил как основную #include "stm32f0xx.h"
а также для удобства #include "stm32f0xx_rcc.h" #include "stm32f0xx_gpio.h" #include "stm32f0xx_exti.h"
Я так понимаю нужен файл с расписанной адресацией регистров: TSC_CR_CTPH TSC_CR_CTPL TSC_CR_SSD TSC_CR_SSE TSC_CR_SSPSC TSC_CR_PGPSC TSC_CR_MCV и т.д.
Как у вас с этим дело обстоит?
|
|
|
|
|
Oct 9 2013, 08:06
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Я так понимаю CMSIS файл вы сами доделывали?
|
|
|
|
|
Oct 9 2013, 10:06
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Цитата(adnega @ Oct 9 2013, 12:25)  Я ж говорю: "библиотек чужих не использую". Описывал номера битов самостоятельно на основе UM. Вы не пытайтесь скомпиллировать пример - лучше попробуйте написать свой, взяв пример для демонстрации ключевых моментов. ОК попробую
|
|
|
|
|
Oct 9 2013, 14:05
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Что-то я не могу запустить TSC, тактирование подаю: RCC->AHBENR |= RCC_AHBENR_TSEN; Смотрю на состояние регистров RCC - тактирование TSC идёт. Но когда пытаюсь запустить TSC: TSC->CR = 0x01; Состояние бита не меняется  Тактирую чип от внутреннего кварца HSI с умножителем на 48 МГц, шину AHB тоже на 48 МГц. Может что-то не то делаю?
|
|
|
|
|
Oct 9 2013, 17:56
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(silovi4 @ Oct 9 2013, 18:05)  Что-то я не могу запустить TSC, тактирование подаю: RCC->AHBENR |= RCC_AHBENR_TSEN; Смотрю на состояние регистров RCC - тактирование TSC идёт. Но когда пытаюсь запустить TSC: TSC->CR = 0x01; Состояние бита не меняется  Тактирую чип от внутреннего кварца HSI с умножителем на 48 МГц, шину AHB тоже на 48 МГц. Может что-то не то делаю?  Попробуйте подождать перед чтением TSC->CR. А лучше запишите TSC->CR два раза.
|
|
|
|
|
Oct 10 2013, 08:58
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 22-04-13
Пользователь №: 76 577

|
Цитата(adnega @ Oct 9 2013, 20:56)  Попробуйте подождать перед чтением TSC->CR. А лучше запишите TSC->CR два раза. Попробовал, не помогло. Уже смотрю напрямую в память - там тоже нули ((( Даже в бесконечном цикле не устанавливается. Может я спалил его когда паял, хотя АЦП, порты, таймеры и часы работают. Даже не знаю что делать, тупик какой-то... Попробую в Keil-е собрать и отдебажить.
|
|
|
|
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|