Вопрос для знающих.
|
|
555serg |
Дата: Пн, 09.04.2012, 23:14 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
41
Замечания:
±
На сайте с 12.12.2011
Статус:
Offline
|
Здравствуйте , так как закрыта тема для начинающих, очень необходимо разяснение в новом месте. Вопрос адрессуется для тех кто обладает знанием и временем растолковать для чего существует команда - оператор Define. В книгах этого нет. Интересует в контексте куска программы- Define ADC_Bits 8 Define ADC_Clock 3 Define ADC_Sampleus 50 Зараннее спасибо.
|
|
|
|
anatol |
Дата: Пн, 09.04.2012, 23:52 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
471
Замечания:
±
На сайте с 10.02.2010
Статус:
Offline
|
Define = определить ADC = Analog Digital Conversion = Аналоговое цифровое преобразование Bits = бит Clock = Часы Sampleus=Sample us=Образец микросекунд = время преобразования - из хэлпа на программу.
Переводить дальше? Учтите что я учил немецкий последний раз в 1975 году (на трояк сдал).А теперь хочу спать и на такие вопросы обычно не отвечаю. Есть www.google.com и запрос Что такое Define помог бы определиться. Что то я добрый сегодня.
|
|
|
|
terrarus |
Дата: Вт, 10.04.2012, 08:56 | Сообщение # 3 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 21.08.2008
Статус:
Offline
|
Kлючевое слово Define имеет значение "определить" или "назначить", например: Define LCD_BITS 8 ' Определить для передачи данных на ЖКИ 8 битную шину Define LCD_BITS 4 ' Определить для передачи данных на ЖКИ 4 битную шину Define LCD_DREG PORTC ' Определить для передачи данных на ЖКИ PORTC
Define используется в PicBasicPRO, а в PROTON-е используется для объявлений (определенией, назначений) ключевое слово Declare.
Вот как в Протоне будут иметь смысл ваши "страшные" операторы.
Для команды ADIn существуют три директивы (определения): 1. Declare ADIN_RES 8 , 10 , или 12.
По этой директиве устанавливается разрядность АЦП-преобразования. Если директива не используется, то результату АЦП-преобразования присваивается значение по умолчанию, то есть максимально возможное разрешение для используемого типа PIC-микроконтроллера. Например, для микроконтроллера типа 16F876А будет установлена разрешающая способность в 10 бит. Использование этой директивы позволяет получить результат в 10 или 8 бит от 10-разрядных PIC-микроконтроллеров, но никак не 10 бит от 8-разрядных типов.
2. Declare ADIN_TAD 2_FOSC, 8_FOSC, 32_FOSC, 64_FOSC, или FRC.
Эта директива устанавливает источник синхронизации для аналого-цифрового преобразования. Все PIC-микроконтроллеры обладающие встроенным АЦП могут синхронизироваться от внешнего источника синхронизации или от внутреннего, встроенного в микроконтроллер RC генератора.
При синхронизации от внешнего источника синхронизации возможны четыре варианта:
2_FOSC, 8_FOSC, 32_FOSC, и 64_FOSC - где 2, 8, 32, 64 это коэффициенты отношения к частоте внешнего генератора. Вместо того, чтобы использовать эти названия для режимов источника синхронизации, можно использовать значения от 0 до 3. Они отражают параметры настройки битов 6-7 в регистре ADCON0.
Для выбора внутреннего источника синхронизации в директиве должно быть указано значение FRC. FRC - это внутренний RC генератор микроконтроллера.
Следует отметить, что выбор неправильного источника синхронизации или его режима может привести к недостаточной разрешающей способности, или вообще к отсутствию преобразовании. Поэтому будьте внимательны при выборе источника синхронизации. Если у Вас есть сомнения в правильности Вашего выбора источника синхронизации или его режима, то используйте в качестве источника синхронизации внутренний RC генератор (FRC). Использование режима FRC приведет к небольшому уменьшению разрешающей способности и меньшей скорости преобразования, но будет гарантированно работать. Вообще FRC это настройка по умолчанию, если в программе отсутствует специальное объявление.
3. Declare ADIN_STIME 0 до 65535 микросекунд.
Установка этого параметра отводит время на зарядку внутренних измерительных конденсаторов прежде, чем будет предпринята выборка результата. Этот параметр может иметь значения от 0 до 65535 микросекунд. Слишком маленькое значение может привести к уменьшению разрешающей способности, но к увеличению скорости работы программы. Слишком большое значение может привести к значительному уменьшению скорости преобразования без дополнительного увеличения разрешающей способности.
Типичное значение для ADIn _STIME - 50 - 100. Экспериментирование с этим значением в каждом конкретном случае может дать Вам оптимальное значение. Если эта директива не используется, то время устанавливается по умолчанию равное 50 микросекундам.
Ниже приведены определения по умолчанию: Declare ADIN_RES = 10 ' Установить кол-во битов в результате АЦП-преобразования ' равными 10 (можно также установить 8, 10, или 12) Declare ADIN_TAD = FRC ' Установить синхронизацию от внутреннего RC генератора Declare ADIN_STIME = 50 ' Установить время ожидания в 50 мкс перед началом преобразования Dim VAR1 As Word ' Объявить переменную VAR1 размером WORD TRISA = %00000001 ' Сделать канал (вывод) AN0 (PORTA.0) входом ADCON1 = %10000000 ' Установить все выводы PORTA в режим АЦП VAR1 = ADIn 0 ' Поместить результат преобразования из канала AN0 в переменную V
Почитать о настройке Аналого Цифрового преобразования в PIC- микроконтроллерах можно на http://terrarus.ucoz.ru/proton_plus_ide/proton/comands/adin/adin.html
Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
|
|
|
|
555serg |
Дата: Ср, 11.04.2012, 21:35 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
41
Замечания:
±
На сайте с 12.12.2011
Статус:
Offline
|
Да , спасибо anatol что откликнулись и разжевали то о чем просил , приятно осознавать что есть Дюди не безразличные к чужим просьбам. Добавлено (11.04.2012, 21:35) --------------------------------------------- И конечно же отдельное спасибо Анатолию за его такой обьемный ответ , и за всю ту работу которую он ведет на своем сайте. Если модераторы будут не против , предлагаю данную тему переопределить как место для начинающих под все их вопроссы.
|
|
|
|
ADMIN |
Дата: Пт, 13.04.2012, 16:31 | Сообщение # 5 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Для начинающих выделено специальное место - Скорая помощь начинающим. Вот туда можно писать самые разные вопросы, которые кажутся новичку серьезными.
|
|
|
|
555serg |
Дата: Сб, 14.04.2012, 21:10 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
41
Замечания:
±
На сайте с 12.12.2011
Статус:
Offline
|
Спасибо за новый раздел , если что, я сразу туда.
|
|
|
|