|
本帖最後由 fzr_7 於 2013-12-19 12:02 編輯
先說明此文章只分享如何用8051傳資料給手機和手機如何接收8051傳的資料
其他像是8051如何抓取機車的各項數據請參考我發過的自製表裡的電路和程式
把那些數據傳給另1顆8051後用那顆8051接藍牙傳給手機
你要直接用原始的8051也可以,記得保留P3.0和P3.1
全部只剩電路還沒焊接,之前做的雙LCD液晶的電路無法共用
手機程式方面還可以加強一下藍牙的處理
藍牙模組就網拍最便宜的就好,8051記得買+5V動作的,不要買到+3.3V的
藍牙AT指令和設定請跟賣家要或是網路找一下有PDF檔,我就是自己找PDF,如何使用請GOOGLE會比我仔細
HD畫質,本來想說用FULL HD,想一想算了
開始圖片是誰一看就知,應該沒看到大奶就認不出吧
我的棒球偶像,我們家都是猿的球迷居多
家裡手機裡面的怪照片,被打馬賽克看不出來是誰,被程式找出來貼上
因為手機不是我的,我的TWM A5粉色還在等, 知道的不要炮我,這邊不是政治文
8051接藍牙的電路很簡單,就RX和TX兩條線而已,GOOGLE或看書就會
8051的組合語言程式,很簡單的增加數據來傳給手機做測試用,自己看一下書就會傳機車的資料前先傳個數據來判斷下一個數據是機車的什麼資料
鮑率記得跟藍牙模組用一樣的,不用太快,除非你需要
- ORG 00H
- JMP START
- START:
- MOV P0,#0FFH ;ND輸入
- MOV P1,#0FFH ;NR、NN輸入
- MOV P2,#0FFH ;NS輸入
- MOV P3,#00000011B ; P3.0和P3.1要用來接藍牙的TX和RX
- MOV 31H,#8 ;轉速8~245,傳後要+10
- MOV 32H,#7 ;檔位0~7
- MOV 33H,#0 ;時速0~149
- MOV 34H,#0 ;里程150~159
- MOV 35H,#0 ;油溫0=0度,99=99度
- MOV 36H,#0 ;汽油量+100,100=0,120=10.0
- MOV 37H,#0 ;電壓+121,121=LOW,122=10.0v
- ;132=11.0v,167=14.5v,168=HI
- MOV R0,#0
- MOV TMOD,#00100000B
- ANL PCON,#01111111B
- MOV TH1,#244 ;鮑率2.4K最低
- MOV TL1,#244
- SETB TR1
- MOV SCON,#01010000B
- START0:
- MOV A,SBUF
- JNB RI,$
- CLR RI
- CALL DELAY
- CJNE A,#100,START0 ;100是手機傳給8051一個開始接收訊號
- START1:
- MOV SBUF,#255 ;油溫 傳送一個數據約3.3ms 有7組14個0.052
- JNB TI,[ DISCUZ_CODE_262 ]nbsp; ;傳送1組數據+DELAY約106.6ms
- CLR TI
- CALL DELAY
- MOV A,35H
- MOV SBUF,A
- JNB TI,$
- CLR TI
- CALL DELAY
- INC 35H
- MOV A,35H
- CJNE A,#100,STA5
- MOV 35H,#0
- STA5:
- MOV SBUF,#254 ;汽油量
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,36H
- MOV SBUF,A
- JNB TI,$
- CLR TI
- CALL DELAY
- INC 36H
- MOV A,36H
- CJNE A,#21,STA6
- MOV 36H,#0
- STA6:
- MOV SBUF,#253 ;電壓
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,37H
- MOV SBUF,A
- JNB TI,$
- CLR TI
- CALL DELAY
- INC 37H
- MOV A,37H
- CJNE A,#48,STA7
- MOV 37H,#0
- STA7:
- MOV SBUF,#252 ;轉速
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,31H
- MOV SBUF,A
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,31H
- ADD A,R1
- MOV 31H,A
- CJNE A,#246,STA01
- STA01:
- JC STA1
- MOV 31H,#8
- STA1:
- MOV SBUF,#251 ;檔位
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,32H
- MOV SBUF,A
- JNB TI,$
- CLR TI
- CALL DELAY
- INC 32H
- MOV A,32H
- CJNE A,#8,STA2
- MOV 32H,#0
- STA2:
- MOV SBUF,#250 ;時速
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,33H
- MOV SBUF,A
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,33H
- ADD A,R0
- MOV 33H,A
- CJNE A,#150,STA02
- STA02:
- JC STA3
- MOV 33H,#0
- STA3:
- MOV SBUF,#249 ;里程
- JNB TI,$
- CLR TI
- CALL DELAY
- MOV A,34H
- MOV SBUF,A
- JNB TI,$
- CLR TI
- CALL DELAY
- INC 34H
- MOV A,34H
- CJNE A,#10,STA4
- MOV 34H,#0
- STA4:
- INC R0
- CJNE R0,#10,STA15
- MOV R0,#0
- STA15:
- INC R1
- CJNE R1,#100,STA16
- MOV R1,#0
- STA16:
- JMP START1
- DELAY: MOV R7,#1 ;延遲0.05秒
- DEL1: MOV R6,#249
- DEL2: MOV R5,#100
- DEL3: DJNZ R5,DEL3
- DJNZ R6,DEL2
- DJNZ R7,DEL1
- RET
- END
复制代码
沒有分享出手機的完整程式,因為每個人的8051抓機車數據不一樣,
傳給手機又不一樣,給了也沒用
以下藍牙程式取自http://fgchentech.blogspot.tw/2012/11/android.html
我把他改成1次抓2個BYTE後去判斷是傳機車的什麼數據
其他像layout和AndroidManifest.xml裡面要放的藍牙資料請自己處理
最後有問題沒給你回覆請直接pm我,喇塞文太多偶爾會漏掉
android程式有問題請不要問我,我從沒用過到做出來才不到半個月,時間也沒有超過100小時
大多參考別人的範例然後修改成自己想要的,有些指令會用但是意思沒有去深入了解
完全版要過年後了,有機會會錄個上車實測上來分享
|
评分
-
3
查看全部评分
-
|