Search the Community

Showing results for tags 'STM32F103C8T6'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Вопрос-Ответ. Для начинающих
    • Песочница (Q&A)
    • Дайте схему!
    • Школьникам и студентам
    • Начинающим
    • Паяльник TV
    • Обсуждение материалов с сайта
  • Радиоэлектроника для профессионалов
    • Световые эффекты и LED
    • Роботы и модели на ДУ-управлении
    • Автоматика
    • Самодельные устройства к компьютеру
    • Программное обеспечение
    • Автомобильная электроника
    • Системы охраны и наблюдения. Личная безопасность
    • Питание
    • Электрика
    • Промышленная электроника
    • Ремонт
    • Металлоискатели
    • Измерительная техника
    • Мастерская радиолюбителя
    • Сотовая связь
    • Спутниковое ТВ
    • КВ и УКВ радиосвязь
    • Жучки
    • Телефония и фрикинг
    • Высокое напряжение
    • Идеи и технологии будущего
    • Справочная радиоэлементов
    • Литература
    • Разное
  • Аудио
    • FAQ, Технологии и компоненты
    • Для начинающих
    • Источники звука
    • Предусилители, темброблоки, фильтры
    • Питание аудио аппаратуры
    • Усилители мощности
    • Акустические системы
    • Авто-аудио
    • Ламповая техника
    • Гитарное оборудование
    • Прочее
  • Микроконтроллеры
    • МК для начинающих
    • AVR
    • PIC
    • STM32
    • Arduino и Raspberry Pi
    • ПЛИС
    • Другие микроконтроллеры и семейства
    • Алгоритмы
    • Программаторы и отладочные модули
    • Периферия и внешние устройства
    • Разное
  • Товары и услуги
    • Коммерческие предложения
    • Продам-Отдам, Услуги
    • Куплю
    • Уголок потребителя
    • Вакансии и разовая работа
    • Наши обзоры и тесты
  • Разное
    • Конкурсы сайта с призами
    • Сайт Паяльник и форум
    • Курилка
    • Технический английский (English)
    • Наши проекты для Android и Web
    • FAQ (Архив)
    • Личные блоги
    • Корзина
    • Вопросы с VK
  • Переделки's ATX->ЛБП
  • Киловольты юмора's Юмор в youtube
  • Радиолюбительская доска объявлений exDIY's Надежность и группы продавцов
  • Переделки's разные темы

Blogs

There are no results to display.

There are no results to display.

Marker Groups

  • Пользователи форума

Город


Сфера радиоэлектроники


Оборудование

