Ассемблер (ASM) для AVR в вопросах и ответах
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Спаять не проблема.
Естественно программа(!!!) засада.
Не понятно так же справится АТМЕГА 8 с данным заданием ?
Юрий
Естественно программа(!!!) засада.
Не понятно так же справится АТМЕГА 8 с данным заданием ?
Юрий
- Вложения
-
- Синтезатор.JPG
- (140.25 КБ) 374 скачивания
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Yur писал(а):Не понятно так же справится АТМЕГА 8 с данным заданием ?
ЛЕГКО!
-
culibin 100
- Встал на лапы
- Сообщения: 88
- Зарегистрирован: Ср апр 29, 2009 10:35:56
- Откуда: кр. лиман украина
Re: Ассемблер (ASM) для AVR в вопросах и ответах
проще используй лсд индикатор ног меньше нужно и потребление меньше .и смотрится как то повеселей
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Yur писал(а):Естественно программа(!!!) засада.
А чего именно в ветку по ассемблеру написали?.....
Надо было в отдельной теме, мож больше предложений было бы.....
А так помоему, на С - и быстрее и проще и нагляднее и.....
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Так проблема то в ПО - и где ее еще наваять , как не здесь ?
Почему АСМ ? .... я там "лампочки умею зажигать"
т.е минимальные знания есть.
Есть такой индикатор СОВЕТСКИЙ АЛС311
Так получится самый мелкий синтезатор примерно 4см х 2см уже с индикатором !!!
Я за ЖКИ - но такого мелкого нет с ногами.
Подскажите куда перенести ветку - перенесу.
С уважением Юрий
Почему АСМ ? .... я там "лампочки умею зажигать"
Есть такой индикатор СОВЕТСКИЙ АЛС311
Так получится самый мелкий синтезатор примерно 4см х 2см уже с индикатором !!!
Я за ЖКИ - но такого мелкого нет с ногами.
Подскажите куда перенести ветку - перенесу.
С уважением Юрий
- Moto_v3x
- Потрогал лапой паяльник
- Сообщения: 307
- Зарегистрирован: Ср мар 31, 2010 11:45:58
- Откуда: Славянск
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Yur писал(а): но такого мелкого нет с ногами.
RDX0048
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Коты без молока никуда....
милости просим продвинутых котов в личку за молоком....
милости просим продвинутых котов в личку за молоком....
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Будет в основном спать.Yur писал(а):Не понятно так же справится АТМЕГА 8 с данным заданием ?
С DDS есть опыт работы?
Какие частоты планируется генерировать?
ПЧ фиксированная или планируется ввод с последующим запоминанием?
Последний раз редактировалось ut1wpr Ср окт 31, 2012 12:08:19, всего редактировалось 1 раз.
С уважением,
Виктор.
Виктор.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
С DDS есть опыт работы?
Какие частоты планируется генерировать?
ПЧ фиксированная или планируется ввод с последующим запоминанием?
----------
Собрал Темеревский на AD9835.
500кГц - 7 мГц
ПЧ задается ручками внутри программы.
Юрий
Какие частоты планируется генерировать?
ПЧ фиксированная или планируется ввод с последующим запоминанием?
----------
Собрал Темеревский на AD9835.
500кГц - 7 мГц
ПЧ задается ручками внутри программы.
Юрий
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Yur писал(а):Собрал Темеревский на AD9835.
500кГц - 7 мГц
ПЧ задается ручками внутри программы.
AD9833 != AD9835 - 7 МГц для VFO будут отвратительными.
Что значит - ручками? Вносить изменения в текст программы а потом перекомпилировать?
Или муки с eeprom (галочки, палочки) ?
С уважением,
Виктор.
Виктор.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
ut1wpr писал(а):Yur писал(а):Собрал Темеревский на AD9835.
500кГц - 7 мГц
ПЧ задается ручками внутри программы.
AD9833 != AD9835 - 7 МГц для VFO будут отвратительными.
Что значит - ручками? Вносить изменения в текст программы а потом перекомпилировать?
Или муки с eeprom (галочки, палочки) ?
Вопрос о СУПЕР чистоте спектра не стоит.
ручками - именно так - потом перекомпелировать .
Что бы не засорять данную - тему пожалуйста сюда :
viewtopic.php?f=20&t=79911
-
Vladimir_9003
- Родился
- Сообщения: 6
- Зарегистрирован: Чт ноя 01, 2012 14:59:50
- Откуда: Запорожье
Вывод данных на порт в AVR Studio4 на asm
Подскажите пожалуйста как вывести данные не во весь порт а только на конкретную ногу, что бы при этом значение на других ногах порта не изменились.
К примеру:
in tmp1,pinB
........
out portc,tmp1
но не вовесь порт С а к примеру в 1 вывод порта С?
Заранее Спасибо!
Перенёс сюда. Пользуйтесь поиском прежде, чем создавать темы.
ploop
К примеру:
in tmp1,pinB
........
out portc,tmp1
но не вовесь порт С а к примеру в 1 вывод порта С?
Заранее Спасибо!
Перенёс сюда. Пользуйтесь поиском прежде, чем создавать темы.
ploop
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Помотрите команды SBI CBI
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Эндом чистим нужные биты, потом ором ставим нужные.
Docendo discimus
-
Vladimir_9003
- Родился
- Сообщения: 6
- Зарегистрирован: Чт ноя 01, 2012 14:59:50
- Откуда: Запорожье
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Спасибо, буду пробовать.
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Если использовать SBI и CBI надо отдавать отчет что эта операция хоть и изменяет только один бит порта, но операция затрагивает все 8 выводов. Тоесть если на выводе будет лог.1 а его электрически замкнуть на лог.0 то после SBI/CBI это значение перекочует и в регистр порта, после устранения замыкания на нем останется лог.0, если операция касалась другого бита.
- paskal
- Нашел транзистор. Понюхал.
- Сообщения: 160
- Зарегистрирован: Пн сен 05, 2011 10:03:06
- Откуда: Тула
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Alexeyslav писал(а):если на выводе будет лог.1 а его электрически замкнуть на лог.0 то после SBI/CBI это значение перекочует и в регистр порта, после устранения замыкания на нем останется лог.0
Что то это как то нелогично звучит.
Если бы на станции "Мир" стояли Винды, она бы еще висела и висела...
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Он хочет сказать , что в момент выполнения операции sbi или cbi считывается состояние порта , накладывается маска и возвращается обратно. Но если в этот момент произошло какое-то событие на порту изменившее состояние какого нить пина , то и после вывода на порт состояние пина изменится. Логика , где то есть . Но вот ,где это написано я не нашёл.
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Микроконтроллер не умеет физически оперировать с отдельными битами, поэтому что берет команда SBI - читает значение из регистра PINxx выполняет операцию OR <маска бита> и результат сохраняет в PORTxx
Что будет если принудительно установить другое логическое значение на порту пересилив выходные ключи, или некоторые выводы будут находится в режиме входа надеюсь объяснять не нужно?
Когда выводы контроллера работают на цепи с повышенной емкостью (полевой транзистор например) этот эффект очень хорошо может проявить себя если последовательно будешь дергать отдельные биты порта. Это надо всегда иметь в виду - при использовании команд SBI/CBI в регистр-защелку PORTxx копируются РЕАЛЬНЫЕ логические уровни которые установлены на выводах контроллера.
При быстром переключении напряжение на выводе может не успеть достичь устанавливаемого уровня и две подряд идущие команды SBI/CBI работающие с одним портом могут приводить к разнообразным эффектам которые очень трудно выловить отладкой - ведь под отладчиком все будет работать идеально.
Что будет если принудительно установить другое логическое значение на порту пересилив выходные ключи, или некоторые выводы будут находится в режиме входа надеюсь объяснять не нужно?
Когда выводы контроллера работают на цепи с повышенной емкостью (полевой транзистор например) этот эффект очень хорошо может проявить себя если последовательно будешь дергать отдельные биты порта. Это надо всегда иметь в виду - при использовании команд SBI/CBI в регистр-защелку PORTxx копируются РЕАЛЬНЫЕ логические уровни которые установлены на выводах контроллера.
При быстром переключении напряжение на выводе может не успеть достичь устанавливаемого уровня и две подряд идущие команды SBI/CBI работающие с одним портом могут приводить к разнообразным эффектам которые очень трудно выловить отладкой - ведь под отладчиком все будет работать идеально.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Alexeyslav прав, это несложно понять, внимательно изучив даташит. SBI и CBI работают именно как чтение-модификация-запись. Правда с глюками в железе (типа работы на ёмкость) не сталкивался, предпочитаю заранее рассчитывать схемы и не нагружать порты.
Однако применение данных инструкций не рекомендуется даже с внутренними регистрами МК. Вот, например, из описания регистра UDR:
The receive buffer consists of a two level FIFO. The FIFO will change its state whenever the receive buffer is accessed. Due to this behavior of the receive buffer, do not use Read-Modify-Write instructions (SBI and CBI) on this location. Be careful when using bit test instructions (SBIC and SBIS), since these also will change the state of the FIFO.
Или Multi-processor Communication Mode
Do not use Read-Modify-Write instructions (SBI and CBI) to set or clear the MPCMn bit. The MPCMn bit shares the same I/O location as the TXCn Flag and this might accidentally be cleared when using SBI or CBI instructions.
Однако применение данных инструкций не рекомендуется даже с внутренними регистрами МК. Вот, например, из описания регистра UDR:
The receive buffer consists of a two level FIFO. The FIFO will change its state whenever the receive buffer is accessed. Due to this behavior of the receive buffer, do not use Read-Modify-Write instructions (SBI and CBI) on this location. Be careful when using bit test instructions (SBIC and SBIS), since these also will change the state of the FIFO.
Или Multi-processor Communication Mode
Do not use Read-Modify-Write instructions (SBI and CBI) to set or clear the MPCMn bit. The MPCMn bit shares the same I/O location as the TXCn Flag and this might accidentally be cleared when using SBI or CBI instructions.