基于STM32的水質(zhì)渾濁度和PH值監(jiān)測系統(tǒng)設計(仿真+程序+講解)
仿真圖proteus 8.9
程序編譯器:keil 5
編程語言:C語言
設計編號:C0077
演示講解視頻
基于STM32的水質(zhì)渾濁度和PH值監(jiān)測系統(tǒng)設計(仿真+程序+講解)
1.主要功能
結(jié)合實際情況,基于STM32F103單片機設計一個電子水質(zhì)檢測系統(tǒng)。該系統(tǒng)應滿足的功能要求為:
本次嵌入式課程設計綜合實驗的內(nèi)容STM32的水質(zhì)渾濁度和PH值監(jiān)測系統(tǒng)設計。完成LCD液晶顯示、水質(zhì)檢測、燈光報警等多項任務。
1、以STM32為最小系統(tǒng)電路進行連接,用液晶顯示屏水質(zhì)渾濁度,PH值渾濁度閾值,PH值閾值。
2、以兩路STM32內(nèi)部ADC電路分別檢測水質(zhì)渾濁度和PH值。
3、當水質(zhì)渾濁度大于等于或PH值大于等于閾值時,報警燈亮,都低于則報警燈滅。
主要硬件設備:STM32F103單片機、LCD1602液晶。
以下為本設計資料展示:
2.仿真
整體設計方案
該系統(tǒng)為電子水質(zhì)檢測系統(tǒng),其主要的功能有:以stm32為最小系統(tǒng)電路進行連接,用液晶顯示屏水質(zhì)渾濁度和水質(zhì)PH值數(shù)據(jù)。
測試如下所示:
開始仿真后LCD1602第一行zd顯示檢測的渾濁度,PH顯示酸堿度。第二行的表示閾值。第二行zd_s表示渾濁度閾值為50%,PH_S表示酸堿度報警值為7。
渾濁度或者酸堿度高于閾值則報警燈亮。如下圖所示:
3. 程序
部分代碼:
int main(void)
{
int ADC_num;
int temp1,temp2;
ADC1_GPIO_Config();//ADC的初始化
ADC_Config();
LCD1602_Init();
LCD1602_ShowStr(0,1,"zd_S:50% PH_S:7",15);//渾濁度報警值顯示 PH值報警值顯示
LCD1602_ShowStr(0,0,"zd: PH: ",15);//顯示zd PH
LED();
while(1)
{
ADC_num=Get_ADC(ADC_Channel_0);
temp1=ADC_num*100/4096; //計算得到渾濁度
LCD1602_WriteCmd( 0x80 + 3 );
LCD1602_WriteDat( temp1/10 + 0x30 );//顯示渾濁度
LCD1602_WriteDat( temp1%10 + 0x30 );
LCD1602_WriteDat( '%' );
ADC_num=Get_ADC(ADC_Channel_1);
temp2=ADC_num*10/4096; //計算得到PH值
LCD1602_WriteCmd( 0x80 + 13 );
LCD1602_WriteDat( temp2 + 0x30 );
if(( temp1 >= 50 )||( temp2 >= 7 ))//計算是否亮報警燈
{
GPIO_ResetBits( GPIOA,GPIO_Pin_10 );
}
else
{
GPIO_SetBits( GPIOA,GPIO_Pin_10 );
}
}
}
4.資料清單&下載鏈接
資料下載鏈接:
https://docs.qq.com/doc/DS0hrelFRU213dFdn