Found 3 results

  1. Здравствуйте, мне нужна помощь с подключением дисплея WG12864 к STM32F103C8T6. А именно? Я не нашёл библиотек для него, лишь только ардуиновские. Может у кого есть своя? С STM32 опыта почти нет. Так мигал светодиодом и всё, но зато ардуину я уже знаю всё. Я перерос её и мне хочется освоить стм.
  2. Добрый вечер. Решил недавно поиграться с микроконтроллерами, ибо были в загашнике такие платы: Ппробовал погонять данные по USART. В обычном режиме - все работает нормально, но вот с прерываниями - немного не получается. Я взял пример из стандартной библиотеки, скомпилил, залил и прерывание не срабатывает. #include <stm32f10x.h> #include <misc.h> volatile char received_string[MAX_STRLEN+1]; void Delay(__IO uint32_t nCount) { while(nCount--) { } } void init_USART1(uint32_t baudrate){ GPIO_InitTypeDef GPIO_InitStruct; USART_InitTypeDef USART_InitStruct; NVIC_InitTypeDef NVIC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitStruct.GPIO_Pin = GPIO_Pin_9; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStruct); GPIO_InitStruct.GPIO_Pin = GPIO_Pin_10; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA, &GPIO_InitStruct); USART_InitStruct.USART_BaudRate = baudrate; USART_InitStruct.USART_WordLength = USART_WordLength_8b; USART_InitStruct.USART_StopBits = USART_StopBits_1; USART_InitStruct.USART_Parity = USART_Parity_No; USART_InitStruct.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStruct.USART_Mode = USART_Mode_Tx | USART_Mode_Rx; USART_Init(USART1, &USART_InitStruct); USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); USART_Cmd(USART1, ENABLE); } void USART_puts(USART_TypeDef* USARTx, volatile char *s){ while(*s){ while( !(USARTx->SR & 0x00000040) ); USART_SendData(USARTx, *s); *s++; } } int main(void) { init_USART1(9600); // initialize USART1 @ 9600 baud USART_puts(USART1, "Init complete! Hello World!\r\n"); // just send a message to indicate that it works while (1){ /* * You can do whatever you want in here */ } } void USART1_IRQHandler(void){ // check if the USART1 receive interrupt flag was set if( USART_GetITStatus(USART1, USART_IT_RXNE) ){ static uint8_t cnt = 0; // this counter is used to determine the string length char t = USART1->DR; // the character from the USART1 data register is saved in t // check if the received character is not the LF character (used to determine end of string) // or the if the maximum string length has been been reached if( (t != '\n') && (cnt < MAX_STRLEN) ){ received_string[cnt] = t; cnt++; } else{ // otherwise reset the character counter and print the received string cnt = 0; USART_puts(USART1, received_string); } } } Решил упростить задачу и поморгать светодиодом: void USART2_IRQHandler(void){ USART_ClearITPendingBit(USART2, USART_IT_TC); USART_ClearITPendingBit(USART2, USART_IT_RXNE); static uint8_t isSet = SET; GPIO_WriteBit(GPIOC , GPIO_Pin_13 , isSet); isSet = !isSet; } Оно в обработчик вообще не попадает. Подскажите, может что не так делаю? Отладчика пока нету, заказал - жду. Есть FTD USB-UART преобразователи, через них прошиваю и проверяю. А еще я в основной цикл добавил постоянную отправку строки, и оно таки прерывается, когда я шлю байт с компа, но в обработчик оно, походу, не попадает. Пробовал на USART2 - такая же фигня.
  3. Есть отладочная плата (STM32F103C8T6 + внешний кварц 8МГц), при настройке и запуске таймера с дрыганием ноги за один такт, при всех настройках не могу добиться чтобы один такт ровнялся 1мкс. Вот мой код #include "stm32f10x_rcc.h" #include "stm32f10x_gpio.h" #include "stm32f10x_tim.h" #include "stm32f10x_conf.h" void InitTMI(void) { RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); TIM2->CR1=(0<<9)|(0<<8)|(1<<7)|(0<<6)|(0<<5)|(0<<4)|(0<<3)|(0<<2)|(0<<1); TIM2->ARR=3; TIM2->PSC=8-1; TIM2->CNT=0; TIM2->CR1|=(1<<0); } int main(void) { //RCC_HSE_ON; RCC->CR=RCC_HSE_ON; RCC->CFGR&=(~(1<<7)|(1<<6)|(1<<5)|(1<<4)); while (!(RCC->CR & RCC_CR_HSERDY)) {}; // Ожидание готовности HSE. RCC->CFGR &=~RCC_CFGR_SW; // Очистить биты SW0, SW1. RCC->CFGR |= RCC_CFGR_SW_HSE; // Выбрать HSE для тактирования SW0=1. GPIO_InitTypeDef gpioA; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); gpioA.GPIO_Mode=GPIO_Mode_Out_PP; gpioA.GPIO_Speed=GPIO_Speed_2MHz; gpioA.GPIO_Pin=GPIO_Pin_1; GPIO_Init(GPIOA,&gpioA); InitTMI(); while(1) { if(TIM2->CNT==1){GPIO_ResetBits(GPIOA,GPIO_Pin_1);} if(TIM2->CNT==2){GPIO_SetBits(GPIOA,GPIO_Pin_1);} //GPIO_ResetBits(GPIOA,GPIO_Pin_1); } }