166
Технический раздел / Re: DDS синтезатор передатчика
« : 22 Апрель 2019, 21:25:27 »
Александр, ну что, не выходит каменный цветок :-)?
Длинноволновики всех стран объединяйтесь!
LW-mans of all countries unite!
В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.
Прерывание RX_COMPLETE_INT возникает, как я понимаю, по приходу первого байтаНу, я же вам нарисовал один из возможных сценариев. Оно и потом возникает при приеме каждого следующего байта (так называемы pending), и откладывается на некоторое время, когда прерывания будут разрешены, ну а когда подошла инструкция RETI, оно, это прерывание, тут как тут.
Нельзя ли Вашу прошивку доработать так, чтобы она умела необходимый минимум:1) Да, установка частоты реализована. Код частоты любой от 0х00000000 до 0x7FFFFFFF. Возможно стоит ограничить диапазон кодов в диапазоне частот 135-138 кГц или что-то около того. Как бы допзащита от ошибочно переданных байт.
- установка частоты (это есть)
- вкл-откл РТТ
- вкл-откл тона. (Для чего нужно: ведь можно прекращать формирование сигнала просто записав нулевую частоту? Нужно для обеспечения когерентности сигнала. То есть когда выход выключен, аккумулятор фазы продолжает считать и в момент включения выхода сигнал продолжится с нужной фазой, обеспечивая когерентное накопление на приеме.)
- инверсия фазы.
Если это получится, можно было бы подправить и мою программу управления DDS_ctrl и иметь все богатство разнообразных режимов на Вашем качественном DDS.
Вход в прерывание возможен только в течение одной команды главного циклаНе одной команды, а двух: rjmp И cli. [поправил: cli, конечно, а не sei]