Pic16F873 схемы: Pic16f873a схемы

Содержание

LCFG на PIC16F873a

 Конструктивно прибор выполнен на двухсторонней печатной плате, на которой размещены все элементы, за исключением индикатора и диодов D7, D8. Плата выполнена под "лазерно-утюжную " технологию. Металлизация заменяется тонкими проводниками. На плате есть место под 7 контактный разъем для подключения приставки для измерения ESR. 

           При сборке использованы преимущественно SMD- элементы: резисторы типоразмера 0805, конденсаторы 0805, 0603. Синтезатор без доработки платы заменим на LMX1601TM (верхняя граница уменьшиться с 2 до 1.1 МГц, а разрешение до 200Гц). Микроконтроллер можно заменить на PIC16F873, PIC16F876(A).DA1 любая из LM311, К544СА3. Индикатор 16x2 любой поддерживающий протокол HD44780. Хочу обратить внимание, что при применении другого, чем в схеме необходимо уточнить распайку 1 и 2 вывода индикатора. Даже индикаторы одной фирмы имеют разную распайку выводов питания. Реле К1 можно заменить на любое на 5 В и сопротивление замкнутых контактов должно быть минимальным, но не более 0,5 Ом. В этом случае параллельно выводам питания реле нужно включить защитный диод. В качестве XP1 удобно  использовать половинку панельки под м/с. Катушка L1 должна обладать максимальной добротностью и минимальной собственной ёмкостью. Можно применить дроссели Д, ДМ, ДПМ индуктивностью 82-125 мкГн. Конденсатор C7  ёмкостью 510…680 пФ с TKE  П33, MП0. Конденсатор  C4  ёмкостью  в пределах 1000…2000 пФ с TKE  MП0. Транзистор VT2 любой другой высокочастотный с верхней границей 900 МГц. Переменный резистор R32 типа СП4-1 или другой малогабаритный. При применении LMX1600 диоды VD3, VD4 необходимо заменить более высокочастотными. Происходит завал на частотах выше 1,4 ГГц. Транзистор BF998 в корпусе SOT-143 при применении печатки с сайта необходимо припаять вверх ногами. Широкий вывод к R14,C11. Транзистор BF998 в корпусе SOT-143R также широким выводом к R14,C11.

Программирование микроконтроллера осуществляется через  разъём XP5 (ISCP) программой IC-Prog (3) и адаптером  (2) с предварительно удаленной перемычкой SA3. Биты конфигурации устанавливаются автоматически из HEX файла. При использовании других программаторов нужно установить биты WDT, PWRT и выбрать осциллятор XT.

 

Собранная без ошибок схема работает практически сразу и требует минимальной подстройки. 

Схема имеет модульную конструкцию. На первом этапе рекомендую припаять индикатор и микроконтроллер с обвязкой R32, R37, R43, R44, C26, C27, кварц, D7, D8 ,VD1. После программирования, подборкой резистора R34 отрегулировать контрастность изображения индикатора. Резисторы  R33, R34 рекомендую при настройке заменить переменным резистором номиналом 10-47 кОм.  После монтажа элементов LC модуля, в L/C режиме при нажатой кнопке L/C на выходе 7 LM311D должен быть сигнал типа меадр с частотой 750-850 МГц. В F2 и F3 режимах при отсутствии сигнала происходит самовозбуждение прескалеров(делителей) синтезатора. Это особенность прескалеров.

 

После сборки необходимо выставить калибровочные константы. Для изменения их необходимо выполнить следующие регулировочные операции. При нажатой кнопке SB1 включаем питание, отжимаем SB1. Прибор входит в режим изменения констант X. Вращением резистора R32 выбираем нужную константу. Нажатием на SB1 или SB2 меняем значение. Сохранение осуществляется при смене констант. После изменения последней константы, выбираем другую константу для сохранения последней. Выключаем прибор. Далее приведен список констант.

 

X0 устанавливается численно равной ёмкости конденсатора С4 в пикофарадах. Ее необходимо подкорректировать. Вращаем резистор R32 в положение L/C. Нажатием на кнопку L/C входим в режим измерения емкости. Вращением R32 входим в режим калибровки. После прохождения калибровки  на индикаторе высветится 0.00pF. Подключаем известную емкость. Номинал конденсатора делим на показания прибора и умножаем на константу X0. Полученное значение есть новое значение константы X0.

 

Для определения паразитной емкости переключателя, необходимо выполнить следующий алгоритм. Нажатием на кнопку L/C входим в режим измерения индуктивности. Замыкаем  контакты XP1 небольшой перемычкой (малоиндуктивной). Вращением R32 входим в режим калибровки. После прохождения калибровки индикаторе высветится 0.000 mkН. Убираем перемычку и нажатием на кнопку L/C входим в режим измерения емкости. На индикаторе на несколько секунд высветится паразитная емкость переключателя и показания обнулятся. Нажатием на SB2 запоминаем откалиброванные данные в энергонезависимой памяти. На индикаторе высветится ОК. 

X1 равна 1.000 и корректирует показания индуктивности при необходимости.

X2=0 -LMX1600TM  X2=1 -LMX1601TM   X2=4 - при применении других внешних делителей

X3- калибрует показания напряжения. Значение пропорционально показаниям.

X4=0,2,4,6 - для не русифицированного индикатора. 

X4=1,3,5,7 - для русифицированного.

X4=0,1,4,5 - первоначальный вход в режим частотомера F1 при 0,2 сек.

X4=2,3,6,7 - первоначальный вход в режим частотомера F1 при 1сек. 

X4=0,1,2,3 - TKE конденсатора C7 положительный. 

X4=4,5,6,7 - TKE конденсатора C7 отрицательный.

Например устанавливаем X4=5 - при индикаторе русифицированном, первоначальном входе в режиме частотомера F1 при 0,2сек и TKE конденсатора С7 отрицательном.

Подключив прибор в режиме F1 к образцовому генератору сигналов частотой 20-40 МГц.

Изменяя константу X5 и подстраивая конденсатор С29, добиваются совпадения показаний.   

Значение X5  численно равно частоте работы кварца в схеме (меняется с шагом 4 Гц ).

X6 значение выражает, сколько процентов вносит изменения в уход частоты емкость C7 в LC-режиме. Оставшиеся проценты из 100 приходятся на индуктивность. X6=0 и 100 не ставить. X6=50 не ставить при TKE  C7 отрицательном.

X7 - калибрует показания емкостей в режиме С1. Значение пропорционально показаниям.

X8, X9 - коэфф. деления внешних делителей. Появится при  установке X2=4.  

При питании от аккумулятора на индикаторе отображается состояние разряженности последнего.

При разрядке аккумулятора батарейка на экране заморгает. Подключив внешний источник питания к разъему XS1, производим  зарядку аккумулятора. При достижении на выводах аккумулятора напряжения 8,4 В, на индикаторе вместо батарейки высветится символ "z" индуцируя об окончании зарядки. Уровень срабатывания подбирается резистором R26. Ток заряда подбирается резистором R39.

При нажатой кнопке SB4 включаем прибор и входим в блок констант Y. 

Y8,Y9-пороги срабатывания узла заряда. Начало заряда и конец заряда.

 

Литература

2. А. Долгий. Программаторы и программирование микроконтроллеров.- Радио 2004г N1 стр.55

Цифровой амперметр и вольтметр на PIC16F873A - Измерительная техника - Инструменты

На рисунке 1 представлена схема цифрового амперметра и вольтметра, которая может быть использована, как дополнение к схемам блоков питания, преобразователей, зарядных устройств и т.д. Цифровая часть схемы выполнена на микроконтроллере PIC16F873A.


      Для отображения информации используются светодиодные индикаторы с общим катодом. Один из операционных усилителей микросхемы LM358 используется в качестве повторителя напряжения и служит для защиты контроллера при внештатных ситуациях. Все-таки цена контроллера не так уж и мала. Измерение тока производится косвенным образом, при помощи преобразователя ток-напряжение, выполненного операционном усилителе DA1.2 микросхемы LM358 и транзисторе VT1 — КТ515В. Почитать о таком преобразователе еще можно здесь и здесь. Датчиком тока в этой схеме служит резистор R3. Преимуществом такой схемы измерения тока состоит в том, что здесь отпадает необходимость точной подгонки миллиомного резистора. Скорректировать показания амперметра можно просто триммером R1 и в довольно широких пределах. Сигнал тока нагрузки для дальнейшей оцифровки снимается с нагрузочного резистора преобразователя R2. Напряжение на конденсаторе фильтра стоящем после выпрямителя вашего блока (вход стабилизатора, точка 3 на схеме)питания не должно быть более 32 вольт, это обусловлено максимальным напряжением питания ОУ. Максимальное входное напряжение микросхемного стабилизатора КР142ЕН12А — тридцать семь вольт.

     Регулировка вольтамперметра заключается в следующем. После всех процедур — сборки, программирования, проверки на соответствие на собранное вами произведение подают напряжение питания. Резистором R8 выставляют на выходе стабилизатора КР142ЕН12А напряжение 5,12 В. После этого вставляют в панельку запрограммированный микроконтроллер. Измеряют напряжение в точке 2 мультиметром, которому вы доверяете, и резистором R7 добиваются одинаковых показаний. После этого к выходу (точка 2) подключают нагрузку с контрольным амперметром. Равенства показаний обоих приборов в данном случае добиваются при помощи резистора R1.

     Резистор-датчик тока можно изготовить самому, используя для этого, например, стальную проволоку. Для расчета параметров этого резистора можно использовать программу «Программа для работы с проволокой» Программу скачали? Открыли? Значит так, нам нужен резистор номиналом в 0,05 Ом. Для его изготовления выберем стальную проволоку диаметром 0,7мм — у меня она такая, да еще и не ржавеющая. С помощью программы вычисляем необходимую длину отрезка, имеющего такое сопротивление. Смотрим скрин окна данной программы.


     И так нам нужен отрезок стальной нержавеющей проволоки диаметром 0,7мм и длиной всего 11 сантиметров. Не надо этот отрезок свивать в спираль и концентрировать все тепло в одной точке. Вроде все.

АРХИВ:Скачать

Часы с термометром и таймером на PIC-микроконтроллере PIC16F873A

Предлагаемое устройство отсчитывает время, измеряет температуру в доме и на улице, выключает по истечении заданного времени сетевую нагрузку. Оно просто в изготовлении. Вся информация выводится на светодиодный индикатор, который видно как днем, так и ночью, как вблизи, так и издалека.

В продаже имеются различные устройства отображающие время, температуру в помещении и на улице Но практически все они выполнены на ЖКИ, которые необходимо освещать в темное время суток.

А встроенную подсветку, если она есть, в приборах с автономным (батарейным) питанием не рекомендуется использовать длительное время. Небольшие размеры цифр не позволяют разглядеть показания с расстояния более одного метра Кроме того в таких приборах применяются в основном многовыводные БИС для поверхностного монтажа, которые очень трудно заменить в случае неисправности.

Все это стало причиной самостоятельной разработки прибора, который показывал бы на ярких светодиодных индикаторах текущее время, температуру в квартире и на улице. Уже в процессе работы было решено дополнить его таймером с обратным отсчетом времени, способным включать и выключать внешнее исполнительное устройство.

Описания подобных конструкций можно найти, например. в [1.2]. Но они либо содержат слишком много деталей, либо выполнены на микроконтроллерах фирмы Atmel, а я предпочитаю работать с микроконтроллерами фирмы Microchip.

Принципиальная схема

Схема разработанного устройства на микроконтроллере PIC16F873A-I SP изображена на рис. 1. Тактовую частоту задает кварцевый резонатор ZQ1 с частотой 8.192 МГц Отсчет базовых интервалов времени ведет встроенный в микроконтроллер восьмиразрядный таймер-счетчик TMR0.

Рис. 1. Принципиальная схема часов с таймером и термометром на микроконтроллере PIC16F873A.

Резисторы R1-R4 поддерживают высокий логический уровень ча входах RA1. RA3. RC1.

RC3 микроконтроллера, когда кнопки SB1-SB4 не нажаты Пятиразрядный семиэлементный светодиодный индикатор зеленого цвета свечения собран из двух: четырехразрядного HG1 и одноразрядного HG2.

Рис. 2. Вывод значений температуры на индикатор.

Рис. 3. Варианты вывода значений на цифровой индикатор.

Температуру измеряют широко известные датчики DS18B20, не требующие калибровки и с погрешностью измерения не более ±0,5 С в интервале температуры от -10 С до +85 С. Каждый из этих приборов имеет индивидуальным 64-разрядный двоичный код. Перед считыванием измеренных значений температуры микроконтроллер считывает коды датчиков и тем самым проверяет их наличие.

Если датчик отсутствует, неправильно подключен или неисправен, то вместо числового значения температуры на индикатор будут выведены два "минуса" (рис. 2). Таким же останется изображение на индикаторе некоторое время после включения устройства до получения первых отсчетов температуры Это не является признаком неисправности.

Детали и печатная плата

Датчик ВК1 располагается внутри устройства и измеряет температуру от + 10 С до +40 °С. Датчик ВК2 вынесен на улицу, он измеряет температуру от -40 °С до +40 °С. Длина проводов, соединяющих его с микроконтроллером, - до 12 м. Если в корпусе устройства нет достаточного числа вентиляционных отверстий. то датчик ВК1 рекомендуется также вынести за его пределы.

Информация отображается на индикаторе циклически: 10с - время (рис. З. а), 5 с - температура, измеренная в помещении датчиком ВК1 (рис. 3,6), 5 с - температура, измеренная на улице датчиком ВК2 (рис. З.в).

Каждую секунду микроконтроллер проверяет состояние входов RA1, RA3, RC1, RC3. Когда какая-либо из кнопок SB1-SB4 нажата, уровень на соответствующем входе становится низким.

Рис. 4. Печатная плата для схемы часов на микроконтроллере.

На рис. 4 показана печатная плата устройства. Все установленные на ней конденсаторы керамические: С1, С2 - с диэлектриком NP0, а C3 и С4 - с диэлектриком Y5V. Резисторы - МЯТ, С1-4 и их аналоги.

Транзистор КТ503А можно заменить другим кремниевым структуры n-p-n с максимальным постоянным током коллектора не менее 100 мА. Вместо светодиодов L-53SGD и L-53SRD/D подойдут и другие соответственно зеленого и красного цветов свечения. Реле К1 - WJ105-1А 5V 5А, его контакты рассчитаны на ток до 5 А, а обмотка при напряжении 5 В потребляет ток 90 мА.

Плата помещена в корпус G413 фирмы GAINTA С его лицевой стороны сделано окно для индикатора. В верхней панели просверлены отверстия для толкателей кнопок SB1-SB4 и для светодиодов. С тыльной стороны корпуса установлены гнезда, соединенные с контактами реле К1, а также предназначенные для подключения источника питания и датчика температуры ВК1.

Для установки точного времени нажимают на кнопку SB1. На индикатор выводятся цифры, соответствующие числу часов. Удерживая нажатой кнопку SB4. устанавливают нужное значение. Второй раз нажимают на кнопку SB1 На индикатор выводятся цифры, соответствующие числу минут Удерживая нажатой кнопку SB4, устанавливают нужное значение.

Третий раз нажимают на кнопку SB1. На индикатор выводятся цифры, соответствующие текущему числу секунд. Нажатием на кнопку SB4 это значение обнуляют. Четвертое нажатие на кнопку SB1 возвращает устройство в рабочий режим.

Предусмотрена возможность коррекции хода часов Для этого ровно через 6 часов после установки точного времени еще раз сверяют время с образцовым и определяют, на сколько секунд отстали или ушли вперед часы.

После этого нажимают на кнопку SB2 На индикаторе появляется надпись. показанная на рис. 5,а. Если часы отставали, то, нажав и удерживая кнопку SB4, вводят число секунд отставания. В противном случае (часы спешили) еще раз нажимают на кнопку SB2 Когда на индикаторе появится надпись, показанная на рис. 5,6 с помощью кнопки SB4 вводят число секунд, на которое часы ушли вперед Нажатием на кнопку SB2 возвращают устройство в рабочий режим. Введенное для корректировки число секунд сохраняется в EEPROM микроконтроллера.

Рис. 5. Надписи на индикаторе.

Рис. 6. Программирование таймера.

Таймер можно запрограммировать на выдержку максимум 900 мин. Чтобы задать ее продолжительность, нажимают на кнопку SB3. На индикаторе появляется надпись, показанная на рис.

6. После этого, нажав и удерживая кнопку SB1, вводят число сотен минут Затем кнопкой SB2 вводят число десятков, а кнопкой SB4 - число единиц минут выдержки. Еще одним нажатием на кнопку SB3 возвращают устройство в рабочий режим. Заданная продолжительность выдержки сохраняется в EEPROM микроконтроллера.

Запускают таймер в любой момент нажатием на кнопку SB4. При этом уровень на выходе RA5 микроконтроллера становится высоким, реле К1 срабатывает По истечении выдержки уровень вновь станет низким, а контакты реле К1 разомкнутся. Если необходимо разомкнуть их ранее запланированного времени, следует еще раз нажать на кнопку SB4.

Прошивка для микроконтроллера PIC16F873A - Скачать (14кБ).

П. Кожухин, г. Курган. Р-2010-05.

Литература:

  1. Ревич Ю. Часы с термометром и барометром. Р-2003-04, 05, 07.
  2. Суворов В. Часы-термометр. Р-2003-10.

sdv_st_pic16f873

sdv_st_pic16f873

     СДВОЕННЫЙ СТАБИЛИЗАТОР НАПРЯЖЕНИЯ НА PIC16F873

Абрамов Сергей    г.Оренбург

Для регулирования мощности на нагрузке нашли широкое распространение тиристорные фазовые регуляторы, ввиду простоты схемного решения. Однако им присущи и недостатки заключающиеся в нестабильности выходного напряжения. И к тому же каждую схему приходится подстраивать к реальному сетевому напряжению. Для контроля напряжения необходимо устанавливать дополнительный прибор, и постоянно крутить ручку, подстраиваясь под нужный режим.
Быстрое развитие современной элементной базы и достаточно низкая стоимость микроконтроллеров позволяют решать данные проблемы не намного усложняя схему.  Схема приведенная на Рис 1, рассчитана на два канала, и обеспечивает регулировку и стабилизацию напряжения от 1 до 255 вольт. Работоспособность устройства сохраняется при изменении сетевого напряжения от 150 до 250 вольт.


                           Рис1

