Новости

Часы на микроконтроллере PIC16F84

Работа добавлена:






Часы на микроконтроллере PIC16F84 на http://mirrorref.ru

Министерство образования Российской Федерации

Новосибирский государственный технический университет

Кафедра КТРС

Курсовая работа по курсу

Вычислительная техника и информационные технологии

на тему "Часы на микроконтроллере PIC16F84  "

Выполнили:  Асмолов М.С.

Группа: РТВ 14-81

Проверил: Кривецкий А.В.

Новосибирск 2011.

Содержание

1. Структурная схема устройства

2.Выбор элементной базы

3.Электрическая принципиальная схема

4.Разработка программного обеспечения

5.Программирование микроконтроллера

6. Заключение

7. Список литературы

Задание

Разработать часы реального времени на микроконтроллереPIC16F84:

Напряжение питания устройства      5В  +/-1В

Частота тактового генератора микроконтроллера    4 Мгц

Количество отображаемых цифр на индикаторе        4

Количество кнопок управления          2

Единицы измерения времени     Часы\Минуты\Секунды1.Структурная схема устройства

Структурная схема электронных часов на микропроцессоре приведена на рисунке 1. Она состоит из 4 основных блоков.

Тактовый генератор предназначен для генерации прямоугольных импульсов частотой 4 Мгц для тактирования микропроцессора и программируемого таймера.

Рисунок 1. Структурная схема устройства

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

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

Дисплей предназначен для вывода реального времени в графическом виде понятном для человека.

Клавиатура электронных часов служит для ввода управляющих сигналов таких как установка режима индикации дисплея и установка времени.

2. Выбор элементной базы

Данное устройство может быть выполнено на разной элементной базе включая микросхемы серии 155,176,561 также различные микропроцессорные комплекты 580,1816,1830 и  на специализированных  микросхемах например 1901 что предпочтительней с экономической точки зрения т.к в их состав входят контроллер клавиатуры и дисплея тактовый генератор, устройство управления, таймер и многое другое необходимое для электронных часов.

PIC16F84 относится к семейству КМОП микроконтроллеров. Отличается тем, что имеет внутреннее 1K x 14 бит EEPROM для программ, 8-битовые данные и 64байт EEPROM памяти данных. При этом отличаются низкой стоимостью и высокой производительностью. Все команды состоят из одного слова (14 бит шириной) и исполняются за один цикл (400 нс при 10 МГц), кроме команд перехода, которые выполняются за два цикла (800 нс). PIC16FСерия PIC16F84 подходит для широкого спектра приложений от схем высокоскоростного управления автомобильными и электрическими двигателями до экономичных удаленных приемопередатчиков, показывающих приборов и связных процессоров. Наличие ПЗУ позволяет подстраивать параметры в прикладных программах (коды передатчика, скорости двигателя, частоты приемника и т.д.). Малые размеры корпусов, как для обычного, так и для поверхностного монтажа, делает эту серию микроконтроллеров пригодной для портативных приложений. Низкая цена, экономичность, быстродействие, простота использования и гибкость ввода/вывода делает PIC16F84 привлекательным даже в тех областях, где ранее не применялись микроконтроллеры. Например, таймеры, замена жесткой логики в больших системах, сопроцессоры.

Структурная схема микроконтроллера PIC16F84:

Рисунок 2. Структурная схема микроконтроллераPIC16F84

Архитектура основана на концепции раздельных шин и областей памяти для данных и для команд (Гарвардская архитектура). Шина данных и память данных (ОЗУ) - имеют ширину 8 бит, а программная шина и программная память (ПЗУ) имеют ширину 14 бит. Такая концепция обеспечивает простую, но мощную систему команд, разработанную так, что битовые, байтовые и регистровые операции работают с высокой скоростью и с перекрытием по времени выборок команд и циклов выполнения. 14- битовая ширина программной памяти обеспечивает выборку 14-битовой команды в один цикл. Двухступенчатый конвейер обеспечивает одновременную выборку и исполнение команды. Все команды выполняются за один цикл, исключая команды переходов. В PIC16F84 программная память объемом 1К х 14 расположена внутри кристалла. Исполняемая программа может находиться только во встроенном ПЗУ.

Условно графическое изображение микроконтроллера:

Если установлена защита, то бит CP можно стереть только вместе с содержимым кристалла. Сначала будет стерта EEPROM программная память и память данных и в последнюю очередь бит защиты кода CP.

