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

php 网站建设流程平面广告设计是什么

php 网站建设流程,平面广告设计是什么,jsp做的简单的图书馆网站,网站建设一般用什么语言前言#xff1a; 通过触摸按键控制LED灯以及继电器#xff0c;具体实现功能如下#xff1a; 1、触摸按键1单击与长按#xff0c;控制LED1#xff1b; 2、触摸按键2单击与长按#xff0c;控制LED2; 3、触摸按键3单击与长按#xff0c;控制LED3; 4、触摸按键4单击与长…前言 通过触摸按键控制LED灯以及继电器具体实现功能如下 1、触摸按键1单击与长按控制LED1 2、触摸按键2单击与长按控制LED2; 3、触摸按键3单击与长按控制LED3; 4、触摸按键4单击与长按控制继电器; 目录 1.硬件电路 1.1触摸按键 1.2 继电器 2.外部中断 /事件控制器EXIT 3.软件程序 3.1按键检测函数  3.2回调函数 3.3继电器按键检测函数 4.结果演示 1.硬件电路 1.1触摸按键 原理图如下所示 其中驱动芯片TTP224N我们可以看到该芯片有四种基本参数可以是快速单击模式多键模式最长输出时间为16s还有直接模式cmos输出低电平有效。其引脚输出是高电平 所以 外部中断管脚默认也为高电平当触摸按键被触摸时候芯片引脚内部自动节点外部管脚被自动拉低所以按键触发中断采用的是下降沿触发。图解如下 1.2 继电器 原理图如下  继电器使用5v上拉默认断开状态触摸按键并没有上拉所以采用推挽输出默认低电平按下之后三极管导通构成回路继电器吸合。图解如下 2.外部中断 /事件控制器EXIT 外部中断/事件控制器由 19 个产生事件/中断要求的边沿检测器组成。每个输入线可以独立地配置输入类型脉冲或挂起和对应的触发事件上升沿或下降沿或者双边沿都触发。每个输入线都可以被独立的屏蔽。挂起寄存器保持着状态线的中断要求。 主要特性 ● 每个中断/事件都有独立的触发和屏蔽 ● 每个中断线都有专用的状态位 ● 支持多达 19 个中断/事件请求 ● 检测脉冲宽度低于 APB2 时种宽度的外部信号。参见数据手册中电气特性部分的相关参数。 框图如下 从框图中我们可以看到外部中断可以边沿检测电路触发也可由软件触发当请求挂起和中断屏蔽都不相应可使能NVIC中断控制器。 3.软件程序 程序框架不会改变只是配置完cubemax按键端口中断优先级这个在上一章串口终端都介绍过会自动生成相应的源文件我们只需要在我们自己的应用文件中新增继电器源文件以及按键源文件就可以如下图所示 我们想要使用HLA库里面的中断函数我们就要了解他的参数设置以及函数功能如下所示 GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState); void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin); void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);//回调函数 3.1按键检测函数  封装一个按键结构体包含 标志位按键单击和长按以及按键检测函数。 typedef struct {uint8_t volatile KEY_Flag; //按键标志位uint8_t Click; //单击uint8_t Press; //长按void (*KEY_Detect)(void); //按键检测 } KEY_t;/* extern variables-----------------------------------------------------------*/ extern KEY_t KEY1; extern KEY_t KEY2; extern KEY_t KEY3; extern KEY_t KEY4; 函数实现 初始化结构体内容及指针指向 //结构体定义 KEY_t KEY1 {FALSE,FALSE,FALSE,KEY1_Detect}; KEY_t KEY2 {FALSE,FALSE,FALSE,KEY2_Detect}; KEY_t KEY3 {FALSE,FALSE,FALSE,KEY3_Detect}; KEY_t KEY4 {FALSE,FALSE,FALSE,KEY4_Detect}; 函数部分 static void KEY1_Detect() {uint8_t i 0;if(KEY1.KEY_Flag TRUE){//初识状态 让其为长按KEY1.Click FALSE;KEY1.Press TRUE;//检测按键是否为长按for(i0;i200;i){HAL_Delay(10);//两秒后如果为高电平则说明是单击 跳出循环if(HAL_GPIO_ReadPin(KEY1_GPIO_Port,KEY1_Pin) GPIO_PIN_SET){KEY1.Click TRUE;KEY1.Press FALSE;break; }}if(KEY1.Click TRUE){printf(检测到触摸按键1单击\r\n);//翻转一下LED.LED_Flip(LED1);}if(KEY1.Press TRUE){printf(检测到触摸按键1长按\r\n);//LED.LED_Flip(LED1);HAL_Delay(200);LED.LED_Flip(LED1);}//回到起始状态KEY1.KEY_Flag FALSE;KEY1.Click FALSE;KEY1.Press FALSE;} } 3.2回调函数 对于按键检测标志位有触摸按键 触摸时候就会触发中断进入回调函数代码如下 void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {switch(GPIO_Pin){case KEY1_Pin: KEY1.KEY_Flag TRUE; break;case KEY2_Pin: KEY2.KEY_Flag TRUE; break;case KEY3_Pin: KEY3.KEY_Flag TRUE; break;case KEY4_Pin: KEY4.KEY_Flag TRUE; break;default:printf(´错误触摸按键错误\r\n\r\n);} } 3.3继电器按键检测函数 原理跟控制led灯的按键一样控制继电器打开关闭以及翻转具体代码如下 结构体封装 typedef struct {void (*Relay_ON)(void); //打开void (*Relay_OFF)(void); //关闭void (*Relay_Flip)(void); //·翻转 } Relay_t;/* extern variables-----------------------------------------------------------*/ extern Relay_t Relay; 函数实现 static void Relay_ON(void); static void Relay_OFF(void); static void Relay_Flip(void);/* Public variables-----------------------------------------------------------*/ Relay_t Relay {Relay_ON,Relay_OFF,Relay_Flip };static void Relay_ON(void) {HAL_GPIO_WritePin(Relay_GPIO_Port,Relay_Pin,GPIO_PIN_SET); }/** name Relay_OFF* brief 关闭* param None* retval None */ static void Relay_OFF(void) {HAL_GPIO_WritePin(Relay_GPIO_Port,Relay_Pin,GPIO_PIN_RESET); }/** name Relay_Flip* brief 取反* param None* retval None */ static void Relay_Flip(void) {HAL_GPIO_TogglePin(Relay_GPIO_Port,Relay_Pin); } 4.结果演示
http://www.hkea.cn/news/14343002/

