SimpleBook - электронная книга » Программирование устройств на PIC микроконтроллерах


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

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

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

Какой средой программирования вы пользуетесь?


MPLab/MPLabX
MicroC
MicroBasic
MicroPascal
Другой


Последние материалы
  • Тестовая плата для отладки программ на микроконтроллере PIC18F4550
  • Кнопка On/OFF на PIC12F629.
  • Часы с синхронизацией от китайского будильника
  • ШИМ регулятор на PIC16F628A.
  • Счетчики прямого и обратного счета на PIC16F628A.
  • Таймер отключения питания для мультиметра и не только.
  • Измеритель напряжения и тока
  • Маршрутный компьютер для электровелосипеда
  • Простой двухканальный термометр на PIC16F690 и датчиках DS18B20
  • Электронная "Незабудка" для забывчивых
  • Популярные материалы
    Случайная книга
    SimpleBook - электронная книга
    Автор публикации: alex Просмотров: 6959 Добавлен: 19-07-2012, 19:38 Комментарии: 0

         Выкладываю на всеобщее обозрение свой проект - SimpleBook на DSP dsPIC33FJ128MC706A. Сие устройство позволяет читать текстовые файлы в кодировке 1251 и юникод. Имеется возможность настройки цвета меню/текста/загрузки и тп. Да, собирать подобное устройство на микроконтроллере - полнейший бред. Однако великодушным Microchipом были предоставленны образцы, когда все остальные отмахивались. Необходимо было "что-то" создать для выставления на конкурс программистов, проходящий в моем городе. Благо под рукой был экран от старого ноутбука. Все остальное выпаивалось из того что было под рукой.
         Все фото проекта можно посмотреть здесь.
         Основная схема устройства:
    SimpleBook - электронная книга

         В конечном устройстве был сделан сокет, а DSP помещен на отдельную небольшую плату для простоты изготовления и возможности замены. На печатной плате "MCU" имеются места для установки керамических конденсаторов 0.1 мкф и также на обратной стороне можно поставить керамику 10 мкф для питания ядра.  Но в моем варианте он мешал и его пришлось вынести на основную ПП (C1 C2).
    Весь "агрегат" состоит из разных кусочков, т.к. готовое решение собиралось постепенно.
         По интерфейсу SPI подключаются SD карта и RAM память, разьем вынесен на схеме. RAM - 23K256 . На ПП "RAM" 2 слота под микрохемы, т.к. были еще кое-какие идеи, но пока не реализованы. CS первой RAM идет на 64-ю ногу DSP. Будте внимательны, на схеме это не указано.
          SD карта памяти подключается по томуже интерфейсу. 1-я нога DSP идет на переключатель, который замыкается на +3.3V если карта в слоте. необходим подтягивающий резистор на землю. На ПП "MMC" есть несколько контактов для установки сих. 4ю ногу сокета замкнуть на VDD и меж 5 и 8 - резистор на 10к в моем случае. У Вас может быть другой разьем под карты памяти, так что смотрите что куда. 2-я нога идет на CS карты памяти.
         Также в схеме есть SPI FLASH память. У меня это была W25X40. Должна подойти любая, т.к. в основном алгоритм работы один и тот-же. В ней храняца настройки, которые считываются при запуске и записываются при каждом выходе из меню настроек. 
         Теперь самое главное - подключение дисплея lq9d011 (даташит в комплекте)
    1    NC
    2    NC
    3    +5V
    4    +5V
    5    GND
    6    GND
    7    ENA    начало цветопередачи(с моим дисплеем что подавать сигнал что не подавать, се равно отображает)
    8    NC
    9    CLK    тактирование
    10    GND
    11    Hsync    горизонтальная синхронизация
    12    Vsync    вертикальная
    13    NC
    14    R0   красный
    15    R1
    16    R2
    17    GND
    18    G0   зеленый
    19    G1
    20    G2
    21    GND
    22    B0   синий
    23    B1
    24    B2
    25    NC
    26    NC
    27    NC
    Также возможно подключение других дисплеев.
         Также хочу отметить что проц разогнан до 50 MIPS тк немного не дотягивал до нормальной частоты обновления экрана, и экран жутко пищщал. Практиески на данной основе можно реализовать даже какую-нибуть игру(танчики например) иль еще чего необычного.
         Микры U3-U5 питаются от 5ти вольт. И еще один момент: у меня после навешанья всей лапши из RAM и FLASH карта памяти перестала отвечать, тогда на линию SCK советую повесить кондер 15-30pF. В меню настроек есть выбор какой тип SD карты используется, т.к. у меня оч старая карточка работала на SPI-0 а новые отказывались и наобород.

    По программам в комплекте:
         CharGen - редактирование заков представленных в коде ассемблера. Изначально разрабатывалась под 8-ми битные ПИКи, так что для новых Symbol надо заменить на ".byte". Invert - используется при сохранении, инвертирует последовательность битов символа. А "сеточка" справа используется для ручного задавания точек. Собственно можете открыть "KOI8.asm" в файлах прокта и посмотреть как это выглядит.
         ScreenDraw.ASM- тут немного сложнее, программа для рисования "экранов" (например заставка при запуске выполнена на ней)
    Сначала открываем таблицу знаков (Open Char code) и вверху появятся все символы. Нажимаем -рисуем. также можно открыть проект, но только сохраненный на ассемблере. для сохранения в асм надо указать начальную позицию в памяти (по умолч. 0х1000) куда будет записываться весь экран. можно сохранить на Си, для этого нажмите "use C?" вместо 0х1000 укажите название переменной в которую будет все записываться.

    Файловая система:
         Был использован модуль FatFS от Chan-а, за что ему отдельное спасибо :)
    При открытии файла первым делом он конвертируеца в другой формат, для удобства работы с файлом. Вверху появится графа загрузки. Ее можно прервать и потом продолжить при повторном открытии файла. После полной загрузки файл появится в Библиотеке (на карте памяти это будет папка library).
         Максимальное количество файлов в директории - 256 с длиной имени не более 120 знаков. Все это кэшируется на внешней RAM. Но сортировки нет.
         Пролистывание файлов идет построчное(вверх вниз) либо страничное (вправо влево). При закрытии файла сохраняется позиция чтения, и при повторном открытии продолжите с того места где остановились.
    Идея взята отсюда:  Текстовый VGA-терминал на PIC18
    Фото Проекта:
    SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга
    SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга
    SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга
    SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга
    SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга SimpleBook - электронная книга


    Файлы в архиве:
    Печатные платы (Proteus)
    Софт для ПК
    Прошивка МК с исходниками

    simplebook.rar [483 Kb] (cкачиваний: 291)

    Комментарии