Re: 鮑率設定
|
||||
---|---|---|---|---|
新會員
|
嗯嗯 謝謝各位大大熱心的協助
想一想 最後還是決定先把 AI Servo的速率調降 然後再用 PIC去控制它了~~
發表於: 2008/5/12 0:38
|
|||
|
Re: 鮑率設定
|
||||
---|---|---|---|---|
新會員
|
iclink你好:
這個AI SERVO原廠有附一個控制器是atmega128 我想說利用PIC來取代他 AI SERVO設定的原始鮑率是1M atmega128這顆控制器也被設成1M 這裡有參考資料: AI Servo: http://robosavvy.com/site/docs/Bioloid/AX-12(english).pdf --->(Page 13) atmega128: http://www.atmel.com/dyn/resources/prod_documents/doc2467.pdf --->(Page 174) PIC 16f877: http://ww1.microchip.com/downloads/en/DeviceDoc/30292c.pdf ---> (Page 98) 所以兩者可正常通訊 且資料不會LOSE 謝謝~~
發表於: 2008/5/8 13:08
|
|||
|
Re: 鮑率設定
|
||||
---|---|---|---|---|
新會員
|
iclink你好:
請問一下~ 我看過16F877的DATASHEET 它硬體部分好像可以到1M 那我是不是只要換compiler 就可以讓鮑率到達1Mpbs呢?? 謝謝~~
發表於: 2008/5/8 10:03
|
|||
|
鮑率設定
|
||||
---|---|---|---|---|
新會員
|
各位先進大大你們好:
小弟最近正在學習使用AI Servo 想藉由PIC晶片(PIC16F877)的通訊埠對AI Servo下Command 這顆AI Servo的通訊介面是使用半雙工的方式 他的DataSheet有提供這樣的參考電路: http://delphi.ktop.com.tw/download/up ... b6562f7_communication.JPG 且AI Servo預設鮑率為1M BPS 參考了晶片的DataSheet後 我採用了16MHz的石英振盪器 且藉由程式將鮑率設定為1M BPS 測試程式如下(CCS C Compiler): //--------------------------------------------------------------------- #include <16f877.h> #use delay(clock=16000000) #fuses HS, NOWDT #use rs232(baud=1000000, bits=8, xmit=PIN_C6, rcv=PIN_C7) char LedOn [9]={0xff, 0xff, 0x03, 0x05, 0x03, 0x18 , 0x01, 0x01, 0xda}; char LedOff[9]={0xff, 0xff, 0x03, 0x04, 0x03, 0x19,0x00, 0x00, 0xdc}; void main() { int i=0; Set_tris_D(0x00); Output_D(0x01); while(1) { for(i=0; i<9; i++) { printf("%x",LedOn[i]); Delay_us(160); } Delay_ms(10); } } //--------------------------------------------------------------------- 並將晶片的RX/TX直接接至上面的參考電路 可是始終無法成功將Command 傳送到AI Servo 不知道有哪個環節我搞錯了?? 煩請各位 先進不吝指教 謝謝~~
發表於: 2008/5/8 1:14
|
|||
|