ФАКУЛТЕТ ЕЛЕКТРОННА ТЕХНИКА И ТЕХНОЛОГИИ КАТЕДРА “Електронна техника”
КУРСОВ ПРОЕКТ по Микропроцесорна схемотехника
Тема:
Едноплатков микрокомпютър
Разработил: Ръководител:
Димчо Станчев Хвърчилков гл. ас. В. Маноев
Фак. №101611004
2012г
София
Задание
Съдържание:
Стр.
1.0 Синтез на блокова схема 4
2.0 Синтез на принципна схема 12
3.0 Адресна карта на паметта 19
4.0 Времедиаграми 20
5.0 Захранване 23
6.0 Спецификация на елементите 24
7.0 Използвана литература 26
8.0 Графична част – пълна принципна схема 27
1.0 Синтез на блокова схема
1.1 – ПРОЦЕСОР
По задание имаме процесор на компанията Microchip Technology, inc. Изискванията за избор са следните:
-Да има външна адресна шина с широчина най-малко 18-bit. Това условие произлиза от това, че имаме размер на оперативната памет 256kB, което е 218 Байта;
-Шина за данни 8 бита;
-Да може да позволи изграждане на USB host порт (вграден USB, SPI или други разширителни възможности);
-Да е възможно изграждане на вход за стандартна клавиатура (USART);
-Да има достатъчно вход/изход портове за да е възможно изграждането на контролната шина, добавяне на дисплей 2x40, индикация за нормална работа;
-Да може да работи с външен осцилатор с четири различни честоти;
-Да има входове за прекъсване.
Въз основа на изискванията, след проведено проучване се спираме на микроконтролер PIC18C801 (корпус с 80 крачета).
Основни данни:
-21-bit – външна адресна шина;
-8-bit – шина за данни;
-67 входно/изходни порта;
-четири 8/16-битови броячи/таймери;
-вградена контролна шина, позволяваща работа на RAM, ROM и външно устройство;
-три външни входа за прекъсване;
-серийни канали – USART и SPI;
-собствен осцилатор и възможност за работа с външен (0 – 25) MHz;
-шест входа с 10-bit аналогово-цифров преобразувател;
-Адресното пространство се настройва и е с размер 2MB.
Адресната шина е изкарана директно от процесора. Ширина – 20-bit. Тя отива към оперативната и програмната памет, както и към системния куплунг. За него сигналите са буферирани.
Шината за данни, също е директна с ширина 8-bit. Към системния куплунг сигналите са буферирани от двупосочен буфер. Посоката на пропускане се задава от контролната шина.
Контролната шина се командва изцяло от микроконтролера. Той разпределя адресното пространство посредством изходите за управления на устройствата: (Chip Select). Контролите, задаващи изпълнителните функции са (Write Enable, Output Enable). Сигналите, отиващи към паметите са директни, а тези към системния куплунг са буферирани.
Прекъсвания могат да създават устройствата, поставени на системния куплунг и USB шината.
1.2 – ОПЕРАТИВНА ПАМЕТ (RAM)
Избраната памет, BS62LV2006, е статична (SRAM), с обем 256k X 8-bit. Производител: BSI, BRILLIANCE SEMICONDUCTOR, INC. Отличава се с добро бързодействие и ниска консумация. Управление: .
1.3 – ПРОГРАМНА ПАМЕТ (ROM)
За случая използваме FLASH памет от типа: EN29F512 с обем 64kB
(64k X 8-bit). Производител: Eon Silicon Solution Inc. Има ниска консумация, много цикли на записване, което я прави по-удобна от ROM, PROM и EPROM. Управлява се по същия начин, както оперативната памет, с тази разлика, че липсва единия инверсен активиращ вход CS2. . Адресна шина 16-бита.
1.4 – ТАКТОВ ГЕНЕРАТОР
Задава тактовата честота на процесора. Може да генерира четири тактови честоти, които могат да се превключват ръчно от оператор: (7; 13; 19; 25) MHz. За целта е използван външен интегрален осцилатор от типа VCXO – voltage control xtal oscillator, при който променяме честотата, чрез промяна на постоянно напрежение.
1.5 – СХЕМА ЗА НАЧАЛНО УСТАНОВЯВАНЕ и ИНДИКАЦИЯ – „НОРМАЛНО ЗАХРАНВАНЕ”
Този блок има функцията да премахне сигнала RESET, след нормализиране на захранващото напрежение на системата. Също така при спад в захранването за определено време, той рестартира системата, за да не се получават грешки. Използваме интегрална схема MCP1319-44, на фирмата Microchip technology, inc.
След като захранващото напрежение достигне прага от 4,4V, схемата изчаква 0,2s, след което установява сигнала във високо ниво. Чипът разполага и с инверсен изход, RESET, който рестартира устройствата, поставени на системния куплунг. Също така е поставена допълнителна верига, сигнализираща „НОРМАЛНО ЗАХРАНВАНЕ”
1.6 – ИНДИКАЦИЯ ЗА НОРМАЛНА РАБОТА
Заданието изисква да има индикация, че процесорът е в работен цикъл, не е блокирал по софтуерни или хардуерни причини. Това е изпълнено посредством таймер NE555 със схема, която следи за наличие на импулси с определена честота и коефициент на запълване. В случая, микроконтролерът трябва да изкарва честота от 2 до 200 Hz с коефициент на запълване около 50%. За това софтуерно се грижи BIOS (Basic Input/Output System).
1.7 – USB (Universal Serial Bus) интерфейс.
Използваме интегрална схема MAX3421E, която представлява USB2.0 – Host контролер, комуникиращ с микроконтролера посредством SPI интерфейс. Към него се поставят и допълнителни вериги за ограничаване на тока и съгласуване на нивата (3,3V5V).
1.8 - ИНТЕРФЕЙС ЗА СТАНДАРТНА КЛАВИАТУРА (PS/2)
Тъй като микроконтролера има вграден универсален синхронен/асинхронен порт (USART), можем да го използваме за целта в синхронен режим. Свързваме го директно с MCU на предвидените за това вход/изходи.
1.9 - ДИСПЛЕЙ ЗА ОПЕРАТОРА (LCD 2x40)
Заданието предвижда поставянето на дисплей. Ще използваме такъв с паралелно управление в 4-битов режим. В този режим се използва два пъти по-тясна шина за данни (8-bit → 4-bit) с цел пестене на вход/изходи. Информацията се изпраща на два пъти. Производител: NewHaven Display модел: NHD-0240AZ-FL-GBW. За управлението му използваме сигнали от 2 порта поради недостатъчни свободни вход/изходи от един порт.
1.10 - ИЗХОД ЗА СИНХРОНИЗАЦИЯ С ОСЦИЛОСКОП
Благодарение на този изход е възможно да проследим какво се случва по шините за данни, адресните и контролните шини, в реално време. В този случай осцилоскопа се поставя в режим „външна синхронизация”, като изхода за синхронизация на схемата се свързва с синхронизиращия вход на осцилоскопа. Използваме GP изход. Синхро импулсите се изработват софтуерно от BIOS.
1.11 - СИСТЕМЕН КУПЛУНГ.
Използваме стандартен 8-bit XT bus (ISA) куплунг. Захранването, адресната шина и шината за данни са свързани стандартно, но контролната шина е нестандартно изпълнена. Това означава, че ако се включи стандартно устройство към куплунга, то няма да проработи, но със сигурност няма и да дефектира. Куплунгът е разработен за специфични цели.
2.0 Синтез на принципна схема
2.1 АДРЕСНИ И ШИНИ ЗА ДАННИ
Връзките, използвани за шините за адресиране и данни са с директна връзка с вътрешно-системните модули, и буферирани към системния куплунг. Шината за данни минава през цялото устройство с една и съща ширина – 8-bit. Адресната шина излиза от процесора и отива във всеки от блоковете с необходимата за целта ширина (SRAM – 18-bit; FLASH – 16-bit; системен куплунг – 13-bit). Това се определя от необходимото пространство за отделните модули, което трябва да бъде достъпно.
Буферирането към системния куплунг за адресната шина се извършва посредством еднопосочните буфери U6 и U7, съответно (74LS365, 74LS541). За шината за данни се използва двупосочният буфер – трансивър U5 (74LS245), като сигналът за оказване на посоката „DIR” се взима от сигнала за разрешение за запис от контролната шина. Всички буфери са постоянно активирани.
2.2 КОНТРОЛНА ШИНА
За адресирането и разделянето на адресното поле не се налага използването на адресен дешифратор в нашия случай. Това е защото микроконтролера има вграден модул за контрол и управление на паметите и допълнителните устройства.
Контролната шина излиза директно от процесора и отива до всеки от модулите. Тя се състои от: Избор на чип <устройство> ( - FLASH; - SRAM; - Устройство на системния куплунг), - разрешен запис, - изход активиран. (при неактивиран , изходите са във високо импедансно състояние.
2.3 СХЕМА ЗА НАЧАЛНО УСТАНОВЯВАНЕ и ИНДИКАЦИЯ ЗА НОРМАЛНО ЗАХРАНВАНЕ.
Схемата за установяване е в интегрален вид и предвижда 200mS закъснение при освобождаване на , след достигане на прага от 4,4V. Когато схемата се установи транзистора Т1 се отпушва и светодиода D6 светва.
Изходът RESET отива към системния куплунг. Той работи с активно – високо ниво.
С бутонът RESET може принудително да се рестартира цялата схема.
-Резисторът R10 е сметнат, така че токът през него при натискане на бутона да е около 1mA.
-Резисторът
-Транзисторът Т1 е с IDmax=100mA, което е предостатъчно за верига управляваща светодиод.
2.4 ТАКТОВ ГЕНЕРАТОР С ПРЕВКЛЮЧВАТЕЛ ЗА ЧЕТИРИ ЧЕСТОТИ.
Генераторът използва готова интегрална схема с вграден кварцов стабилизатор и регулиране на честотата с постоянно напрежение.
Превключването на честотите става, чрез превключвателя SW1. С резисторния делител (R5, R6, R7, R8, R9) се подготвят нужните напрежения за съответните честоти.
При нужда от по-стабилна честота се налага поставянето на стабилизатор на напрежение на входа на делителя.
Ток през делителя :Idiv=2mA
; избираме 620Ω
избираме 390Ω
избираме 715Ω, 2%
2.5 ИНДИКАЦИЯ ЗА НОРМАЛА РАБОТА (RUN)
Схемата е изпълнена с таймер NE555C, като е добавен транзистор и диференцираща верига. Целта на схемата е да следи за наличие на импулси. Ако входът на схемата остане за повече от 0,8s във високо или ниско ниво, индикацията ще изгасне. Това ще стане ако процесорът блокира или има хардуерен проблем в схемата, който не позволява нормалната и работа.
Времеконстантата R2, C2 взимаме директно от документацията на чипа.
R1 е сметнат за ток през светодиода около 8mA.
R3, R4 и C3, са изчислени, така че импулса да може да превключи тригера в интегралната схема, и да може при ниско ниво да разреди кондензатора C2.
2.6 USB ИНТЕРФЕЙС
Стойностите на повечето елементи в тази част на схемата са взети от документацията на MAX3421E.
Добавени са и линейния стабилизатор на напрежение U13 (MCP1700), който изработва захранването на интегралната схема, както и електронния ключ с вграден ограничител на ток U14 (MP62055).
Тъй като U15 и микроконтролера имат различни захранващи напрежения, съответно различни входни и изходни нива, се налага поставянето на съгласуващ модул. Тази работа върши U12 (74BCT8245), 3,3V5V, двупосочен.
2.6 ВХОД ЗА СТАНДАРТНА КЛАВИАТУРА (PS/2)
Входа е директно свързан с микроконтролера. Използваме стандартен mini - DIN 6 pin конектор за клавиатури – женски.
Поради възможност от късо съединение в изхода (оголени изолации на кабела на клавиатурата и др.) е поставен токоограничаващ резистор, който да ограничи тока на максимум 0,5А.
2.7 LCD ДИСПЛЕЙ.
Дисплея е свързан стандартно. Добавена е верига за управление на подсветката изградена от R17, R18 и транзистора M2. Идеята е подсветката на дисплея да се изгася автоматично, ако не се работи с компютъра.
2.8 СИСТЕМЕН КУПЛУНГ за външни устройства.
На схемата се вижда куплунга, захранващите го линии и буферирането на сигналите. Подробностите са описани в предходните обяснения.
3.0 Адресна карта на паметта
Настройката на адресното поле се извършва с помощта на 2 регистъра – CSEL2 и CSELIO. Техните стойности представляват множители на сегменти с дължина 8kB (2000h), чрез които се разделя адресното поле на три основни части.
В нашия случай, CSEL2 REGISTER приема стойност 08h, което определя края на първата адресна област (64kB, адресирана чрез ) и началото на втората област (адресирана чрез ).
Вторият регистър, CSELIO REGISTER, приема стойност 28h, означавайки началото на полето за адресиране на външни устройства (64+256)kB. Това поле е с фиксирана дължина 8kB. Адресира се чрез .
4.0 Времедиаграми
Основни времедиаграми на тактовата шина:
Диаграми при обмен на информация на паметта в конкретния режим.
При четене:
При запис:
Диаграми при комуникация на MCU и PS/2 (UART).
Диаграми при комуникация на SPI:
5.0 Захранване
Разчет на минималната и максималната консумация на устройството.
Анализа извършваме чрез отчитане на минималните и максималните стойности на консумираните от отделните блокове токове. Информацията взимаме от документацията на интегралните схеми. Предвиждат се и консумациите на допълнителните елементи.
|
Maximum, mA
|
Minimum, mA
|
|
+V5
|
+12V
|
-5V
|
-12V
|
+V5
|
+12V
|
-5V
|
-12V
|
MCU
|
300
|
0
|
0
|
0
|
10
|
0
|
0
|
0
|
SRAM
|
55
|
0
|
0
|
0
|
10
|
0
|
0
|
0
|
FLASH
|
30
|
0
|
0
|
0
|
1
|
0
|
0
|
0
|
μP S.visor
|
5
|
0
|
0
|
0
|
0,1
|
0
|
0
|
0
|
OSC
|
45
|
0
|
0
|
0
|
5
|
0
|
0
|
0
|
NE555
|
18
|
0
|
0
|
0
|
8
|
0
|
0
|
0
|
USB
|
560
|
0
|
0
|
0
|
15
|
0
|
0
|
0
|
LCD
|
125
|
0
|
0
|
0
|
5
|
0
|
0
|
0
|
PS/2
|
200
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
Buffers
|
300
|
0
|
0
|
0
|
5
|
0
|
0
|
0
|
ALL
|
1638
|
0
|
0
|
0
|
59,1
|
0
|
0
|
0
|
Power =
|
8,19
|
0
|
0
|
0
|
0,296
|
0
|
0
|
0
|
Ext
|
2000
|
1000
|
500
|
500
|
0
|
0
|
0
|
0
|
ALL+Ext
|
3638
|
1000
|
500
|
500
|
59,1
|
0
|
0
|
0
|
Power =
|
18,19
|
12
|
2.5
|
6
|
0,296
|
0
|
0
|
0
|
Максимална консумирана мощност от всички захранвания Pmax = 38,7W
Максимална консумирана мощност от +5V Pmax5 = 3,64W
Минимална консумирана мощност от всички захранвания 8,5W
Минимална консумирана мощност от +5V Pmin5 = 0,3 W
Едноплатков компютър
|
СПЕЦИФИКАЦИЯ НА ЕЛЕМЕНТИТЕ – лист 1/2
|
Означение
|
Наименование
|
Тип
|
Кол.
|
Забележка
|
U1
|
Процесор
|
PIC18C801
|
l
|
80 pin
|
U2
|
SRAM
|
BS62LV2006SC
|
1
|
-
|
U3
|
FLASH
|
EN29F512
|
1
|
-
|
U4
|
Двупосочен буфер 8 bit
|
74LS245
|
1
|
-
|
U5, U6
|
Буфер 6 bit
|
74LS365
|
2
|
-
|
U7
|
Буфер 8 bit
|
74LS541
|
1
|
-
|
U8
|
Таймер
|
555C
|
1
|
-
|
U9
|
Управляем осцилатор
|
VCXO 32MHz
|
1
|
-
|
U10
|
Нач. установяване
|
MCP1319-44
|
1
|
-
|
U11
|
LCD дисплей 2x40
|
NHD-0240AZ-FL-GBW
|
1
|
-
|
U12
|
(3,3-5)V Съгласуване
|
74BCT8245
|
1
|
-
|
U13
|
Стабилизатор
|
MCP1700 - 3V
|
1
|
-
|
U14
|
Токов ограничител
|
MP62055
|
1
|
-
|
U15
|
USB Контролер
|
MAX3421E
|
1
|
-
|
Q1
|
Транзистор
|
BC557C
|
1
|
-
|
T1
|
Транзистор
|
BSS84L
|
1
|
MOSFET
|
M2
|
Транзистор
|
BS170/SIE
|
1
|
MOSFET
|
D5
|
Светодиод
|
3мм
|
1
|
Зелен
|
D6
|
Светодиод
|
3мм
|
1
|
Жълт
|
D7
|
Диод
|
1N4148
|
1
|
-
|
X1
|
Кварцов стабил.
|
12MHz
|
1
|
-
|
C1
|
Кондензатор
|
10nF / 35V
|
1
|
|
C4-C7, C9,C10, C17, C19-C24, C26
|
Кондензатор
|
100nF / 35V
|
13
|
-
|
C8
|
Кондензатор
|
470nF / 35V
|
1
|
-
|
C3
|
Кондензатор
|
220nF / 35V
|
1
|
-
|
C2, C13, C14, C16, C27-C30
|
Кондензатор
|
1μF / 25V
|
7
|
-
|
C15
|
Кондензатор
|
4,7μF / 25V
|
1
|
-
|
C25
|
Кондензатор
|
22μF / 25V
|
|
|
R15
|
Резистор
|
|
1
|
-
|
R16, R17
|
Резистор
|
12kΩ / 0,25W / 5%
|
2
|
-
|
Едноплатков компютър
|
СПЕЦИФИКАЦИЯ НА ЕЛЕМЕНТИТЕ – лист 2/2
|
Означение
|
Наименование
|
Тип
|
Кол.
|
Забележка
|
R15, R18
|
Резистор
|
10Ω / 5%
|
2
|
-
|
R17
|
Резистор
|
22Ω / 5%
|
1
|
-
|
R12, R13
|
Резистор
|
33Ω / 5%
|
2
|
-
|
R1, R6-R8
|
Резистор
|
390Ω / 5%
|
4
|
-
|
R11
|
Резистор
|
470Ω / 5%
|
1
|
-
|
R5
|
Резистор
|
620Ω / 5%
|
1
|
-
|
R9
|
Резистор
|
715Ω / 2%
|
1
|
-
|
R4
|
Резистор
|
1kΩ / 5%
|
1
|
-
|
R10
|
Резистор
|
4,7kΩ / 5%
|
1
|
-
|
R3
|
Резистор
|
22kΩ / 5%
|
1
|
-
|
R2
|
Резистор
|
1MΩ / 5%
|
1
|
-
|
R16
|
Тример
|
4,7kΩ / 5%
|
1
|
-
|
JS1
|
Конектор
|
Mini DIN 6 - R
|
1
|
PS/2 женски
|
J1
|
Конектор
|
USB – A - F
|
1
|
вертикален
|
J2
|
Куплунг
|
ISA – 8 bit
|
1
|
-
|
J3
|
Куплунг
|
MOLEX 2x4
|
1
|
-
|
J4A
|
pin
|
pin
|
1
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7.0 Използвана литература
-
„Направете сами микрокомпютър” – книга No. 12.
Петър Ц. Петров, „ТЕХНИКА” 1987.
-
„Второ поколение персонални 16-разредни компютри”
Златка И. Александрова, Константин Н. Тодоров,
Е. И. Александрова и др. „ТЕХНИКА” 1991.
-
„Аналогова и цифрова схемотехника”. Г. Михов; И. Пандиев.
Издателство: „Технически университет София”. 2009г.
-
Интернет, wikipedia.org и др.
Сподели с приятели: |