【stm32简单外设篇】- 单路 TTP223 电容式触摸传感器

一、适用场景

适用场景:无机械按键的触摸按键替代(灯光触控、门禁触摸、家电面板、互动玩具、人机界面)、潮湿/封装环境下的按键替代、嵌入式入门 GPIO/EXTI 去抖与低功耗唤醒实践。

二、器材清单

单路 TTP223 电容式触摸模块(带 PCB 电极或裸芯片 + 单触点) ×1

stm32f103(或其它 STM32)开发板 ×1

若干杜邦线(母对母/公对母)×1组

三、工作原理(要点)

电容感应:TTP223 内部测量电容变化,当接触或靠近模块的电极时,电容增大并触发检测逻辑,模块输出数字信号表示触摸事件。

四、接线示意
VCC → +5V

GND → GND

标准库

PA0→IO

HAL库

PA0→IO

五、示例代码

标准库

HAL库

cpp 复制代码
int main(void)
{

  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_USART1_UART_Init();
  /* USER CODE BEGIN 2 */

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
		if(HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0) == 1)
			HAL_UART_Transmit(&huart1,"有接触\r\n", strlen("有接触\r\n"), HAL_MAX_DELAY);
		else
			HAL_UART_Transmit(&huart1,"无接触\r\n", strlen("无接触\r\n"), HAL_MAX_DELAY);
		HAL_Delay(1000);
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

六、讲解视频

https://www.bilibili.com/video/BV1PtkDBxEXN/?spm_id_from=333.1387.upload.video_card.click\&vd_source=b035825fef3be39bc47a9c50b324d086

https://www.bilibili.com/video/BV1uEkDBaEEC/?spm_id_from=333.1387.upload.video_card.click&vd_source=b035825fef3be39bc47a9c50b324d086

https://www.bilibili.com/video/BV1UEkDBhEWt/?spm_id_from=333.1387.upload.video_card.click&vd_source=b035825fef3be39bc47a9c50b324d086

相关推荐
AOI小白新手上路1 天前
江科协51单片机 17-2 红外遥控电机调速实验调试总结
单片机·嵌入式硬件·51单片机
oshan20122 天前
零基础STM32入门教程--10-PWM 呼吸灯
stm32·单片机·嵌入式硬件
记帖2 天前
STM32C5A3R开发(7)----ADC电压采集
嵌入式硬件·adc·dac·stm32cubeide·stm32c5·stm32cubemx2·stm32c5a3rgt6
自小吃多2 天前
器件移动、旋转、镜像、对齐、等间距操作笔记
笔记·嵌入式硬件
Brilliantwxx2 天前
【C语言】 初入嵌入式C语言复习(基础+进阶面试题)
c语言·开发语言
jianqiang.xue2 天前
智能体整体架构设计:四大模块与目录组织
单片机·嵌入式硬件·物联网·架构·esp32
wuminyu2 天前
深入剖析 Panama Off-heap 的性能损耗与开销
java·linux·c语言·jvm·c++
rhythm-ring2 天前
宏定义续行符 \ 的使用与踩坑
c语言·c++
Messy create2 天前
【BMS-AFE-温度检测】
stm32·单片机·能源
老当益壮梁奶奶2 天前
Linux软件编程学习笔记(八):进程间通信详解(1)
linux·c语言·笔记·学习·算法