Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Чт дек 12, 2013 19:47:52

Тю-у-у, я и не увидел. Ннну неплохо. За 2... 3 месяца сделали первый полный релиз ДШ.

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Чт дек 12, 2013 19:55:24

Ну теперь можно уже всеръёз начинать курить даташит - все баги, надеюсь, уже выловили и расписАли в Errata :)

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Вт дек 17, 2013 20:17:11

http://www.atmel.com/ru/ru/products/mic ... =documents - обновились аппноты по чипу.

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср янв 22, 2014 19:36:52

Сделал мигалку на 4 светика - 1 на борде и 3 на плате дисплея.

Спойлер# define LED_Main PORT_PA14
# define LED_Ext_1 PORT_PA13
# define LED_Ext_2 PORT_PA12
# define LED_Ext_3 PORT_PA15

#include <asf.h>
#include "samd20.h"
#include "own_defs.c" // own defines for peripheral registers

int main (void)
{
bool bit_led = 0;
unsigned long temp = 0x00000000;

REG_SYSCTRL_OSC8M = OSC8M_FRANGE_11_15MHz_bg|OSC8M_PRESC_8MHz_bg|OSC8M_ENABLE_bm;

REG_PORT_DIRSET0 = LED_Main|LED_Ext_1|LED_Ext_2|LED_Ext_3;

// This skeleton code simply sets the LED to the state of the button.
while (1) {
temp++;
if (temp == 200000)
{
temp=0;
bit_led = !bit_led;

//port_pin_set_output_level ();
if (bit_led == 1) { REG_PORT_OUTSET0 = LED_Main|LED_Ext_1|LED_Ext_2|LED_Ext_3; }

else { REG_PORT_OUTCLR0 = LED_Main|LED_Ext_1|LED_Ext_2|LED_Ext_3; }
}

}
}

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Пн фев 03, 2014 20:41:37

На демоборде с ATSAMD20 запустил SysTick с прерыванием, в правый коннектор воткнута плата с OLED.

LED0 - мигает в основном цикле, LED1 - в прерывании от SysTick.

Прикрепляю main, кому надо - могу выслать проект под Студию 6 - архив 1,8 Метра.
Вложения
main.c
(2.33 KiB) Скачиваний: 600

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Вс фев 16, 2014 13:33:14

Всем привет. 4 светодиода это хорошо, а можно 12 каналов управления Servo. Я собрал на ATMEGA328 робота, 9 каналов Servo, мне не хватает ресурса МК, а именно таймеров и скорости. Вот мое детище:
http://youtu.be/5tixGWxduIE :roll:

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Пн фев 17, 2014 12:06:13

В STM32 есть много таймеров с ШИМ (до десятка). Обычно даже есть 2 таймера, которые могут хардварно "Combined 3-phase PWM mode".

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Пн фев 17, 2014 15:50:55

В SAMD20 6 или 8 16-битных таймеров, сам таймер я проинил и запустил по прерыванию, если надо - выложу тексты (нужно подправить тексты для читабельности и убрать лишний мусор).

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Пн фев 17, 2014 15:58:05

Насколько помню у SAM3, SAM4 9 таймеров максимум. До 8-ми каналов ШИМ. А у семейства AT32UC3L до 35-ти 8-ми битных ШИМ-каналов (знаю потому что знакомые применяют в LED панельках, делают развёртку 1:4 или 1:8).

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Пн фев 17, 2014 17:58:27

AVKrobotics писал(а): можно 12 каналов управления Servo. Я собрал на ATMEGA328 робота, 9 каналов Servo, мне не хватает ресурса МК, а именно таймеров и скорости.

Насчёт скорости согласен на 100%, меги маловато будет, а насчёт таймеров - думаю, можно обойтись 2-3 таймерами, просто сделать очередь задержек, и отрабатывать по очереди - где можно почитать подробно по управлению сервомашинками?

AVKrobotics писал(а): Вот мое детище: http://youtu.be/5tixGWxduIE :roll:

Робот уже подаёт признаки жизни :)

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Вт фев 25, 2014 13:31:55

Вторая часть Марлезонского балета, пардон, развитие ATSAMD20 - ATSAMD21 - с USB, DMA, I2S, усовершенствованные таймеры - http://www.atmel.com/Images/Atmel-42181 ... asheet.pdf

А также мелконигие ARM M0+ (SO14/20) - SAMD10/11 с теми же плюшками - http://www.atmel.com/ru/ru/products/mic ... sam-d.aspx.

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср мар 05, 2014 15:42:54

Atmel расширяет линейку микроконтроллеров на базе ядра ARM Corterx-M0+ тремя новыми сериями устройств - http://www.rtcs.ru/news_detail.asp?id=2085

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср мар 12, 2014 11:44:31

