Top.Mail.Ru
Уведомления
Очистить все

[Решено] Проблема с подключением TTP229bsf к stm32

(@l0patich)
Level 1

Здравствуйте, я новичок в этой сфере. Я имею stm32f103c8t6 и сенсорную клавиатуру TTP229BSF. Проблема в том, что модуль передает только единицы. Модуль рабочий проверял на ардуино.

IMG20240723133516[1]

Согласно даташиту

для обмена данными следует совершить следующие действия (есть несколько режимов работы, но я пытаюсь разобраться именно с этим ):

image

также привожу тайминги

image

 

Теперь о соединениях. Контакт SDO я подключил к порту B пину номер 7, SCL к порту B пину номер 6. Минус к минусу плюс к 5V.

image
image
IMG20240723135157[2]

 Теперь о коде.

функция main:

image

я стараюсь сделать все по даташиту, но на 43 строке data всегда равна 0xffff.

Вот полный код:

main.c

image
image
image
image
image

main.h

image

Пожалуйста подскажите в чем неправ 😭 😭 😭.

 

Цитата
Создатель темы Размещено : 23.07.2024 07:32
Aveal
(@aveal)
Top level Admin

Доброго времени суток!

На самом деле первая мысль - осциллографом посмотреть сигналы на STM и на Arduino и сразу будет видно, в чем разница.

ОтветитьЦитата
Размещено : 23.07.2024 11:45
(@l0patich)
Level 1

@aveal у меня есть дешёвый осциллограф, как раз ещё не пользовался. Спасибо посмотрю.

ОтветитьЦитата
Создатель темы Размещено : 23.07.2024 13:04
(@l0patich)
Level 1

Интересное замечание, когда подключаю осциллограф к минусу и к ножке SCL все магическим образом начинает работать.

 

ОтветитьЦитата
Создатель темы Размещено : 24.07.2024 06:39
(@l0patich)
Level 1

Работает только если осциллограф включен. Попробовал поставить резисторы (от 1Мом до 8Мом) не помогло.

ОтветитьЦитата
Создатель темы Размещено : 24.07.2024 07:48
Aveal
(@aveal)
Top level Admin

@l0patich На всякий случай уточняю - TTP229BSF от 3.3В питается? И навскидку - при настройке GPIO поставить Speed в GPIO_SPEED_FREQ_VERY_HIGH.

ОтветитьЦитата
Размещено : 24.07.2024 10:58
(@l0patich)
Level 1

@aveal Сработало! Спасибо большое. Если не трудно можете сказать почему, клавиатура вроде бы толерантна к 5 вольтам.

image
ОтветитьЦитата
Создатель темы Размещено : 24.07.2024 12:41
Aveal
(@aveal)
Top level Admin

@l0patich Там напряжение логической единицы получается от 4 до 5В при питании от 5В, а у stm соответственно 3.3В только:

изображение
ОтветитьЦитата
Размещено : 24.07.2024 12:44
Поделиться: