![]() | |
|
Главная Радио и связь ти, заменяя испорченные данные. При корректировке параметра и записи его оператором все хранящиеся экземпляры параметра также должны автоматически корректироваться. Замечание. Считывать все экземпляры параметров и выполнять ма-жоритирование надо только после запуска программы. В процессе работы в этом нет необходимости, так как утрата данных наблюдается только при включении/выключении и, вероятно, при значительных перепадах напряжения питания. В приведенной программе перечисленные выше методы не отражены. Параметры, не изменяемые оператором, старайтесь хранить в памяти программ. Организовать хранение и обращение к ним можно так же, как это сделано в приведенной программе (константы для отображения на индикаторе символо⠫°ѻ и «Н°С» начинаются метками sTH: и sTL:). рхава 5. Связь микроконтроллера с компьютером Еще одна задача программирования микроконтроллеров - обеспечение связи контроллера с компьютером. Такая связь позволяет решать вопросы управления контроллером, накопления данных контроллером в реальном времени с последующей передачей массивов данных в компьютер для хранения, обработки и отображения. При решении таких задач у разработчиков, специализирующихся на применении микроконтроллеров, возникают трудности при проверке связи с компьютером. В этой главе рассматриваются этапы разработки программ для микроконтроллера и компьютера, связь между которыми выполнена по каналу RS-232 в соответствии со стандартом RS-232. Для поддержки связи по каналу RS-232b используемом микроконтроллере предусмотрена аппаратная функция UART (Universal Asynchronous Receiver and Transmitter - универсальный асинхронный приемопередатчик). Компьютер для поддержки связи снабжен СОМ-портом. Поэтому для описания работы компьютера и микроконтроллера в режиме связи используется разная терминология (UART, RS-232, COM-порт). 5.1. Схема контроллера, обеспечивающая связь с СОМ-портом компьютера Подробную информацию, связанную с передачей сигналов по каналу RS-232, легко найти как в литературе, так и в Internet, поэтому ограничимся минимальными сведениями. Канал RS-232 предназначен для обмена информацией между двумя устройствами как в синхронном, так и в асинхронном режиме. В компьютере для организации СОМ-порта используется только асинхронный способ передачи и лишь часть сигналов и функций, предусмотренных стандартом RS-232. В микроконтроллерах AVR с UART аппаратно-программными средствами поддерживаются только две линии: линия приема (RxD) и линия передачи данных (TxD). Для связи компьютера с микроконтроллером мы используем только общий провод и две сигнальные линии. По одной из них данные передаются от микроконтроллера к компьютеру, по другой - от компьютера к микроконтроллеру. Данные по каналу передаются последовательно, бит за битом. Информация передается группами битов. Для выделения группы перед ее началом передается стартовый бит, по окончании передачи группы - один или два стоповых бита, которым может предшествовать бит четности. Описываемое здесь устройство передает стартовый бит, 8-битную группу (один байт), бит четности и один столовый бит И передающее, и принимающее устройства должны работать на одинаковой скорости, которая может быть выбрана из предусмотренного стандартом ряда. Логическая единица передается по каналу RS-232 уровнем напряжения -3...-12 В относительно общего провода, логический ноль - уровнем напряжения 3... -I-12 В. Указанные уровни напряжений приведены ко входу приемника сигнала. Уровни сигналов в диапазоне -3...-I-3 В попадают в зону нечувствительности и не воспринимаются приемником. Компьютер снабжен необходимыми преобразователями уровней, и на контактах его СОМ-портов уровни сигналов соответствуют требованиям стандарта RS-232. На линиях RxD и TxD микроконтроллера уровни сигналов соответствуют уровням TTL-логики, поэтому для подюгючения микроконтроллера к каналу RS-232 требуется преобразователь уровней. На Рис. 29 приведен фрагмент схемы контроллера, обеспечивающий подключение микроконтроллера к СОМ-порту компьютера. Линия TxD микроконтроллера подключается к линии RxD компьютера через преобразователь уровня, а линия TxD компьютера - к линии RxD микроконтроллера также через преобразователь уровня. Подобные преобразователи уровней в интегральном исполнении выпускаются многими компаниями, например Analog Devices, Maxim. Обычно в наименовании преобразователей присутствуют числа 232, 202, 242. Чаще встречаются микросхемы с двумя или четырьмя преобразователями. Микросхемы преобразователей могут работать с конденсаторами емкостью 0.1 мкФ или с электролитическими конденсаторами емкостью 1 мкФ, обычно это определяется буквой, следующей за числом в наименовании микросхемы. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 [ 49 ] 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 0.0121 |