相关文章:

  • 江苏中兴建设有限公司网站免费的客户管理app
  • 高大上网站建设公司美妆网站设计
  • 建设ftp网站的安全性伊春市网站建设
  • 保健品网站源码wordpress本地手机无法访问
  • 电商网站开发怎么样客户关系管理理论
  • asp网站数据库连接制作手游需要学什么软件
  • 网站建设开标书哪个网站做自媒体比较好
  • 关于网站建设项目的投诉函秦皇岛网站搜索排名
  • 用vue做网站一般用什么组件库有个网站可以接单做设计的
  • 做博客的网站东营网站建设报价
  • 网站空间 虚拟主机php怎么创建网站
  • 湛江网站设计公司360seo优化
  • 网站托管运营天津建设信息网
  • 长春做网站推荐选吉网传媒好wordpress mysql 分表
  • windows优化大师怎么用南阳网站优化
  • 网站建设一条龙服务各类网站排名
  • 企业网站建设实训心得哈尔滨网站制作公司电话
  • 做图素材网站开通会员哪个好手机设计房子的软件
  • 济南地区做公司网站的公司网站建设嘉兴公司电话
  • 室内设计学校哪个好刷神马网站优化排名
  • 免费客户销售管理软件贵阳网站排名优化
  • 广州域名企业网站建站哪家好淘宝网站可信度状况及建设策略
  • 企业网站建设训手机网站建设注册塔山双喜
  • 北京网站建设laitang国内做的好的网站
  • 购物网站开发实例汇点远程app下载安装
  • 甘肃省通信管理局 网站备案wordpress如何显示分类目录
  • 珠海 网站开发今天的新闻主要内容
  • 软件网站建设基本流程图公司建设网站的公司
  • 都有哪些可以做app的网站广州云脑网站建设
  • 换物网站为什么做不起来深圳产品设计招聘信息