Если кристалл защищен, пользователю рекомендуется использовать для идентификации только младшие семь бит каждого ID слова, а в старший бит записывать `0`. Тогда ID слова можно будет прочитать даже в защищенном варианте.

Вход в режим SLEEP осуществляется командой SLEEP. По этой команде, если WDT разрешен, то он сбрасывается и начинает счет времени, бит "PD" в регистре статуса (f3) сбрасывается, бит "TO" устанавливается, а встроенный генератор выключается. Порты ввода/вывода сохраняют состояние, которое они имели до входа в режим SLEEP. Для снижения потребляемого тока в этом режиме, ножки на вывод должны иметь такие значения, чтобы не протекал ток между кристаллом и внешними цепями. Ножки на ввод должны быть соединены внешними резисторами с высоким или низким уровнем, чтобы избежать токов переключения, вызываемых плавающими высокоомными входами. То же и про RTCC. Ножка /MCLR должна быть под напряжением Vihmc.

Обозначение

Нормальный режим

Режим записи EEPROM

RA0 - RA3

Двунаправленные линии ввода/вывода.Входные уровни ТТЛ.

-

RA4/RTCC

Вход через триггер Шмитта. Ножка порта ввода/вывода с открытым стоком или вход частоты для таймера/счетчика RTCC

-

RB0/INT

Двунаправленная линия порта ввода/вывода или внешний вход прерывания. Уровни ТТЛ.

-

RB1 - RB5

Двунаправленные линии ввода/вывода. Уровни ТТЛ.

-

RB6

Двунаправленные линии ввода/вывода. Уровни ТТЛ.

Вход тактовой частоты для EEPROM

RB7

Двунаправленные линии ввода/вывода. Уровни ТТЛ.

Вход/выход EEPROM данных.

/MCLR/Vpp/

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

Для режима EEPROM - подать Vpp.

OSC1 /CLKIN

Для подключения кварца, RC или вход внешней тактовой частоты.

-

OSC2 /CLKOUT

Генератор, выход тактовой частоты в режиме RC генератора, в остальных случаях - для подкл.кварц

-

Vdd

Напряжение питания

Напряжение питания

Vss

Общий(земля)

Общий(земля)

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

Интервал рабочих температур

-55 ... +125С

Температура хранения

-65 ... +150С

Напряжение на любой ножке относительно Vss (земли) (исключая Vdd и /MCLR)

-0.6...Vdd +0.6 В

Напряжение Vdd относительно Vss

0 ... +7.5 В

Напряжение на /MCLR относительно Vss

0...+14 В (Прим.2)

Общая рассеиваемая мощность

800 мВт (Прим.1)

Макс. ток в ножку Vss

150 мА

Макс. ток в ножку Vdd

100 мА

Макс. ток в любую ножку ввода

+- 500 мкА

Макс. втекающий ток (любая ножка Вывода)

25 мА

Макс. вытекающий ток (любая ножка Вывода)

20 мА

Макс. суммарный вытекающий ток для всех ножек порта А

80 мА

Макс. суммарный вытекающий ток для всех ножек порта В

50 мА

Макс. суммарный втекающий ток для всех ножек порта А

50 мА

Макс. суммарный втекающий ток для всех ножек порта В

100 мА

Это также относится и к EEPROM памяти данных-констант.

В регистре статуса (03h) есть биты выбора страниц, которые позволяют обращаться к четырем страницам будущих модификаций этого кристалла. Однако для PIC16F84 память данных существует только до адреса 02Fh. Первые 12 адресов используются для размещения регистров специального назначения. Регистры с адресами 0Ch-2Fh могут быть использованы, как регистры общего назначения, которые представляют собой статическое ОЗУ. Некоторые регистры специального назначения продублированы на обеих страницах, а некоторые расположены на странице 1 отдельно. Когда установлена страница 1, то обращение к адресам 8Ch-AFh фактически адресует страницу 0. К регистрам можно адресоваться прямо или косвенно. В обоих случаях можно адресовать до 512 регистров.

Watchdog таймер представляет собой полностью независимый встроенный RC генератор, который не требует никаких внешних цепей. Он будет работать, даже если основной генератор остановлен, как это бывает при исполнении команды SLEEP. Таймер вырабатывает сигнал сброса. Выработка таких сбросов может быть запрещена путем записи нуля в специальный бит конфигурации WDTE. Эту операцию производят на этапе программирования  микросхем.

