Robofun 機器人論壇

標題: 如何用C語言操作電子羅盤(TDCM3) [打印本頁]

作者: dreamcast221    時間: 2008-6-1 15:25
標題: 如何用C語言操作電子羅盤(TDCM3)
麻煩可以用C語言寫操作TDCM3電子羅盤的範例程式ㄇ~~謝謝
作者: kaffe    時間: 2008-6-3 07:03
請先量RX/TX pin的準位. 若是都是5V的話. 你就可以用RS-232做交叉線直接跟他溝通即可.

Regards,
Yu
作者: dreamcast221    時間: 2008-6-3 16:10
標題: 8051與TDCM3電子羅盤的整合
謝謝~但是如果要與8051單晶片做整合時,在接完TXD/RXD的腳位後,要如何用c語言寫,讓羅盤測量方位
作者: dreamcast221    時間: 2008-6-3 16:16
標題: 8051與TDCM3電子羅盤的整合
如題,C語言該如何寫,電子羅盤才能開始測量方位
作者: TroyLee    時間: 2008-6-3 23:09
原帖由 dreamcast221 於 2008-6-3 16:16 發表
如題,C語言該如何寫,電子羅盤才能開始測量方位


該自己寫
作者: kaffe    時間: 2008-6-7 10:58
1. 你可以先嘗試寫一個丟資料的程式 用示波器量 TX是否有波形,且是否正確.
然後在寫RX的程式. 然後再把兩個組合起來.  

2. 接著看電子羅盤的規格書 照著書中的方式丟信號過去 與收信號回來觀察

原帖由 dreamcast221 於 2008-6-3 16:16 發表
如題,C語言該如何寫,電子羅盤才能開始測量方位

作者: homeming    時間: 2008-7-10 00:17
首先你要輸入ㄧ秒的low high
delay一秒程式如下
void delay1m()
{
int i=0;
for(i=0;i<502;i++)  //1ms
    _nop_();
}
下面是rx副程式
int rx_char()
{
while(1) if(RI) break;
RI=0;
return SBUF;
}
然後你設定ㄧ個腳位為 RTS輸入訊號
RX=1;
RTS=1;
RTS=0;
delay1m();
RTS=1;
接收就如
Output[0]=rx_char();
Output[1]=rx_char();
Output[2]=rx_char();
final=(Output[1]*256+Output[2])/2;
後兩個相加除以2就是角度




歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/) Powered by Discuz! X3.2