В качестве управляющего элемента в ней применен микроконтроллер D1 фирмы Microchip PIC16F876.  Напряжение, снимаемое с нагрузки, выпрямляется диодами VD1,VD2 и поступает на резистивные делители первого канала R1,R3 и второго R2,R4. Затем сглаживается конденсаторами С8,С9, и поступает на входы десятиразрядного аналого-цифрового преобразователя который находится в микроконтроллере. Для упрощения схемы и алгоритма работы, АЦП ограничен на уровне восьми разрядов, опорным напряжением выбрано напряжение питания микросхемы. Моменты перехода сетевого напряжения через ноль заводятся на вход RB0, которые вырабатывает формирователь на транзисторе VT3. Код символа выводится на индикаторы с порта RC0-RC6, а включение соответствующего разряда происходит от порта RB1-RB6 через транзисторные ключи VT4-VT9. Кнопками SA2,SA3 можно увеличивать, уменьшать заданное напряжение.  Кнопкой SA1 переключать номер канала. Если это первый канал то  индикатор HL1 будет выключен, второй включен. Симисторы  VS1,VS2 управляются с выходов портов  RA2,RA5 через транзисторные ключи VT1,VT2 и тиристорные оптроны VS3-VS6.  Блок питания собран на трансформаторе Т1, диодном мосту VD3-VD6 и микросхеме стабилизатора D2.
Опишем кратко алгоритм работы программы. После включения происходит сброс контроллера и начинается опрос АЦП. Если напряжение на входах меньше того что было задано пользователем с кнопок то коды задержек уменьшаются, если больше то увеличиваются. После получения контроллером импульса перехода через ноль загружаются таймеры TMR0, TMR2 кодом задержки, и запускаются. По получении от таймеров прерывания выдается короткий импульс примерно 20мКс на выходы RA2,RA5. По прерыванию таймера TMR1 выводится индикация и происходит опрос клавиатуры.
Трансформатор мощностью 3-5Вт. Первичная обмотка рассчитана на напряжение 260 вольт. При подключении к сети 220вольт на вторичной обмотке должно быть 11-12 вольт и рабочий ток 200ма. Вместо PIC16F876 можно установить PIC16F873 без каких либо доработок, данные контроллеры отличаются только обьемом памяти. Вместо транзисторов КТ315 можно применить КТ3102. Резисторы R3,R5 прецизионные типа СП5-2. Вместо VD1-VD2  любые на ток 100-300ма и напряжение 300вольт, вместо VD3-VD7 на ток 200-300ма и напряжение 25-50вольт. Диоды КД522А заменяют на любые на ток 20-100ма и напряжение 25-50вольт. Электролитические конденсаторы типа К50-35 остальные КМ. Резонатор на частоту 8мГц с параллельным резонансом. Вместо симисторов ТС2-80 в зависимости от тока на нагрузке можно установить ТС2-25, ТС2-10, КУ208 или поставить по два тиристора, доработав незначительно печатную плату.
Все устройство собрано на односторонней печатной плате Рис2. Кнопки, светодиод HL1 и индикаторы HG1,HG2 устанавливаются со стороны дорожек.

Рис2

Коды программы в HEX формате помещены в таблице 1.
Ассемблерный код лежит здесь
Настройка стабилизатора сводится к подстройке резисторами R3,R4 соответствия показаний индикаторов и напряжений на нагрузке. Необходимо следить, чтобы напряжение на ножках 2,3 микроконтроллера ни в коем случае не превысило 5 вольт.
  

   Табл.1
:020000040000FA
:04000000A7221C28EF
:02000800A62927
:100020008A0182073F3406345B344F3466346D34C2
:100030007D3407347F346F340313831285018601C6
:10004000870183160B3085008130860000308700E1
:100050008F30810004309F008312003092003430D2
:100060009000831603308C0000308D00FF3092002A
:100070008312D0308B00FD308F0000308E001014C2
:10008000AC01AD01AE01AF01B001B1010230A00081
:100090000130A10005163C30BF000130C000C10096
:1000A000FF30C200C3000A30C400C500B630A20051
:1000B000A400A600A7000030A300A5008B13003009
:1000C0006E22AA0001306E22AB008B17A1186C21A2
:1000D000211989216400C00BDF28BC2281309F00D8
:1000E000BC221F1564001F1972281E08A800C20B2D
:1000F0008128C40B812886227822FF30C2000A3072
:10010000C40064002A0828020319DF28031CB5284C
:100110002A080F3E031891282802031C9128542115
:10012000A5282A080A3E03189A282802031C9A28A0
:100130005721A5282A08043E0318A3282802031CD7
:10014000A3285A21A5285D21A722B6302202031D2B
:10015000AD28003023020319DF28A303031DDF2885
:10016000B6302202031DA20ADF2828080F3E03181A
:10017000BE282A02031CBE285421D22828080A3E81
:100180000318C7282A02031CC7285721D228280889
:10019000043E0318D0282A02031CD0285A21D22852
:1001A0005D21A7222208031DD928FF30230203194D
:1001B000DF28A30A031DDF282208031DA203C10BA9
:1001C0005329BC2289309F00BC221F1564001F19CF
:1001D000E6281E08A900C30BF528C50BF5288922BF
:1001E0007F22FF30C3000A30C50064002B082902BB
:1001F00003195329031C29292B080F3E031805292D
:100200002902031C0529602119292B080A3E03181D
:100210000E292902031C0E29632119292B08043EEB
:10022000031817292902031C172966211929692196
:10023000A722B6302402031D21290030250203190C
:100240005329A503031D5329B6302402031DA40A14
:10025000532929080F3E031832292B02031C322987
:100260006021462929080A3E03183B292B02031C5A
:100270003B29632146292908043E031844292B02FF
:10028000031C4429662146296921A7222408031D4D
:100290004D29FF30250203195329A50A031D5329AF
:1002A0002408031DA40366280130C0000800143090
:1002B000C00008003230C00008006430C0000800F0
:1002C0000130C10008001430C10008003230C10004
:1002D00008006430C1000800640021187B29013047
:1002E0002A02031DAA038C227822AE220030B90014
:1002F0002A08BA00862901302B02031DAB038F2286
:100300007F22AE220130B9002B08BA0055226400CA
:100310000800640021189829FF302A02031DAA0A48
:100320008C227822AE220030B9002A08BA00A32914
:10033000FF302B02031DAB0A8F227F22AE22013039
:10034000B9002B08BA00552264000800B500030E5E
:10035000B6008B183E2A8C18C4290B19B6290C1824
:10036000D229360E8300B50E350E090064000B113C
:100370008B1EB129A608031DC2298B120515A222C6
:100380000511B129A603B12964008C10121DB129F1
:10039000A708031DD02912118516A2228512B129A2
:1003A000A703B12964000C10101CB1291010A01C67
:1003B000DE2906122C08102087008615201DE5294D
:1003C00086112D08102087000615A01DEC290611A6
:1003D0002E08102087008614201EF92986102F0869
:1003E0001020870006176400861FF8292115F929B7
:1003F0002111A01E062A0613300810208700861639
:100400006400861F052AA114062AA110201F1B2A9A
:10041000861231081020870006166400861F1B2AEA
:10042000BF0B1B2A3C30BF002118192A21140516C6
:100430001B2A21100512A01C202AA0102015382AE2
:10044000201D252A2011A015382AA01D2A2AA01116
:100450002016382A201E2F2A2012A016382AA01E65
:10046000342AA0122017382A201F382A2013A0145B
:10047000FD308F0000308E001014B1296400060892
:100480008B100B1EB129BC220618B12912112508A8
:1004900091002408A7008C1012158B1223088100EC
:1004A0002208A6000B118B16B1298B1339080317EC
:1004B00083168C18592A83128D0003133A080317E8
:1004C0008C0083168C130C1555308D00AA308D00CE
:1004D0008C140C11831203138B170800031783125B
:1004E0008D0083168C130C1483120C080313080060
:1004F0003208AC003308AD003408AE000800320802
:10050000AF003308B0003408B10008002808B2007A
:10051000912A2908B200912A2A08B200912A2B08B0
:10052000B200B301B4010A303202031C9A2AB200AD
:10053000B30A932A0A303302031CA12AB300B40A77
:100540009A2A08001430BE00BE0BA42A080001300D
:10055000BB000130BC000130BD00B42AFF30BB003D
:10056000FF30BC000430BD006400BC0BB82ABB0BDC
:10057000B42ABD0BB42A08003C30C600C60BBE2A04
:02058000080071
:02400E00460F5B
:00000001FF

 

Скачать файлы

Двухканальный таймер на микроконтроллере PIC16F873

Дата публикации: .

Независимое управление несколькими нагрузками при минимальных аппаратных затратах всегда являлось актуальным. Данная разработка представляет собой прибор, отключающий нагрузку через заданное время и имеющий несколько независимых каналов с возможностью одновременного включения. Устройство будет полезно многим как в быту, так и для автоматизации производства.

На рис. 1 представлена принципиальная схема двухканального таймера. Таймер выполнен на микроконтроллере PIC16F873 фирмы Microchip, который имеет достаточное число портов для подключения клавиатуры и управления многими нагрузками. К порту А подключена кнопочная матрица 3x3, в которой при двухканальном варианте использовано только семь кнопок. Обнуление таймеров обоих каналов производится посредством сброса микроконтроллера кнопкой «Reset».

Рисунок 1

Порт В управляет однострочным шестнадцатиразрядным ЖК-индикатором HG1 (АС-161), который отображает два независимых числа по шесть символов каждое, разделенных двумя пробелами. Программа для данного устройства написана с секундной дискретизацией, но при необходимости ее можно сделать минутной и даже часовой. Максимальное время отсчета составляет 999999 с = 16667 мин = 278 час = 11,6 суток. Порт С управляет нагрузками и элементами индикации, причем приоритетный канал снабжен дополнительной прерывистой световой и звуковой сигнализацией об окончании времени отсчета. К выводам 11 и 12 порта С подключен резонатор ZQ2 на 32768 Гц. Свободные выводы 17 и 18 порта RC можно использовать и под другие функции, например, секундную звуковую сигнализацию работы таймера. В качестве ZQ1 можно использовать любой резонатор на 4... 10 МГц.

Силовая часть выполнена на оптосимисторах фирмы Sharp S201S05V с напряжением коммутации 600 В и током 3 А. Без изменения печатной платы можно использовать оптосимисторы S202 или S216 на токи 8 и 16 А соответственно, но в этом случае их необходимо установить на радиаторы размером 50x50 мм от микропроцессоров и сверху поставить общий вентилятор. Для защиты симисторов используются RC-цепочки C8R13 и C9R14 и варисторы RU1 и RU2 на 300 В.

Нагрузки и сетевое напряжение на печатной плате подключены с помощью винтовых зажимов. Также на плате предусмотрено место под стабилизатор 78L05 в типовом включении, который на рис. 1 не показан. Светодиоды HL2 и HL3 предназначены для контроля работы оптосимисторов, что удобно при налаживании устройства. Также их можно использовать для индикации включения нагрузки. Пьезоизлучатель ВА1 — любой со встроенным генератором на напряжение 5 В.

Индикатор и кнопки подключены с помощью компьютерных шлейфов длиной не более 30 см (при большей длине начинают сильно влиять наводки, что приводит к искажению информации, выводимой на индикатор и ложному срабатыванию микроконтроллера). При необходимости удлинить шлейфы надо использовать кварцевый резонатор ZQ1 на меньшую частоту и установить конденсаторы емкостью несколько десятков нанофарад между общим проводом и выводами 5, 6, 7 микроконтроллера.

Для набора времени в каждом канале используется кнопка «Набор при нажатии на которую циклически увеличивается цифра текущего разряда на единицу — 1, 2, 9, 0, для перехода к другому разряду используется кнопка «Разряд» соответствующего канала. После каждого нажатия на эту кнопку мигающий разряд перемещается влево (также циклически, после последнего разряда в первый) и набор в следующем разряде можно продолжить. Кнопка «Пуск/Останов» изменяет свое функциональное назначение пocле каждого нажатия. С ее помощью можно остановить или запустить таймер каждого канала независимо. Для синхронного управления обоими каналами используют общую кнопку «Общий пуск/Останов», для обнуления микроконтроллера и остановки таймеров обоих каналов — кнопку «Reset».

При использовании деталей, показанных на принципиальной схеме, к каждому каналу можно подключать нагрузку мощностью до 0,5 кВт. В случае необходимости мощность каждого канала можно увеличить до 2...3 кВт без корректировки принципиальной схемы и печатной платы путем замены оптосимистора на аналогичный более мощный.

ЖК-индикатор можно заменить на восьмисимвольный  с двумя строками без изменения программы.

Установка битов конфугирации в программе IC-Prog:

Фото готового устройства. Автор Rozario


Архив для статьи "Двухканальный таймер на микроконтроллере PIC16F873 "
Описание: Исходный проект, файлы прошивок для PIC16F873/876
Размер файла: 8.63 KB Количество загрузок: 1 474 Скачать

измеритель ESR микроконтроллере PIC16F873 - MBS Electronics

Самодельный измеритель ESR с возможностью измерений бьез выпаивания конденсаторов из печатной платы

Что такое ESR?

Эквивалентное последовательное сопротивление (ESR) — это исключительно важный параметр электролитического конденсатора, характеризующий его работоспособность, качество и степень старения. С точки зрения ремонта электронной техники этот параметр даже более важен, чем емкость. Если, например, мы измерили емкость конденсатора номиналом 1000 микрофарад и она оказалась 650 микрофарад, конденсатор еще может долгое время работать в устройстве практически без заметного ухудшения характеристик (это конечно сильно зависит от конкретной схемы), в случае, если его ESR остается в приемлемых рамках. С другой стороны, если у конденсатора сильно выросло ESR, то во многих схемах, особенно в импульсных блоках питания, такой конденсатор уже не сможет выполнять своих функций даже если у него сохранилась номинальная емкость. Однако на практике такое бывает не часто, так как емкость и ESR — параметры взаимосвязанные и при росте ESR очень часто уменьшается и емкость конденсатора. Обычно ESR возрастает по мере высыхания электролита конденсатора.

В чем же смысл параметра ESR и почему он так важен? SER (Equivalent Series Resistance) или эквивалентное последовательное сопротивление — это паразитное сопротивление, которое можно представить себе как резистор, включенный последовательно с идеальным конденсатором. То есть это дополнительное сопротивление, которое имеет место быть в любом реальном конденсаторе, которое ухудшает качество этого конденсатора. Иными словами — это параметр, который показывает насколько наш конденсатор не идеален. Таким образом, чем больше ESR, тем хуже конденсатор.

Нужно сказать, что допустимое ESR — это параметр не постоянный, он зависит от емкости и рабочего напряжения конденсатора. Поэтому сделать вывод о пригодности конденсатора после измерения его ESR можно с помощью специальной таблицы максимально допустимых значений ESR. Вы можете ее увидеть на фотографии прибора на его лицевой панели. Я распечатал таблицу и приклеил ее на панель прибора:

Как измерить ESR?

Эквивалентное последовательное сопротивление, так же, как и обычное сопротивление, измеряется в Омах. В отличие от обычного омметра, прибор, измеряющий ESR, производит измерения не на постоянном токе, а на переменном токе сравнительно высокой частоты, обычно в районе 100 килогерц. На такой частоте емкость конденсатора практически не оказывает влияния на сопротивление конденсатора, поэтому измеряется именно последовательное эквивалентное сопротивление, а не емкость конденсатора. Фактически это главное и единственное отличие измерителя ESR от простого омметра.

В общем виде метод измерения ESR показан на схеме ниже:

Большинство измерителей работают именно по этому принципу. У нас есть генератор переменного напряжения G, резистор известного сопротивления R и измеряемый конденсатор Cx. Этот резистор совместно с измеряемым конденсатором образуют делитель напряжения. Дальше идет детектор, преобразующий переменное напряжение в постоянное и узел индикации этого постоянного напряжения, пересчитанного в Омы. Это может быть аналоговая или цифровая схема индикации, суть от этого не меняется.

Схема прибора

Описываемый прибор исключительно удобен тем, что может проверять конденсаторы без выпаивания их из схемы и в большинстве случаев это срабатывает. Исключением может быть например если вы хотите проверить конденсатор, параллельно которому включены другие конденсаторы. Такое включение иногда бывает в блоках питания. В таком случае прибор покажет наименьший ESR (то есть ESR лучшего конденсатора).

Схема измерителя ESR (кликните чтобы увеличить)

Прибор собран на основе микроконтроллера PIC16F873. Микроконтроллер измеряет выпрямленное напряжение, пересчитывает его значение в сопротивление в Омах. Кроме того микроконтроллер генерирует переменное напряжение прямоугольной формы частотй 100 кГц, которое используется для проведения измерений.

Для того, чтобы было возможно измерять ESR конденсаторов, не выпаивая их из схемы, измерительное напряжение должно быть достаточно низким, обычно 0,2-0,4 вольта, то есть меньше порога открывания pn — переходов полупроводниковых приборов.

Фактичекски представляет собой цифровой омметр работающий на переменном напряжении частотой 100кГц и позволяющий измерять сопротивления от 0 до 25,5Ом.

Узел формирования образцового напряжения 2.5 В для АЦП контроллера в оригинальной схеме собран на микросхеме TL431. В то время, когда я собирал этот измеритель у меня такой микросхемы не было и я заменил его стабилитроном на 3.3 В и подстроечным резистором на 10 К. Подстроечником я установил на ножке 5 контроллера требуемое напряжение 2.5 В.

Исходный узел на TL431

Я заменил его вот так

Сейчас TL431 — это очень распространенная и дешевая микросхема и проблем с ее приобретением нет. Так что если вы будете использовать мою печатную плату, то установите TL431. Подстроечник в таком случае устанавливать не нужно.

Блок питания собран на сетевом трансформаторе T1, диодном мостике и стабилизаторе напряжения LM7805 (K142ЕН5А). В своей версии прибора я отказался от трансформатора, оставив, тем не менее, диодный мостик на печатной плате. Я использовал малогабаритный импульсный сетевой блок питания (адаптер) на напряжение 12 вольт,

который, благодаря наличию диодного мостика, можно подключать в любой полярности или вообще использовать адаптер с переменным напряжением на выходе (просто трансформатор).

