В этой теме будет обеспечена поддержка пользователей модуля.
Подробная информация по модулю на странице: [[OR-USB-UART]]
Все вопросы дальнейшей доработки модуля и почему были выбраны те или иные технические решения - в теме forum73/topic7419.html.
			
		|  | roboforum.ruТехнический форум по робототехнике. |  | 



#--------------------------------------------------------------------
## Programmer
## ==========
## Avrdude programmer flags used by `make program`
##- AVR Dragon (default)
#PROGRAMMER = dragon_isp
#PROGRAMMER_PORT = usb
##- Bootloader
##  AVR910 compatible w/ 115200 baud rate
#PROGRAMMER = avr109 -b115200
#PROGRAMMER_PORT = /dev/ttyUSB0

 
 jeka писал(а):Пытаюсь прошить OR-AVR-M128-S. Вызываю avrdude вот например так -
-p m128 -c avr911 -P com3 -b 115200 -U flash:w:"C:\Users\Jeka\Desktop\Робототехника\ORFA\orfa_v0.8.2_or-avr-m128-s_master_bauto_pv1.1.hex":i -U signature:r:con:r -F -v
Получаю
avrdude.exe: error: buffered memory access not supported. Maybe it isn't
a butterfly/AVR109 but a AVR910 device?



jeka писал(а):Кто-нибудь сталкивался? Какие есть способы диагностики, чтобы определить почему неработает?

 На самом деле есть вероятность что я плохо обжал шлейф. Так что пока пытаюсь проверить что сигналы вообще доходят до avr-а.
  На самом деле есть вероятность что я плохо обжал шлейф. Так что пока пытаюсь проверить что сигналы вообще доходят до avr-а.int TestInt=256;
   
  uart_init();
  stdout = stdin = &uart_str;
  printf("Linetracer ready 1!\n Ohh, yeah!\n");
  printf("This program created to test modified HXT900, you welcome!\nType me first int from which value I have to test:");
  scanf ("%d",&TestInt);
  printf("You choosed - %d\n",TestInt);



#include "defines.h"
#include <ctype.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "uart.c"
FILE uart_str = FDEV_SETUP_STREAM(uart_putchar, uart_getchar, _FDEV_SETUP_RW);
int main(void)
{
  int TestInt=256;
   
  uart_init();
  stdout = stdin = &uart_str;
  printf("Linetracer ready 1!\n Ohh, yeah!\n");
  printf("This program created to test modified HXT900, you welcome!\nType me first int from which value I have to test:");
  scanf ("%d",&TestInt);
  printf("You choosed - %d\n",TestInt);
  DDRC=0x20;//0010 0000
  DDRD=0x30;//0011 0000
  _delay_ms(1000);
  
  //PWM, Phase and frequency correct, TOP=ICR1
  TCCR1A=0xA0; //clear on up-counting, set on down-counting 1010 0000
  TCCR1B=0x12; //Clock prescaler 1/8 0001 0010
  ICR1=9216;  //Set 50Hz frequency   
  //uint16_t baseA=(153*2+1)*23/10;
  //uint16_t baseB=(153*2+1)*23/10;
  
  
  ///* тест сервы 
  uint16_t baseA=0;
  uint16_t baseB=0;
  OCR1A=baseA;
  OCR1B=baseB;
  
  DDRC=0xFF;
  PORTC=0xFF;
  int IsLED_C5_On=1;
  //1050 1200
  
   
      for (int i=200; i<500; i+=25)
      { 
         baseA=i;
         _delay_ms(250);
         OCR1A=baseA;
         printf("i=%d\n",i);
         //OCR1B=baseA;
         
         if (IsLED_C5_On==1) {PORTC=0x00;IsLED_C5_On=0;}else{PORTC=0xFF;IsLED_C5_On=1;}
      }
      
   baseA=0;
   OCR1A=baseA;
   OCR1B=baseA;
   PORTC=0x00;
  while(1==1)
   {   
   } //Конец теста сервы*/
  
}

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0