|
1.png (228.99 KB, 下載次數(shù): 70)
下載附件
2021-6-17 20:42 上傳
HC_SR501配置函數(shù)
先是頭文件,
#define HC_SR501 PAI(0) PAI(0)是位綁定,方便操作用的,
void HC_SR(void);是HC_SR501的PA0配置函數(shù)
u8 HC_SR501_Statue(void);是為了判斷PA0輸入狀態(tài),如果被拉高了,說明有人進入了
void HC_SR(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA ,ENABLE);//打開GPIOA時鐘
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;//選中0引腳
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD;//配置為下拉輸入模式
GPIO_Init(GPIOA, &GPIO_InitStructure);
}
u8 HC_SR501_Statue(void)
{
if(PAI(0)==1)//如果GPIOA_0 引腳輸入高電平,代表有人,返回1
{
return 1;
}
return 0;//沒人就返回0
}
部分主函數(shù)
int main(void)
{
delay_init(72); //滴答計時器配置函數(shù)
RCC_Configuration();//時鐘配置
GPIO_Configuration();//GPIO配置
HC_SR();//HC_SR501引腳配置
USART1_Configuration();//串口配置函數(shù)
while(1)
{
GPIO_ResetBits(GPIOC,GPIO_Pin_0);//證明系統(tǒng)成功進入該循環(huán)
if(HC_SR501_Statue()==1)//如果返回狀態(tài)為1 ,則該判斷語句成立,輸出有人
{
printf("有人\r\n");
}
else printf("沒人\r\n");
delay_ms(500); //防止輸出太過頻繁
}
}
工程文件和pdf:
紅外傳感器.7z
(5.92 MB, 下載次數(shù): 85)
2021-6-17 20:43 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|