В принципе можно избавиться вообще от блока питания, если использовать пяти-вольтовый адаптер — зарядку от смартфона.

Меандр с частотой 100кГц снимается с ножки RC2 микроконтроллера и через резистор R3 подается на усилитель тока, собранный на транзисторах VT1,VT2. Я использовал КТ3102 и КТ3107. Хорошей идеей здесь будет использовать современные транзисторы BC547 и bc557. Нагрузкой усилителя служит резистор R1 и диоды VD5,VD7, включенные встречно-параллельно для ограничения амплитуды на измеряемом конденсаторе. Далее переменное напряжение, через конденсатор С1 и измеряемый конденсатор Cx поступает на первичную обмотку повышающего трансформатора Т2. далее импульсы снимаются со вторичной обмотки и выпрямляются диодом VD6, после чего полученное пульсирующее напряжение сглаживается конденсатором С3. Далее сформированное постоянное напряжение через подстроечный резистор R4 поступает на вход аналого-цифрового преобразователя микроконтроллера D3. Конденсатор С9 устраняет возможные высокочастотные помехи.

Информация отображается на трехразрядном семи-сегментном ЖК индикаторе. Транзисторы VT3, VT4, VT5 — ключи коммутации ЖК индикаторов (используется принцип динамической индикации.

Сетевой трансформатор (если вы решите его использовать) со вторичной обмоткой на 9-12 вольт. Повышающий трансформатор Т2 намотан на ферритовом кольце марки М2000НМ и размером К10х6Х3 (можно использовать кольцо других размеров, не сильно отличающихся от указанных. Это не критично). Первичная обмотка намотана проводом диаметром 0,26мм, и состоит из 42 витков. Вторичная обмотка содержит 700витков провода диаметром 0,08мм.

Налаживание устройства. Подключаем к щупам измерителя резистор известного сопротивления в диапазоне 1 .. 5 Ом и подстроечным резистором добиваемся корректных показаний на дисплее. После такой настройки мой прибор при соединенных вместе щупах показывал сопротивление отличное от нуля, поэтому я еще слегка подкорректировал положение движка резистора таким образом чтобы на дисплее были нулевые показания при замкнутых щупах.

Печатная плата устройства когда-то была разведена в программе PCAD2006, а в последствии я импортировал файл платы в программу DIPTRACE.

Прошивка (программа) для микроконтроллера PIC16F873 написана на ассемблере. Архив с прошивкой и чертежом печатной платы вы можете скачать по ссылке а конце этой статьи.

Я разрабатывал печатную плату, когда у меня еще не было в наличии светодиодных 7-сегментных индикаторов, поэтому индикатор я установил на отдельной плате. Эта плата — кусок обычной макетной платы, куда были припаяны индикаторы. То есть, печатную плату для индикатора я не разводил.

Со стороны лицевой панели индикатор закрыт куском оргстекла синего цвета. Это улучшает контрастность дисплея.

Провода щупов измерителя желательно выполнить из толстого многожильного провода, чтобы их сопротивление было как можно меньше. Сами щупы я сделал из толстых стальных швейных игл, такими щупами очень удобно измерять ESR конденсаторов непосредственно на печатных платах.

Провода щупов измерителя желательно выполнить из толстого многожильного провода, чтобы их сопротивление было как можно меньше. Сами щупы я сделал из толстых стальных швейных игл, такими щупами очень удобно измерять ESR конденсаторов непосредственно на печатных платах.

Ссылка для скачивания архива с прошивкой и печатной платой измерителя ESR

Ссылки для заказа некоторых компонентов схемы

Описание контроллера PIC16F877

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

8.0 CCP модуль (захват/сравнение/ШИМ) ......................................................................................

57

8.1 Режим захвата ................................................................................................................................................

59

8.1.1 Настройка вывода модуля CCP ............................................................................................................

59

8.1.2 Настройка таймера TMR1 ....................................................................................................................

59

8.1.3 Обработка прерываний..........................................................................................................................

59

8.1.4 Предварительный счетчик событий модуля CCP .............................................................................

59

8.2 Режим сравнения............................................................................................................................................

60

8.2.1 Настройка вывода модуля CCP ............................................................................................................

60

8.2.2 Настройка таймера TMR1 ....................................................................................................................

60

8.2.3 Обработка прерываний..........................................................................................................................

60

8.2.4 Триггер специального события ............................................................................................................

60

8.3 Режим ШИМ.....................................................................................................................................................

61

8.3.1 Период ШИМ.............................................................................................................................................

61

8.3.2 Скважность ШИМ....................................................................................................................................

62

8.3.3 Последовательность настройки модуля CCP в ШИМ режиме.........................................................

62

9.0 Модуль ведущего синхронного последовательного порта (MSSP).....................................

64

9.1 Режим SPI........................................................................................................................................................

68

9.1.1 Режим ведущего SPI ...............................................................................................................................

69

9.1.2 Режим ведомого SPI................................................................................................................................

70

9.2 Режим I2C.........................................................................................................................................................

71

9.2.1 Режим ведомого I2C.................................................................................................................................

72

9.2.2 Поддержка общего вызова .....................................................................................................................

75

9.2.3 Работа в SLEEP режиме........................................................................................................................

75

9.2.4 Эффект сброса .......................................................................................................................................

75

9.2.5 Режим ведущего I2C ................................................................................................................................

76

9.2.6 Режим конкуренции .................................................................................................................................

76

9.2.7 Поддержка режима ведущего I2C...........................................................................................................

77

9.2.8 Работа в режиме ведущего I2C .............................................................................................................

77

9.2.8 Генератор скорости обмена .................................................................................................................

78

9.2.9 Формирование бита START в режиме ведущего I2C ..........................................................................

79

9.2.10 Формирование бита повторный START в режиме ведущего I2C....................................................

80

9.2.11 Передача данных в режиме ведущего I2C...........................................................................................

81

9.2.12 Прием данных в режиме ведущего I2C ................................................................................................

83

9.2.13 Формирование бита подтверждения в режиме ведущего I2C.........................................................

85

9.2.14 Формирование бита STOP в режиме ведущего I2C ..........................................................................

85

9.2.15 Синхронизация тактового сигнала....................................................................................................

86

9.2.16 Режим конкуренции, арбитраж и конфликты шины.........................................................................

86

9.3 Подключение к шине I2C ................................................................................................................................

91

10.0 Универсальный синхронно-асинхронный приемопередатчик (USART) ...........................

92

10.1 Генератор частоты обмена USART BRG....................................................................................................

94

10.1.1 Выборка ..................................................................................................................................................

94

10.2 Асинхронный режим USART........................................................................................................................

96

10.2.1 Асинхронный передатчик USART .......................................................................................................

96

10.2.2 Асинхронный приемник USART............................................................................................................

98

10.2.3 Настройка 9-разрядного асинхронного приема с детектированием адреса .............................

100

10.3 Синхронный ведущий режим USART .......................................................................................................

102

10.3.1 Передача синхронного ведущего ......................................................................................................

102

10.3.2 Прием синхронного ведущего............................................................................................................

104

10.4 Синхронный ведомый режим USART .......................................................................................................

105

10.4.1 Передача синхронного ведомого.......................................................................................................

105

10.4.2 Прием синхронного ведомого ............................................................................................................

106

11.0 Модуль 10-разрядного АЦП....................................................................................................

107

11.1 Временные требования к подключению канала АЦП .............................................................................

110

11.2 Выбор источника тактовых импульсов для АЦП .....................................................................................

111

11.3 Настройка аналоговых входов ..................................................................................................................

111

11.4 Аналого-цифровое преобразование.........................................................................................................

112

11.4.1 Выравнивание результата преобразования...................................................................................

112

11.5 Работа модуля АЦП в SLEEP режиме......................................................................................................

113

11.6 Эффект сброса ...........................................................................................................................................

113

pic16f873a% 20only% 20circuit% 20diagram техническое описание и примечания к приложению

2003 - PIC16F87XA

Аннотация: пример кода PIC16f876A PIC16F873A-876A PIC16F873A DS39582B PIC16F877A пример кода АЦП канал АЦП pic16f874a PIC16F877A техническое описание 876a PIC16F874A
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA PIC16F87XA DS39582B) 0242xxx) 28-контактный PIC16F873A PIC16F876A) Примеры кодов PIC16f876A PIC16F873A-876A PIC16F873A DS39582B PIC16F877A Пример кода АЦП канальный АЦП pic16f874a Лист данных PIC16F877A 876a PIC16F874A
2002 - PIC16F873A-876A

Аннотация: управление скоростью двигателя постоянного тока с помощью Pic16F877A PIC16F87XA PIC16F873A 876A PIC16F877A 40-контактный MICROCHIP
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA разделить на 64 40-контактный PIC16F87XA DS39582A) DS80128A-страница PIC16F873A-876A контролировать скорость двигателя постоянного тока с помощью Pic16F877A PIC16F873A 876A PIC16F877A 40-контактный МИКРОЧИП
2001 - АРХИТЕКТУРА PIC16F877A

Аннотация: PIC16F877A PIC16F877A rs485 PIC16F873A PIC16F876A PIC16F874A PIC16F877A приложения микрочип pic16f877a uart pic16f877a spi PIC16F87X
Текст: нет текста в файле


Оригинал
PDF PIC16F87X PIC16F87XA PIC16F873A PIC16F874A PIC16F876A PIC16F877A PIC16F877A.28-выводный АРХИТЕКТУРА PIC16F877A PIC16F877A RS485 Приложения PIC16F877A микрочип pic16f877a uart pic16f877a spi
2001 - PIC16F873A-876A

Аннотация: PIC16F873A PIC16Fxxx PIC16F873A программирование для управления скоростью двигателя постоянного тока Принципиальная схема только PIC16F876A PIC16F876A Программирование 8-битных микроконтроллеров pic16f876a MPASM PIC 16 EEPROM I2C кварцевый генератор в микроконтроллере pic16F876A pic16f873a pwm
Текст: нет текста в файле


Оригинал
PDF PIC16F873A / 876A 28-контактный 28-контактный D-81739 D-82152 DS30303C-страница PIC16F873A-876A PIC16F873A PIC16Fxxx Программирование PIC16F873A для управления скоростью двигателя постоянного тока Принципиальная схема только PIC16F876A PIC16F876A Программирование 8-битных микроконтроллеров pic16f876a MPASM PIC 16 EEPROM I2C кварцевый генератор в микроконтроллере pic16F876A pic16f873a pwm двигатель
2006 - pic18f877a

Аннотация: pic18f877 pic18f876a pic18f876 PIC16F87XA PIC18F877A MICROCHIP PIC16F877a набор инструкций PIC16F877A-I / P PIC18F877A ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ PIC16F877A ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA PIC16F87XA DS39582B) PIC16F873A PIC16F874A PIC16F876A PIC16F877A pic18f877a pic18f877 pic18f876a pic18f876 МИКРОЧИП PIC18F877A Набор инструкций PIC16F877a PIC16F877A-I / P ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ PIC18F877A ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ PIC16F877A
2005 - СХЕМА ОБРАТНОГО СЧЕТЧИКА КВЧ

Аннотация: Блок-схема PIC16F873A Только PIC16F873A принципиальная схема счетчика кВтч с использованием блок-схемы pic AN939 Схема электронного счетчика энергии PIC-микроконтроллер Трехфазный счетчик энергии «Измерение коэффициента мощности» Схема PIC-микроконтроллера PIC18F2320 PIC16F873A
Текст: нет текста в файле


Оригинал
PDF AN939 PIC16F873A ut34-8870 DS00939A-страница СХЕМА ОБРАТНОГО СЧЕТЧИКА КВЧ Блок-схема PIC16F873A Принципиальная схема только PIC16F873A счетчик киловатт-часов с использованием блок-схемы pic AN939 Принципиальная схема электронного счетчика энергии PIC микроконтроллер 3-х фазный счетчик энергии Схема "измерения коэффициента мощности" PIC микроконтроллер PIC18F2320 PIC16F873A
2003 - Пример кода параллельного подчиненного порта PIC16F877a

Аннотация: сопряжение PIC16F877A с буфером PIC 877A PIC16F874A / 877A DATASHEET PIC 16 F 877A PIC16f877a пример кода spi PIC16F877A PIN-схема PIC16F874A / 877A PIC16F877A 40-контактный порт MICROCHIP, сведения о контакте pic16f877a
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA PIC16F87XA DS39582A) 0242xxx) 28-контактный PIC16F873A PIC16F876A) Пример кода параллельного подчиненного порта PIC16F877a сопряжение PIC16F877A с буфером ПИК 877A PIC16F874A / 877A ТЕХНИЧЕСКАЯ ИНФОРМАЦИЯ ПИК 16 F 877A PIC16f877a пример кода spi Схема контактов PIC16F877A PIC16F874A / 877A PIC16F877A 40-контактный МИКРОЧИП детали вывода порта pic16f877a
2004 - ПИК 877A

Аннотация: пример кода PIC16f877a, конфигурация главного устройства spi PIC16F877, подчиненного устройства i2c PIC16f876, примеров кодов I2C PIC16F873 Управление часами PIC PIC16F873 Примеры кодов PIC16f876 PIC16F874 Информация о контактах порта для приложения pic16f877a PIC16F872
Текст: нет текста в файле


Оригинал
PDF распознать6334-8870 DS80131D-страница ПИК 877A PIC16f877a пример кода конфигурации мастера spi PIC16F877 i2c ведомый PIC16f876 пример кода I2C PIC16F873 Управление часами PIC PIC16F873 Примеры кодов PIC16f876 PIC16F874 ПРИМЕЧАНИЕ ПО ПРИМЕНЕНИЮ детали вывода порта pic16f877a PIC16F872
2006 - ПИК 877A

Аннотация: DS30292C PIC16f877a пример кода конфигурации spi master PIC16f877a пример кода spi PIC16F873 877A PIC16F877a набор команд PIC16F873 последовательная связь PIC18F8620 PIC16F877A 40 pin MICROCHIP
Текст: нет текста в файле


Оригинал
PDF DS80131E-страница ПИК 877A DS30292C PIC16f877a пример кода конфигурации мастера spi PIC16f877a пример кода spi PIC16F873 877A Набор инструкций PIC16F877a PIC16F873 последовательная связь PIC18F8620 PIC16F877A 40-контактный МИКРОЧИП
PIC16F877A контакт

Аннотация: PIC16F877A datasheet pic16f877a PIC16F877A 40 pin MICROCHIP MICROCHIP PIC * 40pin PCM16XV0 PIC16F877A программатор скачать бесплатно pic16f877a datasheet PIC16F874A PIC16F877A dATASHEET
Текст: нет текста в файле


Оригинал
PDF AC164032 DV007003 AC124001 DV003001) 40-контактный 16-контактный PCM16XV0 PIC16F873A, PIC16F874A, PIC16F876A, PIC16F877A контакт PIC16F877A лист данных pic16f877a PIC16F877A 40-контактный МИКРОЧИП МИКРОЧИП PIC * 40pin Программатор PIC16F877A скачать бесплатно pic16f877a datasheet PIC16F874A PIC16F877A ТЕХНИЧЕСКАЯ ИНФОРМАЦИЯ
Нет в наличии

Аннотация: абстрактный текст недоступен
Текст: нет текста в файле


Оригинал
PDF 28 контактов 40 контактов 18 контактов / 28 контактов 44контакт MP-SOIC28 MP-ZIF40 MP-ZIF18 / 28 MP-PLCC44 PIC12C508 PIC12C508A
PIC16F873

Аннотация: PIC16F876A PIC16C73B pic16f870 PIC18F2320 PIC16C76 PIC16C74B PIC18F242 PIC18F458 PIC16C77
Текст: нет текста в файле


Оригинал
PDF PIC12C508 PIC16C72 PIC12C508A PIC16C72A PIC12C509 PIC16C73A PIC12C509A PIC16C73B rfPIC12C509AF PIC16C745 PIC16F873 PIC16F876A PIC16C73B pic16f870 PIC18F2320 PIC16C76 PIC16C74B PIC18F242 PIC18F458 PIC16C77
pic16f84a

Аннотация: pic16F877 PIC16F628 ADC IN PIC16F877 PIC16F873 pic16f877a ethernet PIC16F727 pic16f722 pic16F723 PIC16F690 lcd
Текст: нет текста в файле


Оригинал
PDF PIC18 PIC16F726 PIC16F727 PIC16F76 PIC16F77 pic16f84a pic16F877 PIC16F628 АЦП В PIC16F877 PIC16F873 pic16f877a Ethernet PIC16F727 pic16f722 pic16F723 PIC16F690 жк
2001 - pic16f87a

Аннотация: DS39582 pic16f877a полный набор инструкций pic16f877a руководство PIC16F877A АРХИТЕКТУРА PIC16F876A принципиальная схема программатора PIC16F87A7 PIC16F877a ОБРАЗЕЦ C pwm программа PIC16f873a пример кода для настройки spi PIC16F877AP
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA 28/40-контактный DS39582A PIC16F877A-I / L PIC16F877AI / ML PIC16F877AI / P PIC16F877AI / PT PIC16F877AT44 pic16f87a DS39582 pic16f877a полный набор инструкций pic16f877a руководство PIC16F877A АРХИТЕКТУРА Принципиальная схема программатора PIC16F876A PIC16F87A7 PIC16F877a SAMPLE C программа pwm PIC16f873a пример кода для настройки spi PIC16F877AP
2003 - PIC16F876A бесплатные проекты

Аннотация: абстрактный текст недоступен
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA 28/40/44-контактный DS39582B DK-2750 D-85737 NL-5152 PIC16F876A бесплатные проекты
2003 - ПИК 877A

Аннотация: LAN 8720 PIC16F873 PIC16F877 i2c slave PIC16F874 ПРИМЕЧАНИЕ ПО ПРИМЕНЕНИЮ DS41120B PIC17C752 PIC18F452 цифровые часы Управление часами PIC PIC16F873 DS30292C
Текст: нет текста в файле


Оригинал
PDF DK-2750 D-85737 DS80131C-страница ПИК 877A LAN 8720 PIC16F873 PIC16F877 i2c ведомый PIC16F874 ПРИМЕЧАНИЕ ПО ПРИМЕНЕНИЮ DS41120B PIC17C752 Цифровые часы PIC18F452 Управление часами PIC PIC16F873 DS30292C
2001 - Пример кода PIC16f873a для настройки spi

