Описание на развойна платка PICTest1.0 и приставките към нея
     1. Развойна платка-програматор PICTest 1.0


 Съдържание на комплекта PICTest 1.0.
 Основни характеристики на PICTest 1.0
 Предназначение на развойна платка PICTest 1.0
 Модулни платки (приставки) за включване към PICTest 1.0
 Програми, използвани съвместно с развойна платка PICTest 1.0
 Първи стъпки с PICTest 1.0
 Използване на универсалните модулни платки “UNI_module” и “UNI_module_smd”
 Използване на PICTest 1.0 като програматор за PIC микроконтролери
     Използване на PICTest 1.0 за програмиране на микроконтролери, различни от серията PIC18FXX2.
     Използване на модулни платки UNI_module и UNI_module_smd за програмиране на микроконтролери, несъвместими по корпус с PIC18FXX2.
 Практически съвети за работа с развойна платка PICTest 1.0
  PDF-файл с подробно описание и принципна схема на PICTest 1.0
 Поръчка на развойна платка PICTest 1.0

     2. Модулна платка IO_module

 Предназначение на платка IO_module
 Общ вид на модулна платка IO_module
 Основни характеристики на платка IO_module
 Свързване на модулна платка IO_module към развойна платка PICTest 1.0
  Използване на графичния LCD дисплей на платка IO_module
 Използване на буквено-цифровия LCD дисплей
 Използване на ротационния енкодер
 Използване на матричната клавиатура
 PDF-файл с подробно описание и принципна схема на платка IO_module
 Полезна информация, необходима при поръчка на платка IO_module
 Поръчка на модулна платка IO_module


Съдържание на комплекта PICTest 1.0

При поръчка на развойна платка PICTest 1.0 получавате:

1 – Развойна платка PICTest 1.0
2 – Кабел Canon за връзка на PICTest 1.0 със серийния порт на компютъра
3 – CD-ROM, съдържащ софтуера за работа на програматора, описание на платката и други програми, използвани съвместно с PICTest 1.0.
4 – Два броя рейки 1х40, за запояване към универсалните модулни платки “UNI_module” и “UNI_module_smd” (приложени към книгата PIC-микроконтролери, Част 2).

Начало 
Основни характеристики на PICTest 1.0
     - Цокли DIP28 и DIP40, позволяващи разработване на схеми (и програмиране) на микроконтролерите от серията PIC18FXX2, както и останалите микроконтролери от фамилията PIC18, които са с максимално захранващо напрежение 5,5 V и 28 или 40-изводен PDIP корпус;
     - Конектор DB9 за връзка със серийния порт (RS-232) на компютъра при използване на програматора или комуникация с микроконтролера;
     - Превключване на режимите на програмиране или комуникация с компютъра с помощта на един джъмпер;
      - Конектор RJ45 за вътрешносхемно програмиране или връзка с дебъгера ICD2;
     - Вграден цифров температурен датчик TCN75 с температурен обхват от –55 до +125 °C;
     - Бутон за рестартиране на микроконтролера;
     - Три светодиода за индициране на:
          => включено захранващо напрежение към платката;
          => наличие на програмиращо напрежение (Vpp) в режим на програмиране на микроконтролера;
          => преминаване на зададения температурен праг на датчика TCN75;
     - Интервал на захранващото напрежение: 9 – 12 V;
     - Автоматично разпознаване поляритета на захранващия източник;
     - Изведени контролни точки за захранване на микроконтролера (+5 V) и маса (GND);
     - Кварцов резонатор за честота 10 MHz, използван като честотно задаващ елемент за тактовия генератор на микроконтролера;
     - Високо стабилен кварцов резонатор с честота 32768 Hz, използван като честотно задаващ елемент за генератора на Таймер 1;
     - Конектори за разширение (рейки), позволяващи включване към развойната платка на допълнителни модулни платки (IO_module, UNI_module и UNI_module_smd) в зависимост от необходимия хардуер;
