一.系統概述
智能雨刷器系統使用STM32單片機進行主控,通過顯示屏顯示雨量,系統有自動和手動兩種模式,根據設定的閾值可以在自動模式下進行雨刷控制,手動模式下也可以通過按鍵進行雨刷器的控制,按鍵還可以進行雨量閾值的設定。
二.仿真概述
1. 默認情況下是手動模式,手動燈亮起
2. 通過按鍵調節雨刷器的檔位,單位檔位有90度和180度
3. 按下手動/自動切換按鍵,切換到自動模式下
4. 調節雨滴量,當雨滴量超過設定閾值就會自動啟動雨刷器
三.程序設計
int main(void) { while(1) { u8 key0flag,key1flag,key2flag,key3flag;//按鍵標志 Rain= PCF8591_ADC_Input(0x90,0)/3;//雨滴檢測 if(KEY0 == 0) { delay_ms(75); if(KEY0 == 0) { key0flag =1; W=~W; } else { key0flag =0; W=W; } } if(KEY1 == 0) { delay_ms(75); if(KEY1 == 0) { key1flag =1; M=~M; } } if(KEY2 == 0) { delay_ms(100); if(KEY2 == 0) RainMax = RainMax+20; } if(KEY3 == 0) { delay_ms(100); if(KEY3 == 0) { i++; if(i>3) { i=0; } } } // if(W)//開 { write_str(12,1,(u8*)"ON ");//開 write_str(6,0,(u8*)"D");//檔位 write_str(0,0,(u8*)"R");//雨滴 write_str(3,0,(u8*)"H");//閾值 write_str(9,0,(u8*)"M");//模式 write_num(0,1,Rain); write_num(3,1,RainMax); if(M)//自動 { write_str(9,1,(u8*)"Z");//模式 Led1_2=0; delay_ms(100); Led1_1=1; if(Rain>80) { write_str(6,1,(u8*)"3");//檔位 Motor_Rhythm_418(4,40); delay_ms(10); Motor_Rhythm_418(2,40); } else if(Rain>60) { write_str(6,1,(u8*)"2");//檔位 Motor_Rhythm_418(4,40); delay_ms(500); Motor_Rhythm_418(2,40); } else if(Rain>40) { write_str(6,1,(u8*)"1");//檔位 Motor_Rhythm_418(4,40); delay_ms(1000); Motor_Rhythm_418(2,40); } else if(Rain<40) { write_str(6,1,(u8*)"0");//檔位 Motor_Rhythm_418(0,0); } } else//手動 { write_str(9,1,(u8*)"S");//模式 Led1_1=0; delay_ms(100); Led1_2=1; if(i==0) { write_str(6,1,(u8*)"0");//檔位 Motor_Rhythm_418(0,0); } if(i==1) { write_str(6,1,(u8*)"1");//檔位 Motor_Rhythm_418(4,40); delay_ms(1000); Motor_Rhythm_418(2,40); } if(i==2) { write_str(6,1,(u8*)"2");//檔位 Motor_Rhythm_418(4,40); delay_ms(500); Motor_Rhythm_418(2,40); } if(i==3) { write_str(6,1,(u8*)"3");//檔位 Motor_Rhythm_418(4,40); delay_ms(10); Motor_Rhythm_418(2,40); } } } else//關 { write_str(0,1,(u8*)" ");//狀態 write_str(0,0,(u8*)" ");//狀態 write_str(12,1,(u8*)"OFF");//關 write_str(12,0,(u8*)"W");//狀態 Motor_Rhythm_418(0,0); } } }
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
單片機
+關注
關注
6037文章
44558瀏覽量
635298 -
STM32
+關注
關注
2270文章
10900瀏覽量
356005 -
控制
+關注
關注
4文章
1011瀏覽量
122666
原文標題:Proteus仿真實例_基于STM32單片機的智能雨刷器設計(仿真文件+程序)
文章出處:【微信號:小常硬件,微信公眾號:小常硬件】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
基于單片機的步進電機智能雨刷器程序設計能否實現?
在單片機中設計一段智能雨刷器的程序,此處雨滴感應模塊用滑動變阻器代替,寫了以下程序可是只能實現一種進步電機速度,無法實現根據滑動變阻器值改變
發表于 01-08 14:28
怎樣去設計一種基于51單片機的智能汽車雨刷控制系統
總體設計設計的總體思路是:運用雨滴傳感器感應雨量的大小,把感應信號輸給單片機系統,然后通過軟件控制雨刷電機根據相應的環境做出不同的轉動。例如,當檢測為小雨量的時候,電機工作在小雨模式(
發表于 11-09 08:04
汽車雨刷系統的解決方案
在目前已有的前端雙雨刷系統中,左右雨刷器之間的同步采用機械連接來實現(圖1)。這一做法很有必要,因為擋風玻璃上的污垢、風的影響或
發表于 08-23 10:43
?2129次閱讀
基于Atmel半導體方案的汽車雨刷系統的設計實現
在目前已有的前端雙雨刷系統中,左右雨刷器之間的同步用機械連接實現。這很有必要,因為擋風玻璃受污垢、風及雨
發表于 01-24 16:46
?1216次閱讀
stm32單片機和51單片機區別是什么
單片機也就是單片微型計算機,和集CPU、RAM、ROM、輸入輸出設備、中斷系統在同一個芯片上的器件。 stm32單片機 stm32
基于51單片機的智能汽車雨刷控制系統方案原理圖程序設計
總體設計設計的總體思路是:運用雨滴傳感器感應雨量的大小,把感應信號輸給單片機系統,然后通過軟件控制雨刷電機根據相應的環境做出不同的轉動。例如,當檢測為小雨量的時候,電機工作在小雨模式(
發表于 11-04 17:36
?41次下載
評論