<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
<link rel="self" type="application/atom+xml" href="http://forum.robosavvy.com/feed.php?f=5&amp;t=14219" />

<title>RoboSavvy Forum</title>
<subtitle>Robosavvy Forum: The largest online community of Humanoid Robot Builders</subtitle>
<link href="http://forum.robosavvy.com/index.php" />
<updated>2016-03-13T05:05:52+01:00</updated>

<author><name><![CDATA[RoboSavvy Forum]]></name></author>
<id>http://forum.robosavvy.com/feed.php?f=5&amp;t=14219</id>
<entry>
<author><name><![CDATA[kakashimaru2]]></name></author>
<updated>2016-03-13T05:05:52+01:00</updated>
<published>2016-03-13T05:05:52+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=14219&amp;p=43692#p43692</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=14219&amp;p=43692#p43692"/>
<title type="html"><![CDATA[Need help! Rx64 not working]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=14219&amp;p=43692#p43692"><![CDATA[
Homemade atmega328p,max485 to drive rx64.<br /><br />I want to Power up the servo and run the simplest program turning the LED on and off but not working.<br />I don't know how to troubleshoot it.<br /><br />I have already checked Voltage It may be ok (18v) . but The motor blinks so long times(6 sec) when powered up.<br />i was check baudrate and ID by USB2DYNAMIXEL . <br />baud 500000,Id:3<br /><br />My program <br /><br /><dl class="codebox"><dt>Code: </dt><dd><code>#include &lt;stdio.h&gt;<br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;compat/deprecated.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#define F_CPU 16000000UL<br />void Init_Serial(unsigned int baudrate);<br />void put_command(uint8_t c,FILE *stream);<br />unsigned int p;<br />static FILE uart_str=FDEV_SETUP_STREAM(put_command,NULL,_FDEV_SETUP_WRITE);<br />void delay_ms(unsigned int i)<br />{<br />   for(;i&gt;0;i--)<br />   {<br />      _delay_ms(1);<br />   }<br />}<br />void put_command(uint8_t c,FILE *stream)<br />{<br />   while(!(UCSR0A &amp; (1&lt;&lt;UDRE0)));<br />   UDR0 = c;<br />        while ( ( UCSR0A &amp; TXC0 ) != 0 ) ;<br />} <br />static void USART_Init(unsigned int baud)<br />{<br />   UBRR0H = (unsigned char)(baud&gt;&gt;8);<br />   UBRR0L = (unsigned char)baud;      <br />   <br />   UCSR0B |= (1&lt;&lt;TXEN0);<br />   <br />   UCSR0C |= (0&lt;&lt;UMSEL00)|(0&lt;&lt;UMSEL01)|(0&lt;&lt;UPM00)|(0&lt;&lt;UPM01)|(0 &lt;&lt; USBS0)|(1 &lt;&lt; UCSZ00) | (1 &lt;&lt; UCSZ01)| (0 &lt;&lt; UCSZ02)| (0 &lt;&lt; UCPOL0);<br />   stdout=&amp;uart_str;<br />}<br /><br />static void Motor_LED_ON()<br />{<br />   fputc(0xFF,&amp;uart_str);<br />   fputc(0xFF,&amp;uart_str);<br />   fputc(0xFE,&amp;uart_str);<br />   fputc(0x04,&amp;uart_str);<br />   fputc(0x03,&amp;uart_str);<br />   fputc(0x19,&amp;uart_str);<br />   fputc(0x01,&amp;uart_str);<br />   fputc(0xE0,&amp;uart_str);<br />}<br /><br />int main(void)<br />{<br />   DDRC = 0x0C;<br /><br />   USART_Init(1);<br />   while(1)<br />   {         <br />      delay_ms(500);<br />      sbi(PORTC,3);<br />      sbi(PORTD,2); // enable txd disable rxd<br />      UCSR0B |= (1&lt;&lt;TXEN0)|(0&lt;&lt;RXEN0)|(0&lt;&lt;RXCIE0);<br />      cli();<br />      delay_ms(5);<br />      Motor_LED_ON();<br />      delay_ms(3);<br />      cbi(PORTD,2); // enable rxd disable txd<br />      UCSR0B |= (0&lt;&lt;TXEN0)|(1&lt;&lt;RXEN0)| (1&lt;&lt;RXCIE0) ;<br />      sei();      <br />      delay_ms(500);<br />   }<br />   return 0;<br />}<br /><br />ISR(USART_RX_vect)<br />{<br />   while ( !(UCSR0A &amp; (1&lt;&lt;RXC0)) );<br />      if(UDR0 == 0x03){<br />         sbi(PORTC,2);<br />         delay_ms(300);<br />      }<br />   return;<br />}<br /></code></dd></dl><br /><br />i follow circuit from rx64 datasheet<br /><br />Can someone advice me plz<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=8073">kakashimaru2</a> — Sun Mar 13, 2016 5:05 am</p><hr />
]]></content>
</entry>
</feed>