PIC мк. Эксперимент №17. Часы-термометр.

Поигравшись с термометром и часами реального времени DS1307 я решил совместить их в один девайс – часы-термометр. Еще одной причиной создания часов были сломавшиеся китайские настольные часы и я решил, что корпус не должен пропадать просто так.

Получилось что-то такое:

clock

Читать далее

PIC мк. Эксперимент №16. One-wire на примере DS18b20.

Задача: Измерение температуры с помощью датчика DS18b20

Исходный материал: PIC16f628a, DS18b20, MAX232 level converter, devboard, proteus.

В данной статье рассмотрен пример работы в случае присутствия на линии одного датчика DS18b20, также здесь приводится текст стандартных функций для работы с протоколом 1-wire.

Читать далее

PIC мк. Эксперимент №15. Часы реального времени DS1307.

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

Задача: Запись значения времени/чтение значения времени и вывод через USART из микросхемы DS1307.

Исходный материал: PIC16f628a, DS1307, MAX232 level converter, devboard, proteus.

Читать далее

PIC мк. Эксперимент №14. Модуль USART.

Рассмотрим примеры работы с USART. В статье я постараюсь идти двумя путями:

1. Применяем готовые решения из компилятора.

2. Пишем свои функции.

В общем обо всем по-порядку.

Читать далее

PIC мк. Эксперимент №13. Программный I2C.

Следующим экспериментом в серии выступает применение протокола передачи I2C. Здесь нет описания самого протокола, этого добра в сети хватает 🙂 в статье содержится инструкция по установке связи между микроконтроллером PIC16f628a и так называемым “расширителем” портов мк PCA9539.

Итак:

Задача: Установка связи по протоколу I2C.

Исходный материал: PIC16f628a, PCA9539, devboard.

Читать далее

PIC мк. Эксперимент №12. Работа с EEPROM.

Задача: Запись и чтение из внутренней энергонезависимой памяти EEPROM

Исходный материал: PIC16f628a и простенькая devboard.

Микроконтроллер PIC16f628a имеет на борту 128 байт EEPROM, не шибко много, но что есть то есть. Обычно в компиляторах уже есть встроенные функции записи/чтения из памяти, Hi-tech PICC не исключение, но здесь я приведу разработку своих функций с нуля. Начнем с регистра EECON1:

ee

Читать далее

PIC мк. Эксперимент №11. Модуль ШИМ.

Продолжим изучать модуль CCP и остановимся на самом интересном применении ШИМ.

Задача: регулировка яркости светодиода с помощью ШИМ.

Исходный материал: PIC16f628a и простенькая devboard + proteus.

pwm

Читать далее