Команды "CLRWDT" и "SLEEP" обнуляют WDT и делитель, если он подключен к WDT. Это запускает выдержку времени сначала и предотвращает на некоторое время выработку сигнала сброс. Если сигнал сброса от WDT все же произошел, то одновременно обнуляется бит "TO" в регистре статуса (f3). В приложениях с высоким уровнем помех, содержимое регистра OPTION подвержено сбою. Поэтому регистр OPTION должен обновляться через равные промежутки времени. Следует учесть, что наихудшей комбинацией является: Vdd=min, температура=max и max коэффициент деления делителя,- это приводит к самой большой выдержке времени, она может достигать нескольких секунд.

Также в устройстве будет использован цифро-буквенный индикатор с высотой цифр 7,5 мм из семи сегментов с децимальной точкой АЛС324А, его графическое изображение приведено на рисунке 4.

3. Разработка схемы электрической принципиальной

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

Кристаллы PIC16F84 могут работать с четырьмя типами встроенных генераторов. Пользователь может запрограммировать два конфигурационных бита (FOSC1 и FOSC0) для выбора одного из четырех режимов: RC, LP, XT, HS. Кристаллы PIC16... могут также тактироваться и от внешних источников. Генератор, построенный на кварцевых или керамических резонаторах, требует периода стабилизации после включения питания. Для этого, встроенный таймер запуска генератора держит устройство в состоянии сброса примерно 18 мс после того, как сигнал на /MCLR ножке кристалла достигнет уровня логической единицы. Таким образом, внешняя цепочка RC , связанная с ножкой /MCLR во многих случаях не требуется.

Встроенные генераторы работоспособны при определенных номиналах питающего напряжения:

Vdd

OSC mode

Max Freq

2..3V

RC

2 MHz

LP

200 kHz

3..6V

RC, XT

4 MHz

LP

200 kHz

4,5..5,5

HS

10 MHz

При частотах ниже 500 кГц, внутренний генератор может генерировать сбойный импульс на гармониках, когда переключается бит 0 порта A. Этого не происходит при использовании внешнего генератора или при встроенном RC генераторе. PIC16F84-XT, -HS или -LP требуют подключения кварцевого или керамического резонатора к выводам OSC1 и OSC2. Маркировка следующая: XT - стандартный кварцевый генератор, HS - высокочастотный кварцевый генератор, LP - низкочастотный генератор для экономичных приложений. Резистор Rs может потребоваться для генератора "HS", особенно при частотах ниже 20 МГц для гашения гармоник. Он также может потребоваться в режиме XT с резонатором типа AT strip-cut. Необходимые значения конденсаторов для разных частот приведены в таблице.

Более высокая емкость будет увеличивать стабильность генератора, но также будет увеличивать время запуска. Значения приведены для ориентировки. В режимах HS и XT, чтобы избежать гармоник может потребоваться последовательный резистор Rs.

Таблица Выбор конденсатора для кварцевого генератора

Тип генератора

Частота

Конденсатор С1

Конденсатор С2

LP

32 КГц

30 пФ

30 - 50 пФ

100 КГц

15 пФ

15 пФ

200 КГц

0- 15 пФ

0 - 15 пФ

XT

100 КГц

15 - 30 пФ

200 - 300 пФ

200 КГц

15- 30 пФ

100 - 200 пФ

455 КГц

15 - 30 пФ

15 -100 пФ

1 МГц

15 - 30 пФ

15 - 30 пФ

2 МГц

15 пФ

15 пФ

4МГц

15 пФ

15 пФ

HS

4 МГц

15 пФ

15 пФ

10 МГц

15пФ

15 пФ

Ввод информации для управления электронными часами осуществляется через 2 кнопки подключенных к портамRB0 иRA0 микроконтроллера. Схема подключения показана на рисунке 6. Меры по предотвращению дребезжания контактов могут реализоваться программным методом. Сопротивление резисторов выбирается  из расчета протекания наименьшего  тока  необходимого для фиксации логической единицы на входах микроконтроллера при неактивных позициях кнопок и в данном случае составляют 10 Ком.

Рисунок 6 . Подключение клавиатуры управления

Рисунок 7. Схема подключения устройства индикации

