реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> ШИМ на ATtiny25
Палыч
сообщение May 6 2009, 09:30
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(stells @ May 6 2009, 12:25) *
с низким разрешением можно...
Термин "с низким разрешением" - это "точность плюс-минус лапоть"?
Go to the top of the page
 
+Quote Post
stells
сообщение May 6 2009, 09:40
Сообщение #17


внештатный сотрудник
******

Группа: Участник
Сообщений: 2 458
Регистрация: 10-05-08
Из: МО, Медвежьи озера
Пользователь №: 37 401



Цитата(Палыч @ May 6 2009, 13:30) *
Термин "с низким разрешением" - это "точность плюс-минус лапоть"?

80 команд на цикл - это теоретически 1,25%. реально конечно хуже получится
не о том спорим, нужно понимание, для чего это нужно
Go to the top of the page
 
+Quote Post
Палыч
сообщение May 6 2009, 10:02
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(stells @ May 6 2009, 12:40) *
80 команд на цикл - это теоретически 1,25%. реально конечно хуже получится
Вот именно - реально хуже получится. Имхо, при однократном задании длительности импульсов (т.е. задали длительность и не меняем) можно, наверное, получить временные интервалы с погрешностью менее 5%, если же длительности импульсов будут меняться на каждом периоде (даже если и "очень плавно"), то погрешности, наверное, будут под 50%.

Может быть, автору решить задачу иначе: МК генерит один сигнал ШИМ, а внешний сдвигающий регистр формирует недостающие три; тактирование сдвигающего регистра - от МК?
Go to the top of the page
 
+Quote Post
vv_gulyaev
сообщение May 6 2009, 10:45
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 15-10-08
Из: Воронеж
Пользователь №: 40 984



Цитата(Палыч @ May 6 2009, 14:02) *
Может быть, автору решить задачу иначе: МК генерит один сигнал ШИМ, а внешний сдвигающий регистр формирует недостающие три; тактирование сдвигающего регистра - от МК?


Спасибо, за советы. Наверное я остановлюсь на том, чтобы задать длительность жестко и выдавать импульсы с 4 выходов. На сколько я понял из обсуждения это получить реально.
Go to the top of the page
 
+Quote Post
stells
сообщение May 6 2009, 10:57
Сообщение #20


внештатный сотрудник
******

Группа: Участник
Сообщений: 2 458
Регистрация: 10-05-08
Из: МО, Медвежьи озера
Пользователь №: 37 401



Цитата(vv_gulyaev @ May 6 2009, 14:45) *
Спасибо, за советы. Наверное я остановлюсь на том, чтобы задать длительность жестко и выдавать импульсы с 4 выходов. На сколько я понял из обсуждения это получить реально.

с постоянными частотой и скважность? конечно
но погрешность все-равно появится из-за разного времени выполнения программы при условных переходах и т.д.

Сообщение отредактировал stells - May 6 2009, 11:02
Go to the top of the page
 
+Quote Post
Microwatt
сообщение May 6 2009, 11:08
Сообщение #21


Гуру
******

Группа: Почетный участник
Сообщений: 6 851
Регистрация: 25-08-08
Из: Запорожье
Пользователь №: 39 802



Цитата(vv_gulyaev @ May 6 2009, 13:45) *
Спасибо, за советы. Наверное я остановлюсь на том, чтобы задать длительность жестко и выдавать импульсы с 4 выходов. На сколько я понял из обсуждения это получить реально.

На всякий случай, разберитесь с тем что такое ШИМ, тем более, многофазный, и для чего он нужен. Чтобы после окончательной отладки программы не осенило, что все это были бесполезные усилия изначально.
Плохонький ШИМ может иметь 128 позиций. Да на четыре фазы, да на 100кГц. Это будет такт решения задачки.... попробуйте посчитать. И каждый такт ждите потенциального прерывания по короткому замыканию. Его нужно обработать максимум за 500наносекунд.
Ищите постановщика системной задачи - грамотного схемотехника. Он дальше расскажет что и где нужно написать в программе, а где вообще без программ обойтись нужно.
Go to the top of the page
 
+Quote Post
vv_gulyaev
сообщение May 6 2009, 11:22
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 15-10-08
Из: Воронеж
Пользователь №: 40 984



Цитата(Microwatt @ May 6 2009, 15:08) *
На всякий случай, разберитесь с тем что такое ШИМ, тем более, многофазный, и для чего он нужен.

Да, я погорячился с названием темы. На данном этапе нужно просто 4 импульса одинаковой частоты(примерно 100 КГц) сдвинутые на 1/4 периода.
Go to the top of the page
 
+Quote Post
Палыч
сообщение May 6 2009, 11:48
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(vv_gulyaev @ May 6 2009, 13:45) *
Наверное я остановлюсь на том, чтобы задать длительность жестко и выдавать импульсы с 4 выходов.
Если это - то, что Вам нужно (в чём я сомневаюсь), то реализовать можно. Писать программу нужно будет на ассемблере, на языке высокого уровня вряд ли получится что-то путное. Основной цикл программы будет довольно примитивный:
1.Вывод "значение 1" в порт В
2.Задержка 1
3.Вывод "значение 2" в порт В
4.Задержка 2
5.Вывод "значение 3" в порт В
6.Задержка 3
...........
15.Вывод "значение 8" в порт В
16.Задержка 8
17.Переход на п.1
Значения, выводимые в порт, и величины задержек будут зависить от длительности импульсов. Кроме того, общее время выполнения цикла должно быть 80 тактов для частоты 100кГц и частоты тактирования МК 8МГц. Можно значения, выводимые в порт, и величины задержек хранить в виде двух массивов, а программу упростить до:
1.Вывод "значение i" в порт В
2.Задержка i
3.Взять следующее i
4.Переход на п.1
Однако, такая программа хоть и станет "более настраиваемой", но точность выдержки задержек - резко упадёт. Если это не критично, то второй вариант мне кажется предпочтительней...
Go to the top of the page
 
+Quote Post
vv_gulyaev
сообщение May 8 2009, 08:34
Сообщение #24


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 15-10-08
Из: Воронеж
Пользователь №: 40 984



Еще возник вопрос по поводу программирования tiny25. Имеется программатор ByteBlasterII и программа Avreal Shell. В списке доступных микросхем нет tiny25, хотя в сети видел упоминания, что она должна поддерживаться этим программатором. В наличии микросхем пока нет, поэтому хотелось бы узнать возможно ли использовать BBII для программирования tiny25, или нужно покупать/паять AVRISP.
Go to the top of the page
 
+Quote Post
ReAl
сообщение May 8 2009, 08:55
Сообщение #25


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(vv_gulyaev @ May 8 2009, 11:34) *
В списке доступных микросхем нет tiny25, хотя в сети видел упоминания, что она должна поддерживаться этим программатором. В наличии микросхем пока нет, поэтому хотелось бы узнать возможно ли использовать BBII для программирования tiny25, или нужно покупать/паять AVRISP.
Можно и довольно давно, c 2006 года, просто avreal shell об этом может не знает (или версия shell-а посвежее нужна), это только оболочка над собственно программатором avreal (хм... а там и звёздочку давно пора снимать...)


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
vv_gulyaev
сообщение May 8 2009, 10:41
Сообщение #26


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 15-10-08
Из: Воронеж
Пользователь №: 40 984



Цитата(ReAl @ May 8 2009, 12:55) *
просто avreal shell об этом может не знает (или версия shell-а посвежее нужна),

В интернете нашел лишь одну версию avreal shell это версия 1,08.
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 13:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01469 секунд с 7
ELECTRONIX ©2004-2016