Начало 
Предназначение на развойна платка PICTest 1.0
     С помощта на PICTest 1.0 можете да разработвате и тествате различни схеми, изградени на базата на PIC-микроконтролери, а също така, да експериментирате на практика всички примерни приложения на микроконтролерите от серията PIC18FXX2, разгледани в книгата "PIC микроконтролери", Част 2.
     PICTest1.0 разполага и с вграден програматор, благодарение на който можете да програмирате микроконтролера директно върху развойната платка. Благодарение на конектора за вътрешносхемно програмиране (RJ45) можете да използвате вградения програматор за програмиране и върху вече съществуваща потребителска платка.
      В комбинация с различните приставки, развойната платка PICTest ще ви улесни значително при разработване на ваши устройства, използващи различна периферия - клавиатури, дисплеи, ротационни енкодери, цифрови температурни датчици и др. Както е обяснено по-долу, с помощта на универсалните модулни платки UNI_module и UNI_module_smd, PICTest може да бъде използван и за програмиране на микроконтролери, несъвместими по корпус със серията PIC18FXX2 (например PIC16F84).
   Освен за програмиране с програматора, серийният порт на платката PICTest 1.0 се използва и при обмен на данни с компютъра (например при използване на програмата Virtual Display).
Модулни платки (приставки) за включване към PICTest 1.0
     На този етап към развойна платка PICTest 1.0 са разработени три модулни платки:
          1 - платка IO_module – използва се при тестване и разработване на входно-изходен интерфейс - клавиатури, дисплеи, ротационни енкодери и др.;
          2 - платка UNI_module – универсална платка за тестване на схеми, изградени с елементи за конвенционален монтаж (through hole);
          3 - платка UNI_module_smd – универсална платка за тестване на схеми, изградени с елементи за повърхностен монтаж (smd).
     Модулните платки UNI_module и UNI_module_smd са дадени под формата на приложение към всяка книга “PIC микроконтролери”, Част II. Освен чрез книгата, универсалните модулни платки UNI_module и UNI_module_smd могат да бъдат поръчани и от нашия Интернет магазин.
     Разполагайки с тези три платки ще можете без проблем да тествате програмите към примерите от книгата “PIC микроконтролери” – част II. Използваните в примерите входно-изходни устройства (клавиатури, дисплей и т.н.) напълно се покриват от хардуера на платка IO_module, а останалата част от схемите можете да реализирате върху предлаганите универсални платки.
Начало 
Програми, използвани съвместно с развойна платка PICTest 1.0
     Тук съвсем информативно ще представим две програми, които са разработени за нуждите на книгата “PIC микроконтролери” – част II и са предназначени предимно за използване с развойна платката PICtest 1.0. Идеята на двете програми е заедно с развойната платка PICtest 1.0 да бъдат използвани като инструмент при разработване на нови устройства, използващи PIC микроконтролери.
     Информация относно работата на програмите можете да получите от книгата “PIC микроконтролери” – Част II или директно от Help-менюто на програмите.

     Програма “Virtual Display”
     Тази програма представлява виртуален буквено-цифров дисплей с размери 2 реда по 20 символа. Предназначението на Virtual Display е чрез ресурсите на компютъра и развойната платка PICtest 1.0 да се емулира работата на буквено-цифров дисплей, който да се използва за визуализация на резултатите от изпълнението на програмите. Казано с други думи, ако разработваното от вас устройство ще използва за визуализация буквено-цифров дисплей, програмата “Virtual Display” ви спестява първоначалната инвестиция за закупуването на подобен модул. По време на разработването
и тестването на устройството, визуализацията на резултатите може да става с използване на Virtual Display, а впоследствие виртуалния дисплей да се замени с реален хардуерен модул.
     Повече информация за същността на програмата Virtual Display е дадена в описанието на развойна платка PICTest 1.0, а практическа информация за работата и използването на програмата е дадена в книгата “PIC микроконтролери” – Част II.

     Програма “Image2PIC”
     Тази програма е предназначена за използване като инструмент при разработване на приложения, използващи графичен дисплей. На практика, с нейна помощ можете да заредите и преобразувате всяко BMP-изображение, във формат, удобен за визуализация върху графичен LCD-дисплей, с размери 128х64 пиксела. Получените данни могат да бъдат записани под формата на файл върху вашия компютър или с помощта на PICTest1.0. да бъдат изпратени директно към микроконтролера, за визуализация върху дисплея.
     Конкретна информация за същността и функциите на програмата Image2PIC е дадена в описанието на развойна платка PICTest 1.0.  Информация за използването на програмата ще намерите в глава 8 на книгата “PIC микроконтролери” – Част II, където се разглежда управлението на графичен дисплей JM12864A.