Аннотация: бесплатные проекты PIC16F876A Пример кода параллельного подчиненного порта PIC16F877a pic16f87a pic16f877a минимальная конфигурация Схема программатора PIC16F876A 16lf87 pic16f877a проекты PIC16F877A ГЕНЕРАЦИЯ ШИМ микроконтроллера с использованием Pic16F877A
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA 28/40-контактный DS39582A D-81739 DS39582A-страница PIC16f873a пример кода для настройки spi PIC16F876A бесплатные проекты Пример кода параллельного подчиненного порта PIC16F877a pic16f87a pic16f877a минимальная конфигурация Принципиальная схема программатора PIC16F876A 16lf87 pic16f877a проекты Микроконтроллер PIC16F877A ГЕНЕРАЦИЯ ШИМ с использованием Pic16F877A
2001 - Генератор прямоугольных волн с использованием pic16f877a

Аннотация: что такое f и a в PIC 16 F 877A 16F873A pic16f877a полный набор инструкций pic16f877a проекты PIR SENSOR PIC18F87XA PIC16F877a SAMPLE C pwm-программа PIC16F877a SAMPLE C программа счетчика ИК-датчика, взаимодействующая с pic16f877a с динамиком PIC16F877A
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA 28/40/44-контактный PIC16F873A PIC16F874A PIC16F876A PIC16F877A 10-битный, из 78-366 DS39582C-страница Генератор прямоугольных волн с использованием pic16f877a что такое f и a в PIC 16 F 877A 16F873A pic16f877a полный набор инструкций pic16f877a проекты PIR SENSOR PIC18F87XA PIC16F877a SAMPLE C программа pwm PIC16F877a SAMPLE C ir sensor программа счетчика сопряжение pic16f877a с динамиком Металлоискатель PIC16F877A
2003 - PIC16F87XA

Аннотация: f87xa 16F873A управление малым серводвигателем
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA 28/40/44-контактный DS39582B DK-2750 D-85737 NL-5152 PIC16F87XA f87xa 16F873A управление маленьким серводвигателем pic16f876a pic16f877a проекты PIR SENSOR скачать бесплатно pic 16f87xa datasheet PIC16F876A бесплатные проекты сопряжение PIC16F877A с жк-дисплеем 2X16 pic16f877A полный набор инструкций PIC16f873a пример кода для настройки spi
PIC16F877A Программирование сборки

Аннотация: PIC16F877A программирование потокового кода PIC16F877 и стоимость схемы сопряжения параллельного порта микроконтроллера PIC16F877A PIC16F877A Микроконтроллер бесплатно pic16f877a PIC16F84 USB-программатор схема PIC16F877A программатор ПРОГРАММА PIC16F73
Текст: нет текста в файле


Оригинал
PDF EB006 PIC16F88 IC16C765, PIC16C77, PIC16C773, PIC16C774, PIC16C84, PIC16CE623, PIC16CE624, PIC16CE625, Программирование сборки PIC16F877A Программирование кода потока PIC16F877A код потока PIC16F877 и схема сопряжения параллельного порта стоимость микроконтроллера PIC16F877A Микроконтроллер PIC16F877A бесплатно pic16f877a Схема программатора USB PIC16F84 Программатор PIC16F877A ПРОГРАММА PIC16F73
2002 - PIC16F877A Схема контактов

Аннотация: Блок-схема PIC16F877A pic16f877a Пример программирования кода c Блок-схема PIC16F877A Блок-схема PIC16F873A PIC16F876A icsp PIC16F876A Встроенное программирование c PIC16F877A pic16f877a исходный код привода двигателя PIC16F874A
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA PIC16F876A PIC16F874A PIC16F877A PIC16F87XA D-81739 Схема контактов PIC16F877A Блок-схема PIC16F877A pic16f877a пример программирования c кода Блок-схема PIC16F877A Блок-схема PIC16F873A PIC16F876A icsp PIC16F876A встроенное программирование c PIC16F877A pic16f877a исходный код моторного привода PIC16F874A
AD475

Аннотация: 16V8Q 22V10 ATMEL PIC16C782 16v8z 82S123 программирование xicor 28C64 pic16f876a Эквивалент AD347 AD486
Текст: нет текста в файле


Оригинал
PDF AD347 AD475 AD486 AD347 AD475 16V8Q АТМЕЛ 22В10 PIC16C782 16v8z 82S123 программирование xicor 28C64 pic16f876a Эквивалент AD486
2003 - PIC16f873a пример кода для настройки spi

Резюме: 16F873A pic16f877A полный набор инструкций pic16f877a manual PIC 877A pic16f877a проекты PIR SENSOR DS39582B PIC16F877A PIN-схема и его в pd PWM GENERATION с использованием интерфейса с ЖК-клавиатурой Pic16F877A PIC16F877A
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA 28/40/44-контактный DS39582B DK-2750 D-85737 NL-5152 PIC16f873a пример кода для настройки spi 16F873A pic16f877A полный набор инструкций pic16f877a руководство ПИК 877A pic16f877a проекты PIR SENSOR DS39582B Схема контактов PIC16F877A и ее в pd ГЕНЕРАЦИЯ ШИМ с использованием Pic16F877A PIC16F877A интерфейс жк-клавиатуры
2002 - PIC16F877A Схема контактов

Аннотация: PIC16F876A icsp PIC16F87XA pic16f877a Пример программирования кода c PIC16F877A pin PIC16F877A ДЕТАЛИ СХЕМЫ КОНТАКТОВ PIC16F877A блок-схема PIC16F877A Блок-схема PIC16F877A Микроконтроллер eeprom PIC16F876A
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA PIC16F876A PIC16F874A PIC16F877A PIC16F87XA D-85737 Схема контактов PIC16F877A PIC16F876A icsp pic16f877a пример программирования c кода PIC16F877A контакт ДЕТАЛИ СХЕМЫ ПИН-кодов PIC16F877A Блок-схема PIC16F877A Блок-схема PIC16F877A PIC16F877A Микроконтроллер eeprom PIC16F876A
2010 - рис 873a

Аннотация: Блок-схема PIC16F877A для цифровых часов PIC16F877A Схема контактов PIC16F87XA Встроенное программирование c PIC16F877A Принципиальная схема счетчика с использованием pic16f877a Блок-схема PIC16F877A PIC16F877a Временная диаграмма команд PIC16F877A Пример программирования кода EMBEDDED C для PIC16F877A
Текст: нет текста в файле


Оригинал
PDF PIC16F87XA PIC16F876A PIC16F874A PIC16F877A PIC16F87XA DS39589C-страница рис 873a Блок-схема PIC16F877A для цифровых часов Схема контактов PIC16F877A встроенное программирование c PIC16F877A принципиальная схема счетчика с использованием pic16f877a Блок-схема PIC16F877A Временная диаграмма тактовой частоты команд PIC16F877a pic16f877a пример программирования c кода Встроенное программирование на C для PIC16F877A

Пример мигающего светодиода PIC16F873 | PIC обучения

Это обычное введение к другому рисунку, на этот раз мы начнем показывать вам несколько примеров с микроконтроллером PIC16F873, вы можете узнать больше об этом микроконтроллере от Microchip, но, чтобы подвести итог, его 28-контактный пакет sdip с 5 10-битным АЦП каналов, таймера 2 x 8 бит, таймера 1 x 16 бит и различных других функций.

Мы начнем с обычного включения и выключения светодиода, поскольку мы использовали плату разработки QL200, чтобы убедиться, что этот PIC поддерживается, мы включили / выключили 8 светодиодов, подключенных к PORTB

Давайте посмотрим на схему

Схема

Все резисторы были 470 Ом

pic16f873 и светодиоды

Код

На этот раз я решил написать пример с использованием MIkroC и Mplab X с компилятором XC8, мне нравится поиграться вот так.Итак, 2 примера кода

Микрок

 void main ()
{

TRISB = 0x00;

делать {

PORTB = 0xFF;
Delay_ms (300);
PORTB = 0x00;
Delay_ms (300);

} while (1);

} // конец основного 

Mplab X

 #define _XTAL_FREQ 4000000
// НАЧАТЬ КОНФИГУРАЦИЮ
#pragma config FOSC = HS // Биты выбора осциллятора (осциллятор HS)
#pragma config WDTE = ON // Бит включения сторожевого таймера (WDT включен)
#pragma config PWRTE = OFF // Бит включения таймера включения (PWRT отключен)
#pragma config BOREN = ON // Бит разрешения сброса пониженного напряжения (BOR включен)
#pragma config LVP = OFF // Бит включения последовательного программирования низкого напряжения (однополярный) (RB3 - это цифровой ввод / вывод, для программирования необходимо использовать HV на MCLR)
#pragma config CPD = OFF // Бит защиты кода памяти EEPROM данных (защита кода EEPROM данных выключена)
#pragma config WRT = OFF // Биты разрешения записи в память программы Flash (защита от записи отключена; вся программная память может быть записана управлением EECON)
#pragma config CP = OFF // Бит защиты кода флэш-памяти программы (защита кода выключена)
// КОНФИГУРАЦИЯ КОНФИГУРАЦИИ

# включить 
#include 
#include 
/ *
*
* /
int main (int argc, char ** argv)
{
TRISB = 0x00; // RB0 как выходной PIN
в то время как (1)
{
PORTB = 0xFF; // светодиод горит
__delay_ms (1000); // Задержка 1 секунда
PORTB = 0x00; // светодиод выключен
__delay_ms (1000); // Задержка 1 секунда
}
возврат 0;
возврат (EXIT_SUCCESS);
} 

Ссылки

10 шт. PIC16F873 DIP28 IC

QL200 PIC16F877A-I / P PIC16F877 PIC 8-битная макетная плата 4 в 1 Встроенный программатор Интегрированная демонстрационная система + LCD1602

PIC16F873-04 / SP Технология микросхем - | oemsecrets.com

Часто задаваемые вопросы

Где я могу найти дополнительную информацию, спецификации и документы для PIC16F873-04 / SP?

Дополнительные спецификации, посадочные места и схемы для PIC16F873-04 / SP перечислены на нашей вкладке «Детали детали». Вы также можете найти изображение PIC16F873-04 / SP и аналогичные детали на этой странице с подробными сведениями.

Какую информацию о ценах и запасах я могу просмотреть?

Информация о ценах и запасах дистрибьютора

для PIC16F873-04 / SP доступна на вкладке «Цены и инвентарь» рядом с деталями.Вы можете просмотреть разницы в цене PIC16F873-04 / SP, минимальный объем заказа, время выполнения заказа, запасы и артикулы от дистрибьюторов.

К какой категории относится PIC16F873-04 / SP?

PIC16F873-04 / SP указан как PIC16F873.

Могу ли я просмотреть похожие или альтернативные детали?

Вы можете просмотреть детали, аналогичные PIC16F873-04 / SP, если они доступны в диапазоне PIC16F873, в разделе спецификаций в нижней части страницы с подробностями.

К кому я могу обратиться за технической поддержкой продукта?

Задавайте любые вопросы непосредственно в службу поддержки дистрибьютора, разместившего товар.Для PIC16F873-04 / SP вы можете напрямую связаться с дистрибьютором для получения поддержки по продукту, запросов на доставку и т. Д.

Соответствует ли PIC16F873-04 / SP RoHS?

Эта деталь не отмечена как соответствующая RoHS.

У каких официальных дистрибьюторов PIC16F873-04 / SP есть складские запасы?

У официальных дистрибьюторов, включая Newark Electronics, Future Electronics EMEA, Avnet America, Transfer Multisort Elektronik и Microchip Technology Inc., есть запасы PIC16F873-04 / SP или есть сроки поставки.

Как мне проверить наличие на складе и время выполнения заказа для всех дистрибьюторов?

Наличие на складе и время выполнения для PIC16F873-04 / SP часто отображаются в режиме реального времени на страницах сравнения.

Что делать, если я не могу найти на складе PIC16F873-04 / SP?

Вы можете заполнить нашу справочную форму, которую вы можете использовать, чтобы запросить расценки на PIC16F873-04 / SP у некоторых из наших проверенных поставщиков устаревшего оборудования. Или свяжитесь с нами через наш веб-чат в левом нижнем углу экрана, и один из наших сотрудников постарается помочь.

перепрограммируемый

Модуль PIC

для

перепрограммируемый

Микроконтроллер Flash

S Гупта

Сводка

В этой статье обсуждается конструкция модуля PIC, который может быть использован для MicroChip Technologys перепрограммировать микроконтроллер PIC16F873 / 6 Flash. Принципиальная схема предоставляется а некоторые особенности флэш-микроконтроллера выделены значком упор на перепрограммирование флеш-памяти.

Успех PIC16F84, Microchip Technologys Серия микроконтроллеров PIC16F87X призвана оказать большое влияние на Арена 8-битных перепрограммируемых микроконтроллеров. Микроконтроллеры PIC16F87X построены на популярном 14-битном ядре PIC16C. и предлагают значительные улучшения по сравнению с более ранними кузенами. Как этот микроконтроллер модуль использует только 28-контактные устройства (PIC16F873 и PIC16F876), только эти устройства обсуждаются в контексте этой статьи.Некоторые особенности этих устройств выделено ниже.

Память

Микроконтроллеры

16F87X несут большой массив памяти, который можно разделить на три типа

  • Вспышка Программная память
  • EEPROM Память данных
  • Данные Оперативная память (SRAM)

Флэш-память программ

Вся программная память состоит из флэш-массива.Каждый один байт флэш-памяти программ можно стереть и перепрограммировать. Это может быть выполняется либо в обычном программаторе PIC, таком как экономичные блоки PICSTART доступны от Microchip или даже могут быть выполнены во время приложения. И все это можно сделать с помощью небольшого пользовательского кода, находящегося в памяти программы, без требуется любое внешнее более высокое напряжение программирования. Этот уровень гибкости очень полезен в сегодняшних быстрых темпах развития, когда обновления продуктов и модификации обычно выполняются в полевых условиях.

Чтение и запись в память программ с помощью кода пользователя. выполняется через набор регистров специальных функций (SFR). Программная память не ограничивается хранением байтов кода, но также может использоваться для хранения 14 бит константы коэффициентов. Случайный доступ к байту неверного кода приведет к в исполнении кода NOP, не причинив никакого вреда. Но, к сожалению, это нельзя полагаться, и следует позаботиться о том, чтобы любой коэффициент К байтам не обращаются как к байтам программного кода.

Младший из двух устройств PIC16F873 имеет 7168 байт. (4096x14 слов) памяти кодов, в то время как другое устройство PIC16F876 имеет 14336 байт (8192x14 слов) памяти кода.

Память данных EEPROM

Память данных

EEPROM подходит для многократного стирания и записи операция. Обычно это подходит для хранения данных коэффициентов, которые могут быть программируется время от времени. Память данных EEPROM не отображается в регистре адресное пространство файла, но отображается по-другому, и доступ к нему также осуществляется через набор SFR.PIC16F873 содержит 128 байтов данных EEPROM, а PIC16F876 содержит 256 байтов.

ОЗУ данных (SRAM)

Доступность ОЗУ в микроконтроллерах неуклонно растет и серия PIC16F не исключение. PIC16F873 содержит 192 байта SRAM, а PIC16F876 содержит 368 байт гораздо большего размера. Память данных разделена на 4 банка по 128 байт каждый. Нижняя часть (от 00 до 20H) каждого из этих банков посвящен регистрам специальных функций, а баланс оставлен для ОЗУ данных.Поскольку PIC16F873 содержит только 192 байта ОЗУ данных, все они содержатся в первые две банки. Только SFR находятся в двух верхних банках банка 2 и банк 3. Для микроконтроллера PIC16F876, содержащего 368 байт ОЗУ данных, эти распределены по всем четырем банкам. У этого устройства есть интересная особенность: верхние 16 байтов каждого банка используются для адресации одного и того же пространства памяти данных (от 70 до 7FH). Это снижает потребность в переключении банков (настоящая неприятность)

PIC16F87X содержит богатый набор встроенных периферийных устройств.Эти включить

  • А / Д Конвертер
  • Таймеры / Счетчики / ШИМ
  • SCI
  • IIC / SPI

Аналого-цифровой преобразователь

Разрешение аналого-цифрового преобразователя улучшено по сравнению со стандартным. От 8 бит до 10 бит. Это достаточно хорошо, и микроконтроллеры 16F87X могут соперничать с ними. за место в производственном контроле. Предусмотрено 5 10-битных аналого-цифровых каналов. В скорость преобразования можно регулировать внутренне, но для 10-битных результатов преобразование время (включая выборку и выдержку) 20 мкс является оптимальным.Некоторые аналог входные каналы могут быть настроены как цифровые входы / выходы, если все пять каналов не нужный. Также можно использовать внешнее прецизионное опорное напряжение, но это вообще перебор для этого разрешения.

Таймеры / Счетчики / ШИМ

Схемы точного счета и отсчета времени становятся необходимость современного производственного контроля. На борту есть три таймера, которые также могут быть настроены для работы в качестве счетчиков.

  • 8-битный Таймер0
  • 16 бит Таймер1
  • 8-битный Таймер2

Timer2 поддерживает регистр периода, а также прескалер и постделитель.Это делает работу таймера очень гибкой. В таймеры используются двумя функциями захвата / сравнения, а также выходом ШИМ. ШИМ может быть достигнуто разрешение до 10 бит. Заявленное разрешение захвата составляет быть 12,5 нс при тактовой частоте 20 МГц (очень впечатляюще), и сравните разрешение 200 нсек.

SCI

Существует ряд программ, написанных для установки любого вывода ввода / вывода микроконтроллер PIC для работы в качестве программного UART. Тем не менее, программный UART не предложить тип ответа, необходимый для управления в реальном времени.Это особенно верно, если микроконтроллер подключен к какой-либо сети связи, где данные постоянно летают через интерфейс. Высокоскоростной аппаратный UART встроенный микроконтроллер PIC16F87X. Имеет собственную выделенную скорость передачи данных. генератор, позволяющий генерировать гибкую скорость передачи данных. Выбор подходящий кристалл необходим для достижения надежной работы при высоких скоростях передачи например 115К.

IIC / SPI

В последнее время наблюдается рост количества устройств, предлагающих IIC и / или Интерфейс SPI.Большинство этих устройств представляют собой EEPROM или преобразователи данных. А предоставляется синхронный интерфейс, который может быть настроен как для IIC, так и для SPI коммуникация. Эти интерфейсы также могут использоваться для небольшой локальной сети между PIC, работающим в качестве ведущего контроллер и несколько других устройств, работающих как ведомые, в близком физическом близость.

