| Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
Перенос из PortX в PinX или два дня как изучаю AVR Assembler
19.08.2011, 12:00
|
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от artem-izh
|
|
Друг мой, который уже давно работает в avr, сказал, что нужно сначала хорошо изучить ассемблер и только потом переходить на си.
|
Откуда такие байки в народе появляются?
Чтобы заварить чай, надо изучить законы ома и киргофа прежде, чем втыкать вилку в розетку?
Асм знать не обязательно. Надо иметь представление, как оно работает, чтобы при необходимости понять, что означает тот или иной кусок кода на асме. Иногда надо писать вставки на асме. Но это все частные случаи. Часто быстрее бывает нагуглить готовый кусок кода.
|
|
|
|
19.08.2011, 12:52
|
|
|
Гражданин KAZUS.RUN
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от artem-izh
|
|
Такс... Очередная ступень понимания (или заблуждения)... В регистр PinX записывается всё то, что поступает на ножки порта из внешнего мира. Разумеется если порт предварительно настроен на ввод иформации.
|
Вы читаете, что вам пишут?
В регистр PINX ничего не записывается ... В момент чтения этого регистра вы получаете значение на ножках микрухи. Не имеет значения как инициализирован порт. Не имеет значения что вы туда выдали. Если вы выдали туда 1, но эта ножка засажена на землю, то вы прочитаете 0...
То есть вы прочитаете реальное значение на пине кристалла.
|
Цитата:
|
|
При такой настройке мы можем включить подтяжку записав в регистр PortX еденицу в нужный бит. А вот если порт настроен на вывод, то регистр PinX будет зеркалировать PortX с отставанием на одну команду. Я правильно понял?
|
Нет не правильно. Ничего вообще не зеркалируется. Есть защёлка PORTX. Вы его можете читать и писать. Но при чтении - вы прочитате то, что туда записали. Есть PIN - вы прочитаете с него значение на ногах в момент чтения .... Не имеет значения настроен порт на ввод или на вывод ... Есть правда нюанс небольшой у новых мег ... При записи ПО АДРЕСУ PINX вы можете инвертировать значение выходного регистра (PORTX), но это не значит что вы туда записываете .. это значит что вы при обращении к данному адресу инициируете такую ф-цию. А так, в принципе порт PINX работает на чтение....
|
|
|
|
19.08.2011, 13:07
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от Easyrider83
|
|
Откуда такие байки в народе появляются?
|
Действительно?
...
Чтобы писать проги, ассемблер Вам не нужен, но чтобы писать хорошие проги, он Вам необходим...
Такшта изучайте оба языка. 
Ассемблер поможет лучше понять, как всё работает, а ЯВУ поможет ускорить процесс.
Кстати, PINx не регистр...
|
|
|
|
19.08.2011, 13:11
|
|
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,102
Сказал спасибо: 113
Сказали Спасибо 860 раз(а) в 610 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от omercury
|
|
Кстати, PINx не регистр...
|
А Мега не МК...
|
Цитата:
|
Configuring the Pin
Each port pin consists of 3 Register bits: DDxn, PORTxn, and PINxn.
|
|
|
|
|
19.08.2011, 13:22
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Во гат... 
Ну да, обращение как к регистру. И даже физически там регистр присутствует в схеме синхронизации входа, только работает как ключ.
От того и такт ему нужно пропустить для чтения(из-за схемы синхронизации).
Последний раз редактировалось omercury; 19.08.2011 в 13:33.
|
|
|
|
19.08.2011, 13:35
|
|
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,102
Сказал спасибо: 113
Сказали Спасибо 860 раз(а) в 610 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от omercury
|
Во гат...
|
Стараааалси!!! Йеееесссс...
|
Цитата:
|
Ну да, обращение как к регистру. И даже физически там регистр присутствует в схеме синхронизации входа, только работает как ключ.
От того и такт ему нужно пропустить для чтения.
|
Вот наплёл... 
Обычный регистр со стробированием и выходом на три состояния...
|
|
|
|
19.08.2011, 13:52
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от st_1
|
|
Обычный регистр со стробированием и выходом на три состояния...
|
угу. OE на выходе.  Вот это и имел в виду... 
регистр синхронизации вполне может оказаться виртуальным...
Последний раз редактировалось omercury; 19.08.2011 в 14:06.
|
|
|
|
19.08.2011, 14:10
|
|
|
Прохожий
Регистрация: 19.04.2009
Адрес: Ижевск
Сообщений: 7
Сказал спасибо: 0
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Ну вроде что-то прояснилось... Спасибо за ответы.
|
|
|
|
20.08.2011, 00:09
|
|
|
Гражданин KAZUS.RUN
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от omercury
|
|
Кстати, PINx не регистр...
|
Скорее всего именно так ...
Он там не нужен ...
Если бы я реализовывал схемотехнически то PORT - это полноценный регистр типа ИР23, а в качестве PIN можно применить либо ИР22 со стробом на 1 либо АП5/АП6 к примеру. То есть достаточно буферного элемента. В момент поступления выборки+RD данные выдаются на шину...
|
|
|
|
20.08.2011, 01:35
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Перенос из PortX в PinX или два дня как изучаю AVR Assembler
Сообщение от SasaVitebsk
|
|
Цитата:
|
|
Кстати, PINx не регистр...
|
Скорее всего именно так ...
|
|
Цитата:
|
|
регистр синхронизации вполне может оказаться виртуальным...
|
Джентельмены!
На месте вопрошавшего я бы уже запутался! Больно на шекспировское "быть-не-быть" смахивает. Регистр-не-регистр. Ассемблер-нафиг-Ассемблер. 
Вы себя без понимания этого рисунка и без знания Ассемблера в связке с ним представляете?
Вопрос мимо EasyRider - он представляет.
Сообщение от Easurider83
|
|
Асм знать не обязательно.
|
Особо улыбнуло предложение замены Ассемблеру:
Сообщение от Easurider83
|
|
Часто быстрее бывает нагуглить готовый кусок кода.
|
Действительно, нафига его знать в наше-то время? Чего мелочится?
Последний раз редактировалось ut1wpr; 20.08.2011 в 01:49.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:12.
|
|