Снятие данных через определенные временные промежутки в ADEXL

Оказывается в ADE-XL напрямую из icfb данные снять не выйдет, вернее выйдет но на выходе будет wave объект с которым вы вряд ли что-то сможете сделать.

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

Синтаксис:

ocnPrint( [?output t_filename | p_port] [?precision x_precision] [?numberNotation s_numberNotation] [?numSpaces x_numSpaces] [?width x_width] o_waveform1 [o_waveform2 …] ) => t/nil

t_filename – файл в который будем записывать значения

p_port – запись в ранее открытый порт

x_precision – разрядность вывода (от 1 до 16)

s_numberNotation – формат вывода чисел

x_numSpaces – количество пробелов между столбцами

x_width – ширина столбцов

o_waveform1 – Waveform объект (может быть представлен как результат семплирования по времени)

o_waveform2 – дополнительный вейформ (фиг его знает зачем)

Пример:

ocnPrint( ?output “~/output.txt” VT(“/Vout”) ?from 0 ?to 10u ?step 50n ?precision 10 ?numberNotation ‘engineering)

Здесь мы создали файл /home/$username/output.txt, в который поместили значения Vout, семплированные каждые 50 нс, и записали их в инженерном формате.

Травление плат в перекиси водорода

Статья о моих впечатлениях от травления плат этим методом (не степ бай степ руководство) просто решил поделиться (:

Title

Читать далее

PIC18 Lab. Experiment #2. DHT22.

Если вы помните, некоторое время назад, я разрабатывал код для взаимодействия с датчиком влажности DHT11. Этот же код с датчиком был внедрен в один проектик, по результатам его работы могу сказать, что я не в восторге от его работы и решил потестить DHT22, ну и сделать задел для будущего проекта под PIC18.

dht22

Читать далее

PIC18 Lab. Experiment #3. ADC.

Задумался у меня один небольшой проектик, где есть задача отлавливать нажатие определенной кнопки. Вроде как все проще некуда, только вот этих кнопок 10 штук, 10 ног заводить не хочется, расширители портов юзать тоже скучно. Я подумал, почему бы мне не сварганить подобие цапа на этих кнопках, и завести его выход на АЦП в pic18f14k50, получим одну ногу вместо 10, но с небольшим усложнением кода.

380px-ADC_Symbol.svg

Как пользоваться этим зверем – под катом.

Читать далее

Автоотключение/автовключение аудиоусилителя

Ситуация сложилась так, что мой временный усилок добросовестно впахивает уже третий год, подтверждая высказывание “ничто так долго не работает, как временный костыль”.

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

power_switcher Читать далее

Графики с помощью flotr2

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

Для полноты картины и порядка сформируем необходимые для нас задачи:

  • Построить график простой функции (хело ворлд)
  • Ввести интерактивное изменение параметров графика (определенный отрезок по Х, количество отсчетов на промежуток и т.д.)
  • Научится забирать данные из файла и строить график по ним

Эксперимент #1.18 UART в PIC18 XC8

В общем думал я, что все будет по накатанной идти, а оказалось, что в использовании уарта в 18 серии есть некоторые различия.

Компилятор XC8 имеет набор встроенных функций для работы с периферией, найти заголовочные файлы можно в папке /includes/plib. Нас на данный момент интересует usart.h.

Сформулируем интересующие нас задачи:

  • Запись одного символа
  • Запись строки
  • Чтение одного символа = 1 байта
  • Чтение нескольких байт

Все это дело будем пробовать завести на PIC18F14K50.

Читать далее

RPi: Первый опыт

Пришла мне малинка и надо было уже что-то начинать делать :)

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

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

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

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

Читать далее