Помимо этих функций микроконтроллер PIC16F87X содержит несколько других периферийных функций, таких как сторожевой таймер, сброс при включении питания, отключение сброса и спящий режим.

Флэш-память программ может быть перепрограммирована либо через внутрисхемный интерфейс последовательного программирования (ICSP) или через пользовательскую программу работает в самом устройстве. Как правило, рекомендуется предоставить какой-то защиты от случайного стирания критических участков кода. PIC16F87X микроконтроллер также решает эту проблему.

Биты защиты кода программной памяти

Микроконтроллер PIC16F87X можно перепрограммировать, только если некоторые биты в регистре конфигурации находятся в правильном состоянии.Эти биты являются:

CP1 и CP0 обеспечивают защиту кода для определенных блоков программная память. В следующей таблице показано влияние этих двух битов на код. объем памяти.

Защитные биты для кода - PIC16F873

CP1

CP0

Защищенный код Память (слов)

0

0

0000 0FFF

0

1

0800 0FFF

1

0

0F00 0FFF

1

1

Нет.Вся память возможность модификации

Защитные биты для кода - PIC16F876

CP1

CP0

Защищенный код Память (слов)

0

0

0000 1FFF

0

1

1000 1FFF

1

0

1F00 1FFF

1

1

Нет.Вся память возможность модификации

Бит

WRT дополнительно управляет перепрограммированием памяти программ. через код пользователя. Чтобы выбранный блок кода был перепрограммирован на слово (14 бит), бит WRT должен быть 1. Если он установлен в 0, код пользователя не может изменять программную память, это можно сделать через внешний ICSP интерфейс.

Все три бита, даже если они находятся в памяти кода space (2007H) недоступны для внутренней пользовательской программы.Чтобы быть правильным, регистр конфигурации находится в специальной области памяти теста / конфигурации и недоступен для SFR, используемых во внутреннем программировании. Биты в Регистр конфигурации может быть перепрограммирован только после стирания всего устройства. Таким образом, в первый раз, когда устройство программируется, биты конфигурации должны быть установлены соответствующим образом, чтобы при программировании схемы через любой код пользователя или через интерфейс ICSP.

SFR, используемых во флэш-программировании

Имеется шесть регистров специальных функций, которые используются в чтение и запись во флэш-память программ.Это:

Он содержит младший байтовый адрес ячейка памяти программы, к которой будет осуществляться доступ

Он содержит адрес старшего байта области памяти программы, к которой необходимо получить доступ. Так как есть максимум 8K слова программной памяти (PIC16F876), требуется только 13-битный адрес. Таким образом, действительны только младшие (LSB) 5 бит, а старшие 3 бита не используются и будет читаться как 0.

Он содержит младшие 8 бит (a всего 14 бит) программное слово.

Содержит старшие 6 бит программы слово. Эти биты расположены в младших 6 битах байта EEDATH. Два верхних биты этого регистра не используются и будут читаться как 0.

Это главный контрольный регистр. для программирования флэш-памяти, а также памяти данных EEPROM. Только 5 бит Действительны 8 бит, а остальные три читаются как o. Эти биты,

Этот бит определяет, будет ли программа Осуществляется доступ к памяти или памяти данных

0 = Доступ к памяти данных

1 = Доступ к программной памяти

    • B6 : Не реализовано
    • B6 : Не реализовано
    • B4 : Не реализовано
    • WRERR (B3)

Это бит флага (состояния), используется для обозначения ошибки в программировании.Программирование каждой локации является запланированным событием, и любое преждевременное прекращение этого события может привести к неверные (или, по крайней мере, ненадежные) запрограммированные данные. Несмотря на то, что код пользователя может не преждевременно прекращать это событие, это можно сделать через WDT или внешний Сброс MCLR.

0 = Местоположение было запрограммировано без перерыва

1 = Программирование было прервано

Этот бит позволяет программировать память программ или данных.

0 = Флэш-память не может быть записано на (запрограммировано)

1 = Флэш-память может быть записана в

Этот бит аналогичен WR. линия управления микросхемы SRAM, но также действует как бит состояния.Бит установлен на запрограммировать (записать) в каждую ячейку (14-битное слово для программной памяти и 8 бит памяти данных). Как только программирование этого места завершено, WR бит сбрасывается в 0. Этот бит может быть установлен, но не сброшен кодом пользователя. Это сделано намеренно, чтобы предотвратить преждевременное завершение пользовательского кода. операция записи.

1 = Инициировать операцию записи (Действует как управляющий бит)

0 = операция записи полный.(Действует как бит состояния)

Этот бит аналогичен управлению RD линия SRAM. Этот бит необходимо установить для выполнения операции чтения на память программ или данных.

0 = Не начинать чтение операция

1 = Инициировать операцию чтения

Программная память Операция чтения

Несмотря на то, что намерение может заключаться в том, чтобы записать (запрограммировать) место в памяти, чтение памяти требуется для проверки того, что программирование было выполнено успешно.Данные нормально читаются и перепрограммируются, если нет подходящее. После того, как место кода было запрограммировано, его считывают, чтобы убедиться, что программирование прошло успешно. Каждая ячейка памяти программы (14 бит word) читается как два байта данных. Операция чтения выглядит следующим образом:

  • Выбрать регистрационный банк 2 для доступа к EEADR и SFR
  • EEADRH
  • Передача Старшие и младшие байты адреса EEADRH (5 младших битов представляют 5 MSBits 13-битного адреса) и EEADR соответственно
  • Переключатель в банк 3 для доступа к EECON1 SFR
  • комплект Бит EEPGD для выбора памяти программ
  • комплект RD бит
  • Подождите для двух тактов
  • Переключатель в банк 3 для доступа к EEDATA и EEDATH SFR
  • Получить данные из EEDATA и EEDATH

Программное обеспечение: чтение флэш-памяти программ

; Регистры RAM

; -----------------

; Предполагается, что адрес байты настроены правильно

ADRSL EQU 70h; Младший байт адреса EE

ADRSH EQU 71h; Старший байт адреса EE

DATAL EQU 72h; Младший байт данных

DATAH EQU 73h; Старший байт данных

; Информация о банке

СТАТУС СВОПФ, Вт; Получить регистр состояния

; Не влияет на флаги

MOVW TEMP; Сохранить регистр состояния

; Выбирать банк 2

СТАТУС BCF, RP0

СТАТУС BSF, RP1

; Нагрузка адрес слова в регистры

MOVLW ADRSH; Считать старший байт адреса

MOVW EEADRH; Загрузить старший байт адреса

MOVLW ADRSL; Считать младший байт адреса

MOVW EEADR; Загрузить младший байт адреса

; Выбирать банк 3

СТАТУС BSF, RP0; RP1 уже установлен

BSF EECON1, EEPGD; Установить программную память в качестве цели

BSF EECON1, RD; Инициировать операция чтения из памяти

; Включите эти две инструкции, поскольку они будут прочитаны, но не будут выполнены

; По сути, убийство времени предложение.

NOP

NOP

; Читать данные из SFR

; Выключатель банк (2) для доступа к регистрам EEDATA и EEDATH

СТАТУС BCF, RP0

MOVF EEDATA, Вт; Получить младший байт данных

MOVW DATAL; Сохранить младший байт

MOVF EEDATH, W; Получить старший байт данных

MOVW DATAH; Сохранить старший байт

; Получить информацию о банке

SWAPF TEMP, Вт; Получить регистр состояния

MOVW STATUS; Сохранить регистр состояния

ВОЗВРАТ

Операция записи в память программ

PIC16F87X позволяет одну ячейку памяти программы (слово) быть запрограммированным, без необходимости его стирать.Каждая ячейка памяти программы (14 битовое слово) записывается как два байта данных - 14 бит, если быть точным. это рекомендуется отключать прерывания на этапе фактического программирования. Программирование каждого местоположения (с помощью кода пользователя) требует очень специфического последовательность инструкций, которые необходимо выполнить. Таким образом, немыслимо, чтобы кодовое слово может быть случайно запрограммировано. Последовательность программирования ячейки памяти программы следующая:

  • Выбрать регистрационный банк 2 для доступа к EEADR и SFR
  • EEADRH
  • Передача Старшие и младшие байты адреса EEADRH (5 младших битов представляют 5 MSBits 13-битного адреса) и EEADR соответственно
  • Передача Старший (6 LSBit, представляющий 6 MSBit 14-битных данных) и младшие байты данных слов в EEDATH и EEDATA соответственно
  • Переключатель в банк 3 для доступа к EECON1 SFR
  • комплект Бит EEPGD для выбора памяти программ
  • Набор WREN бит для разрешения записи в память программы (программирование)
  • Подождите для двух тактов
  • Отключить прерывания
  • Написать контрольный код 55h согласно EECON2 SFR
  • Написать контрольный код AAh согласно EECON2 SFR
  • комплект Бит WR операции программирования
  • Do ничего для следующих двух циклов
  • Включить прерывания
  • Сброс WREN бит
  • Переключатель в банк 3 для доступа к EEDATA и EEDATH SFR
  • Получить данные из EEDATA и EEDATH
  • Проверить данные и при необходимости перепрограммируйте.

Программное обеспечение: Программа Flash Program Память

; Эта подпрограмма запрограммирует 14 бит данных в программу. объем памяти.

; Он сверяет запрограммированные данные с исходными данные.

; Если программирование прошло успешно, бит B7 ERRCOUNT будет быть установлен. Указано количество попыток; по B1 и B0 из ERRCOUNT

; баран Регистры

; ----------------

; Предполагается, что адрес байты и байты данных настроены правильно.

ADRSL EQU 70h; Младший байт адреса EE

ADRSH EQU 71h; Старший байт адреса EE

DATAL EQU 72h; Младший байт данных

DATAH EQU 73h; Старший байт данных

ERRCOUNT EQU 74h; Счетчик ошибок

; Информация о банке

СТАТУС СВОПФ, Вт; Получить регистр состояния

; Не влияет на флаги

MOVW TEMP; Сохранить регистр состояния

ОШИБКА CLRF

СНОВА

; Выбирать банк 2

СТАТУС BCF, RP0

СТАТУС BSF, RP1

; Нагрузка адрес слова в регистры

MOVLW ADRSH; Считать старший байт адреса

MOVW EEADRH; Загрузить старший байт адреса

MOVLW ADRSL; Считать младший байт адреса

MOVW EEADR; Загрузить младший байт адреса

; Выбирать банк 3

СТАТУС BSF, RP0; RP1 уже установлен

BSF EECON1, EEPGD; Установить программную память в качестве цели

BSF EECON1, WREN; Разрешить операцию записи в память

BCF INTCON, GIE; Отключить все прерывания

; Напишите управляющие байты

MOVLW 55h

MOVW EECON2

MOVLW AAh

MOVW EECON2

; Включите эти две инструкции, поскольку они будут прочитаны, но не будут выполнены

; По сути, предложение убивает время.

NOP

NOP

BSF INTCON, GIE; Разрешить прерывания

; Читать данные из SFR

; Выключатель банк (2) для доступа к регистрам EEDATA и EEDATH

СТАТУС BCF, RP0

MOVF EEDATA, Вт; Получить младший байт данных

SUBWF DATAL; Сравните запрограммированные данные

СТАТУС BTFSC, Z; Если оба одинаковые, проверьте старший байт

GOTO ERROR

MOVF EEDATH, W; Получить старший байт данных

SUBWF DATAH; Сравните запрограммированные данные

СТАТУС BTFSS, Z; Если оба одинаковые

GOTO ERROR; Оба не одно и то же.

BSF ERRCOUNT, 7; Установить бит B7 для обозначения успеха в программировании

; Получить информацию о банке

SWAPF TEMP, Вт; Получить регистр состояния

MOVW STATUS; Сохранить регистр состояния

ВОЗВРАТ

ОШИБКА

INCF ERRCOUNT; Счетчик ошибок приращения

MOVLW 03H

SUBWF ERRCOUNT; Счетчик ошибок = 3?

СТАТУС BTFSS, Z

ПЕРЕЙТИ СНОВА; Попробуйте запрограммировать еще раз

; Не было сделано трех попыток и байт еще не запрограммирован правильно

; Выход после получения банка инфо

SWAPF TEMP, Вт; Получить регистр состояния

MOVW STATUS; Сохранить регистр состояния

ВОЗВРАТ

Щелкните здесь, чтобы увидеть принципиальную схему модуля Flash

Флэш-модуль

обеспечивает компактную цель, а также база для разработки 28-контактных микроконтроллеров PIC16F873 и PIC16F876.Все внешние интерфейсные линии, включая источник питания, RS-232 и микроконтроллер Ввод / вывод подключается к двойному линейному разъему на одной стороне платы.

Гибкость разъема ввода / вывода делает этот модуль весьма привлекательным. универсальный. Для очень простых приложений разъем можно не использовать и провода припаяны непосредственно к плате ПК. Но в целом разъем обеспечивает большую гибкость. У пользователя есть выбор двух типов разъемов: разъем с прямым углом и с прямым контактом разъем.Угловой соединитель полезен для вертикальной установки в целевом приложении. Прямой штифт разъем удобен для горизонтального монтажа модуля либо сверху, либо нижняя часть другой интерфейсной платы. Это также полезно в ситуациях, когда модуль устанавливается на плоской поверхности панели и подключается к интерфейсной цепи через ленточный кабель.

Связь RS-232

Для подавляющего большинства приложений микроконтроллеров требуется Последовательная связь какая-то.Преобразователь напряжения RS-232 IC U2 (MAX232 или аналогичный) обеспечивает интерфейс RS-232. Всего три линии интерфейса RX, Используются Tx и Gnd. Если по какой-либо причине, модуль будет использоваться в автономном приложении, без RS-232 связи, эти две линии ввода / вывода могут использоваться для внешнего интерфейса. В этом В этом случае установка микросхемы U2 на плату не требуется.

В дополнение к основной интерфейсный разъем.Он дублирует три интерфейсных сигнала Rx, Tx, и Gnd.

Блок питания

Микроконтроллер

требует регулируемого источника постоянного тока 5 В для правильная работа. На плате имеется регулятор на 5 вольт (U2). Это требует нерегулируемое питание постоянного тока в диапазоне 8-12 вольт. Нерегулируемый постоянный ток применяется через два последних контакта основного интерфейсного разъема. Регулируемый 5 Выход вольт также доступен на интерфейсном разъеме для управления маломощным внешняя цепь.Диод D1 защищает от случайного переключения мощности поставка. Если регулируемое напряжение 5 В В таком случае цепь регулятора на 5 В можно не учитывать.

Тактовый генератор

микроконтроллеров PIC16F87X доступны для работы на максимальные частоты от 4 МГц до 20 МГц. Популярная тактовая частота 4 МГц, что обеспечивает временную развертку даже в 1 микросекунду; удобно в приложения времени. Модуль имеет возможность использования керамического резонатора или кристалла (с двумя конденсаторы).Резонатор предлагает более низкую общую стоимость, но за счет уменьшения в точности синхронизации. Для точного времени, необходимого при высоких скоростях передачи, он рекомендуется использовать кристалл.

SPI EEPROM

Несмотря на то, что микроконтроллер флэш-памяти содержит перепрограммируемый код и данные EEPROM, внешний SPI-EEPROM может быть установлен на Модуль Flash для хранения данных пользователя. Он связан с PIC16F87X микроконтроллер через стандартные контакты интерфейса SPI.Интересно, что интерфейс не должен использовать аппаратные средства SPI микроконтроллера и может по-прежнему функционировать, используя манипуляции с выводами ввода / вывода (программный SPI). Защита от записи и функции удержания EEPROM отключаются путем привязки их к Vcc. EEPROM - это выбирается через вывод порта PA5. Любое устройство SPI, внешнее по отношению к Flash-модулю, может по-прежнему использовать встроенный интерфейс SPI, пока встроенная EEPROM не выбран (установите PA5 на высокий). Любой SPI-EEPROM (8-контактный Dip) желаемой емкости может быть размещен.

В следующем выпуске пойдет речь о флеш-модуле, который может программироваться, стираться и перепрограммироваться через последовательный порт и проверяться пользователем заявление. Попрощайтесь с программистами PIC.

Для получения дополнительной информации по Flash-модулю: напишите нам.

Peripheral_Interface_Controller_based_the_Display_Unit_of_Remote_Display_System

Peripheral_Interface_Controller_based_the_Display_Unit_of_Remote_Display_System

Международный журнал научных и инженерных исследований Том 2, выпуск 4, апрель-2011 на основе 1

ISSN 2229-5518

Peripheral Controller Interface

Блок дисплея удаленного дисплея системы

мая Тхве Оо

Аннотация. В этой статье рассказывается о том, как построить контроллер периферийного интерфейса (PIC) на основе устройства отображения удаленной системы отображения.Система удаленного отображения может использоваться для отображения номера жетона, который должен знать люди. Он также предназначен для использования в клиниках, больницах, банках и т. Д. В этом исследовании система удаленного отображения на основе контроллера периферийного интерфейса используется для отображения числа и символа. Система удаленного отображения состоит из двух частей: блока отображения и блока консоли. Блок отображения системы удаленного отображения содержит контроллер дисплея, три семисегментных светодиода (светодиода), матрицу диодов, светодиоды отображения категорий и разъем DSUB9.Контроллер дисплея управляется микроконтроллером PIC16F873. Он управляет отображением номеров токенов. Затем он может управлять диодной матрицей для отображения трех типов символов, таких как A, B и C. Три числа семисегментных светодиодов будут отображать номер токена от одного до 999. Диодная матрица помогает отображать светодиоды отображения категорий. Светодиоды отображения категорий будут отображать символы одного типа. В ходе исследовательской работы на светодиодах отображения категорий могут отображаться только символы трех видов.Для блока дисплея разъем DSUB9 применяет данные, которые поступают с блока консоли удаленной системы отображения. В этой исследовательской работе дисплей работает как приемник, консольный блок работает как передатчик в системе удаленного дисплея. В этом документе объясняется конструкция, конструкция, тестирование и результат удаленной системы отображения.

Ключевые слова: диодная матрица, дисплей, светоизлучающий диод, контроллер периферийного интерфейса, удаленная система отображения.

—————————— • ———————————