Также в устройстве присутствует блок индикации состоящий из 4-х индикаторов АЛС324А которые управляются микропроцессором через токоограничивающие резисторыR4...R10 номиналом 180 Ом. Индикация осуществляется динамическим способом, т.е. вывод осуществляется по порядку 1,2,3,4 - индикатор по 10мс на каждый индикатор. Схема подключения индикаторов показана на рисунке  7.

4. Разработка программного обеспечения

MPLAB - это интегрированная среда разработки (IDE) для семейства микроконтроллеров PICmicro фирмы Microchip Technology Incorporated. MPLAB включает текстовый редактор, симулятор (виртуальный отладчик), менеджер проектов и поддерживает эмуляторы (внутрисхемные отладчики)

Инструментальные средства MPLAB, организованные как ниспадающие меню и определяемые быстрые клавиши, позволяют:

- ассемблировать, компилировать исходный текст;

- отлаживать логику работы, наблюдая с помощью симулятора или, в реальном времени, с эмулятором MPLAB-ICE ;

- просматривать переменные в окнах просмотра;

- программировать кристаллы с помощью программаторов PICSTART Plus или PRO MATE II

- и многое другое.

Рисунок 8. Блок схема программы

Блок схема разрабатываемой программы приведена на рисунке 8.Она состоит из блока начальных установок, в который входят процедуры обнуления переменных используемых в программе, установки  направления портов, установки нужного коэффициента предделителя, тест работоспособности индикаторов. Блока вывода на индикацию в котором осуществляется преобразование двоичного кода в код семисегментных индикаторов, формируются необходимые задержки времени для динамической индикации, также контроль вывода выбранного пользователем режима индикации  (режим часы : минуты и минуты : секунды ). Участок программы сканирования клавиатуры отвечает за выбор режима индикации и установку времени вводимых с клавиатуры, в следующей последовательности в режиме (часы : минуты ) кнопкой установки времени может быть изменено только значение раздела часов а в режиме (минуты : секунды) только минут.

Самая ответственная часть программы это обработка прерывания полученного от встроенного таймера микроконтроллера от неё зависит точность хода часов т.е ошибки в этой части программы приводят к значительному отставанию или опережению хода часов, а также может быть осуществлена точная подстройка. Рассмотрим получение интервала в 1 секунду с помощью таймера: при конфигурации таймера его надо подключить к внутреннему генератору, который по заданию вырабатывает частоту 4,00 Мгц после такого подключения в данном микроконтроллере на таймер будет подаваться частота генератора (Fг)/4 и будет равна 1Мгц с помощью встроенного предделителя она делится на 64 и на таймер приходит уже 15625 гц. После этого нам необходимо разделить это число на такое же чтобы получить частоту колебаний в 1гц. Из за небольшой разрядности таймера (8) эта процедура делается в два этапа делим на 125 и еще раз на столько же. Сразу после этого прибавляем 1 к регистру секунд (в программеsek). Результат приведен ниже:

  1.F(г)=4 мГц/4=1000000

  2. 1000000/64=15625

  3. 15625/125=125

  4. 125/125=1 Гц

LIST    p=16F84A  ; указатель процессора

include <p16F84A.inc>

org 0x00  ; Вектор сброса

Goto Start

;***************************************************************

org 004  ;Начало процедуры обработки прерывания

movwf temp  ; Сохранение рабочего регистраW в регистреtemp

clrwdt   ;Очистка сторожевого таймера для предотвращения

call Int1  ; сброса процессора каждый 18мс

movlw   b'10100000' ; Разрешаем  прерывания от таймера

movwf   INTCON  ;

movf temp,w  ;Восстанавливаем значение рабочего регистра

clrwdt    ;Очистка сторожевого таймера

return    ;Выход из процедуры обработки прерывания

;****************************************************************

org 0x10

segment  ; Таблица преобразования DEC -> семисегментный код.

CLRF   PCLATH

ADDWF  PCL, F

dt 07E, b'00001100', 0B6, 09E, 0CC, 0DA, 0FA, 00E, 0FE, 0DE

Data1 ;*************десятки

CLRF   PCLATH

ADDWF  PCL, F

         ;0 1 2 3 4 5 6 7 8 9

dt 0,0,0,0,0,0,0,0,0,0

dt 1,1,1,1,1,1,1,1,1,1

dt 2,2,2,2,2,2,2,2,2,2

dt 3,3,3,3,3,3,3,3,3,3

