芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密

飞芯科技提供芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密逆向服务

PCB抄板STM32单片机净水器程序

  1. PCB抄板#include "stm32f10x.h"
  2. PCB抄板#include "delay.h"
  3. PCB抄板#include "exti.h"
  4. PCB抄板#include "led.h"
  5. PCB抄板#include "display.h"
  6. PCB抄板#include "key.h"

  7. void EXIT_Init(void)
  8. {
  9.     GPIO_InitTypeDef GPIO_InitStructure;
  10.     EXTI_InitTypeDef EXTI_InitStructure;                //定义外部中断结构变
  11.     NVIC_InitTypeDef NVIC_InitStructure;                //定义向量中断结构变量

  12.     RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB  , ENABLE  );
  13.     RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);//  打开复用时钟
  14.     GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource0); //连接中断管脚PB0

  15.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 ;                //B0-B1 为外部按键 作为3个独立外部输入中断
  16.     GPIO_InitStructure.GPIO_Mode =  GPIO_Mode_IN_FLOATING;                   // 输入
  17.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 // 最高输入速率50MHz
  18.     GPIO_Init(GPIOB, &GPIO_InitStructure);                                 // 选择B端口

  19.     NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);//设置NVIC中断分组 0位抢占优先级,4位响应优先级
  20.     NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;//选择中断通道0
  21.     NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0;//抢占优先级0 只能为0
  22.     NVIC_InitStructure.NVIC_IRQChannelSubPriority=1;//响应优先级2 共有16个
  23.     NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;//使能中断
  24.     NVIC_Init(&NVIC_InitStructure);//完成初始化
  25.        
  26.          
  27.     NVIC_InitStructure.NVIC_IRQChannel = EXTI1_IRQn;//选择中断通道0
  28.     NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0;//抢占优先级0 只能为0
  29.     NVIC_InitStructure.NVIC_IRQChannelSubPriority=2;//响应优先级2 共有16个
  30.     NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;//使能中断
  31.     NVIC_Init(&NVIC_InitStructure);//完成初始化

  32.     EXTI_InitStructure.EXTI_Line = EXTI_Line0 | EXTI_Line1;//选择中断线路0和1
  33.     EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;//设置为中断请求,非事件请求
  34.     EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;//设置中断触发方式为下降沿触发
  35.     EXTI_InitStructure.EXTI_LineCmd = ENABLE;//外部中断使能
  36.     EXTI_Init(&EXTI_InitStructure);

  37. }

  38. /*
  39. ********************************************************************************
  40. ** 函数名称 : EXTI0_IRQHandler(void)
  41. ** 函数功能 : 外部中断函数
  42. ** 输    入        : 无
  43. ** 输    出        : 无
  44. ** 返    回        : 无  RESET
  45. ********************************************************************************
  46. */
  47. void EXTI0_IRQHandler(void)
  48. {
  49.     if(EXTI_GetITStatus(EXTI_Line0)!=RESET)//判断某个线上的中断是否发生
  50.     {
  51.       
  52.         if((GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_0)==0))    //按键真的被按下
  53.         {
  54.                                            mL=mL+sdmaichong_ml;                          //1脉冲为10ML水
  55.                                                       
  56.                                            LjmL= LjmL+sdmaichong_ml;
  57.                                                                       //100ML累计一次
  58.                                        

  59.         }
  60.                
  61. //      while(!GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_0)); //等待松手 不能使用KEY_B0代替
  62.         EXTI_ClearITPendingBit(EXTI_Line0); //清楚中断标志位
  63.     }
  64. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.taihedz.cn
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信