Система отображения HIS очень полезна во многих приложениях.Для рекламы, для выражения числа может использоваться система удаленного отображения. Потому что номер токена можно выразить с помощью системы отображения. Номер токена можно использовать в банках, финансовых учреждениях, клиниках и т. Д. Блоком отображения удаленной системы отображения можно управлять с помощью микроконтроллера PIC16F873. Номер жетона отображается на больших семисегментных светодиодах (СИД). Светодиодный индикатор категории может отображать три символа.Это исследование состоит из двух модулей; один для построения аппаратной схемы (включая схему сопряжения и схему светодиодной матрицы), а другой - о том, как управлять процессом с помощью контроллера периферийного интерфейса (PIC). В данном исследовании программой управления оборудованием является язык программирования Ассемблер. Компоненты схемы состоят из резисторов, транзисторов, интегральных схем (ИС), светодиодов и других аксессуаров. Система удаленного отображения состоит из двух частей. Это консоль и дисплей.Блок дисплея используется для отображения чисел. Этот номер нужен, чтобы знать людей. Эти числа могут быть символом использования многих общественных мест. Например, номер жетона можно использовать в банках и финансовых учреждениях, звонить пациентам по одному в клиниках, звонить кандидатам на собеседовании и т. Д. Есть много способов отобразить номер
.

————————————————

• Мисс Мэй Тве Оо в настоящее время учится в докторантуре школы компьютерных наук и инженерии Университета Бейхан, Китай, PH- + 8613720055716.Электронная почта: [email protected]

2.1 Отображение номера токена на ПК

Все большее число банков компьютеризует свои операции. Для фактического использования в полевых условиях необходимо заменить дисплей с целевыми светодиодными матрицами. Никакого другого оборудования, кроме дисплеев и буферов, не требуется. Следует отметить отсутствие какой-либо микросхемы семисегментного декодера, такой как 7447. Потому что все декодирование осуществляется полностью программным обеспечением. Мультиплексирование с временным разделением - еще одна важная концепция.Четыре номера семисегментных дисплеев имеют общую шину данных. ПК помещает первую цифру на шину данных и активирует только первый семисегментный блок. После задержки в одну миллисекунду цифра заменяется следующей цифрой, но на этот раз включается только второй дисплей. После отображения всех четырех цифр таким образом первый блок снова включается. Цикл повторяется снова и снова. Еще одна функция, предоставляемая программным обеспечением, - это возможность подавления начальных нулей.Номер пять отображается как 5, а не как 0005. Обычно это делается аппаратным обеспечением с помощью так называемого средства «гашения пульсации» микросхем декодера. Наконец, компьютер издает музыкальный звук при изменении отображаемого числа, чтобы привлечь внимание. Рекомендуется стабилизированный источник питания
на 5 В [1].

2.2 Отображение номера токена цифрового банка

В настоящее время системы отображения номера электронного банковского токена довольно популярны в банках и финансовых учреждениях.Их могут использовать врачи общей практики в своих клиниках, чтобы звонить пациентам по одному, а также проводить собеседования с комитетами для вызова кандидатов. В большинстве приложений

IJSER © 2011 http://www.ijser.org

International Journal of Scientific & Engineering Research Том 2, выпуск 4, апрель 2011 г. 2

ISSN 2229-5518

- это два набора дисплеи: маленький хранится внутри кабины человека, управляющего им, а большой - снаружи для посетителей.Кассир имеет клавиатуру для ввода номеров жетонов. Плазменные устройства больших размеров и TTL-микросхемы используются при построении дисплея токенов банка [2]. В системе отображения номера жетона цифрового банка схема устройства отображения используется для управления как светодиодом с общим катодом, так и плазменными дисплеями с общим анодом. Хорошо регулируемая транзисторная схема обеспечивает питание TTL-микросхем, а также плазменных дисплеев высокого напряжения.

2.3 Улучшение дисплейного блока

Цифровая дисплейная часть дисплейного блока сделана так, чтобы подсвечиваться одной цифрой для подавления электрического тока.Время зажигания одной цифры становится 1/3, и свет гаснет. Когда происходит слабый электрический ток, на дисплее появляются цветные пятна. Данные дисплея хранятся регистром защелки (74LS 273). 74LS273, который является триггером D-типа (D-FF), используется в качестве регистра-защелки для удержания дисплея светодиода. Восемь D-FF размещены в одной части ИС. Один 74LS273 используется для управления одним семисегментным светодиодом. Он вводит данные на клемму D для удержания. Сначала данные для сотого числа выводятся в RB6 из RB0 и вводятся во все регистры-защелки.Затем RA0 становится H, и только CK регистра защелки (IC 5) для 100-го уровня становится H-уровнем. При этом на индикаторе LED1 отображается сотая цифра.

3.1 Работа приемника в блоке отображения

Блок отображения удаленной системы отображения основан на PIC16F873. И он использует асинхронную связь PIC16F873. В асинхронной связи есть две операции: операция передатчика и операция приемника. На рис. 1 показана принципиальная схема работы приемника PIC16F873 в блоке дисплея.

Рис.1. Принципиальная схема работы приемника блока индикации.

Рис. 2. Приемная временная диаграмма работы приемника блока индикации.

3.2 Программная блок-схема и обработка блока дисплея

Следующая блок-схема показывает схему обработки программного обеспечения блока дисплея системы удаленного дисплея.


Рис. 3. Блок-схема программного обеспечения блока дисплея.
В определении метки назначаются часто используемые команды.Область данных автоматически назначается с 20 часов директивой CBLOCK. ENDC используется для завершения присвоения. Метка «data-h» используется для области, в которой хранятся сотые данные. Точно так же метка «data-t» назначается для области, в которой хранятся 10-е данные, «data-u» - для области, в которой хранятся первые данные. И 'cdisp-p' используется для

IJSER © 2011 http://www.ijser.org

International Journal of Scientific & Engineering Research Volume 2, Issue 4, April-2011 3

ISSN 2229-5518

область, в которой хранится позиция отображения категории.
«ddisp-p» предназначен для сохранения позиции сканирования
семисегментного светодиодного дисплея. «Rcv-p» - это область, в которой подсчитываются полученные данные.
«r-категория» - это рабочая область для изменения полученных данных категории. При включении питания PIC инструкция выполняется с нулевого адреса памяти программ. При обработке прерывания обработка начинается для адреса 4. И затем он выполняет каждый скачок обработки с помощью инструкции GOTO. Обработка инициализации выполняется после включения.В этой обработке все порты PORTA устанавливаются в режим вывода. И все порты PORTB также установлены в выходной режим и используются для управления сегментом семисегментного светодиода. RC0, RC1, RC2, RC3 устанавливаются в режим вывода для сканирования отображения категории. Контакт RC7 PIC16F873 является единственным режимом ввода и для приема данных, передаваемых с консоли.
Для USART большинство регистров настройки USART находятся в bank1. Поэтому следует внимательно относиться к обозначению банка.Обозначение асинхронной последовательной связи со скоростью передачи 9600 бит / с сделано. Это прерывание приема происходит, когда данные принимаются в приемный буфер. Когда инициализация USART заканчивается, немедленно выполняется операция приема. Когда начинается инициализация прерывания, устанавливаются бит разрешения глобального прерывания (GIE), бит разрешения периферийного прерывания (PEIE) и бит флага прерывания переполнения таймера 0 (T0IF). Чтобы использовать прерывание передачи, необходимо установить PEIE.Обработка инициализации завершена. Затем он ждет только прерывания.
В качестве основной обработки повторяется выполнение того же адреса
. В подпрограмме процесса прерывания используются два типа прерываний
. Это прерывание на
, тайм-аут TMR0 и прерывание при получении данных. Прерывание TMR0 идентифицируется битом TOIF регистра INTCON, а прерывание приема данных идентифицируется битом RCIF регистра PIR1.. Инструкция RETFIE выполняется в конце обработки прерывания. Это становится возможным условием прерывания.

3.3 Программная блок-схема и обработка управления светодиодами

Прерывание происходит каждые две миллисекунды с TMR0. Сначала необходимо сбросить флаг прерывания TOIF. Если бит TOIF не сброшен, прерывание происходит без ожидания желаемого времени. Следовательно, необходима установка значения таймера TMR0. Что касается управления отображением категории, одна строка создается каждый раз, когда она прерывается в течение двух миллисекунд.Спецификация строки выполняется portC. Что касается управления семисегментным светодиодом, то семисегментный индикатор отображает трехзначное число. Каждые две миллисекунды для этих светодиодов контролируется одна цифра. Цифровая спецификация семи сегментов выполняется RA0, RA1 и RA2. RA3, RA4, RA5 в PIC16F873 используются для спецификации дисплея категории
. Для отображения семисегментных светодиодов RA0, RA1, RA2 необходимо переписать при сохранении этого значения.
На следующей блок-схеме показан процесс управления светодиодами
.


Рис. 4. Программная блок-схема подпрограммы процесса управления светодиодами.
Следовательно, он делает данные «0», за исключением категории, указанной оператором AND. Подавая иск против AND, результат становится «1» только тогда, когда оба данных равны «1». Если бит, фиксирующий значение в инструкции, равен «1», содержимое не изменяется. Когда бит, фиксирующий значение, равен «0», всегда становится «0». Данные спецификации цифр семисегментного светодиода установлены на RA0-2.Теперь используется расчет OR. Когда любое из данных равно «1», результат становится «1». Если содержимое бита, значение фиксации которого в инструкции равно «0», содержимое не изменяется. Когда бит, который является фиксирующим значением, равен «1», содержимое всегда становится «1». Когда определение цифр закончено, будут отображаться данные сегмента. Отображаемые данные сегмента записываются в порт B. Он считывает содержимое области полученных данных каждой цифры и записывает в порт B.Это делает обработку записи в порт B общей, а шаг обработки сокращается.

3.4 Блок-схема программного обеспечения для процесса получения данных

Следующая блок-схема представляет собой блок-схему программного обеспечения для sub-

IJSER © 2011 http://www.ijser.org

International Journal of Scientific & Engineering Research Volume 2, Issue 4, Апрель-2011 4

ISSN 2229-5518


процедура приема данных.

(a)

A

NO Start?

ДА НЕТ

Стартовые данные?

ДА Чтение стартовых данных

Прием позиции +1

B

НЕТ Категория?

ДА Перевести на

отображать данные

УСТАНОВИТЬ данные категории

PORTA = 00CCCXXX

Позиция приема +1

полученные данные очищаются. Когда происходит перебег, он останавливает приемник, и его нужно запустить еще раз. Этот процесс необходимо выполнять всегда, когда происходит перерасход.
После этого удаляются все отображаемые данные, чтобы обнаружить, что в процессе произошел перегруз. После проверки ошибки переполнения проверяется ошибка кадра. Кадр идет от стартового до стопового бита. Когда стоповый бит не обнаруживается после обнаружения стартового бита, возникает ошибка кадра. Если получен нормальный кадр, ошибка исчезнет. Когда возникает ошибка кадра, очищается только дисплей. Если возникает ошибка кадра, устанавливается бит ошибки кадрирования (FERR) в регистре состояния приема и управления (RCSTA).Затем очищаются данные категории, 100-е, 10-е и 1-е данные. Полученная позиция почти очищена. Прерывание закончено.
После проверки ошибки кадра запускается процесс
. Если ошибка кадра не возникает, может произойти запуск процесса
. Категория, 100-я, 10-я и 1-я
данные последовательно отправляются с консоли на устройство воспроизведения dis-
. Информация, показывающая тип данных, не включается во все данные.Тип данных определяется для получения. Консольный блок сначала отправляет стартовые данные, а непрерывно передает данные категории, 100-е, 10-е и 1-е в порядке. В процессе приема это

Очистить позицию приема

NO

100-й?

ДА Перевести на

отображать данные

Записать сотые данные

DATA_H

NO

10-е?

ДА Перевести на

отображать данные

Записать 10-е данные

НЕТ

1-е? C

ДА Перевести в

отображаемые данные

считываются и устанавливается полученная позиция.Затем полученная позиция увеличивается, и прерывание завершается. Когда данные, за исключением начальных данных, поступают в позицию приема начальных данных, данные отменяются и увеличение позиции приема не выполняется.
Данные категории получены за начальными данными. После проверки начальных данных будут проверены данные категории. Данные категории, которые отправляются с консоли, отправляются в форме для использования в консоли. Бит

Позиция приема +1

Конечное прерывание

DATA_T

Позиция приема +1

(b)

Запись первых данных

DATA_U Очистить позицию

Конфигурация

и битовое содержимое данных, отправленных из блок консоли к блоку дисплея отличается.В полученных данных четвертый-шестой бит - это данные, которые показывают категорию. Шестой бит указывает на «А», пятый бит указывает на «В», а четвертый бит указывает на «С». «0» указывает на загорание, а «1» - на погасание.
Если данные категории получены, они проверяются как «A».
Рис. 5. Программная блок-схема для подпрограммы приема данных
процесс: (a) для проверки ошибки переполнения и ошибки кадра -
ror и (b) для проверка категории и светодиода.
Процесс приема данных обеспечивает получение данных от консольного устройства.Этот процесс запускается прерыванием приема данных битом флага прерывания приема (RCIF) регистра PIR1. Он отличается от другого бита отображения прерывания, и сбрасывать бит RCIF с помощью программного обеспечения не требуется. Он сбрасывается аппаратным обеспечением при чтении данных, полученных в RCREG. Когда данные получены, необходимо проверить ошибку переполнения. Если происходит перегрузка, необходимо сбросить бит разрешения непрерывного приема (CREN) в регистре состояния и управления приема (RCSTA).Затем устанавливается бит CREN и сначала
. Что касается блока отображения, бит три-пять указывает категорию. Бит три соответствует «A», четвертый бит соответствует «B», а пятый бит соответствует «C». На дисплее «0» означает погасание, а «1» - загорание. Разница связана с различием аппаратного обеспечения каждого устройства. В процессе приема числовых данных 100-е данные, 10-е данные и 1-е данные принимаются в порядке, следующем за данными категории.Форма блока консоли и форма блока дисплея различаются по поводу этих данных. Положение бита такое же, а значение противоположно «0» и «1». В блоке консоли горит «0», а «1» гаснет. На блоке индикации «0» гаснет, а «1» горит.
Исключение ИЛИ используется для перестановки «0» и «1». Согласно Exclusive OR, «0» выводится, если это значение

IJSER © 2011 http://www.ijser.org

International Journal of Scientific & Engineering Research Volume 2, Issue 4, April-2011 5

ISSN 2229-5518

с теми же данными и «1» выводится, если значение отличается.Результат может быть обратным при вычислении в Исключении ИЛИ с «1». Когда полученные данные - «01001111», результатом выполнения ИЛИ исключения с «11111111» будет «10110000». Это значение, которое меняет местами «0» и «1» полученных данных. Переведенное значение записывается в область хранения, которая соответствует

PIC16F873. На рис.6 показана принципиальная схема блока отображения системы удаленного отображения. В части конструкции блока отображения системы удаленного отображения следующие схемы включают: схему управления семисегментными светодиодами, схему управления отображением категорий. , цепь управления RS232C, цепь генератора PIC и цепь питания.
каждой цифры.
При остановке приема данных при условии, что

C5

24

CC

IC4

78L05 C6

0 1

1 2

R12

R13

1 TR

1 TR

R34 -R46

+ 12V

фрейм будет получен, это нормально. Приемник

18 G1

19

2 3 2

IC2 3 4 R

G2 74H C15 4 5 6

14

R15

TR3

R47 -R59

возможность сделать обработку ошибка в

12 GND

6 7

7 8

8 9

9 10

R2

TR4

вид данных.При получении сотых данных связь прекратилась. И затем, когда получает начальные данные от
, консольный блок принимает начальные данные как 10-е данные
и данные категории как 1-е данные. Поскольку он становится

ABCD 10 11

23 22 2 1 20

R16

R R17

3

TR6

R18

R19

4

TR8

09 TR5

TR7

TR9

R60 -R72

R73 -R83

R84 -R92

Условие ожидания начальных данных при получении 1-х данных,
100-е, 10-е и 1-е данные отменяются.Итак, нормальный прием
выполнен.

R5

TR10

R22

R23

6

TR12

R24

R25

7

TR14

R26

9000 9000 9000 TR7 9000 TR7 9000 TR7 9000 TR70009 TR70009 TR7000

R101 -R109

СИСТЕМЫ ДИСТАНЦИОННОГО ДИСПЛЕЯ

Целью проекта является разработка блока отображения системы удаленного отображения. Блок дисплея управляется PIC16F873.На блоке отображения отображается число и символ, которые передаются с блока консоли удаленной системы отображения. Блок отображения системы удаленного отображения состоит из трех цифр из семи -

11 12 1 3 14

RC1 RC3

RC0 RC2 5

RA3

6

20 RA4

R160

R157

R157

R

TR23

TR24

R27

TR16

R28

R29

9

TR18

R30

R31

10

9000

000

TR20 9000 9000 9000

TR20 9000 15

TR17

TR19

TR21

R110 -R119

R120 -R132

R133 -R146

R147 -R156

AB

Сегмент C

C,

5 диодный диод 716 C

Сегмент

5 и декодер с четырех по шестнадцать.Интерфейс RS232

используется для соединения между дисплеем и

C1

4 2 16 1

DD

1 MCLR

RA5 7

RA0 2

3

R161

R161

R161

R159

R164

R165

TR27

R166

TR26

R167

TR29

TR25

R168

TR28

TR30

TR30

TR30

TR28

TR28

TR30

TR28 .PIC16F873 управляет тремя числами семисегментных светодиодов и диода

C2 5 IC3 3 C3

ADM232AAN 18

8 9

6 15

RX C4

RA1

RX RA2

R163

матрица.
Система удаленного отображения состоит из двух частей: Дисплей

G ND

PIC1 6F873

9 OSC1 RB6 27

R170

a g a

g a g

Unit и Console.Этот проект предназначен для разработки дисплейного блока системы удаленного отображения. Используется PIC16F873

X1

4MHz

10 O SC2

RB5 26

RB4 25

RB3 24

RB2 23

RB1 22

21

000 R171

000

000 R171

R175

R176

TR32 TR33 TR34 TR35 TR36 TR37 TR38

