当前位置: 首页 > article >正文

32单片机学习记录3之基本外设的使用

32单片机学习记录3之基本外设的使用

传感器分类

  • 通过检测电平信号(红外感应,火焰检测(光谱))
  • 通过ADC转换数据(光敏电阻)
  • 通过通信获取数据
    • 外设自带ADC,会把数据传递过来

如何快速使用传感器

准备资料:

  • 硬件
  • 官方手册说明书
  • 示例代码

如何查看官方手册

  • 介绍
  • 引脚
  • 如何获取信号或者数据

设计程序

  • 封装什么函数

红外感应器

使用PC8的IO口接收红外传递过来的电平信号,有障碍物传递低电平,没有传递高电平。

配置

//总线对应的时钟使能打开
RCC->AHB1ENR |= (1<<2);

//清空第16和17位,置0,其他位不动
GPIOC->MODER &= ~(3U<<16);

//清空第16和17位,置0,其他位不动
GPIOC->PUPDR &= ~(3U<<16);

//判断对应位的电平状态
#define RED !((GPIOC->IDR & (1<<8))>>8)

火焰检测器

使用PC9的IO口接收红外传递过来的电平信号,有火传递低电平,没有传递高电平。

配置

//总线对应的时钟使能打开
RCC->AHB1ENR |= (1<<2);

//清空第18和19位,置0,其他位不动
GPIOC->MODER &= ~(3U<<18);

//清空第18和19位,置0,其他位不动
GPIOC->PUPDR &= ~(3U<<18);

//判断对应位的电平状态
#define RED !((GPIOC->IDR & (1<<9))>>9)

http://www.kler.cn/a/543568.html

相关文章:

  • 【黑马点评】 使用RabbitMQ实现消息队列——3.批量获取1k个用户token,使用jmeter压力测试
  • 机器学习10-卷积和卷积核3
  • GeekPad智慧屏编程控制
  • 远程桌面连接提示被锁 更改帐户锁定策略
  • 【Qt之·类QTextCursor】
  • 在CT107D单片机综合训练平台上实现外部中断控制LED闪烁
  • 解析RK3588无线边缘盒子为工业自动化边缘推理带来的 AI 突破
  • ComfyUI流程图生图原理详解
  • halcon三维点云数据处理(十四)在3D场景中去除背景的三种方式
  • [SAP ABAP] OO ALV报表练习1
  • 算法与数据结构(合并两个有序数组)
  • OpenCV2D 特征框架 (24)处理矩形框集合函数groupRectangles()的使用
  • 免费体验,一键部署!Alaya NeW应用市场正式上线DeepSeek系列模型
  • Linux零基础快速入门(非常详细),全覆盖Linux的基础知识,看完这一篇就够了。
  • 基于CanMV IDE 开发软件对K210图像识别模块的开发
  • 基于单片机的仓库安防系统(论文+源码)
  • (篇六)基于PyDracula搭建一个深度学习的软件之新版本ultralytics-8.3.28调试
  • 机器学习 - 机器学习模型的评价指标
  • HackerRank C++面试,中等难度题目 - Attribute Parser
  • 【C++高并发服务器WebServer】-18:事件处理模式与线程池
  • 基于Java的分布式系统架构设计与实现
  • Kafka的ISR是什么,HW是什么,怎么保证可靠性,Kafka怎么实现顺序消息?为什么Kafka的broker上的topic越多,效率越慢?
  • 嵌入式WebRTC压缩至670K,目标将so动态库压缩至500K,.a静态库还可以更小
  • 基于SpringBoot+Vue的扶贫助农管理系统
  • ubuntu下ollama/vllm两种方式在本地部署Deepseek-R1
  • 用语言模型探索语音风格空间:无需情感标签的情 感TTS