Начало 
Първи стъпки с PICTest 1.0
     Тук е дадена последователността за първоначалното включване на развойна платка PICTest 1.0 и демонстрация върху нея на примерна тестова програма. За визуализация на примера се използва приложението Virtual Display, което може да бъде изтеглено от тук.
     За максимална простота демонстрационната програма е съставена да работи без да са необходими допълнителни модулни платки, включени към рейките на PICTest 1.0.
     Примерната програма е разработена в четири варианта в зависимост от микроконтролера, който ще използвате – PIC18F242, PIC18F252, PIC18F442 или PIC18452.
      HEX-файла, който можете да използвате за всеки от четирите микроконтролера е:
          - PICTest_demo_242.HEX – за PIC18F242;
          - PICTest_demo_252.HEX – за PIC18F252;
          - PICTest_demo_442.HEX – за PIC18F442;
          - PICTest_demo_452.HEX – за PIC18F452.
     След като изтеглите HEX-файла на примерната програма, за демонстрацията u върху развойната платка трябва да изпълните следната последователност:
     1) Свържете платката PICTest 1.0 към COM порта на компютъра (използвайте кабела, който сте получили към платката);
     2) Подайте към плаката захранващо напрежение със стойност 9-12 V;
     3) Включете единичните джъмпери JP3, JP4, JP5, JP6, а джъмпер JP7 поставете в положение “2”. При правилно свързване на джъмперите платката трябва да изглежда по следния начин:
     4) Изберете режим програмиране, като поставите джъмпер S2 в положение “1” (PROG);
     5) Стартирайте програмиращия софтуер IC-Prog и направете настройките, така както е описано във файла с описанието на развойна платка PICTest 1.0;
     6) Задайте типа на използвания микроконтролер и от File>Open File заредете съответния файл “PICTest_demo_XXX.HEX”;
      7) За да програмирате микроконтролера изберете Command>Program All;
     8) След като завърши програмирането преместете джъмпер S2 в положение “2” (RS232);
     9) Стартирайте програмата Virtual Display и изберете Action>Settings. При първоначално стартиране на програмата в дисплейното поле се изписва надпис “Welcome to VIRTUAL DISPLAY”;
     10) В диалоговия прозорец “Settings” задайте, използвания COM порт и скорост (Baud Rate) 9600;
     11) Натиснете бутон “RESET” от развойната платка, за да рестартирате микроконтролера;
     12) Натиснете бутон “Connect” в прозореца на програмата “Virtual Display”. При осъществяване на тази стъпка дисплейното поле на Virtual Display придобива следния вид:
     На първия ред от полето се извеждат показанията за температурата, измерени чрез сензора TCN75 (разположен в долния десен ъгъл на PICTest 1.0), а на втория ред се извеждат показанията на часовника за реално време, организиран програмно в микроконтролера. Тъй като демонстрационната програма PICTest_demo_XXX е по-скоро с учебно предназначение, в нея не е заложен код за сверяване на часовника. По тази причина в полето на Virtual Display отмерването на времето започва от стойност 00:00:00, която не може да бъде променяна.
     Светодиода, означен върху PICTest 1.0 като Th индицира преминаването на предварително зададен (по програмен път) температурен праг, който в случая е 26 °C. Ако температурата в помещението, където е платката е по-ниска, докоснете датчика с пръст и задръжте до светване на светодиода.
     Ако следите показанията на Virtual Display ще установите, че светодиода изгасва след като температурата спадне под 24 °C. Причината за това е, че температурният датчик има програмируем хистерезис, който за конкретната програма е зададен да бъде равен на два градуса.
