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

广州定制网站建设公司某网站seo诊断分析和优化方案

广州定制网站建设公司,某网站seo诊断分析和优化方案,linode搭wordpress,业务推广方式有哪些文章目录 前置知识按键介绍传感器模块硬件电路按键硬件电路传感器模块硬件电路 C语言数据类型在Keil中的对应写法C语言枚举 按键控制LED接线图Hardware文件夹(模块化编程)LED驱动程序封装Key(按键)驱动程序封装 main.c源文件 光敏传感器控制蜂鸣器接线图…

文章目录

  • 前置知识
    • 按键介绍
    • 传感器模块
    • 硬件电路
      • 按键硬件电路
      • 传感器模块硬件电路
    • C语言数据类型在Keil中的对应写法
    • C语言枚举
  • 按键控制LED
    • 接线图
    • Hardware文件夹(模块化编程)
      • LED驱动程序封装
      • Key(按键)驱动程序封装
    • main.c源文件
  • 光敏传感器控制蜂鸣器
    • 接线图
    • Hardware文件夹
      • Buzzer(蜂鸣器)驱动程序封装
      • LightSensor(光敏传感器)驱动程序封装
    • main.c源文件

前置知识

按键介绍

  • 按键:常见的输入设备,按下导通,松手断开
  • 按键抖动:由于按键内部使用的是机械式弹簧片来进行通断的,所以在按下和松手的瞬间会伴随有一连串的抖动

在这里插入图片描述

传感器模块

在这里插入图片描述

传感器元件(光敏电阻/热敏电阻/红外接收管等)的电阻会随外界模拟量的变化而变化,通过与定值电阻分压即可得到模拟电压输出,再通过电压比较器进行二值化即可得到数字电压输出

【注意】传感器元件长得很相似,要注意辨别(我当时刚开始做的时候就搞混了,导致实验现象出问题)

传感器原件电路原理图

在这里插入图片描述

【补充分析】

当 N1 阻值变小时,下拉作用增强,中间 AO 端电压被拉低,极端情况下,N1阻值为 0,AO 输出被完全下拉,输出 0V
当 N1 阻值增大时,下拉作用减弱,中间 AO 端电压由于 R1 的上拉作用升高,极端情况下,N1阻值为无穷大,相当于断路,AO 输出被 R1 拉高至 VCC
得到的 AO(模拟电压输出)通过排针直接输出

硬件电路

按键硬件电路

下接按键方式

在这里插入图片描述

【分析】
选取一个 GPIO 接口,通过 K1 接地
按键按下时,PA0 被直接下拉到 GND,此时读取 PA0 口的电压就是低电平
按键松开时,PA0 被悬空,PA0 引脚电压不确定,所以在这种接法下必须要求 PA0 是上拉输入模式,默认 PA0 口为高电平

在这里插入图片描述

【分析】
相比于上一种接法,这种接法在外部接了一个上拉电阻
按键按下时,PA0 被直接下拉到 GND,此时读取 PA0 口的电压就是低电平
按键松开时,引脚由于上拉作用,自然保持为高电平

在这种状态下,引脚不会出现悬空状态,所以此时 PA0 引脚可以配置为浮空输入或者上拉输入

上接按键方式

在这里插入图片描述

【分析】
选取一个 GPIO 接口,通过 K1 接到 3.3V
按键按下时,PA0 被直接上拉到 3.3V,此时读取 PA0 口的电压就是高电平
按键松开时,PA0 被悬空,PA0 引脚电压不确定,所以在这种接法下必须要求 PA0 是下拉输入模式,默认 PA0 口为低电平(但是一般的单片机不一定有下拉输入模式)

在这里插入图片描述

【分析】
相比于上一种接法,这种接法在外部接了一个下拉电阻
按键按下时,PA0 被直接上拉到 3.3V,此时读取 PA0 口的电压就是高电平
按键松开时,引脚由于下拉作用,自然保持为低电平

在这种状态下,引脚不会出现悬空状态,所以此时 PA0 引脚可以配置为浮空输入或者下拉输入

推荐使用下接按键的方式,原因和LED接法类似,因为很多单片机和芯片都使用了高电平弱驱动,低电平强驱动的规则

传感器模块硬件电路

在这里插入图片描述

因为使用的是模块方案,所以电路非常简单(传感器详细的内部硬件电路上面已经简单介绍过了)

C语言数据类型在Keil中的对应写法