dt 4,4,4,4,4,4,4,4,4,4

dt 5,5,5,5,5,5,5,5,5,5

Data2 ;***********единицы

CLRF   PCLATH

ADDWF  PCL, F

       ;0 1 2 3 4 5 6 7 8 9

dt 0,1,2,3,4,5,6,7,8,9 ;0

dt 0,1,2,3,4,5,6,7,8,9 ;10

dt 0,1,2,3,4,5,6,7,8,9 ;20

dt 0,1,2,3,4,5,6,7,8,9 ;30

dt 0,1,2,3,4,5,6,7,8,9 ;40

dt 0,1,2,3,4,5,6,7,8,9 ;50

; Программные регистры:

skan1 equ 20 ;рег хранения RB1,2

clok1 equ 21 ; хранение часов

sek equ 22 ;регистр хранения секунд

min equ 23 ;регистр хранения минут

cl_k equ 24

Dig_x  equ 25 ; Значение X0:00 для индикации.

Dig_y  equ 26 ; Значение 0X:00 для индикации.

Dig_z  equ 27 ; Значение 00:X0 для индикации.

Dig_exp  equ 28 ; Значение 00:0X для индикации.

cnt1     equ 29 ;переменная исп-ся для задержки времени

cnt2     equ 2A ;переменная исп-ся для задержки времени

cnt_r  equ 2B ;переменная исп-ся для задержки времени

temp  equ 2C

clok2  equ 2D

temp1  equ 2E

n1  equ 2f

n2  equ 30

Start   ; Начальная инициализация.

clrw

bsf     STATUS,RP0 ; Обращение к банку 1.

clrf    PORTA  ; Обнулить порт А.

clrf    PORTB  ; Обнулить порт В.

movlw   b'00010000'

movwf   TRISA  ; RA0 - RA3 выходы, RA4 вход.

movlw   b'00000001'

movwf   TRISB  ; RB1 - RB7 выходы.RB0 вход

movlw   b'00000101' ;коэффициент предделителя 64

movwf   OPTION_REG

bcf     STATUS,RP0 ; Обращение к банку 0.

movlw   b'10100000'

movwf   INTCON

clrf min

clrf sek

clrf cl_k

movlw 0

movwf TMR0

movlw 01  ; Для контроля дисплея

movwf Dig_x

movlw 02  ; загрузить во все регистры индикации 8.

movwf Dig_y

movlw 03

movwf Dig_z

movlw 04

movwf Dig_exp

movlw   .131

movwf   clok1

movwf   TMR0

movlw   .1

movwf   temp1

Start1   ; Основной цикл программы.

movlw   19  ; Установить счетчик циклов индикации.

movwf   cnt_r

loop1   clrwdt

call    refresh  ;индикаторы.

decfsz  cnt_r, f

goto    loop1

;***присвоение значения регистрам индикации в зависимости от режима ;индикации******

clrwdt

btfss temp1,0

call Temp_min

btfsc temp1,0

call Temp_clk

;******присвоение значения регистрам индикации

movf n1,0

call Data1

movwf Dig_x

movf n1,0

call Data2

movwf Dig_y

movf n2,0

call Data1

movwf Dig_z

clrwdt

movf n2,0

call Data2

movwf Dig_exp

;********клавиши установки режима индикации и времени*******

call Delay

btfss PORTA,4 ;сканируем клавишу установки режима RA4 вывод 3

incf temp1,1  ;прибавляем кtemp 1

btfss PORTB,0  ;клавиша установки времени RB0 вывод 6

call Min_clk

goto Start1

;************************************************************

Temp_min

movf min,0

movwf n1

movf sek,0

movwf n2

return

;************************************************************

Temp_clk

movf cl_k,0

movwf n1

movf min,0

movwf n2

return

;****************выбор прибавить минуты(0) или часы(1)***********

Min_clk

clrwdt

btfss temp1,0

incf min,1

btfsc temp1,0

incf cl_k

;*******проверка 60 мин 24 часа*****************

movf min,0

sublw .60

btfsc STATUS,Z

clrf min

movf cl_k,0

sublw .24

btfsc STATUS,Z

clrf cl_k

clrwdt

return

Sek ;*****************делениена125

movlw   .131  ;записываем 131,т.к. 256-125=131

movwf   clok1

incfsz sek

movf sek,0

sublw .60