Начало 
Използване на универсалните модулните платки “UNI_module” и “UNI_module_smd”
 

     Тези две платки са дадени под формата на приложение към всяка книга “PIC микроконтролери”, Част II. Освен чрез книгата, допълнителни универсални модулни платки UNI_module и UNI_module_smd могат да бъдат поръчани и от нашия Интернет магазин.
     Идеята на тези универсални платки е да се включват към рейки H1 и H2 на развойна платка PICTest 1.0 (вж. фигурата вляво) и да позволят реализацията на различни схеми в зависимост от нуждите на тестваната програма. При изготвяне на схемата със стандартни елементи можете да използвате платка UNI_module, а при използване на SMD елементи схемата се реализира върху платка UNI_module_smd.
     На снимката вляво универсалната модулна платка е със запоени рейки за включване към PICTest 1.0. При поръчка на платките от Интернет магазина или при получаване към книгата платките са без рейки, т.е. за всяка платка трябва да предвидите по една щифтова рейка с размер 1х40.
          В случай, че сте поръчали развойна платка PICTest 1.0 не е необходимо да поръчвате рейки, защото последните са включени в комплекта на PICTest1.0.
     За да запоите рейките върху платката следвайте последователността:
     1) Ако сте получили универсалните модулни платки чрез книгата “PIC микроконтролери” – Част II, те са изготвени върху общ стъклотекстолит и за да се използват трябва да бъдат разделени. За целта счупете стъклотекстолита през технологичните отвори така, че да получите двете отделни платки, показани по-долу.
         
     2) Разполовете всяка от рейките на две, т.е. от една рейка 1х40 да се получат две рейки с размер 1х20.
     3) Поставете рейките в отворите на универсалните модулни платки така, че по-дългите пера на рейката да останат от долната страна на платката (т.е. страната без писти).

     4) Запойте рейките, като внимавате те да са перпендикулярни на платката. За да ви е по-лесно първо запойте по едно перо от двата края на рейката, а след като я центрирате преминете и към останалите пера. Накрая универсалните платки трябва да добият вида, показан по-долу, вдясно.
     Както е обяснено по-долу, с помощта на универсалните модулни платки UNI_module и UNI_module_smd, PICTest може да бъде използван и за програмиране на микроконтролери, несъвместими по корпус със серията PIC18FXX2 (например PIC16F84).
Начало 
Използване на PICTest 1.0 като програматор за PIC микроконтролери
   Вграденият в развойната платка PICTest 1.0 програматор позволява програмирането на микроконтролерите от серията PIC18FXX2 да става директно върху платката. За да е максимално достъпен програматорът, последният е проектиран да работи с безплатния програмиращ софтуер IC-Prog. Както ще разберете по-долу, PICTest1.0 може да се използва и за програмиране на микроконтролери различни от PIC18F (например PIC16F84), като за целта могат да се използват модулните платки UNI_module и UNI_module_smd.
   За да работи програмиращият софтуер ICProg с програматора на PICTest 1.0 е необходимо да се направят някои настройки на програмата, които са дадени в PDF -описанието на развойната платка.
   Връзката между програматора и компютъра се осъществява чрез серийния (COM) порт като за целта развойната платка разполага с конектор тип DB9. Монтираният на платката конектор е “женски”, което означава, че връзката с компютъра се осъществява посредством удължителен кабел за сериен порт, който е част от комплектацията на развойната платка.
   Освен за програмиране с програматора, серийният порт на платката PICTest 1.0 се използва и при обмен на данни с компютъра (например при използване на програмата Virtual Display). Избора на режим програмиране или серийна комуникация се избира чрез джъмпера “S2”. За да разрешите работата на програматора поставете джъмпер S2 в положение “1” (означено е върху платката като PROG). Ако джъмперът не е поставен в нито едно от двете положения, едновременно се забраняват и програматорът и комуникацията с компютъра.
Използване на PICTest 1.0 за програмиране на микроконтролери,
различни от серията PIC18FXX2.
   По принцип развойната платка PICTest 1.0 е разработена за работа с микроконтролерите от серията PIC18FXX2, но на практика тя може да се използва и с всеки друг PIC микроконтролер, който е съвместим по корпус с 28 или 40-изводните микроконтроелри PIC18FXX2. В този смисъл, ако е необходимо да програмирате микроконтролер, който е различен от PIC18FXX2 можете да го включите директно към 28 или 40-изводния цокъл на платката PICTest 1.0 и да го програмирате по начина, описан в стъпки 4-7 от раздел Първи стъпки с PICTest 1.0.
   В случай, че микроконтролерът, който използвате не е съвместим по корпус с микроконтролерите PIC18FXX2 (такъв е например микроконтролерът PIC16F84A), можете да изготвите необходимата ви приставка като използвате универсалните модулни платки UNI_module така, както е описано по-долу.
