Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
22.02.2010, 17:00
|
|
Вид на жительство
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
|
Re: Регулировка частоты на контроллере
спасибо, хотя в даташите на контроллер ничего не сказано...
где этот момент указан?
|
|
|
|
22.02.2010, 17:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,564
Сказал спасибо: 701
Сказали Спасибо 4,334 раз(а) в 1,985 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Сообщение от spballiance
|
я в одном из вариантов аналогично вываливал в терминал текущее значение частоты и ждал ввода новой, но терминал молчал как партизан
насколько я понял, у вас реализована идея двоичного счетчика-делителя
код под какой компилятор написан?
|
Не знаю, что вы понимаете под счетчиком - делителем. Классический DDS 2^32 без таблицы. Под меандр нах забивать 128 нулей и 128 0хFF. И код на два цикла короче.
BascomAVR, но это не принципиально - вся соль ведь на асме.
В Протеусе можно посмотреть весь код на асме.
А вам чтоб не мучаться с выравниванием таблиц по 256 байтовым страницам есть прямая выгода загнать таблицу синуса в RAM и плясать оттуда. Код будет на один цикл меньше.
Последний раз редактировалось Kabron; 22.02.2010 в 17:47.
|
|
|
|
22.02.2010, 20:33
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Сообщение от spballiance
|
спасибо, хотя в даташите на контроллер ничего не сказано
|
Даташит тут и не при чем. Это в документации на ассемблер должно быть.
Корень зла в директиве .org
Память программ в АВР рганизована 16 битными словами. Вот у Вас в программе есть
Код:
|
.org 0x07
rjmp RX_COMPLETE_INT |
Вы собирались вектор разместить с середины 4-го слова флеши? Или все таки с адреса 7 в програмной памяти? Думаю второе.
Почему же .org 0x100 должно работать по другому?
А LPM работает не со словами, а с байтами. Вот и приходится реальный адрес удваивать.
|
|
|
|
22.02.2010, 22:24
|
|
Вид на жительство
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
|
Re: Регулировка частоты на контроллере
спасибо, буду знать
|
|
|
|
22.02.2010, 22:33
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,564
Сказал спасибо: 701
Сказали Спасибо 4,334 раз(а) в 1,985 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Ну и переписывать таблицу векторов прерываний это ваще изврат. У компайлера волосы выпадут от потрясения.
|
|
|
|
22.02.2010, 22:58
|
|
Прописка
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Зря сохраняете и восстанавливаете sreg, можно выкинуть
|
|
|
|
22.02.2010, 23:42
|
|
Вид на жительство
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Сообщение от =GM=
|
Зря сохраняете и восстанавливаете sreg, можно выкинуть
|
ну, флаг операция сравнения может изменить, поэтому перестраховка
перерыв в программировании в 5 лет сказывается
сижу не понимаю, почему 2 асмовские проги по усарту нормально общаюся, а сишная с асмовской не хочет
Последний раз редактировалось spballiance; 22.02.2010 в 23:45.
|
|
|
|
22.02.2010, 23:51
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Сообщение от spballiance
|
ну, флаг операция сравнения может изменить, поэтому перестраховка
|
Пусть изменяет. Это ни на чем не сказывается. Сравнение R17 с '0' тоже непонятно зачем сделано.
Сообщение от spballiance
|
сижу не понимаю, почему 2 асмовские проги по усарту нормально общаюся, а сишная с асмовской не хочет
|
Ну без подробностей предположу - не судьба
|
|
|
|
22.02.2010, 23:54
|
|
Вид на жительство
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Сообщение от kison
|
Сравнение R17 с '0' тоже непонятно зачем сделано.
|
это код остановки генерации
Цитата:
|
Ну без подробностей предположу - не судьба
|
может быть хотя вряд ли. эту проблему придется решить все равно
|
|
|
|
22.02.2010, 23:55
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,564
Сказал спасибо: 701
Сказали Спасибо 4,334 раз(а) в 1,985 сообщении(ях)
|
Re: Регулировка частоты на контроллере
Сообщение от spballiance
|
ну, флаг операция сравнения может изменить, поэтому перестраховка
перерыв в программировании в 5 лет сказывается
сижу не понимаю, почему 2 асмовские проги по усарту нормально общаюся, а сишная с асмовской не хочет
|
Ну если вы протеусом владеете - на раз можно выяснить.
ЗЫ.
хотя если у вас там таня2313 да еще с моделью AVR2.dll, то вполне возможно. Глюков пока хватает. Скомпилите для старого AT90S2313 или М48-М8 и проверьте.
Последний раз редактировалось Kabron; 22.02.2010 в 23:59.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:24.
|
|