roboforum.ru

Технический форум по робототехнике.


XMega - Bascom AVR Basic

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

XMega - Bascom AVR Basic

Сообщение EdGull » 25 ноя 2010, 18:03

сегодня на макетке васиком запустил ХМегу :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
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: XMega - Bascom AVR Basic

Сообщение SkyStorm » 25 ноя 2010, 18:29

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

Re: XMega - Bascom AVR Basic

Сообщение EdGull » 25 ноя 2010, 18:33

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

Re: XMega - Bascom AVR Basic

Сообщение avr123.nm.ru » 25 ноя 2010, 21:50

Отлично.
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: XMega - Bascom AVR Basic

Сообщение galex1981 » 26 ноя 2010, 13:21

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

Re: XMega - Bascom AVR Basic

Сообщение EdGull » 26 ноя 2010, 13:40

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

Re: XMega - Bascom AVR Basic

Сообщение EdGull » 26 ноя 2010, 18:34

Запустил 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 переключить ХМегу на внешний кварец?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: XMega - Bascom AVR Basic

Сообщение Doniak » 27 ноя 2010, 19:35

Как в 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+
}
Аватара пользователя
Doniak
 
Сообщения: 142
Зарегистрирован: 26 сен 2007, 08:25
Откуда: Krivoy Rog, ukraina
прог. языки: Си
ФИО: Коля

Re: XMega - Bascom AVR Basic

Сообщение EdGull » 27 ноя 2010, 20:10

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

Re: XMega - Bascom AVR Basic

Сообщение Doniak » 27 ноя 2010, 20:13

EdGull писал(а):это для какого программатора в CVAVR?

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

в XMege нету фьюз, частота выставляется программно.
Аватара пользователя
Doniak
 
Сообщения: 142
Зарегистрирован: 26 сен 2007, 08:25
Откуда: Krivoy Rog, ukraina
прог. языки: Си
ФИО: Коля

Re: XMega - Bascom AVR Basic

Сообщение Duhas » 27 ноя 2010, 20:15

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

Re: XMega - Bascom AVR Basic

Сообщение EdGull » 27 ноя 2010, 20:16

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

Re: XMega - Bascom AVR Basic

Сообщение Duhas » 27 ноя 2010, 20:18

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

Re: XMega - Bascom AVR Basic

Сообщение EdGull » 27 ноя 2010, 20:20

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

Re: XMega - Bascom AVR Basic

Сообщение Duhas » 27 ноя 2010, 20:29

я себе делал для кварца 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 заменить на какой нить регистр... + наверна его еще и в стеке сохранить нада бы )
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

След.

Вернуться в Микроконтроллеры

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

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

cron