Използване на модулни платки UNI_module и UNI_module_smd за изготвяне на приставки за програмиране на микроконтролери, несъвместими по корпус с PIC18FXX2.
   Едно от съществените предимства на развойна платка PICTest 1.0 е, че изводите на 28 и 40-изводния цокъл (използвани за включване на микроконтролерите към платката), са изведени и на разширителните рейки H1 и H2 (вж. снимката на PICTest 1.0). Като се има предвид, че тези рейки са предвидени за включване на модулни платки UNI_module и UNI_module_smd, последните могат да бъдат използвани в качеството на приставки за програмиране на микроконтроелри с корпуси и разположение на изводите, различни от тези на PIC18FXX2.
   За да изготвите ваша приставка е необходимо преди всичко към универсалните платки да запоите щифтовите рейки, така както беше описано по-горе. След като направите това изпълнете следните стъпки:

   1) Изберете една от двете модулни платки (обикновено по-подходяща е платка UNI_module), и върху нея запойте цокъла, върху който да поставите микроконтролера, подлежащ на програмиране. Например, ако искате да програмирате PIC16F84A, върху платката трябва да запоите 18-изводен цокъл;
   2) Свържете необходимите изводи на цокъла с площадките на универсалната модулна платка. Информацията, която ви е необходима в този случай е, кои са номерата на изводите (от използвания корпус), на които се подават програмиращите сигнали.
   Всеки PIC микроконтролер, използващ серийно програмиране, изисква освен захранване и подаване на следните три сигнала:
       - Програмиращо напрежение
       - Програмиращ такт
       - Програмиращи данни
    На горната фигура е дадено възприетото означение на тези изводи при повечето PIC микроконтролери. Както се вижда от фигурата, изводите за програмиращо напрежение, такт и данни са обединени съответно с изводи /Vpp, RB6 и RB7. Горните три сигнала се осигуряват от програматора на PICTest 1.0 и се извеждат на рейките H1 и H2, т.е. върху универсалните модулни платки. На долната фигура е показано свързването на микроконтролера PIC16F84A към изводите на универсалната платка така, че да се осигурят необходимите програмиращи сигнали за микроконтролера.
    Във връзка с информацията, изложена в тази секция, издателство “Млад Конструктор” не носи отговорност за евентуално дефектиране на развойната платка PICTest 1.0 или на програмирания микроконтролер, вследствие на грешки, допуснати при изготвяне на приставките.
Начало 
Практически съвети за работа с развойна платка PICTest 1.0
   Тук накратко са описани някои основни правила и съвети, които биха Ви улеснили при използването на развойната платка:
    Ако към развойната платка са включени определени модулни платки и PIC микроконтролера е програмиран за работа с тях, преди зареждане на друга (различна) програма, всички модулни платки трябва да бъдат отстранени. Това се налага, защото в новата програма на микроконтролера е възможно изводите, които преди това са били входове да се конфигурират като изходи. В този случай е възможно веригите на модулните платки да предизвикат претоварване и дефектиране на портовете на микроконтролера.
     За избягване на грешки е препоръчително първоначално всички джъмпери да са отстранени от платката, а при тестване на програмата да се поставят само тези, необходими за конкретната конфигурация.
     Използвайте платката върху непроводяща повърхност. Така ще бъдат избегнати къси съединения, които биха повредили платката.
     Не работете с поялник върху платката, докато последната е включена към захранване. На работния край на някои поялници присъства потенциал, който може да предизвика протичането на недопустимо големи токове през веригите на схемата.
Начало 
Предназначение на платка IO_module
   Основното предназначение на модулна платка IO_module е да бъде използвана съвместно с развойна платка PICTest 1.0 за разработване и тестване на потребителски входно/изходен интерфейс – графични и буквено-цифрови дисплеи, клавиатури, ротационни енкодери и др.
