08.11.2010, 11:46
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Сообщение от zheleznjakov
|
итого 9...
|
Вот и у Кортекса 9 выходит. Если =GM= не покажет как получить 8, то АВР всухую Кортекс не обыграет. Хотя чтоб всухую нужно чтоб АВР в 4 такта и менее уложился , тогда действительно на АВР DDS будет быстрее. Быстрее LPC11, не LPC17! Чтоб LPC17 обогнать - 2 такта нужно или 1
Последний раз редактировалось kison; 08.11.2010 в 11:48.
|
|
|
|
08.11.2010, 11:54
|
|
Прописка
Регистрация: 31.03.2010
Сообщений: 200
Сказал спасибо: 3
Сказали Спасибо 48 раз(а) в 41 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
может у него накопитель всего лишь 24 бита, тогда будет восемь тактов.
у стм сложение больше на 2 такта, так что в теории как минимум на восемь тактов в пролете.
|
|
|
|
08.11.2010, 12:14
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Сообщение от zheleznjakov
|
у стм сложение больше на 2 такта, так что в теории как минимум на восемь тактов в пролете.
|
Если урезать накопитель, то STM8 тоже ускорится. Да и последнее сравнение вообще не с STM8, а с кортексом. Вышло по 9 тактов у обоих, и если не считать частоту в 2.5 раза выше и возможность работы с произвольным размером таблицы у Кортекса, как бы паритет. Кстати что забавно, у АВР медленнее станет не только при увеличении таблицы, но и при уменьшении ее. При уменьшении на такт, при увеличении еще больше. Кортексу же все равно. А проигрыш STM вполне компенсируется DMA и набортным ЦАП. В реальной задаче он оставит АВР далеко позади. У АВР выигрыш очень узкозаточенный - если контроллеру кроме синтеза частоты ничего делать не надо. Но это только если чисто генератор делать. В остальных случаях STM8L будет предпочтительней. А для чисто генератора выходит LPC11 надо брать. Кстати и его STM8 обгонит в реальной жизни, все же DMA хорошая вещь.
|
|
|
|
08.11.2010, 12:17
|
|
Частый гость
Регистрация: 07.11.2010
Сообщений: 14
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Сообщение от kison
|
В общем даю принцип.
|
Так вот как оно все просто реализовывалось.
Огромное спасибо за принцип.
|
|
|
|
08.11.2010, 12:22
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Сообщение от iIi_WARHEAD_iIi
|
Так вот как оно все просто реализовывалось.
|
Ну все то же можно и без такого хидера получить. Но с ним удобнее. Выписывать GPIOB-›ODR |= 0x01 или PORTB1 = 1. Второе ИМХО удобнее. Вам еще предстоит с библиотекой поработать, там много модулей. Не пользуйтесь той, что дал производитель! Она безумно тормозная. Примеры тормозов в начале этой ветки.
|
|
|
|
08.11.2010, 12:26
|
|
Почётный гражданин KAZUS.RU
Регистрация: 30.06.2005
Сообщений: 3,399
Сказал спасибо: 5
Сказали Спасибо 431 раз(а) в 306 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Сообщение от zheleznjakov
|
может у него накопитель всего лишь 24 бита, тогда будет восемь тактов.
у стм сложение больше на 2 такта, так что в теории как минимум на восемь тактов в пролете.
|
В задании автора было(цитата):
Сравнивать надо по тактам, 8 битный МК, диапазон 0-fCLK/2, 32-битный аккумулятор фазы.
|
|
|
|
08.11.2010, 12:27
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
zheleznjakov,
Вы не пропустили консольный программатор? Ссылка на него в 5 сообщении.
|
|
|
|
08.11.2010, 12:30
|
|
Прописка
Регистрация: 31.03.2010
Сообщений: 200
Сказал спасибо: 3
Сказали Спасибо 48 раз(а) в 41 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Мне и такой метод не нравиться
Лучше когда описываешь вывод например так
#define LED0 A, 0, High, PullOff
и используешь его потом так
Pin_On(LED);
--
LED0 - имя вывода
A - литера порта
0 - бит порта
High - активный уровень
PullOff - вывод не "подтянут"
|
|
|
|
08.11.2010, 12:36
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Сообщение от zheleznjakov
|
Лучше когда описываешь вывод например так
#define LED0 A, 0, High, PullOff
|
А одно другому не мешает. Добавить дефайн в своей программе никто не запрещает.
Причем при разворачивании будет вызываться функция GPIO_ConfigOutput. Выносить же такое в библиотечный хидер смысла нет, я же не знаю где будет LED0 И будет ли он вообще.
|
|
|
|
08.11.2010, 12:40
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: STM8(S/L), первые впечатления
Задумался тут - а насколько нужно иметь накопитель в 32 бита? Нужна ли точность в сотые Гц? Если ограничить накопитель 24 битами, то STM8 неплохо ускоряется на DDS До 7 тактов, если прикидка верна.
Неверна - все равно только 9. Но все же неплохо.
Последний раз редактировалось kison; 08.11.2010 в 12:45.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:14.
|
|