Данная библиотека позволяет управлять микросхемой MAX5250 (четыре канала ЦАП) на внешнем модуле по SPI интерфейсу с платы STM32F4.
Для работы с микросхемой так же используется библиотека SPI низкого уровня (SPI2).
Демонстрация работы:
Используемые выводы:
SCK к PB13
MOSI к PB15
MISO к PB14
ChipSelect к PB12
Требования:
Подключаемые модули CooCox-IDE: GPIO
Поддерживаемые библиотеки: STM32_UB_SPI2.
Перечисления:
typedef enum { DAC_0 = 0, // Канал ЦАП 0 DAC_1, // Канал ЦАП 1 DAC_2, // Канал ЦАП 2 DAC_3 // Канал ЦАП 3 }MAX5250_DAC_t;
Функции:
ErrorStatus UB_MAX5250_Init(void); // инициализация MAX5250 void UB_MAX5250_SetDAC(MAX5250_DAC_t kanal, uint16_t wert); // установка значения ЦАП
Пример использования:
//-------------------------------------------------------------- // File : main.c // Datum : 04.03.2013 // Version : 1.0 // Autor : UB // EMail : mc-4u(@)t-online.de // Web : www.mikrocontroller-4u.de // CPU : STM32F4 // IDE : CooCox CoIDE 1.7.0 // Module : CMSIS_BOOT, M4_CMSIS_CORE // Funktion : Demo der MAX5250-Library // Hinweis : Diese zwei Files muessen auf 8MHz stehen // "cmsis_boot/stm32f4xx.h" // "cmsis_boot/system_stm32f4xx.c" //-------------------------------------------------------------- #include "main.h" #include "stm32_ub_max5250.h" int main(void) { SystemInit(); // инициализация настроек кварца UB_MAX5250_Init(); // инициализация MAX5250 UB_MAX5250_SetDAC(DAC_0,0); // минимальное значение DAC0(0V) UB_MAX5250_SetDAC(DAC_1,341); // 33% от максимального значения DAC1(1V) UB_MAX5250_SetDAC(DAC_2,682); // 66% от максимального значения DAC2(2V) UB_MAX5250_SetDAC(DAC_3,1023); // максимальное значение DAC3(3V) while(1) { } }
В приложении проект CooCox и отдельная библиотека для использования в других проектах. Автор оригинала статьи просит задавать вопросы на его сайте на немецком или английских языках.
Прикрепленные файлы:
- MAX5250.pdf (757 Кб)
- ub_stm32f4_spi_max5250_v100_rus.rar (5 Кб)
- Demo_16_SPI_MAX5250_rus.rar (175 Кб)
Комментарии (2) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
[Автор]