Девиз: Глаза боятся, а руки делают!

 

Описание схемы и работы с программой на uart-модуле для измерения влажности/температуры c использованием микроконтроллера 12f629 и датчиков с интерфейсом I2C

 

 

 

 

Адрес описания и документации:

http://90.189.213.191:4422/temp/uart_h2o_v1/

Скачать программу:

http://90.189.213.191:4422/temp/uart_h2o_v1/opisalovo_cmd/test/

 

Содержание:

 

 

 

Назначение

·         Программа и схемы предназначены для получения данных от датчиков температуры, влажности, давления и т.п. из известных на настоящее время;

·         Программа  предназначена для отладки схем и взаимодействия с датчиками. После отладки модули и схемы интегрируются в данную программу и доступны в данном описании;

·         Получаемые результаты (тексты, модули, схемы сопряжения) предназначены для  других программ в тематике измерений.

·         Внимание! Пояснения и помощь к программе (т.е. данный файл) составляется по методике «что сделал, то и описал»» (ударение на букву =а=, а не =и=).

 

Первый старт

Программа при первом старте выдает в режиме консоли «проблему выбора», показано ниже на рисунке и окно «часиков». На выбор решения всего одна минута, надо нажать клавишу 1,2 или 3.

 

3232.jpg

 

 

 

Восстановление всей информации из программы и компиляция новой программы

Программа содержит все компоненты, для своего дальнейшего развития. Если выбрать 3-й пункт, то сформируется каталог  test_monsys_exe, в котором находятся все файлы необходимые для дальнейшего развития:

·         файлы текстов на языке FORTH и так же простые файлы txt, если они требуются по теме пояснений;

·         файлы описания в формате word или html;

·         архивы с файлами схем. Можно и без архивов, но для понимания тематики удобнее объединять схемы и пояснения в  одном архиве;

·         файл языка программирования FORTH 100_spf4.exe  Цифра 100 означает, что данный компилятор языка может формировать файлы до 100мб.  Автор Черезов Андрей дает только до 4х мб, поэтому его компилятор и называется spf4.exe  Шутка. На самом деле это версия четыре. Все версии смотрите на сайте forth.org.ru  Андрею Черезову еще раз привет, успехов и здоровья в 2022 году!

 

Далее Вы исправляете требуемые файлы, компилируете и получаете новый файл в формате exe. Он будет иметь другие размеры и контрольные суммы. Это позволит достаточно просто определить авторство и принадлежность источника и создателя.

Выполните файл start_new_versii.cmd  для компиляции и формирования файла.

Метод и способ, достоинства и недостатки представлены  в электронной публикации

 

Опции режимов в окне консоли - измерение термопарой с MAX6675

Для измерения температуры через микросхему max6675  нажмите клавишу =X=. Программа изменит настройки и по заданному порту будет обращаться через PIC- 12f629 к микросхеме max6675 и получать данные о температуре.

Вид окна с пояснениями и схема предствлены  ниже на рисунках:

image003 

 

4444.jpg

 

·         В архиве  uart_h2o_v1_help.files\uart_h2o_v1_izm_max6675_12f629.zip  схема представлена  в редакторе DipTrace 2.4.0.2 Full portable

·         Представлена схема  «аппаратного прототипа

·         Программа и схема с «жесткой логикой» для измерения температуры  с использованием uart-usb и max6675 опубликована в журнале «Соэл» 2020г  N3-c60,62   и на сайте автора

·         Программа на форт-ассеблера для  12f629 представлена в текстовом файле  uart_h2o_v1_12f629_v1.f    подключается и компилируется  из основной «пусковой» программы, так же текстового формата,  uart_h2o_v1.f

 

 

Консольный режим – особенности в Win10 и «влияние мышки»

·         Влияние систем переходит и на такой «архаичный» вид отображения, как консоль или терминал.

·         Консоль  вызывается командой «CMD» и появилась это «штука» еще во времена DOS, RT11 и наверное сама =идея= ранее.

·         В 2016 году добавили в консоль и управление мышкой для Windows-10.

·         Ниже на скане с экрана, показана галочка, которая управляет этим режимом. 

 

image007

 

·         При работе программы,  галочка в выделении «мышью», не позволяет управлять кнопками «мыши» при наведении на «значащие» места.

·         В этом случае сохраняется  режим управления кнопками клавиатуры. Например, если  нажать кнопку 1 то сформируются необходимые файлы для работы программы.

 

Измерение влажности и температуры микросхемой SHT3x

 

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

  

image001

 

image001

 

·         В архиве  uart_h2o_v1_help.files\uart_h2o_v1_izm_sht3x_12f629.zip  схема представлена  в редакторе DipTrace 2.4.0.2 Full portable

·         Схема использует внутреннюю «подтяжку» от микроконтроллера, что позволяет отказаться от внешних «подтягивающих» резисторов и обеспечить режим «ОК» - общий коллектор.

·         Для работы с интерфейсом I2C используется программное обеспечение микроконтроллера, которое работает по следующему алгоритму:

o   Скорость и тип передачи UART-PIC12F629 определен 9600n1.

o    Устанавливается передача блоком в 2 или 3 байта, где каждый байт задает режимы работы с датчиком (sht3x). Количество принимаемых байт может быть разное.

o    Для устойчивой работы микроконтроллера без кварцевой стабилизации, предусмотрен алгоритм автоподстройки по биту СТАРТА. Это означает, что всегда первый бит должен быть равен 1, а все последующие могут быть любые. 