Общ вид на платка IO_module
Начало 
Основни характеристики на платка IO_module
   Модулна платка IO_module разполага със следния хардуер:
   - Графичен LCD модул JM12864A с размер 128х64 точки;
   - Буквено-цифров LCD модул с размер 2х16 символа;
   - Осем светодиода, индициращи състоянието на всеки от изводите на PORTB;
   - Пиезо-зумер;
   - 20-стъпков ротационен енкодер ED1112S с вграден превключвател;
   - Матрична клавиатура 4х4 с възможност за работа и като 4-бутонна линейна клавиатура;
   - 3-бутонна клавиатура, за генериране на външно прекъсване на изводи INT2-INT0.
   Подробна информация за използването на изброения хардуер е дадена в PDF-описанието на платка IO_module.
Свързване на модулна платка IO_module към развойна платка PICTest 1.0
   Връзката между развойната платка PICTest 1.0 и модулна платка IO_module се осъществява чрез странично разположения конектор H3 (вж. снимката по-долу):

Начало 
Използване на графичния LCD дисплей на платка IO_module
   За да тествате програми, използващи графичен дисплей JM12864A е необходимо да свържете последния към рейка U1 на платка IO_module така, както е показано на фигурата вляво.
   Настройката на контраста на дисплея става с помощта на тример-потенциометъра RP1 (GR. LCD CONTR).
   Посредством приставката можете да разбработвате различни схеми, използващи графичен дисплей, както и да експериментирате на практика всички примери от книгата PIC микроконтролери, част 2, реализирани с такъв дисплей.
Начало 
Използване на буквено-цифровия LCD дисплей
   Буквено-цифровият дисплей (с размер 2 реда х 16 символа), се включва към рейка U2 на платка IO_module. Ако искате подсвета на дисплея да е включен постоянно, поставете джъмпера JP8 в положение “1”. Ако управлението на подсвета ще става от микроконтролера, джъмпер JP8 трябва да е в положение “2”.
   Регулирането на контраста на дисплея става от тример-потенциометъра RP2 (CH. LCD CONTR).
       Посредством приставката можете да разбработвате различни схеми, използващи буквено-цифров дисплей, както и да експериментирате на практика всички примери от книгата PIC микроконтролери, част 2, реализирани с такъв дисплей.
Начало 
Използване на ротационния енкодер
   Разрешаването на ротационния енкодер става от джъмпери JP6 и JP7. При поставяне на двата джъмпера в положение “1”, изводите на ротационния енкодер са свързани към изводи RC6 и RC7 на микроконтролера, а при поставяне на джъмпери JP6 и JP7 в положение “2”, ротационния енкодер използва изводи RB4 и RB5.
   На снимката вляво е илюстрирано приложение на ротационния енкодер за което, при въртене на оста на енкодера визуализираната стойност се увеличава или намалява, а при натискане на оста се затваря вградения превключвател, с което се нулира показваната на дисплея стойност.
Начало 
Използване на матричната клавиатура
   За да използвате матричната клавиатура поставете джъмпер JP9 в положение “2”. Ако поставите джъмпера в положение “1”, бутони “1”, “4”, “7” и “*” образуват линейна клавиатура. Повече информация по този въпрос е дадена в подробното PDF-описание на платка IO_module.
   На снимката вляво е илюстрирано приложение, използващо матричната клавиатура за реализиране на текстов редактор, като този, използван в мобилните телефони (най-вече за писане на SMS-и).
Начало 
Полезна информация, необходима при поръчка на платка IO_module
   Тук ще направим някои важни пояснения, които е добре да знаете при поръчка на модулна платка IO_module.
   В Интернет магазина на издателството платката се предлага в три варианта:
      - Модулна платка IO_module – базов вариант
      - Модулна платка IO_module в комплект с буквено-цифров дисплей
      - Модулна платка IO_module в комплект с графичен дисплей.
   На практика става въпрос за един и същ продукт, но в два от случаите платката е комплектована с един от двата поддържани дисплея. В този смисъл, ако ви е необходима платка IO_module в комплектация с двата дисплея не е необходимо да поръчвате трите варианта на платката, а само базовия вариант на модулната платка плюс дисплеите, които се предлагат като отделна позиция в нашия Интернет магазин.