Всем привет!
Рада, что нашла обсуждение samd20, сама только начала его изучать и уже есть проблемы)
Вообще это мой первый 32-разрядный МК, поэтому еще сложнее.
Хочу прикрутить standalone asf к iar arm 6.50. Запускаю проект пример (led_toggle), компилится с варнингами (Warning[Pa050]: non-native end of line sequence detected (this diagnostic is only issued once) C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5\asf-standalone-archive-3.15.0.87\xdk-asf-3.15.0\sam0\drivers\system\system.c 1 ), но это меня мало смущает, разберусь со временем)
Но, что меня действительно смущает - это то, что проект не шьется в мк ( использую отладочную плату samd20 xplained pro). Выдает две ошибки подряд:
Изображение
Изображение

Признаю, что могла что-то выбрать неправильно в настройках проекта ( хотя старалась туда не лазить).
Как это лечить? Где взять недостающий файл?

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср мар 12, 2014 15:44:57

2 marus-ka: я пока с IARом не работал, со Студией 6.1 (больше) и Keil 4/5 (меньше) уже разобрался, SAMD20-Xplained-Pro програмится и шьётся нормально.

Могу сбросить демопроект под Студию.

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср мар 12, 2014 15:49:16

Frogfot писал(а):
Могу сбросить демопроект под Студию.


Спасибо, но, наверное, не надо пока, по крайней мере. Проекты примеры есть в студии, пока с ними разбираюсь.

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср мар 12, 2014 16:33:33

2 marus-ka: под Студией железо работает, программится?

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср мар 12, 2014 16:40:51

Frogfot писал(а):2 marus-ka: под Студией железо работает, программится?

Да, под студией все ок. Даже код примера переделала, чтобы светодиод мигал, как мне нравится :wink: , зашилось и все работает.

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср мар 12, 2014 20:31:30

AVKrobotics писал(а):12 каналов управления Servo. Я собрал на ATMEGA328 робота, 9 каналов Servo, мне не хватает ресурса МК, а именно таймеров и скорости.

Ну SAMD21 в помощь - на чип по 3 усовершенствованных таймера для управления - по 8 ШИМов на каждый - т.е. 24 канала суммарно.

Также ERRATA поменьше будет чем в SAMD20.

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Чт мар 27, 2014 15:07:26

Добрый день, уважаемые курильщики SAMD20 Xplained Pro!

Скажите плиз, кто в итоге раскочегарил камень до 48Мгц от DFLL? Очень хотелось бы посмотреть пример. На основе ASF или в регистрах в рукопашную - не принципиально, главное какова последовательность действий. ASFовский пример Source Clock Driver не работает, отладчик слетает, а времени на разобрать все по полочкам оч мало(

Хотелось бы разобраться с логикой конфигурации генераторов. Правильно я понимаю, что чтобы заработал DFLL, нужно:

1. Настроить внутренний RC-генератор на 8МГц
2. Затактировать от него Generic Clock Generator 1 (например)
3. Завести с него сигнал на 0-й мультиплексор, как источник DFLL
4. Завести сигнал с DFLL на Generic Clock Generator 0 и от него уже тактировать ядро

?

Заранее благодарен

Re: Новый ARM Atmel Cortex-M0+ ATSAMD20

Ср апр 16, 2014 17:39:55

vasich61 писал(а):Добрый день, уважаемые курильщики SAMD20 Xplained Pro!

Скажите плиз, кто в итоге раскочегарил камень до 48Мгц от DFLL? Очень хотелось бы посмотреть пример. На основе ASF или в регистрах в рукопашную - не принципиально, главное какова последовательность действий. ASFовский пример Source Clock Driver не работает, отладчик слетает, а времени на разобрать все по полочкам оч мало(

Тут таких умных нету :(

В Атмеловской аппноте - http://www.atmel.com/ru/ru/Images/Atmel ... T03821.pdf - вроде запустили DFLL от 32 кГц генератора, но я пока не вкуривал.

vasich61 писал(а):Хотелось бы разобраться с логикой конфигурации генераторов. Правильно я понимаю, что чтобы заработал DFLL, нужно:

1. Настроить внутренний RC-генератор на 8МГц
2. Затактировать от него Generic Clock Generator 1 (например)
3. Завести с него сигнал на 0-й мультиплексор, как источник DFLL
4. Завести сигнал с DFLL на Generic Clock Generator 0 и от него уже тактировать ядро

RC генератор я инил так:

REG_SYSCTRL_OSC8M = OSC8M_FRANGE_11_15MHz_bg|OSC8M_PRESC_8MHz_bg|OSC8M_ENABLE_bm

правда - не на 8 МГц, а на 11-15 МГц, сколько реально - я не проверял.
Ответить