1. 程式人生 > >APP Inventor,一個能快速做出app的工具。只要會C語言就行,很好的除錯微控制器工具。基於arduino的藍芽資料傳送在APP顯示,室內花園的製作。

APP Inventor,一個能快速做出app的工具。只要會C語言就行,很好的除錯微控制器工具。基於arduino的藍芽資料傳送在APP顯示,室內花園的製作。

  今天記錄一下前幾天做的一個關於智慧窗戶APP的製作過程。這次製作是通過APP inventor來實現的下面是最原始的版本,雖然有點醜,但這都不是重點,以後有待改進。(1)APP初次開啟的顯示:
如圖所示,這一APP有獲取藍芽地址、連線藍芽、開關燈、氣泵的開關、智慧模式的開關、溼度的顯示等功能。圖中程式的作用是:當初次開啟APP程式,螢幕會出現提醒語“歡迎使用本軟體”,然後使按鍵“連線”、“開啟氣泵”、“開燈”和定時器功能失效,“藍芽地址”功能正常(2)藍芽地址的獲取:圖中“1”的作用是:當列表1(即按鍵“藍芽地址”)開啟之前,將藍芽地址的名稱傳送到列表1圖中“2”的作用是:當列表1點選後,螢幕上顯示提醒語“選擇前請確認已與手機配對”,選擇藍芽地址後,將選擇的藍芽地址賦值給全域性變數name,然後讓按鍵“連線”的功能恢復。(3)連線藍芽:當按鍵“連線”被觸動時,恢復按鍵“開燈”、“開啟氣泵”和定時器的功能,讓螢幕出現提醒語“已點選請等待兩秒”。然後進入一個條件語句,如果藍芽已經連線,令藍芽斷開,然後將按鍵“連線”的內容變為“請連線”並讓螢幕顯示請“連線”;如果藍芽沒有連線,令藍芽和剛列表選擇的藍芽地址連線,並將按鍵“連線”內容改為“斷開連線”和用提醒語在螢幕上顯示“連線成功”。(4)氣泵的開關:
(注意:dakai即是按鍵“開啟氣泵”)圖中程式的作用是:當按鍵“dakai”被觸動是,如果當時的按鍵內容為“開啟氣泵”,則讓藍芽傳送“1”到arduino,將字型顏色改為綠色,並且將按鍵內容改為“關閉氣泵”;如果按鍵內容為“關閉氣泵”,則將字型顏色改為黑色,讓藍芽向arduino傳送“2”,並且按鍵內容改為“開啟氣泵”。(5)燈的開關:圖中程式的作用:當按鍵“開燈”被觸動是,如果當時按鍵內容為“開燈”則讓藍芽向arduino傳送"5",將字型顏色改為黑色,並將按鍵內容改為“關燈”;如果當時按鍵內容為”關燈“,則讓藍芽想arduino傳送“6”,將按鍵內容改為“開燈”,並將字型顏色改為黃色。(6)智慧模式的開關:
  圖中的作用:當按鍵“智慧模式”被觸動時,如果當時按鍵內容為“智慧模式”則讓藍芽向arduino傳送"8",將字型顏色改為黃色,並將按鍵內容改為“關閉模式”;如果當時按鍵內容為”關燈“,則讓藍芽想arduino傳送“9”,將按鍵內容改為“智慧模式”,並將字型顏色改為黑色。(7)藍芽的接收和傳送:
圖中一開始我定義了兩個全域性變數,分別為text,和text2。然後當定時器(1秒接收10次)達到定時的時間後,如果藍芽有檢測到資料,則讓藍芽接收3個數據並將其賦值給全域性變數text,然後通過溼度的演算法計算出溼度並將結果賦值給text2,計算公式為sqrt((100-(text-285/4))^2),實際上溼度是不會超過100%的,但安全起見我在程式中加了個檢測環節,如果text2>100,則令其等於100;最後將text2賦值給Label的內容,以此在手機上顯示。