для управления как дисплеем, так и консолью удаленной дисплейной системы
.ПОРТА PIC16F873 используется
для режима вывода для отображения числа и алфавита. Все
PORTB предназначены для отображения сегментов семисегментных светодиодов
. + 5В используется для питания PIC, а + 12В -
для семисегментных светодиодов и диодной матрицы. Диодная матрица
используется для отображения трех типов символов, таких как A, B и C.

4.2 Конструкция блока дисплея удаленного дисплея

Система

Блок дисплея системы удаленного дисплея управляется PIC16F873.Есть схема выбора светодиода и схема выбора сегмента для отображения чисел с тремя цифрами семисегментных светодиодов. И есть схема выбора строки и схема выбора светодиода для отображения трех типов символов, таких как A, B и C. Интерфейс RS232 используется в качестве соединителя между дисплеем и консолью. Схема синхронизации для управления

В SS RB0

Рис.6. Предлагаемая принципиальная схема блока отображения системы удаленного отображения.

4.2.1 Цепь управления семисегментными светодиодами

В блоке индикации удаленной системы индикации есть три семисегментных светодиода. Это ограничение количества портов ввода / вывода с PIC и снижение потребления электроэнергии. На рисунке 4.2 изображена только схема, отображающая сотые данные. Схема для 10-го и
1-го тоже аналогична. TR27 и TR26 - это схема, по которой
выбирает управляемый светодиод. Напряжение возбуждения светодиода большого размера
, которое будет использоваться на этот раз, составляет 12 В.Напряжение возбуждения для одного светодиода составляет около 2 В. Что касается одного сегмента, то пять светодиодов включены последовательно. Таким образом, напряжение возбуждения одного сегмента становится от 10 В до 14 В. На этот раз использовался светодиод общего типа с анодом.

IJSER © 2011 http://www.ijser.org

International Journal of Scientific & Engineering Research Volume 2, Issue 4, April-2011 6

ISSN 2229-5518


al, который применяется + напряжение, общее для всех сегментов.Поскольку схема выбора светодиода помещена на стороне + напряжения, для управляющего транзистора используется тип PNP. При использовании в этой схеме транзистора типа NPN эмиттер транзистора соединен с анодным выводом светодиода. В этом случае затрудняется контроль электрического тока для базы.
TR26
TR27
TR32
Рис. 7. Принципиальная схема цепи управления 7-сегментным светодиодом.
TR27 используется для вывода PIC. Это связано с тем, что напряжение, подаваемое на порт ввода / вывода PIC, ограничено до +5 В.При включении TR26 базовое напряжение TR26 становится меньше +12 В (около 11 В). При этом через основание протекает электрический ток. При выключении TR26 он делает базовое напряжение +12 В. Итак, на базу TR26 подано напряжение около +12 В. База TR26 не может напрямую управляться PIC. При установке RA0 для PIC 0V (0 условий) TR27 отключается. Следовательно, основной электрический ток TR26 не течет, и TR26 тоже отключается. То есть LED1 не загорается. При выполнении RA0 PIC + 5V (1 условие) основной электрический ток протекает через TR27, и TR27 становится включенным.Когда TR27 переходит в состояние ON, электрический ток проходит через базу TR26, и TR26 переходит в состояние ON. Таким образом, на анод светодиода подается напряжение +12 В, и светодиод становится условием, при котором можно загореться.
Схема выбора сегмента приводит в действие светящийся сегмент. Между светодиодом и заземлением проложена цепь выбора сегмента. Таким образом, транзистор для управления может напрямую управляться PIC. На левом рисунке нарисована схема для сегмента «а».Аналогичная схема управления другим сегментом. При переводе RB6 PIC в 0 В (0 состояний) TR32 отключается. Следовательно, электрический ток не проходит через сегмент «а» светодиода, и сегмент «а» не загорается. Базовый электрический ток протекает через базу TR32, когда RB6 PIC составляет + 5В (1 условие). При этом электрический ток протекает через сегмент «а» и загорается сегмент «а». В этом исследовании используется семисегментный светодиод с общим катодом. Таким образом, в схеме выбора светодиода использовался только один транзистор NPN на каждый семисегментный светодиод.Для схемы выбора сегмента используются один PNP-транзистор и один NPN-транзистор
. В схеме выбора светодиода этот транзистор напрямую управляется портом A PIC. Если порт A PIC равен 0 В (состояние 0), транзистор будет выключен и светодиод не загорится. Когда порт A PIC составляет 5 В (1 условие), электрический ток базы протекает через транзистор. И электрический ток через светодиод и светодиод загорится.
В схеме выбора сегмента NPN-транзистор отключается, когда порт B PIC составляет 0 В (состояние 0).Таким образом, базовый электрический ток транзистора PNP не течет, и транзистор PNP выключится. Электрический ток не проходит через сегмент семисегментного светодиода, и сегмент не загорается. Если порт B PIC составляет 5 В (1 условие), транзистор NPN будет включен. Электрический ток протекает через базу транзистора PNP, и этот транзистор будет исправен. И электрический ток течет через сегменты, и сегмент загорается. Транзистор PNP не напрямую связан с ПОС.

4.2.2 Схема управления отображением категории


В блоке отображения категория отображается с помощью диодной матрицы. На рис. 8 показана схема управления отображением категории. Он состоит из схемы выбора строки и схемы выбора светодиода. Схема, подобная семи сегментам, используется в схеме возбуждения для отображения категории. Символ категории - это один символ, но отображается светодиодной матрицей. Светодиодная матрица состоит из 11 строк в направлении стороны (Ряд) и состоит из 13 строк в продольном направлении (Столбец).Контроль посадки производится в каждом ряду. Схема выбора строки управляет пропусканием электрического тока к светодиоду строки, указанной PIC. Поскольку рядов 11, прямое управление PIC затруднено. Это ограничение количества портов ввода / вывода. Управляющий сигнал преобразуется из четырехбитового сигнала PIC в 11 сигналов декодером IC. Работа схемы выбора строки аналогична случаю семи сегментов.
TR1
TR2
TR23
TR24
TR25
Рис.8. Принципиальная схема управления отображением категорий
Circuit.
Схема выбора светодиода - это схема, которая управляет горящим светодиодом в выбранной строке. На этот раз в схеме отображаются символы трех типов. Тип персонажа контролируется RA3, RA4 и RA5 PIC. Светодиод, который горит

IJSER © 2011 http://www.ijser.org

International Journal of Scientific & Engineering Research Volume 2, Issue 4, April-2011 7

ISSN 2229-5518

каждый символ другой.При просмотре со светодиода один из них загорается для всех персонажей, один загорается только для определенного персонажа и так далее. Это контролирует диод схемы выбора светодиода. В случае схемы рисунка слева показан корпус светодиода, который загорается всеми персонажами. Когда светодиод загорается только тогда, когда TR1 включен, он делает диод только тем, который соединен с коллектором TR23. Он определяет характер отображения в светодиодной матрице и определяет комбинацию этих диодов для каждого светодиода.

4.2.3. Цепь управления RS232C

Интерфейс RS232C используется для передачи информации между консолью и дисплеем. Этот интерфейс используется для взаимодействия с модемом. Примерно ± 9 В используется для напряжения сигнала на соединительном кабеле с консолью, и передача на большие расстояния сравнительно возможна. Стандартно можно использовать кабель длиной около 15 м. Собственно, можно использовать и на большее расстояние. Это зависит от состояния кабеля.Сигнал +5 В от PIC16F873 может передаваться напрямую без использования интерфейса RS232C на небольшом расстоянии. На этот раз эта ИС используется с целью попытаться использовать устройство RS232C и обеспечить дистанцию. ADM232AAN имеет преобразователь постоянного тока в постоянный, который обеспечивает напряжение ± 10 В при питании +5 В. Внешняя схема очень проста.

Рис. 9. Принципиальная схема цепи управления RS232C.

4.2.4 Схема генератора PIC

Для обеспечения работы PIC необходим тактовый генератор.Колебания были внутри PIC, поэтому вибратор помещается только снаружи. В качестве вибратора можно использовать кварцевый генератор из-за прецизионного колебания. Однако на этот раз в схеме используется керамический вибратор (резонатор), потому что он не требует прецизионных колебаний. Максимальная тактовая частота PIC16F873 составляет до
20 МГц. Однако на этот раз в оборудовании, поскольку оно не требует высокоскоростной работы, частота колебаний составляет 4 МГц. Скорость передачи рассчитывается как
4 МГц.Так что при использовании этого оборудования на тактовой частоте
, отличной от 4МГц, требуется пересмотр.

Рис. 10. Принципиальная схема тактовой схемы PIC

4.2.5 Цепь питания

Электропитание для управления дисплеем подается от консольного блока по кабелю. Источник постоянного тока +12 В формируется из переменного тока + 220В с помощью импульсной цепи питания. Напряжение питания от пульта составляет +12 В. Для светодиодной индикации можно использовать +12 В. Для питания PIC требуется + 5В.Для изменения напряжения с + 12В на + 5В используется трехконтактный стабилизатор. + 5В используется для PIC16F873 и IC декодера. Регулятор может использоваться как регулятор типа 100 мА.

Рис. 11. Принципиальная схема силовой цепи

4.3 Тестирование и результаты блока отображения системы удаленного отображения


Контроллер периферийного интерфейса, основанный на системе удаленного отображения, показан на рис. 12. Понижающий трансформатор используется для переключения с 220 В переменного тока на 12 В.Рис. 12 - это цифра до того, как источник питания отключен, и данные не отправляются с консоли на блок дисплея удаленной системы отображения.
Рис. 12. Система удаленного отображения на основе PIC.

IJSER © 2011 http://www.ijser.org

Международный журнал научных и инженерных исследований Том 2, выпуск 4, апрель 2011 г. 8

ISSN 2229-5518



Когда число 450 и символ A отправляется с консоли, данные, которые отправляются с консоли, показаны на рис.13.
Рис. 15. Проверка уровня принимаемого напряжения на блоке индикации.
Рис. 13. Тестирование приема данных как пультом, так и устройством отображения в системе удаленного отображения.
На рис. 14 показана часть дисплея системы удаленного дисплея.

Рис. 14. Блок индикации с процессом приема данных. Напряжение питания блока дисплея подается от блока консоли
системы удаленного дисплея. На рис. 15
показано тестирование уровня принимаемого напряжения на блоке индикации
.

Это исследование описывает дисплей системы дистанционного дисплея. Система удаленного отображения на основе контроллера периферийного интерфейса может использоваться для информирования людей. В этом проекте сконструирован дисплей, один из ближайших, наиболее универсальных и наиболее полезных светодиодных матриц, для просмотра буквенных и цифровых символов. В этом исследовании отображаются три вида символов и трехзначные числа. PIC16F873 управляет числами и символами.Блок отображения системы удаленного отображения на основе контроллера периферийного интерфейса разработан для использования с устройствами, которые можно легко купить на рынке, простыми в использовании и знакомыми с людьми, интересующимися областью электроники. Эта система предназначена для заглавных букв и цифр английского языка. Этот тезис применяется не только в качестве учебного пособия для новичков в изучении дизайна, программирования и разработки приложений, использующих PIC, но также применяется для отображения числа во многих областях, таких как клиники, банки и финансовые учреждения, проведение собеседований. комитеты по вызову кандидатов и т. д.
В качестве дальнейшего расширения в этом исследовании используется система удаленного отображения длиной 15 м между консолью и блоком отображения. Для увеличения расстояния можно использовать различные виды интерфейса RS232. На большой площади дисплея можно использовать самый большой из семисегментных светодиодов. К слову, разрешение дисплея плавное. Вместо светодиода в этом исследовании можно использовать ЖК-дисплей. В этом исследовании часть дисплея с цифрами в блоке дисплея заставлена ​​загораться одной цифрой для подавления электрического тока.Можно сделать так, чтобы одновременно подсвечивались цифры. Его можно использовать для хранения отображаемых данных регистром защелки (74LS273). Регистр-защелка помещается между контроллером периферийного интерфейса и схемой выбора сегмента. Система удаленного отображения может широко использоваться во многих областях, где необходимо предоставлять информацию пользователям или партнерам. Чтобы разработать технику и устройства отображения, люди должны

IJSER © 2011 http://www.ijser.org

International Journal of Scientific & Engineering Research Volume 2, Issue 4, April-2011 9

ISSN 2229- 5518

изучают эту технологию.Разработка этого проекта предполагала, что дисплей системы удаленного отображения будет использоваться в различных областях.

БЛАГОДАРНОСТЬ

Во-первых, автор хотела бы поблагодарить своих родителей за их наилучшие пожелания присоединиться к докторскому исследованию. Автор хотел бы выразить сердечную благодарность Доу Атар Мон за ее руководство и советы, До Кхин Сандар Тун за руководство в ее исследованиях и У Тун Тун Вин за предложения по разработке удаленного токена. система отображения.Автор выражает огромную благодарность всем, кто пожелает оказать поддержку в подготовке этой статьи и ее исследования.

ССЫЛКИ

[1] В.Раджарама и Мохан Ингл, «Электронный том проекта-16», публикация EFY Enterprise, 1995.

[2] Лаборатория приложений BEL, «Электронный том проекта-8», EFY Enter - Публикация приза, 1987.

[3] Иноуэ, С., «Система удаленного отображения», PIC Circuit Gallery, октябрь 2005 г. [4] «Технический паспорт PIC16F873, 28/40-контактный 8-битный CMOS FLASH Microcontrol -

леров. ”,

[5] «Многоканальные драйверы / приемники RS-232 с питанием от +5 В».

[6] «Технические данные декодера / демультиплексора 4–16 строк 74HC / HC154», сентябрь 2004 г.

[7] http: //www.Datasheet 4u.com

[8] Томас Л. Флойд, «Электронные устройства I, 4-е издание», Prentice Hall

International, Inc, 1996.

[9] Томас Л. Флойдм, «Электронные устройства II.4-е издание », Prentice Hall

International, Inc, 1996.

[10] Thomas E.Kissell,« Промышленная электроника », напечатано в Республике

Singapore, Prentrice-Hall International Editions.

[11] Томас Хэйс Пол Хоровиц, «Пособие для студентов по искусству электроники», напечатано в Великобритании в University Press, Кембридж.

[12] Нашельский, Л., Бойлестад, Р.Л., «Электронные устройства и схемы.

Теория. 8-е издание », США.A. Prentice Hall, Inc. 2002.

[13] Бойлстанд Р., «Электронные устройства и теория схем, пятое издание», напечатано Prentice-Hall International, Inc.

[14] http: // www. interq.jp.au.com

[15] http://www.piclist.com

[16] http: // ww w.st.com

[17] http://www.datasheetarchive.com

IJSER © 2011 http://www.ijser.org

Модуль упругости - markwtech

Аналоговый синтезатор

My Modulus - это комбинация другого оборудования, описанного на этих страницах, а также трех больших банков модулей аналогового синтезатора.Центральным элементом является клавиатура Paia с интерфейсом MIDI / Joystick, Chameleon и Paia Fatman. Три шкафа изготовлены из дубовой фанеры 3/4 дюйма с деревянными кромками спереди. Задняя часть из фанеры 1/4 ″ Луан. Каждый шкаф имеет размеры 40-1 / 4 дюйма в ширину, 8-1 / 2 дюйма в высоту и 5-1 / 2 дюйма в глубину снаружи. В каждом шкафу есть пространство на передней панели модуля, которое в общей сложности составляет 38-3 / 4 дюйма в ширину и 7 дюймов в высоту. Этого места достаточно, чтобы разместить четырнадцать моих модулей в каждом шкафу. Модули стандартизированы до размеров 7 дюймов в высоту и 2-3 / 4 дюйма в ширину.Таким образом, ручки располагаются на расстоянии 1-3 / 8 дюймов по горизонтали, а гнезда на 1/4 дюйма расположены на расстоянии 11/16 дюймов по горизонтали. Вертикальный интервал в целом составляет 1 дюйм. Это дает хорошую плотность компонентов, не слишком большую, но все же достаточно места для поворота ручек и вставки патч-шнуров. По бокам шкафа имеются невыпадающие гайки 1/4 дюйма. Боковые кронштейны изготовлены из дубовой фанеры 3/4 ″ с окантовкой из орехового дерева. Ручки с резьбой, которые скрепляют все вместе, произведены Woodcraft.

Блок питания

Синтез питается от этого устройства.Внутри находится коммерческий импульсный блок питания +/- 12 В и самодельный блок питания + 5 В, в котором используется регулятор LM340-5. Также есть трансформатор переменного тока, который выдает 12 В переменного тока для Paia Fatman. Счетчики подтверждают, что все работает. А еще есть вентилятор с регулируемой температурой, который помогает сохранять прохладу. Контроллер вентилятора использует термистор 10 кОм (Th2 и Th3 на схеме) для измерения температуры, и если он становится достаточно теплым, компаратор (IC1) отключается и включает транзистор, который включает вентилятор.Подстроечный резистор (P1) позволяет регулировать точку срабатывания вентилятора.

MIDI и панель джойстика

Блок управления MIDI и джойстиком находится на моей клавиатуре Paia, но обеспечивает управление модульным синтезатором, расположенным выше. Он подключен через два ленточных кабеля DB25 к патч-панели, которая является крайним левым модулем в нижнем шкафу. Есть два физических MIDI-входа, выбираемых переключателем. Существует трехсторонний переключатель для выбора MIDI-канала для «прослушивания».Дисковый переключатель - это переключатель режима работы интерфейса:

  1. моно режим - когда дисковый переключатель находится в этом положении, последняя нажатая клавиша генерирует одинаковое управляющее напряжение на всех четырех разъемах интерфейса модульной панели. Сигналы стробирования и триггера одинаковы для всех четырех соответствующих разъемов.
  2. duo mode - в этом положении две последние нажатые клавиши генерируют управляющие напряжения и соответствующие стробирующие и триггерные сигналы в наборах разъемов 1 и 2. Это полифонический режим, который обычно используется при подключении разъемов панели к независимым VCO-VCF- Цепочки VCA для одновременной генерации двух разных высот / тонов.
  3. trio mode (arp up) - как дуэтный режим # 2, но последние три нажатые клавиши генерируют независимые выходы CV / G / T. Может использоваться для одновременной генерации трех высот / тонов. «Увеличение арпеджиатора» относится к функции арпеджиатора - на панели есть регулятор скорости, который устанавливает частоту арпеджио - выходы гейта и триггера «стробируют» с установленной скоростью или не стробируют вообще, если арпеджиатор выключен.
  4. trio mode (arp down) - как в режиме №3, но направление arp - вниз.
  5. trio mode (arp up / down) - точно так же, как режимы # 3 и # 4, но направление arp чередуется между вверх и вниз.
  6. quad mode (arp up) - точно так же, как режим # 3, но выводятся четыре набора CV / G / T, соответствующие последним четырем нажатым клавишам.
  7. quad mode (arp down) - как в режиме №6, но арпеджиатор отключается.
  8. quad mode (arp up / down) - точно так же, как режимы # 6 и # 7, но направление arp чередуется между вверх и вниз.

