4-канальный логический анализатор на PIC микроконтроллере » Программирование устройств на PIC микроконтроллерах


Логин:
Пароль:
О сайте:

Pic.Rkniga.ru - Сайт как для начинающих, так и для опытных радиолюбителей, разрабатывающих свои устройства на популярных PIC микроконтроллерах.
Здесь можно обмениваться сообщениями на форуме, а также добавлять на сайт статьи и схемы своих устройств.

Меню сайта
Главная Форум по PIC микроконтроллерам Форум Статьи по PIC микроконтроллерам Статьи Справочная информаци по PIC микроконтроллерам Справочник Литература по PIC микроконтроллерам Литература Схемотехника Схемотехника устройств на PIC микроконтроллерах Микроконтроллеры Программаторы Все по программированию PIC микроконтроллеров Программы, Софт Программы Ссылки Написать нам
Опрос

Какими микроконтроллерами вы чаще всего пользуетесь


PIC10
PIC12
PIC16
PIC18
PIC24
PIC32
Другими


Последние материалы
  • Кнопка On/OFF на PIC12F629.
  • Часы с синхронизацией от китайского будильника
  • ШИМ регулятор на PIC16F628A.
  • Счетчики прямого и обратного счета на PIC16F628A.
  • Таймер отключения питания для мультиметра и не только.
  • Программирование на C микроконтроллеров PIC24
  • Измеритель напряжения и тока
  • Маршрутный компьютер для электровелосипеда
  • Простой двухканальный термометр на PIC16F690 и датчиках DS18B20
  • Электронная "Незабудка" для забывчивых
  • Популярные материалы
    Случайная книга
    Программирование устройств на PIC микроконтроллерах » Схемотехника » Измерительная техника » 4-канальный логический анализатор на PIC микроконтроллере
    4-канальный логический анализатор на PIC микроконтроллере
    Автор публикации: alex Просмотров: 7737 Добавлен: 29-03-2013, 07:33 Комментарии: 0

         Часто при проверке цифровых сигналов или при отладке своих устройств необходим логический анализатор, тем более что все больше устройств разрабатывается на микроконтроллерах. Здесь рассматривается простое решение логического анализатора, который может использоваться для большинства цифровых сигналов, а также имеет функцию памяти.
    4-канальный логический анализатор на PIC микроконтроллере


    Основные параметры устройства:
    • Базовый компонент: PIC18F4580
    • Частота дискретизации: 200 Гц – 2 МГц
    • Количество каналов: 4
    • Память: 1024 отсчета на каждый канал
    • Матричный LCD дисплей: 64×128 точек
    • Напряжение питания: 9 В аккумулятор
         Лучший способом для изучения цифрового сигнала это применение логического анализатора и чаще всего он должен быть компактным, переносным. Данный логический анализатор имеет 4 канала, очень компактный и питается от батареи. Максимальная частота выборок 2 МГц, а также устройство имеет достаточную память для хранения 1024 выборок сигнала. Матричный LCD дисплей с разрешением 64×128 точек достаточно точно отображает и дает ясное представление о цифровых сигналах.
    Схема 4-канального логического анализатора показана на рисунке.

    4-канальный логический анализатор на PIC микроконтроллере

         Основой устройства является микроконтроллер PIC18F4580, который производит выборки и управляет LCD дисплеем (например, DEM128064A), управление возможно при помощи клавиатуры из 5 кнопок (S1- S5). Кварцевый резонатор (X1, 10 МГц) определяет максимальную частоту выборок. Интегрированный в микроконтроллер модуль PLL используется для получения внутренней частоты 40 МГц, которая является максимальной по заявлениям производителя компании Microchip.
         Диоды D1 – D8 защищают входы микроконтроллера от слишком высокого или отрицательного напряжения. Входные сигналы поступает на входы микросхемы IC1 74HC04N выступающей в роли буфера. Факт того, что сигналы инвертированы в этом случае для нас не важен, т.к. vs можем легко преобразовать его программно. Сигналы после буферной микросхемы поступают непосредственно на входы микроконтроллера RA1 – RA4, где уже программно обрабатываются.
         Потенциометр P1 необходим для регулировки контрастности дисплея, транзистор T1 управляет подсветкой. Звуковой излучатель BZ1 сигнализирует о начале очередного цикла записи данных (о начале сэмплирования), а также при переключении между режимами работы. Для клавиш управления (S1 – S5) не требуется схемы подавления дребезга контактов, т.к. этот процесс реализуется программно.
         Источник питания устройства служит для обеспечения устройства стабилизированным напряжением 5 В (питание микроконтроллера и микросхемы 74HC04N) и напряжением 9 В, используемого для подсветки дисплея. Цепь T2, R1, R17, D12 реализует схему зарядки 9 В аккумулятора при подключении внешнего источника питания 9 – 12 В. При использовании стандартного светодиода, с падением напряжения 1.5 В, ток зарядки аккумулятора будет равен:

    (1.5 – 0.6)/56 = 16 мА,

    что, при использовании NiMH аккумулятора емкостью 160 мАч достаточно. Батарея в таком случаем будет полностью заряжена приблизительно через 10 часов. В течении зарядки светодиод D12 будет включен.

    Управление
         Клавиша S1 используется для выбора частоты дискретизации (развертки) и может принимать значения: 5/10/20/50/100/200/500 мкс/деление и 1/2/5 мс/деление. Клавиша S2 служит для выбора канала для триггера синхронизации/запуска, а клавиша S3 – для выбора условия срабатывания триггера синхронизации: нарастающий или спадающий фронт.
         Клавиша S4 имеет несколько функций: старт/стоп устройства, очистка дисплея. При кратковременном нажатии происходит старт устройства (ожидание условия старта записи данных), после выполнения синхронизирующего условия микроконтроллер производит 1024 выборки каждого канала и сохраняет их. Если снова нажать кнопку S4, микроконтроллер снова сделет 1024 выборки после выполнения условия синхронизации. При длительном удержании клавиши S4 выполняется очистка дисплея.
         Клавиша S5 включает/выключает подсветку дисплея, но по прошествии 1 минуты или при детектировании разряженного аккумулятора она автоматически выключается.
         Последние параметры настройки развертки, условия и источника синхронизации сохраняются в EEPROM микроконтроллера и используются при следующем включении устройства.

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

    movff port a, postinc0

         Эта инструкция осуществляет копирование содержимого порта в ОЗУ и инкремент адреса ОЗУ на единицу. Этот цикл повторяется 1024 раз. По окончанию этого цикла 128 выборок считываются из ОЗУ и отображаются на дисплее.
         При кратковременном нажатии клавиши S4 – микроконтроллер переходит в режим работы с памятью и ожидает выполнения условия запуска/синхронизации, на дисплее в это время в правом углу отображается символ «R». После выполнения синхронизации, считанные 1024 сохраняются в ОЗУ, значок «R» сменяется на «S» и дисплей отображает первые 128 выборок каждого канала. При помощи клавиш S1 и S2 пользователь может прокручивать данные в пределах памяти, курсор внизу дисплея показывает - данные из какой области памяти в данный момент отображаются.
         Следующее короткое нажатие на клавишу S4 – устройство снова делает выборки и сохраняет их в памяти, но на дисплее будут отображаться данные из той области памяти, которую пользователь просматривал до нажатия кнопки S4, что в некоторых случаях является полезной функцией.
         При удержании клавиши S4 длительное время (услышите один звуковой сигнал) – будут произведены выборки, но дисплей будет отображать данные из начальной (первые 128 выборок) области памяти.
         При удержании клавиши S4 более длительное время (два звуковых сигнала) – устройство переходит в режим отображения в реальном времени первых 128 выборок на дисплее.

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

    Компонент
    в схеме

    Значение

    Количество

    R1

    680 Ом

    1

    R2, R11-R16

    10 кОм

    7

    R3 – R6

    330 Ом

    4

    R7 – R10

    100 кОм

    4

    R17

    56 Ом

    1

    R19

    1 кОм

    1

    R20

    47 Ом

    1

    R21

    220 Ом

    1

    P1

    20 кОм

    1

    C1, C2

    22 пФ

    2

    C3- C6

    100 нФ

    4

    D1 – D10

    1N4148

    10

    D11

    1N4001

    1

    D12

    светодиод

    1

    T1, T2

    BC337

    2

    IC1

    74HC04

    1

    IC2

    PIC18F4580-I/P

    1

    IC3

    LM7805

    1

    X1

    10 МГц

    1

    K2

    коннектор для
    подключения LCDдисплея

    1


         При работе с прибором, если какие-то каналы не используются, их лучше соединить с «минусом» источника питания, чтобы исключить искажение данных.
         В заключении, хочется отметить, что данный логический анализатор не предназначен для наблюдения и анализа сигналов с очень высокой частотой. Применение его – изучение сигналов последовательных протоколов, наблюдение сигналов «медленных» микроконтроллеров и пр.

    В архиве DataSheet на дисплей, исходник на ASM, прошивка для микроконтроллера и печатная плата в формате PDF

    4kanlogikanalizator.rar [346,31 Kb] (cкачиваний: 698)

    Комментарии
    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.