8. Жидецкий В.Ц., Джигирей В.С., Мельников А.В. Основы охраны труда: Учебник – Львов, Афиша, 2008 – 351с.
9. Денисенко Г.Ф. Охрана труда: Учебн.пособие – М., Высшая школа, 1989 – 319с.
10. Самгин Э.Б. Освещение рабочих мест. – М.: МИРЭА, 1989. – 186с.
11. Справочная книга для проектирования электрического освещения. / Под ред. Г.Б. Кнорринга. – Л.: Энергия, 1976.
12. Борьба с шумом на производстве: Справочник / Е.Я. Юдин, Л.А. Борисов;
Под общ. ред. Е.Я. Юдина – М.: Машиностроение, 1985. – 400с., ил.
13. Зинченко В.П. Основы эргономики. – М.: МГУ, 1979. – 179с.
14.Методичні вказівки до виконання дипломної роботи для учнів спеціальності «Оператор комп’ютерного набору; оператор комп’ютерної верстки»/ Упоряд.: Д.О. Дяченко, К.О. Ізмалкова, О.Г. Меркулова. – Сєверодонецьк: СВПУ, 2007. – 40 с.
15. Н. Заец. Многофункциональные часы. — Схемотехника, 2006, № 2,с. 41,42.
16. Н. Заец. Термометр - часы с датчиками фирмы DallasSemiconductor. — Схемотехника, 2005, № 5, с. 52 - 55.
17. Н. Заец. Радиолюбительские конструкции на Р1С-микроконтроллерах. Книга 3. — М.: СОЛОН-Пресс, 2005, с. 248.
18. Н. Заец. Отечественные жидкокристаллические индикаторы TIC9162 с драйверами по технологии COG. - Схемотехника, 2005, №9, с. 9-11.
19. Н. Заец. Таймеры десятичного счета. — Электрик, 2006, № 7-8, с. 36 -39.
20. Мощные полевые переключательные транзисторы фирмы InternationalRectifier. — Радио, 2001, № 5, с. 45.
21. А. Долгий. Разработка и отладка устройств на микроконтроллерах. — Радио, 2001 ,№ 5-12, 2002, № 1.
22. А. Долгий. Программаторы и программирование микроконтроллеров. — Радио, 2004, № 1-12.
23. Н. Заец. Универсальный таймер. — Схемотехника, 2003, № 1, с. 53.
24. Н. Заец. Электронные самоделки для быта, отдыха и здоровья.— М.: СОЛОН-Пресс, 2009, 423 с.
Приложения
Приложение А
Микроконтроллеры PIC12F629/675
Организация памяти программ
Микроконтроллеры PIC12F629/675 имеют 13-разрядный счетчик команд PC, способный адресовать 8К х 14 слов памяти программ. Физически реализовано в PIC12F629/675 1К х 14 f0000h-03FFh) памяти программ. Обращение к физически не реализованной памяти программ приведет к адресации реализованной памяти в адресном пространстве 0000h-03FFh. Адрес вектора сброса - OOOOh. Адрес вектора прерываний - 0004h ( рисунок 1).
Рисунок 1-Организация памяти программ и стека в микроконтроллерах PIC12F629/675
Электрические характеристики
Предельная рабочая температура ...............................................от -40°Сдо +125°С
Температура хранения..............................................................от -65°С до +150°С
Напряжение Vdd относительно Vss............................................от -0.3Вдо +6.5В
Напряжение -MCLR относительно Vss..........................................отОВдо+13.5В
Напряжение на остальных выводах относительно Vss...... от -0.3В до Vdd+О.ЗВ
Рассеиваемая мощность (1)......................................................................... ..0.8Вт
Максимальный ток вывода Vss................................................................ 300мА
Максимальный ток вывода Vdd............................................................... 250мА
Входной запирающий ток Іік (V < 0 или V > Vdd).................................. ±20мА
Выходной запирающий ток Ьк (Vo < 0 или Vo > Vdd)........................... +20мА
Максимальный выходной ток стока канала ввода/вывода.........................25мА
Максимальный выходной ток истока канала ввода/вывода.......................25мА
Максимальный выходной ток стока портов ввода/вывода GPIO………. 125мА
Максимальный выходной ток истока портов ввода/вывода GPIO………125мА
Система команд
В PIC12F629/675 система команд аккумуляторного типа, ортогональна и разделена на три основных группы:
• Байт ориентированные команды
• Бит ориентированные команды
• Команды управления и операций с константами
Каждая команда состоит из одного 14 - разрядного слова, разделенного на код операции (OPCODE), определяющий тип команды и один или несколько операндов, определяющие операцию команды.
Таблица 1 - Список команд микроконтроллеров PIC12F629/675
Мнемоника команды | Описание | Циклов | 14-разрядный код | Изм. флаги | Прим. |
Бит 13 БитО | |||||
Байт ориентированные команды | |||||
ADDWF f,d | Сложение W и f | 1 | 00 0111dfff ffff | C,DC,Z | 1,2 |
ANDWF f,d | Побитное 'И' W и f | 1 | 00 0101 dfff ffff | z | 1,2 |
CLRF f | Очистить f | 1 | 00 0001Ifff ffff | z | 2 |
CLRW | Очистить W | 1 | 00 0001Oxxx xxxx | z | |
COMF f,d | Инвертировать f | 1 | 00 1001 dfff ffff | z | 1,2 |
DECF f,d | Вычесть 1 из f | 1 | 00 0011 dfff ffff | z | 1,2 |
DECFSZ f,d | Вычесть 1 из f и пропустить если 0 | 1(2) | 00 1011 dfff ffff | 1,2,3 | |
INCF f,d | Прибавить 1 к f | 1 | 00 1010 dfff ffff | z | 1,2 |
INCFSZ f,d | Прибавить 1 к f и пропустить если 0 | 1(2) | 00 1111 dfff ffff | 1,2,3 | |
IORWF f,d | Побитное 'ИЛИ' W и f | 1 | 00 0100 dfff ffff | z | 1,2 |
MOVF f,d | Переслать f | 1 | 00 1000 dfff ffff | z | 1,2 |
MOVWF f | Переслать W в f | 1 | 00 0000 lfff ffff | ||
NOP | Нет операции | 1 | rsП Л Г\ г, .... г. n0 г» р | ||
RLF f,d | Циклический сдвиг f влево через перенос | 1 | 00 1101 dfff ffff | с | 1,2 |
RRF f,d | Циклический сдвиг f вправо через перенос | 1 | 00 1100 dfff ffff | с | 1.2 |
SUBWF f,d | Вычесть W из f | 1 | 00 0010 dfff ffff | C,DC,Z | 1,2 |
SWAPF f,d | Поменять местами полубайты в регистре f | 1 | 00 1110 dfff ffff | 1,2 | |
XORWF f,d | Побитное 'исключающее ИЛИ' W и f | 1 | 00 0110 dfff ffff | z | 1,2 |
Бит ориентированные команды | |||||
BCF f,b | Очистить бит b в регистре f | 1 | 01 OObb bfff ffff | 1,2 | |
BSF f,b | Установить бит b в регистре f | 1 | 01 Olbb bfff ffff | 1,2 | |
BTFSC f,b | Проверить бит b в регистре f, пропустить если 0 | 1(2) | 01 lObb bfff ffff | 3 | |
BTFSS f,b | Проверить бит b в регистре f, пропустить если 1 | 1(2) | 01 llbb bfff ffff | 3 | |
Команды управления и операций с константами | |||||
ADDLW к | Сложить константу с W | 1 | 11lllx kkkk kkkk | C,DC,Z | |
ANDLW к | Побитное 'И' константы и W | 1 | 11 1001 kkkk kkkk | z | |
CALL к | Вызов подпрограммы | 2 | 10 Okkk kkkk kkkk | ||
CLRWDT | Очистить WDT | 1 | 00 0000 0110 0100 | -TO.-PD | |
GOTO к | Безусловный переход | 2 | 10lkkk kkkk kkkk | ||
IORLW к | Побитное 'ИЛИ' константы и W | 1 | 11 1000 kkkk kkkk | z | |
MOVLW к | Переслать константу в W | 1 | |||
RETFIE | Возврат из подпрограммы с разрешением прерываний | 2 | 00 0000 0000 1001 | ||
RETLW к | Возврат из подпрограммы с загрузкой константы в W | 2 | 11 Olxx kkkk kkkk | ||
RETURN | Возврат из подпрограммы | 2 | 00 0000 0000 1000 | ||
SLEEP | Перейти в режим SLEEP | 1 | 00 0000 0110 0011 | -TO.-PD | |
SUBLW к | Вычесть W из константы | 1 | 11 HOx kkkk kkkk | C,DC,Z | |
XORLW к | Побитное 'исключающее ИЛИ' константы и W | 1 | 11 1010 kkkk kkkk | z |
Рисунок 2- Чертежи корпусов
Таблица 2 – Размеры корпусов
Единицы измерения | Дюймы* | Миллиметры | |||||
Пределы размеров | Мин. | Ном. | Макс. | Мин. | Ном. | Макс. | |
Число выводов | п | 8 | 8 | ||||
Расстояние между выводами | Р | 0.100 | 2.54 | ||||
Ширина нижней части вывода | В | 0.014 | 0.018 | 0.022 | 0.36 | 0.46 | 0.56 |
Ширина верхней части вывода | В1 | 0.045 | 0.058 | U.070 | 1.14 | 1.40 | 1.?а |
Радиус сгиба вывода | R | 0.000 | 0.005 | 0.010 | 0.00 | 0.13 | 0.25 |
Толщина вывода | с | 0.008 | 0.012 | 0.015 | 0.20 | 0.29 | 0.38 |
Высота корпуса | А | 0.140 | 0.155 | 0.170 | 3.56 | 3.94 | 4.32 |
Толщина корпуса | А2 | 0.115 | 0.130 | 0.145 | 2.92 | 3.30 | 3.68 |
Расстояние между корпусом и платой | А1 | 0.015 | 0.38 | ||||
Длина нижней части вывода | L | 0.125 | 0.130 | 0.135 | 3.18 | 3.30 | 3.43 |
Длина корпуса | D | 0.360 | 0.373 | 0.385 | 9.14 | 9.46 | 9.78 |
Ширина корпуса | Е | 0.300 | 0.313 | 0.325 | 7.62 | 7.94 | 8.26 |
Ширина корпуса без выводов | Е1 | 0.240 | 0.250 | 0.260 | 6.10 | 6.35 | 6.60 |
Полная ширина корпуса с выводами | еВ | 0.310 | 0.370 | 0.430 | 7.87 | 9.40 | 10.92 |
Угол фаски верхней части корпуса | а | 5 | 10 | 15 | 5 | 10 | 15 |
Угол фаски нижней части корпуса | в | 5 | 10 | 15 | 5 | 10 | 15 |
Приложение Б
;****** СКАНИРОВАНИЕ КЛАВИАТУРЫ ************************************************
Scan btfss GPIO,5 ; если на входе GP5 низкий уровень - нажата клавиша 1
goto Tx_CMD1
btfss GPIO,2 ; если на входе GP2 низкий уровень - нажата клавиша 2
goto Tx_CMD2
btfss GPIO,4 ; если на входе GP4 низкий уровень - нажата клавиша 3
goto Tx_CMD3
btfss GPIO,1 ; если на входе GP1 низкий уровень - нажата клавиша 4
goto Tx_CMD4
bsf MBC,5 ; установить управляющий бит в 1 (первое нажатие)
goto Scan
;****** ФОРМИРОВАНИЕ МЛАДШЕГО БАЙТА ПАКЕТА ****************************
Tx_CMD1 movlw CMD_1
movwf LBC ;запись номера команды 1 в младший разряд кода
goto TxRC
;********************************************
Tx_CMD2 movlw CMD_2
movwf LBC ;запись номера команды 2 в младший разряд кода
goto TxRC
;********************************************
Tx_CMD3 movlw CMD_3
movwf LBC ;запись номера команды 3 в младший разряд кода
goto TxRC
;********************************************
Tx_CMD4 movlw CMD_4
movwf LBC ;запись номера команды 4 в младший разряд кода
goto TxRC
;******* ПЕРЕДАЧА ПАКЕТА RC-5 *********************************************************
TxRC btfsc MBC,7 ; Startbit 1. Если он равен 1, то выполняется Tx_1,
call Tx_1 ; если он равен нулю, то выполняется Tx_0
btfss MBC,7 ; аналогично остальные биты
call Tx_0
;--------------------------------
btfsc MBC,6 ; Startbit 2
call Tx_1
btfss MBC,6
call Tx_0
;--------------------------------
btfsc MBC,5 ; Toggle bit
call Tx_1
btfss MBC,5
call Tx_0