btfsc STATUS,Z

call Min

return

Min

clrf sek

incfsz min

movf min,0

sublw .60

btfsc STATUS,Z

call Clok

retfie

Clok

clrf min

incfsz cl_k

movf cl_k,0

sublw .24

btfsc STATUS,Z

clrf cl_k

retfie

Int1     ;процедура обработки прерывания

movlw   .131  ;записываем 131 т.к. 256-125=131

addwf  TMR0,1 ;256(максимальное значение таймера)

incfsz  clok1  ;125(нужный коэффициент деления)

return

call  Sek

return

;***********************Выводнаиндикатор*************

refresh   ; Процедура сканирования индикации.

movf    Dig_x, W ; Значение десятых у часов для индикации.

call    segment ; Преобразование DEC -> семисегментный код.

movwf   PORTB  ; Вывод цифры на индикатор.

bcf     PORTA, 0 ; Активизировать индикатор.

call    Delay  ; Задержка времени для сканирования.

bsf     PORTA, 0 ; Отключить индикатор.

movf    Dig_y, W ; Значение ед.часов  для индикации.

call     segment ; Преобразование DEC -> семисегментный код.

movwf   PORTB  ; Вывод цифры на индикатор.

bcf     PORTA,1 ; Активизировать индикатор.

call    Delay  ; Задержка времени для сканирования.

bsf     PORTA,1 ; Отключить индикатор.

movf    Dig_z, W ; Значение десятых у минут для индикации.

call   segment; Преобразование DEC -> семисегментный код.

movwf   PORTB  ; Вывод цифры на индикатор.

bcf     PORTA,2 ; Активизировать индикатор.

call    Delay  ; Задержка времени для сканирования.

bsf     PORTA,2 ; Отключить индикатор.

movf    Dig_exp, W ; Значение единиц у минут.

call  segment; Преобразование DEC -> семисегментный код.

movwf   PORTB  ; Вывод цифры на индикатор.

bcf     PORTA,3 ; Активизировать индикатор.

call    Delay  ; Задержка времени для сканирования.

bsf     PORTA,3 ; Отключить индикатор.

return

; ************************************************************

Delay    ; Подпрограмма задержки времени

clrwdt

movlw   .5  ; для сканирования индикации.

movwf   cnt1

nop

beta   movlw   .150

  movwf   cnt2

 Alfa nop

nop

decfsz  cnt2, f

goto    Alfa

 nop

 nop

 decfsz  cnt1, f

goto    beta

nop

return

; *******************************************************

end

Заключение

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

Список литературы

1) Угрюмов Е.П. Цифровая схемотехника.-СПб.:БХВ-Санкт-Петербург,2000.-528 с.

2) Используемые интернет сайты:http://www.microchip.ru:8101/

http://www.paguo.ru/

http://www.disall.narod.ru/picpro.htm

http://www.chipnews.ru/html.cgi/arhiv/index.htm

Микроконтроллеры. Выпуск 2:

Однокристальные микроконтроллеры PIC12c5x, PIC16x8x, PIC14000,

Формат

Зона

Поз

Обозначение

Наименование

кол

Примечание

Резистор

R1,R2

МЛТ 0,125 10 Ком +/- 10%

2

R3-R10

МЛТ 0,125 180 ом +/- 10%

8

Конденсатор

С1,С2

К5-16 30 пф +\- 10%

2

Микросхемы

DD1

PIC16F84A-04 i\p

1

Индикатор

HG1-HG4

АЛС324А1

4

Кварцевый резонатор

Qz1

РК-853 4.000 Мгц

1

Часы на микроконтроллере PIC16F84 на http://mirrorref.ru


Похожие рефераты, которые будут Вам интерестны.

1. Реферат Доводчик стёкол на микроконтроллере PIC 16F84A

2. Реферат Двухканальный регулятор мощности на микроконтроллере PIC16F84A

3. Реферат Мои биологические часы: урок

4. Реферат Разработка схемы Часы, идущие по GPS

5. Реферат Разработка печатной платы (ПП) для двухканального регулятор мощности на микроконтроллере PIC16F84A

6. Реферат ОСОБЕННОСТИ ИДИОСТИЛЯ М. КАННИНГЕМА (НА ПРИМЕРЕ POMAHA «ЧАСЫ»)

7. Реферат Наши взгляды как часы - все показывают разное время, но каждый верит только свои