Интерфейс может принимать скорость MIDI и устанавливать выходное напряжение управления скоростью на коммутационную панель. На клавиатуре My Paia нет скорости вывода, поэтому есть также выбираемые режимы произвольной скорости, чтобы было интересно.Интерфейс также может декодировать и отправлять управляющие напряжения для изменения высоты звука, послекасания, колеса модуляции и сустейна для оснащенных MIDI-клавиатур. Часть интерфейса с джойстиком подключается к коммутационной панели и принимает управляющее напряжение с панели, передает его через джойстик и отправляет масштабированный выходной сигнал обратно на коммутационную панель в зависимости от положения джойстика. Также существует внутренний режим, в котором управляющее напряжение не подается с передней панели, а генерируется внутри. Части схемы основаны на оборудовании Polydac, но программное обеспечение, работающее на PIC16F877, - это моя собственная оригинальная разработка.

Секвенсор

Секвенсор - это 16-шаговый секвенсор MFOS. Это стандартная сборка без каких-либо существенных доработок или модификаций.

Драм-машина

Драм-машина Yamaha DD5 была взломана, чтобы сделать мой модуль драм-машины. На передней панели есть кнопки для всех стандартных функций DD5 - изменение громкости и темпа, выбор паттернов, запуск / остановка и так далее. Он также имеет модификации для добавления светодиодных индикаторов выбора паттерна, индикатора темпа и нескольких выходов, которые можно использовать для запуска модулей аналогового синтезатора.Тональная плата DD5 устанавливается в верхнем шкафу за интерфейсным модулем панели. Моя дополнительная схема основана на Microchip PIC16F877 и имеет схему цифрового интерфейса, используемую для управления выходами триггера модуля, светодиодами дисплея и интерфейсом с платой DD5. Схема буферизации интерфейса позволяет модульному синтезатору запускать функцию запуска / остановки, функцию вступления / вставки и четыре выбираемых звука ударных. Четыре звука ударных - это те, которые запускались с пэдов в исходном немодифицированном DD5.Корпус DD5 и пэды были отброшены, поэтому эти входы имитируют сигнал, генерируемый при ударе по пэду в исходном устройстве. Каждая схема входного буфера имеет два входа: один подключен к разъему, а другой - к кнопке на передней панели для ручного запуска функции или звука барабана. Плата DD5 имеет точки подключения для 4 пэдов, 6 селекторных переключателей, кнопок вступления / вставки и запуска / остановки, регуляторов темпа и громкости, а также кнопки назначения пэдов. Все точки подключены к разъему заголовка, который вставляется в жгут проводов передней панели.

Визуализатор формы сигнала

Это мой оригинальный дизайн для отображения сигналов синтезатора в стиле осциллографа на старом монохромном ЖК-экране Toshiba TLC-271A 128 на 480 пикселей. Я говорю «в стиле осциллографа», потому что он не откалиброван по напряжению или частоте, хотя уровень входного сигнала можно регулировать. Это удобный способ узнать, выдает ли модуль прямоугольную волну, синус, треугольник или что-то еще. Процессор - PIC16F873. Входной сигнал поступает на аналого-цифровой преобразователь PIC.У этой PIC не так много доступной оперативной памяти, конечно же, недостаточно для захвата и хранения изображения 128 на 480 пикселей. Таким образом, настоящим секретом этой схемы является конструкция двухпортового ОЗУ, которая позволяет PIC сохранять образцы в микросхеме статического ОЗУ 6264 размером 8 Кбайт, в то время как схема вывода видео считывает те же образцы и отправляет их на ЖК-дисплей. Сторона схемы вывода на дисплей генерирует данные, синхронизацию точек, а также сигналы горизонтальной и вертикальной синхронизации для подачи на ЖК-дисплей. Маленькая схема в конце - это дополнительный ШИМ-регулятор яркости для светодиодов, окружающих дисплей.

Разделитель и многоцелевой элемент

Это моя собственная разработка. Он принимает любой сигнал и буферизует его в прямоугольную волну логического уровня, которая затем проходит через цепочку деления на 2, 4 и 8 (IC5 / IC6) или цепочку деления на 3, 6 и 12 (IC7 / IC8). Выходы каждой цепи подаются на IC9 / IC10 как версии «затвора» вместе с версией «триггера», которая генерируется конденсатором 0,001 мкФ / 100 кОм и микросхемой буфера 40106. Переключатель на передней панели выбирает вход IC9 / IC10, чтобы каждая секция делителя могла работать в режиме стробирования или триггера.Выходы всего преобразуются обратно в биполярное напряжение, подходящее для использования в качестве элемента управления для любого другого модуля в синтезаторе. Также есть две «множественные» точки подключения, которые позволяют разделить одно управляющее напряжение от другого модуля на до 3 выходных копий. Нижняя часть панели обеспечивает левую и правую аудиосистему и две точки подключения управляющего напряжения, которые подключаются сзади корпуса к Chameleon. Это обеспечивает путь для передачи звука на вспомогательный вход Chameleon и управляющих напряжений на входы «External 1» и «External 2».

Двойной квантователь

My Dual Quantizer - это, по сути, два квантователя напряжения MFOS, встроенные в один модуль. Один - это стандартная печатная плата MFOS, а другой - клон, который я сделал сам. Также имеется модификационная плата, которая буферизует дополнительный внутренний тактовый вход, а также обеспечивает триггерные выходы и инвертированные основные выходы. Первая показанная схема является копией схемы MFOS, но с тактовым генератором (U1A), изолированным от главной цепи. Также к U1C подключен дополнительный триггерный выход.Вторая схема - это плата модификации, которая добавляет новые функции к обоим квантователям:

  • Буферизация тактового сигнала внешнего входа
  • Буфер вывода триггера
  • Инвертированный основной выход

Выход U1A в главной цепи подключается к нормально замкнутому контакту переключателя разъема панели. Когда штекер вставляется в гнездо, этот выход U1A отключается, и вместо него используется сигнал, поступающий на штекер. Конец разъема подключается к точке CLK_INx платы модификации.Выход платы модификации подключается к точке CLK_IN на главной цепи.

VCO

Modulus имеет четыре MFOS-генератора с управляемым напряжением (VCO). Их два в среднем шкафу и еще два в нижнем шкафу.

LFO

Modulus имеет два низкочастотных генератора (LFO) MFOS.

LP VCF

Modulus имеет два MFOS-фильтра, управляемых по напряжению (VCF).

SV VCF Модуль

имеет два MFOS State Variable Voltage Controlled Filters (VCF).

ADSR и LFO

Имеется два модуля MFOS Attack / Decay / Sustain / Release (ADSR). Они были изменены, чтобы добавить простой генератор, который обеспечивает функцию автоповтора, инвертированный выход ADSR и светодиоды для отображения состояния цикла ADSR. На схемах показана схема соединений платы MFOS и платы модификаций, а также схема MFOS с пометками точек подключения, в которых указаны места подключения модификаций. R10 / C2 / IC1A - генератор повтора.IC3 и связанные части инвертируют вывод ADSR. Все остальное, по сути, представляет собой диодную логику для светодиодных индикаторов состояний ADSR.

Двойной ADSR

Это генератор двойной атаки / затухания / сустейна / высвобождения (ADSR), созданный на основе разработки yusynth. Каждый ADSR основан на таймере CMOS 555 (ICM7555). Предусмотрены как нормальный, так и инвертированный выходы. И, конечно же, есть светодиод для отображения состояния цикла ADSR.

Двойной AR

Это генератор атаки / высвобождения (AR) MFOS.Маленькая дополнительная печатная плата объединяет внутренние логические состояния атаки и освобождения для управления желтыми светодиодами состояния на передней панели.

Двойной VCA

Modulus имеет два MFOS усилителя с двойным управлением напряжением (VCA).

Шум и сигнал / шум Модуль

Modulus имеет изобилие шума MFOS и MFOS Sample & Hold (S / H) в одном модуле. Плата модификации шума добавляет выходной сигнал зернистости нижних частот и буферизует случайные вентили к биполярному выходу, подходящему для подключения к любому входу управляющего напряжения синтезатора.

Кольцевой модулятор

Это стандартный кольцевой модулятор MFOS.

Реверберация и панорама

Этот модуль представляет собой комбинированный элемент, состоящий из оригинальной схемы привода реверберации и усилителя, а также платы стереофонического панорамирования MFOS. Плата привода реверберации подключается к блоку пружинной реверберации Accutronics, который установлен на задней части нижнего корпуса. Схема управления транзистором основана на рекомендуемой схеме управления для блока пружинной реверберации.Входной микшер модуля позволяет комбинировать несколько источников перед отправкой их через пружину реверберации. Есть светодиод, который показывает, когда устройство приближается к уровню ограничения.

Смеситель

Каждому модульному синтезатору нужен микшер для объединения различных аудиоэлементов. Это мой дизайн. Он имеет 4 основных входа, каждый из которых может быть отправлен в контуры FX1 или FX2 или на основной выход. Петли FX возвращаются к основному выходу вместе с 2 вспомогательными входами. Также есть встроенный усилитель для наушников.

Динамики

Здесь нет ничего интересного - эти колонки представляют собой всего лишь набор компьютерных колонок с усилением, выпотрошенных и помещающихся за моими панелями стандартного размера. У них действительно не так много частотной характеристики, но они помогают обеспечить хорошее присутствие звука пользователю, сидящему перед синтезатором. Это не единственные динамики, которые я подключил к синтезатору, под таблицей модулей есть большой динамик / усилитель, который воспроизводит большую часть звука.


АРХИТЕКТУРА МИКРОКОНТРОЛЛЕРА PIC

PIC МИКРОКОНТРОЛЛЕР АРХИТЕКТУРА: PIC означает контроллер периферийного интерфейса.Микроконтроллер PIC был разработан с помощью микрочиповой технологии в 1993 году. Он был разработан для поддержки компьютеров PDP для управления периферийными устройствами, поэтому он был назван Peripheral Interface Controller. Микроконтроллеры PIC недорогие, очень быстрые и простые для программирования и выполнения программ. Их взаимодействие с другими периферийными устройствами также очень легко. Микроконтроллеры PIC от Microchip Company делятся на 4 больших семейства. В этой статье «АРХИТЕКТУРА МИКРОКОНТРОЛЛЕРА PIC» я расскажу шаг за шагом об АРХИТЕКТУРЕ МИКРОКОНТРОЛЛЕРА PIC и компонентах, используемых в микроконтроллерах pic.Я рекомендую вам проверить список микроконтроллеров Pic проекта здесь.

  • Первое семейство: PIC10 (10FXXX) под названием Low End
  • Второе семейство: PIC12 (PIC12FXXX) под названием Mid-Range
  • Третье семейство: PIC16 (16FXXX)
  • Четвертое семейство: PIC 17/18 (18FXXX)

Каждое семейство имеет множество компонентов, а также встроенные специальные функции. Он предлагает множество объемов памяти и пакетов контактов, а также различные тактовые частоты.

АРХИТЕКТУРА:

Архитектура микроконтроллера

PIC основана на архитектуре Гарварда и поддерживает архитектуру RISC (компьютер с сокращенным набором команд). Архитектура микроконтроллера PIC состоит из организации памяти (ОЗУ, ПЗУ, стек), ЦП, таймеров, счетчика, АЦП, ЦАП, последовательной связи, модуля CCP и портов ввода / вывода. Микроконтроллер PIC также поддерживает такие протоколы, как CAN, SPI, UART для взаимодействия с другими периферийными устройствами.

АРХИТЕКТУРА МИКРОКОНТРОЛЛЕРА PIC Блок-схема

  1. ЦП (центральный процессор):

ЦП микроконтроллера PIC состоит из

  • Арифметико-логический блок (АЛУ)
  • Блок памяти (MU)
  • Блок управления (CU)
  • Аккумулятор

ALU используется для арифметических операций и для принятия логических решений.Память используется для хранения инструкций после обработки. Блок управления используется для управления внутренними и внешними периферийными устройствами, подключенными к ЦП, а аккумулятор используется для хранения результатов.

  1. ОРГАНИЗАЦИЯ ПАМЯТИ:

Память микроконтроллера PIC Модуль состоит в основном из 3 типов памяти:

Он содержит программу, написанную после того, как мы записали ее в микроконтроллер. Счетчик программ выполняет команды, хранящиеся в памяти программ, одну за другой.Микроконтроллер Pic может иметь 8K слов x 14 бит флэш-памяти программ, которые можно электрически стереть и перепрограммировать. Каждый раз, когда мы записываем программу в микроконтроллер, мы стираем старую программу и записываем новую.

Это тип ОЗУ, который используется для временного хранения данных в его регистрах. Память RAM подразделяется на банки. Каждый банк имеет размер до 7Fh (128 байт). Количество банков может варьироваться в зависимости от микроконтроллера. PIC16F84 имеет всего два банка. Банки содержат регистры специальных функций (SFR) и регистры общего назначения (GPR).Нижние ячейки каждого банка зарезервированы для регистров специальных функций, а верхние ячейки - для регистров общего назначения.

Регистры общего назначения (GPR):

Эти регистры не имеют специальной функции. Они используются для общих целей для умножения, сложения или вычитания, а затем для сохранения результатов в других регистрах. ЦП может легко получить доступ к данным в этих регистрах.

Регистры специальных функций (SFR):

Эти регистры используются для специальных целей и не могут использоваться как обычные регистры.Их функция задается при изготовлении. Они выполняют возложенную на них функцию, и пользователь не может изменить функцию SFR. Три важных SFR для программирования:

Регистр СТАТУСА: меняет банк

Регистры

PORT: назначают логические значения 0 или 1 портам

.

Регистры TRIS: это регистр направления данных для ввода и вывода

Эта память позволяет хранить переменные в результате записи записанной программы.Он доступен для чтения и записи во время нормальной работы (во всем диапазоне VDD). Эта память не отображается напрямую в регистровом файле. Это косвенно адресуется через SFR. Для чтения и записи в эту память используются шесть SFR (EECON1, EECON2, EEDATA, EEDATH, EEADR, EEADRH).

  1. ПОСЛЕДОВАТЕЛЬНАЯ СВЯЗЬ:

Последовательная передача одного бита данных по каналу связи называется последовательной связью.Есть три протокола последовательной связи:

  • USART: Это означает универсальный синхронный и асинхронный приемник и передатчик, который обеспечивает последовательную связь в двух устройствах. В этом протоколе данные передаются и принимаются бит за битом по одному проводу в соответствии с тактовыми импульсами. Для последовательной отправки и приема данных микроконтроллер PIC имеет два контакта TXD и RXD.
  • Протокол SPI: SPI означает последовательный периферийный интерфейс.Он используется для передачи данных между микроконтроллерами PIC и другими периферийными устройствами, такими как датчики, регистры сдвига и SD-карты. В микроконтроллере PIC поддерживается трехпроводная связь SPI между двумя устройствами на общем источнике синхронизации. Протокол SPI имеет более широкие возможности обработки данных, чем USART. Протокол I2C: I2C означает Inter Integrated Circuit, и этот протокол используется для подключения низкоскоростных устройств, таких как микроконтроллеры, EEPROMS и аналого-цифровые преобразователи. Микроконтроллер PIC поддерживает двухпроводной интерфейс или связь I2C между двумя устройствами, которые могут работать как ведущее, так и ведомое устройство.

Последовательная связь

  1. ПРЕРЫВАНИЯ:

В микроконтроллерах PIC имеется 20 внутренних прерываний и три внешних источника прерываний, которые связаны с различными периферийными устройствами, такими как ADC, USART, таймеры, CCP и т. Д.

  1. ПОРТЫ В / В:

Возьмем серию PIC16, она состоит из пяти портов, таких как Port A, Port B, Port C, Port D и Port E.

  • Порт A: Этот порт имеет ширину 7 бит и может использоваться как для ввода, так и для вывода. Статус регистра TRISA определяет, используется ли он как входной или выходной порт.
  • Порт B: Это 8-битный порт. Этот порт также можно использовать как вход и выход. Более того, в режиме ввода четыре его бита изменяются в соответствии с сигналами прерывания.
  • Порт C: Это также 8-битный порт, который может использоваться как порт ввода и вывода, что определяется состоянием регистра TRISC.
  • Порт D: Этот 8-битный порт, в отличие от портов A, B и C, не является портом ввода / вывода, но используется как подчиненный порт для подключения к микропроцессору В режиме ввода / вывода Порт D все выводы должны иметь буферы триггера Шмитта.
  • Порт E: Это 3-битный порт, который используется в качестве дополнительной функции сигналов управления для аналого-цифрового преобразователя.

6. МОДУЛЬ CCP:

Модуль CCP работает в следующих трех режимах:

  • Режим захвата: В этом режиме время фиксируется, когда поступает сигнал, или мы можем сказать, что когда на выводе CCP устанавливается высокий уровень, он фиксирует значение Timer1.
  • Режим сравнения: Он работает так же, как аналоговый компаратор, что означает, что когда значение таймера 1 достигает некоторого эталонного значения, он выдает выходной сигнал.
  • Режим ШИМ: Этот режим обеспечивает импульс с разрешением 10 бит и программируемый рабочий цикл.
  1. Таймеры:

Таймеры и счетчики важны, поскольку таймеры могут определять время и считать. Микроконтроллер PIC может иметь до четырех таймеров (в зависимости от семейства) Timer0, Timer1, Timer2 и Timer3.Timer0 и Timer2 состоят из 8 бит, а Timer1 и Timer3 - из 16 бит, которые также можно использовать в качестве счетчика. Эти таймеры работают в соответствии с выбранными режимами.

  1. ЦИФРОВОЙ ПРЕОБРАЗОВАТЕЛЬ:

В микроконтроллере PIC нет аналоговых выходов . Чтобы получить аналоговый выход, мы должны использовать внешний цифро-аналоговый преобразователь (ЦАП).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *