roboforum.ru

Технический форум по робототехнике.
Текущее время: 20 фев 2025, 22:27

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 35 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: XMega - Bascom AVR Basic
СообщениеДобавлено: 25 ноя 2010, 18:03 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
сегодня на макетке васиком запустил ХМегу :Yahoo!:
понюхал кнопку, поморгал светодиодом
прошивал AVR ISP mkII из под AVR Studio

Код:
$regfile = "xm128a1def.dat"
$crystal = 2000000

Config Porta.5 = Output
Config Porta.4 = Input

Do
If Pina.4 = 1 Then
   Porta.5 = 1 : Waitms 900
   Porta.5 = 0 : Waitms 100
Else
   Porta.5 = 0
End If
Loop


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 25 ноя 2010, 18:29 
Не в сети
Аватара пользователя

Зарегистрирован: 05 фев 2008, 15:33
Сообщения: 2687
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович
А что частота какая то странная?

_________________
Никто кроме нас!!!
4Robots.ru - Все для роботов!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 25 ноя 2010, 18:33 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
внутренний RC по умолчанию с завода
на кварец еще не переключался


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 25 ноя 2010, 21:50 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Отлично.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 26 ноя 2010, 13:21 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Замечательно! От меги обычной прога не отличается...

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 26 ноя 2010, 13:40 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
сегодня буду запускать AVR-DOS на microSD и естественно uart


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 26 ноя 2010, 18:34 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
Запустил uart
Без подключений библиотек не хотел компилировать
Код:
$regfile = "xm128a1def.dat"
$crystal = 2000000
$hwstack = 40                                               ' default use 32 for the hardware stack
$swstack = 40                                               ' default use 10 for the SW stack
$framesize = 40                                             ' default use 40 for the frame space

$LIB "XMega.LIB", "mcsbyte.lbx "' , "MCS.lib"


CONFIG COM5 = 2400 , Mode=0 , Parity=None, Stopbits=1, Databits=8
Open "Com5:" For Binary As #1


Config Porta.5 = Output
Config Porta.4 = Input

Dim A as  Byte

Print #1, "Start"

Do
Print #1 , A
Incr  A
wait 1

If Pina.4 = 1 Then
   Porta.5 = 1 : Waitms 900
   Porta.5 = 0 : Waitms 100
Else
   Porta.5 = 0
End If
Loop


Как в AVR Studio с помощью AVR ISP mkII переключить ХМегу на внешний кварец?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 19:35 
Не в сети
Аватара пользователя

Зарегистрирован: 26 сен 2007, 08:25
Сообщения: 142
Откуда: Krivoy Rog, ukraina
прог. языки: Си
ФИО: Коля
Цитата:
Как в AVR Studio с помощью AVR ISP mkII переключить ХМегу на внешний кварец?

Это делается программно. В ДШ написано.


если как то поможет так выглядит настройка на 32МГц внутренних в CVAVR

Код:
void system_clocks_init(void){    // настройка тактовой частоты МК 32МГц 
unsigned char n,s;
#pragma optsize-
s=SREG;
#asm("cli")
OSC.CTRL|=2;
DFLLRC32M.CTRL&= ~DFLL_ENABLE_bm;
n=(CLK.CTRL & (~CLK_SCLKSEL_gm)) | CLK_SCLKSEL_RC32M_gc;
CCP=CCP_IOREG_gc;
CLK.CTRL=n;
OSC.CTRL&= ~(OSC_RC2MEN_bm | OSC_RC32KEN_bm | OSC_XOSCEN_bm | OSC_PLLEN_bm);
PORTCFG.CLKEVOUT=(PORTCFG.CLKEVOUT & (~PORTCFG_CLKOUT_gm)) | PORTCFG_CLKOUT_OFF_gc;
SREG=s;
#pragma optsize+
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 20:10 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
это для какого программатора в CVAVR?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 20:13 
Не в сети
Аватара пользователя

Зарегистрирован: 26 сен 2007, 08:25
Сообщения: 142
Откуда: Krivoy Rog, ukraina
прог. языки: Си
ФИО: Коля
EdGull писал(а):
это для какого программатора в CVAVR?

компилятор CVAVR
Прошивал AVRISPmkII в AVRstudio.

в XMege нету фьюз, частота выставляется программно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 20:15 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
а причем тут программный выбор такта и нету Fuse ?

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 20:16 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
выложи плиз ELF файл который по этим настройкам сгенерировал CVAVR


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 20:18 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
Эд, у тебя в васике АСМ мона вставлять?

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 20:20 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
легко!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XMega - Bascom AVR Basic
СообщениеДобавлено: 27 ноя 2010, 20:29 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
я себе делал для кварца 14.74...
Код:
CLOCK_init:
   ldi      tmp1,         0b11000011
   sts      OSC_XOSCCTRL,   tmp1

   ldi      tmp1,         1<<OSC_XOSCEN_bp
   sts      OSC_CTRL,      tmp1

wait_for_cystal_stable:
   lds      tmp1,         OSC_STATUS
   sbrs   tmp1,         OSC_XOSCRDY_bp
   rjmp   wait_for_cystal_stable


   ldi      tmp1,         0b11001000
   sts      OSC_PLLCTRL,   tmp1

   lds      tmp1,         OSC_CTRL
   ori      tmp1,         1<<OSC_PLLEN_bp
   sts      OSC_CTRL,      tmp1

wait_for_PLL_stable:
   lds      tmp1,         OSC_STATUS
   sbrs   tmp1,         OSC_PLLRDY_bp
   rjmp   wait_for_PLL_stable   


   ldi      tmp1,         CCP_IOREG_gc
   out      CPU_CCP,      tmp1
   ldi      tmp1,         0b00000011
   sts      CLK_PSCTRL,      tmp1
   ldi      tmp1,         CCP_IOREG_gc
   out      CPU_CCP,      tmp1
   ldi      tmp1,         0b00000100
   sts      CLK_CTRL,      tmp1
   ret

внешний кварц, PLL х4 или х8, потом деление.. кароче на АЛУ у тебя будет 32 при квафрце 16..

могешь поковыряться в ДШ и изменить соответствующие значение загружаемые в регистры...

ну и tmp1 заменить на какой нить регистр... + наверна его еще и в стеке сохранить нада бы )

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 35 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO