Stm32 はブザー、ボタン、光、熱、反射、透過ビームセンサーを使用します。

LED:発光ダイオード。順方向に通電すると点灯しますが、逆方向に通電すると消灯します。

アクティブブザー:発振源を内蔵しており、プラス極とマイナス極を直流電圧に接続すると連続的にブザーが鳴り、周波数は固定されており、ベースレベルが低いレベルでオンするとブザーが鳴ります。

パッシブブザー: 内部に発振源はなく、コントローラーから発振パルスを供給する必要があり、発振パルスの周波数を調整することで、さまざまな周波数の音を鳴らします。

ボタン: 一般的な入力デバイス、押すとオンになり、放すとオフになります

キーのジッター: キーは機械的なスプリングを使用してオン/オフを切り替えるため、ボタンを押したり放したりすると一連のジッターが発生します。

センサーモジュール: センサー素子 (フォトレジスター/サーミスター/赤外線受光管など) の抵抗は、外部アナログ量の変化に応じて変化します。固定値の抵抗器で電圧を分割することで得られます。

アナログ電圧出力を電圧コンパレータで2値化し、デジタル電圧出力となります。

 

N1 抵抗は、温度や光などの要因によって変化する可変抵抗器です。通常、これらの要因が増加すると抵抗値は小さくなります。C は一般にフィルターコンデンサです。分圧定理を使用してプルアップとプルアップを行います。ダウン解析(N1が小さくなり、プルダウン効果が強化され、ローレベルが出力されます)。一番左の写真はオペアンプに相当し、非反転入力端子が反転入力端子より大きい場合にハイレベルを出力します。DOが1の場合、LED2は消灯します。4 つのセンサーはすべて同じように使用されます。


//四个传感器都适用
void LightSensor_Init(void)
{
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
	GPIO_InitTypeDef GPIO_InitStructure;
	GPIO_InitStructure.GPIO_Pin=GPIO_Pin_12;//选取了B12口
	GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;//上拉,高电平
	GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
	GPIO_Init(GPIOB,&GPIO_InitStructure);
}

uint8_t LightSensor_Get(void) 
{
	return GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_12);
}

この記事は江蘇省理工大学と共同で研究したものであり、私の研究ノートです。侵害がある場合は、削除するために私に連絡してください。

おすすめ

転載: blog.csdn.net/m0_71827453/article/details/131755066