Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 9637|回復: 6
打印 上一主題 下一主題

如何用C語言操作電子羅盤(TDCM3)

[複製鏈接]
跳轉到指定樓層
1#
發表於 2008-6-1 15:25:31 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
麻煩可以用C語言寫操作TDCM3電子羅盤的範例程式ㄇ~~謝謝
2#
發表於 2008-6-3 07:03:17 | 只看該作者
請先量RX/TX pin的準位. 若是都是5V的話. 你就可以用RS-232做交叉線直接跟他溝通即可.

Regards,
Yu
3#
 樓主| 發表於 2008-6-3 16:10:52 | 只看該作者

8051與TDCM3電子羅盤的整合

謝謝~但是如果要與8051單晶片做整合時,在接完TXD/RXD的腳位後,要如何用c語言寫,讓羅盤測量方位
4#
 樓主| 發表於 2008-6-3 16:16:00 | 只看該作者

8051與TDCM3電子羅盤的整合

如題,C語言該如何寫,電子羅盤才能開始測量方位
5#
發表於 2008-6-3 23:09:20 | 只看該作者
原帖由 dreamcast221 於 2008-6-3 16:16 發表
如題,C語言該如何寫,電子羅盤才能開始測量方位


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

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

原帖由 dreamcast221 於 2008-6-3 16:16 發表
如題,C語言該如何寫,電子羅盤才能開始測量方位
7#
發表於 2008-7-10 00:17:54 | 只看該作者
首先你要輸入ㄧ秒的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就是角度
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-11-22 01:09 , Processed in 0.243438 second(s), 7 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表