PSoC User Module Library
Цель создания этой странички:
Надеюсь, что КИТы на PSoC позволят мне быстро создавать разнообразные проекты, причем, в основном в единичном экземпляре. Немалую часть большинства проектов будут составлять уже созданные когда-то компоненты.
Компоненты, однажды созданные в PSoC Creator очень удобно использовать в других разработках: Несколькими кликами мыши добавляем компонент в проект, а кликнув по компоненту, получаем доступ к его настройкам и описанию API функций.
Другими словами здесь я буду выкладывать те компоненты, которые могут пригодиться кому-то еще.
1. OneWire.cylib
Компонент содержит один контакт который требует подтяжки внешним резистором 3 - 5 КОм
Пока имеется всего 5 API функций:
OneWire_1_BusReset() -команда сброса устройств на шине.
OneWire_1_R_Bit(); - чтение от устройствана шине.
OneWire_1_W_Bit(uint8 payload) - запись одного бита.
OneWire_1_Write8(uint8 payload - запись одного байта
OneWire_1_Read8() - чтение байта
Архив Read_ROM_UserLib.zip для CY8CKIT-030/050 содержит сам элемент OneWire.cylib и пример чтения памяти 1-Wire устройства.
2. RunMean.cylib
Фильтр простого скользящего среднего с регулируемым порогом реинициализации и размером буфера от 2 до 1024 ( кратно степени двойки)
функции:
int32 RunMean_Get(int32 Sampl,int32 SIGNAL_SLOPE) int32 Sampl – текущее значение отсчета int32 SIGNAL_SLOPE - разница между предыдущим и текущим отсчетом. Её превышение вызовет инициализацию всего буфера фильтра текущим значением.
Архив VoltageDisplay.zip для CY8CKIT-030/050 содержит сам элемент RunMean.cylib и пример VoltageDisplay в котором он используется.
Архив VoltageDisplayMean41.zip для PSoC Creator 4.1
3. Keyb4X4.cylib  Это сильно упрощеный вариант Matrix Keyboard Solution реализует самый простой вариант клавиатуры:
В течение нажатия клавиши компонент генерирует на выходе Keypressed импульс высокого уровня, который может быть использован для вызова прерывания. Функция опроса клавиатуры возвращает номер нажатой клавиши или 0. Если нажато несколько клавиш – возвращается наименьший номер.
Настраиваемые параметры компонента: - REPEAT_msec период повтора нажатой клавиши. - BOUNCE_msec защита от дребезга.
функции: void Keyb4X4_1_Start(void) ; - настройка периода автоповтора и антидребезга uint8 Keyb4X4_1_ReadMatrix(void) ;возвращает номер нажатой клавиши или 0, если не нажата.
Архив Keyb4X4.zip для CY8CKIT-030/050 содержит сам элемент Keyb4X4.cylib и пример Keyboard.cywrk в котором он используется ________________________________________ На форуме CYPRESS в теме Component creation. Part 1 of ? Bob Marlowe закончил разработку и выложил более серьезный вариант клавиатуры с настраиваемым размером матрицы подробным pdf и т.п. Ссылка на его проект: PortComponent2.zip
4. LCD128X64.cylib
 Компонент создан на базе проекта Graphic LCD Module Interface for PSoC5 Автор идеи: EA4FRB - Melchor Varela
http://ea4frb.blogspot.com/2010/07/interfase-modulo-lcd-grafico-para-el.html
Предназначен для работы с монохромным графическим дисплеем 128 х 64 с контроллером KS0108B. Например 12864WG-BTFH, POWERTIP PG-12864A и им подобными
В этой версии русские буквы имеются только в шрифте FONT_FIVE_DOT
Архив GLCD128x64.zip для CY8CKIT-014 содержит сам элемент LCD128X64.cylib и пример GLCD.cydsn в котором он используется.
5. GLCD_DMA.cylib
 
Компонент использует DMA для копирования содержимого буфера экрана в память дисплея. Длительность процедуры записи около 15 мСек для частоты 2 МГц на входе Fin_2MHz.
Пример работы модуля:
Архив DMA_for_GLCD_128x64.zip для CY8CKIT-014 содержит сам элемент GLCD_DMA.cylib и пример DMA_for_GLCD.cydsn в котором он используется.
На форуме PSoC автор hruvAcharya доработал проект для psoc_creator.3.0 и добавил некоторые изменения и свой вариант проекта.
Подробнее можно посмотреть на страничке форума Cypress Forums > PSoC® 5 > Programming graphil LCD
Если добавить еще 1 канал DMA, то можно сформировать сигналы (CS1, CS2, E и DI) в виде байтовой последовательности,
что позволит немного упростить логику управления дисплеем.
Проект с двумя DMA для PSoC Creator 4.3 GLCD DMA_43.zip
Для PSoC4 компонента нет, есть только вариант "ногодрыга", но для некоторых случаев вполне сгодится: архив: GLCD_128x64_PSoC4.zip для CY8CKIT-042 PSoC4 Pioneer Kit
6. Calc_CRC.cylib

Набор функций програмного расчета CRC. Предназначен для создания коллекции различных вариантов расчета CRC.
функции:
Расчет CRC-8 при настройке можно изменить значения "Polynomial_Value" и "Seed_Value" Расчет CRC для протокола DCON модулей ICP-DAS Другие варианты расчета CRC можно добавлять по мере необходимости
Архив CRC_TEST.zip для CY8CKIT-030/050 содержит сам элемент Calc_CRC.cylib и пример CRC_TEST в котором он используется.
8.Multi_Pulse.cylib
 Компонент предназначен для умножения исходных импульсов. Например, он позволит заполнить интервал между двумя сигналами ВМТ нужным вам количеством импульсов.
функции:
Между спадами входного сигнала генерируется заранее заданное количество импульсов - Длительность импульсов заполнения вычисляется по периоду между двумя последними входными сигналами, поэтому точность умножения зависит от стабильности частоты входных импульсов и коэффициента умножения.
Архив Multi_Pulse.zip для CY8CKIT-050 содержит сам элемент Multi_Pulse.cylib и пример IMP_x_N.cydsn в котором он используется.
|