开关量,数字量传感器都大同小异这里是人体传感器的,其他的模块改一个输出引脚就行
#include "led.h"
#include "delay.h"
#include "key.h"
//#include "sys.h"
#include "lcd.h"
void BodySenorInit(void);
int main(void)
{
BodySenorInit();
delay_init(); //延时初始化函数
LCD_Init(); //TFTLCD初始化
POINT_COLOR=RED; //设置字体颜色为红色
LCD_Clear(WHITE); //设置背景颜色为蓝色
POINT_COLOR=RED;
LCD_ShowString(50,80,210,24,24,"WELCOMretE TO"); //显示字符串"WELCOME TO"
while(1)
{
if(1==GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_8))LCD_ShowNum(50,120,50,8,24);
else LCD_ShowNum(50,120,5,8,24);
}
}
void BodySenorInit(void) //人体传感器初始化
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE );//使能PORTA,PORTE时钟
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;//KEY0-KEY2
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //设置成上拉输入
GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化GPIOE2,3,4
}