关键字位数表示范围stdint关键字ST关键字
char8-128 ~ 127int8_ts8
unsigned char80 ~ 255uint8_tu8
short16-32768 ~ 32767int16_ts16
unsigned short160 ~ 65535uint16_tu16
int32-2147483648 ~ 2147483647int32_ts32
unsigned int320 ~ 4294967295uint32_tu32
long32-2147483648 ~ 2147483647
unsigned long320 ~ 4294967295
long long64-( 2 64 2^{64} 264)/2 ~ ( 2 64 2^{64} 264)/2-1int64_t
unsigned long long640 ~ ( 2 64 2^{64} 264)-1uint64_t
float32-3.4e38 ~ 3.4e38
double64-1.7e308 ~ 1.7e308

C语言枚举

  • 关键字:enum

  • 用途:定义一个取值受限制的整型变量,用于限制变量取值范围;宏定义的集合

  • 定义枚举变量:

    • enum{FALSE = 0, TRUE = 1} EnumName;

      因为枚举变量类型较长,所以通常用 typedef 更改变量类型名

  • 引用枚举成员:

    • EnumName = FALSE;
    • EnumName = TRUE;

按键控制LED

接线图

在这里插入图片描述

Hardware文件夹(模块化编程)

在这里插入图片描述

LED驱动程序封装

LED.c

在这里插入图片描述

LED.h

在这里插入图片描述

Key(按键)驱动程序封装

Key.c

在这里插入图片描述

【说明】

  • Key_GetNum 的作用是读取某个硬件按钮(按键)的状态,并返回一个对应的数字,表示哪个按键被按下

  • 函数返回一个 uint8_t 类型的值(无符号8位整数),用于表示按键的编号

  • 初始化 KeyNum 为 0,表示默认没有按键被按下

  • 通过 GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_1) 检查 GPIOB 的引脚1 的输入状态,如果该引脚的值为 0(表示按钮被按下),则进行以下操作:

    • 调用 Delay_ms(20),延迟20毫秒,消除按键抖动
    • 进入一个 while 循环,直到按钮被释放(即引脚不再为 0)
    • 再次延迟20毫秒,进一步消除抖动
    • KeyNum 设置为 1,表示第一个按键被按下
  • 读取第二个按键(GPIO_Pin_11),和第一个引脚类似

    如果该引脚的值为 0,执行相同的去抖动和状态读取逻辑,然后将 KeyNum 设置为 2,表示第二个按键被按下

  • 函数返回 KeyNum,如果没有按键被按下,返回值为 0;如果第一个按键被按下,返回 1;如果第二个按键被按下,返回 2

Key.h

在这里插入图片描述

main.c源文件

在这里插入图片描述

光敏传感器控制蜂鸣器

接线图

在这里插入图片描述

Hardware文件夹

在这里插入图片描述

Buzzer(蜂鸣器)驱动程序封装

Buzzer.c

在这里插入图片描述

Buzzer.h

在这里插入图片描述

LightSensor(光敏传感器)驱动程序封装

LightSensor.c

在这里插入图片描述

LightSensor.h

在这里插入图片描述

main.c源文件

在这里插入图片描述


STM32 专栏文章均参考 《STM32入门教程-2023版 细致讲解 中文字幕》教程视频

http://www.yayakq.cn/news/357916/

相关文章:

  • 海口网站建设呢wordpress手机发留言
  • 厦门网站建设公司怎么选泸州市往建局建设银行网站名称
  • 山西建筑网站设计设计网站上传文件功能实现
  • 制作网站的网站做网站设计的公司有哪些
  • 北京优质网站制作品牌网站建设哪好
  • 雁塔区住房和城乡建设局网站vps网站权限
  • 一互联网网站design网页分析从哪些方面
  • 蚌埠网站建设深圳找网站建设公司哪家好
  • 北湖区网站建设wordpress 主题上传后
  • 做网站的流程哪个cms方便快速建站
  • 企业网站建设需求调查如何扁平化设计网站
  • 全国开发一个网站需要多少钱开发微信小程序的软件
  • 宝安自适应网站建设html的制作网站的优点
  • h5电子商城网站开发个人主页的html设计
  • 上海网站建设多少费用专业的企业小程序开发公司
  • 网站主机要怎么做获得网页源码怎么做网站
  • wordpress网站后缀网站建设颜色代码
  • 南京网站设计建设公司电话如何创建一个国外免费网站
  • 如何免费注册网站最新军事
  • 学做网站要学什么语言网站备案修改域名ip
  • 为什么要做网站网站开发 链接指向文件夹
  • 手机网站一键导航代码设计吧
  • 网站开发好学不服装公司发展规划
  • 西安网站制作wordpress教程视频
  • 网站后台被挂木马笑话类网站 源代码
  • 公司网站建设优点能够做简历的网站
  • 网站建设报价 东莞建站广告
  • 网站开发培训合肥会员管理软件
  • 绵阳学校网站建设网站上面的主导航条怎么做
  • 网站建设咋做代理网店一件代发