o    Блок на передачу имеет 2-а байта : 0xFF N1=0..0x7F - Выполняется проверка отклика адреса устройства шины I2C. Если ответ по адресу  второго байта  есть, то возвращается байт 0xFF. Если нет ответа то 0x0.   Этот режим позволяет вручную или программой определить наличие устройства с интерфейсом I2C  В программе предусмотрен режим по клавише =С= . Ниже на рисунке показан данный режим и отображен адрес sht3x.

o   Адреса 0 и 1 и 7F  могут отображаться, т.к. это   ошибки ответа  устройства, а таких устройств в стандарте не предусмотрены.

 

image003

 

·         Блок из 4х байт 0xFD 0x44 0x2C 0x06  задает режим однократного измерения по адресу устройства 0x44 командой 0x2C 0x06  Правильный ответ состоит из 6 байт кода FF.

·         Далее передается блок из двух байт 0XFF   0x44,  который определяет запрос данных по адресу устройства 0x44. Ответ состоит из 6 байт кодов данных температуры и влажности. Эти шесть байт распределены  на 2е группы по 3 байта. Первые 2-а байта это данные и 3-й байт -  контрольная сумма.

·         Описание работы  SHT3x приведено по адресам:  А1  Doc  А2  Магазин

·         Далее заключительное действие цикла измерения - передача 2-х байт  0XFF   0x44. Вторичная повторная передача с адресом 0x44 закрывает цикл измерения и датчик готов к новому измерению. Правильный ответ 0x00 0xFF 0xFF 0xFF

·          Время одного измерения в данном цикле опроса составляет около 50 миллисекунд.

·          Для получения данных в ручном режиме можно воспользоваться программой гипертерминал или Тест_модема. Ниже на рисунке показан скан запроса данных в программе Тест модема.

 

image004

·         Программа опроса данных в микроконтроллере находиться в файле uart_h2o_v1_12f629_v1_sht3x.f   Общая структура и текст подготовлен  на языке Forth  Реализация обращения к микроконтроллеру на авторском варианте forth-assemblera.   После выполнения компиляции файлом start_new_versii.cmd   формируется каталог с hex-файлами. Файлы записываются в микроконтроллер любым доступным программатором.

·         Внимание! Программы на форт-ассеблера для  12f629 подключаются и компилируется  из основной «пусковой» программы, так же текстового формата,  uart_h2o_v1.f  ИНДИВИДУАЛЬНО.  Это означает, что можно компилировать по выбору только один файл. Ниже в таблице показан фрагмент подключения разных вариантов подключения.

 

\ -----------------------------------------------------------------------------------------

\ пояснения по подключению общих или похожих библиотек.

\ принят такой метод - если надо для формирования hex кода то подключаем и делаем, если не надо то «ремим»

\ если библиотеки все время подключать и прибавлять, то

\  - время на компиляцию зачем тратить, если hex файлы писать в микроконтроллеры не будем?

\  - компиляция многих библиотек формирует одинаковые форт-слова, и будет сообщения про их дублирование.

\  - хотя  можно и отключить эти сообщения о дублировании.

\  - но если надо, то можно подключать и смотреть что задублировано.

\ -----------------------------------------------------------------------------------------

\ библиотека для формирования hex кодов и работы с термопарой с имс max6675

\ S" uart_h2o_v1_12f629_v1_max6675.f"  2DUP  INCLUDED  (  Тут не компилируем. В строке установлен  знак  \ )

\ библиотека для формирования hex кодов с датчиком sht3x

\  WARNING 0! ( выключили контроль повтора слов )

 S" uart_h2o_v1_12f629_v1_sht3x.f"  2DUP  INCLUDED  ( <= Тут подключаем и компилируем. )

\ -1 WARNING ! ( контроль повтора слов )

\ допускается использовать одинаковые имена слов, надо учитывать что в работе будут последние назначеные 

\ итого – допускается все, что разрешено форт-словами программы.

 

  

·         Для запуска нескольких действий меню предусмотрено указывать эти действия (т.е. «цифры» «буквы» клавиш» ) в командной строке:

·         \uart_h2o_v1.exe L K 5 <enter>   - выполняется режим измерения влажности, выдается график и включается музыкальная пауза;

·         \uart_h2o_v1.exe a z  <enter>   - вызывается диспетчер устройств и файл помощи по программе;

·          И т.п. смотрите меню и указывайте действия. Всего предусмотрено 16 команд по действиям.

 

Лицензионность, правообладание и использование

 

·         Программа поставляется =как есть=. Все риски связаные с ее использованием  и возможными последствиями несут лица ее выполняющие;

·         Программа подготовлена на языке Forth.  В программе при старте проводится проверка на правильность контрольных сумм и в случае изменния даже на один бит  выдается предупреждение о ВОЗМОЖНЫХ МОДИФИКАЦИЯХ

·         В программе предусмотрена проверка на УНИКАЛЬНОСТЬ ИМЕНИ. Другое имя   программы не допускается. 

·         Автор оставляет за собой право на модификацию и изменения программы;

·         Автор может ответить на вопросы по программе только в случае соответствия    даты,  контрольной суммы, размера и названия файла и при наличии свободного   времени. 

 

 

  Автор:  Шабронов Андрей Анатольевич тс.+7-913-905-8839  shabronov@ngs.ru    

               Успехов и здоровья!   г. Новосибирск 2022г.               

 

Ред. 2022-02-27               Ред.2022-3-14

 

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