Перейти к содержанию

Anton19

Members
  • Постов

    10
  • Зарегистрирован

  • Посещение

Весь контент Anton19

  1. Добрый день, являюсь абсолютным новичком в теме радиоелектроники. Собираюсь собрать счетчик гейгера, на основе перобразователя напряжения, stm32 и сбм-20. Решил начать с преобразователя. Немогу только понять где купить трансформатор T1, не хочу очень долго возится с его намоткой. Можете подсказать какой трансформатор необходимо купить или где такой продается. Буду благодарен за ссылку или советы. Спасибо.
  2. Вы правы, я ошибся, сейчас исправлю. Подразумевалось 200 герц.
  3. Добрый день, помогите разобраться чисто в теории как работает эта штука. Я новичек в этой сфере. У меня есть контроллер stm32 с помощью него я хочу вращать Nema34. Насколько я понимаю stm32 сможет это делать только с помощью драйвера CW8060. Характеристики устройства на картинке: 1. Получается что данный драйвер может выдавать шим с частотой 200гц? 2. Если данный драйвер выдает частоту 200 гц, то вывод CP+ тоже воспринимает управляющий импульс с частотой 200 гц? 3. "rising edge duration >10μS" означает что между фронтом и спадом должно быть не меньше 10 микросекунд? Форма сигнала шим должна быть получается исключительно меандр? 4. Верно ли я понимаю что все задача этого драйвера просто "усилить" шим с 3.3 вольт 20 милиампер, до 48 вольт, 6 ампер? Спасибо.
  4. Добрый день, подскажите какова частота сигнала на осцилографе 5882 Гц?
  5. Я отправляю данные через USART2 PA2 (pin2) на передатчик данных, подключил usb-uart к PA2 (pin2) и посмотрел в терминале, что отправляется (AA 44 11 55 AA 44 22 66 AA 44 11 55 AA 44 22 66 ...). Все в порядке, я передаю то, что хочу. Затем я подключил usb-uart к PA10 (pin10) и посмотрел что приходит через радио приемник, было много данных, но в основном были (AA 44 11 55 AA 44 22 66 AA 44 11 55 AA 44 22 66 ...). Все в порядке, я получаю от приемника, то что нужно. Затем подключил usb-uart на PA9 (pin9) (uart1 TX) и посмотрели что он передает (AA 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 ...). Главный вопрос: что я делаю неправильно, почему USART1 TX искажает данные? Как это исправить? #include "stm32f10x.h" #include "stm32f10x_gpio.h" #include "stm32f10x_rcc.h" # define SYNC 0XAA # define RADDR 0x44 # define LEDON 0x11 //switch led on command # define LEDOFF 0x22 //switch led off command void Delay(void) { volatile uint32_t i; for (i = 0; i != 100; i++) ; } void send_to_uart1(uint8_t data) { while (!(USART1 - > SR & USART_SR_TXE)) {} USART1 - > DR = data; } void send_to_uart2(uint8_t data) { while (!(USART2 - > SR & USART_SR_TXE)); USART2 - > DR = data; } void Send_Packet(uint8_t addr, uint8_t cmd) { send_to_uart2(SYNC); //send synchro byte send_to_uart2(addr); //send receiver address send_to_uart2(cmd); //send increment command send_to_uart2((addr + cmd)); //send checksum } uint8_t uart_data; int main(void) { GPIO_InitTypeDef PORTA_init_struct; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_USART1, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE); PORTA_init_struct.GPIO_Pin = GPIO_Pin_9; PORTA_init_struct.GPIO_Speed = GPIO_Speed_2MHz; PORTA_init_struct.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_Init(GPIOA, & PORTA_init_struct); PORTA_init_struct.GPIO_Pin = GPIO_Pin_10; PORTA_init_struct.GPIO_Speed = GPIO_Speed_50MHz; PORTA_init_struct.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA, & PORTA_init_struct); PORTA_init_struct.GPIO_Pin = GPIO_Pin_2; PORTA_init_struct.GPIO_Speed = GPIO_Speed_50MHz; PORTA_init_struct.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_Init(GPIOA, & PORTA_init_struct); PORTA_init_struct.GPIO_Pin = GPIO_Pin_3; PORTA_init_struct.GPIO_Speed = GPIO_Speed_50MHz; PORTA_init_struct.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA, & PORTA_init_struct); USART_InitTypeDef uart_struct1; uart_struct1.USART_BaudRate = 600; uart_struct1.USART_WordLength = USART_WordLength_8b; uart_struct1.USART_StopBits = USART_StopBits_1; uart_struct1.USART_Parity = USART_Parity_No; uart_struct1.USART_HardwareFlowControl = USART_HardwareFlowControl_None; uart_struct1.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; USART_Init(USART1, & uart_struct1); USART_Cmd(USART1, ENABLE); USART_InitTypeDef uart_struct2; uart_struct2.USART_BaudRate = 600; uart_struct2.USART_WordLength = USART_WordLength_8b; uart_struct2.USART_StopBits = USART_StopBits_1; uart_struct2.USART_Parity = USART_Parity_No; uart_struct2.USART_HardwareFlowControl = USART_HardwareFlowControl_None; uart_struct2.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; USART_Init(USART2, & uart_struct2); USART_Cmd(USART2, ENABLE); uint8_t raddress, data, chk; while (1) { Send_Packet(RADDR, LEDON); Delay(); Send_Packet(RADDR, LEDOFF); Delay(); if (USART1 - > SR & USART_SR_RXNE) { uart_data = USART1 - > DR; send_to_uart1(uart_data); } } }
  6. Ловит какие-то данные из окружающего радио эфира.
  7. Добрый день, подскажите купил радио Transmitter и Receiver, подключил их через usart к stm32, usart ловит данные из Receiver, но что отрпавлять на Transmitter? Подскажите может ссылку на мануал/пример, ничего не могу найти. Спасибо.
  8. Добрый день, что будет если соединить STM32F100 например ножки P1-P3 (3.3v) c выводами драйвера CP+,CW+,EN+ которым надо 5 вольт. Насколько я понимаю, просто ничего не будет работать или накроется контроллер. Спасибо.
  9. А может схема законченного драйвера в виде электронного блока где-то есть? Вам не попадалось?
  10. Подскажите, есть некоторый опыт управления шаговым двигателем с помощью драйвера L293D максимальный ток 1.2 ампера. Теперь хочу управлять более мощным двигателем что-то типа 34HS8801 на 4 ампера. Насколько я понимаю тут уже надо драйвер двигателя собирать самому на или покупать готовый. 1. Не подскажите ли схему на такой драйвер. Спасибо.
×
×
  • Создать...