Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz

ATmega16 機器人控制器 公開程式分享

查看數: 5050 | 評論數: 8 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發佈時間: 2011-8-19 20:09

正文摘要:

本帖最後由 xu3u4rmp4 於 2011-8-27 01:00 編輯 好像大家興趣缺缺.那就先改成8軸.有需要再向我索取完整32軸資料 完整電路圖晚點會補上 PORTA.0接74595串行數據輸入   DS PORTA.1接74595移位時鐘脈衝&nb ...

回復

rayrider 發表於 2011-8-30 00:02:12
已回覆短消息。不過大大可能沒有興趣吧。
xu3u4rmp4 發表於 2011-8-29 19:41:13
AVR部分是給自己的作業.已經完成
VB部分編輯腳本部份完成.還差播放腳本功能就完成了
rayrider 發表於 2011-8-29 16:50:07
小弟感覺樓主不用大費周章花時間搞avr,因為小弟無論從哪一角度看,這個都是一個標準的SSC-32電路。大大最好多花時間在vb就好。
xu3u4rmp4 發表於 2011-8-23 19:51:37
請問一下
我上面的主程式改成
void main(void)
{
init_devices();        
           while(1)
                {
                 unb=Uart_Receive();//接收馬達位置
                 PWM_in[unb]=Uart_Receive();//接收馬達PWM寬度
        }

}
VB傳送
Private Sub Command1_Click()
  Cmd_array = &H0'馬達位置
  MSComm1.Output = Chr(Cmd_array)
  Cmd_array = "150"馬達PWM寬度
  MSComm1.Output = Chr(Cmd_array)
End Sub

結果輸出寬度非1.5mS.而是小於0.8mS.說明了傳送錯誤
請問AVR中我把串列接收寫在主程式while(1){...};中.是否不對
xu3u4rmp4 發表於 2011-8-23 01:09:03
請問一下
8051 KEIL-C中
串列資料可以直放入陣列中.
P[0]=SBUF;//將陣列P[0]裡的值改變
AVR 中似乎不能.請問是不是要加特別的指令呢?
unsigned char Uart_Receive(void)
{
  while (!(UCSRA & (1<<RXC)));
  return UDR;   
}
         
P[0]=Uart_Receive() ;
xu3u4rmp4 發表於 2011-8-20 14:16:54
謝謝 問題解決了
naga 發表於 2011-8-20 08:11:15
第PORTC.2~PORTC.5不知道原因.信號輸出 << config fuse 的 jtagen 須關掉 ,它才能當一般i/o
PORTC = 0xFF; //m103 output only << m103 : 指的是Atmega103 這個IC
xu3u4rmp4 發表於 2011-8-19 20:20:55
忘了說 AVR程式中通訊部分還沒寫.會的人希望可以幫幫忙
我工作蠻忙的.而且隨時要收兵單了.所以不知道什麼時候才能完成.

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

GMT+8, 2024-11-23 22:43 , Processed in 0.131409 second(s), 12 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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