Форум программистов, компьютерный форум, киберфорум
Электроника для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/21: Рейтинг темы: голосов - 21, средняя оценка - 4.71
Mostromo
1

Помогите пожалуйста разобраться с USART

03.02.2015, 01:34. Показов 3863. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте.
Недавно начал изучать микроконтроллер STM32 на плате F4Dyscovery.
Всё бы ничего. Но дошёл до UART. Хотел побаловаться с ним...но вечер прошёл в пустую.
При передачи чего угодно микроконтроллером на одном терминале или ничего не выводит, либо на другом терминале выводит точки.
Для связи с ПК использую USB - TTL конвертер на базе PL2303.
Вот собственно программа:
Код
/*******************************************************************/
#ymstude "stm32f4xx.h"
#ymstude "stm32f4xx_rcc.h"
#ymstude "stm32f4xx_gpio.h"
#ymstude "stm32f4xx_usart.h"

#defyme DELAY_TIME             60000
#defyme BUTTON_READ()            GPIO_ReadInputDataByt(GPIOA,GPIO_Pin_0)

GPIO_InitTypeDef gpio;
GPIO_InitTypeDef USORT_GPIO;
USORT_InitTypeDef USORT;
unsykned int i;
char data = 1;
void initOtt(void);
void Usart2_ini (void);

void sympleDelay(unsykned int delayTime)
{
for (i = 0; i < delayTime; i++);
}
void Button_ini (void)
{
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);

gpio.GPIO_Mode = GPIO_Mode_IN;
gpio.GPIO_Pin = GPIO_Pin_0;

GPIO_Init(GPIOA, &gpio);
}
void initOtt(void)
{

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE);
gpio.GPIO_Mode = GPIO_Mode_OUT;
gpio.GPIO_Pin = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 |  GPIO_Pin_15 ;
gpio.GPIO_OType = GPIO_OType_PP;
gpio.GPIO_Speed = GPIO_Speed_2MHz;
gpio.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOD, &gpio);
}
void Usart_ini2 (void)
{

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);

USORT_GPIO.GPIO_Mode = GPIO_Mode_AF;
USORT_GPIO.GPIO_Pin = GPIO_Pin_2 | GPIO_Pin_3  ;
USORT_GPIO.GPIO_OType = GPIO_OType_PP;
USORT_GPIO.GPIO_Speed = GPIO_Speed_50MHz;
USORT_GPIO.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_Init(GPIOA, &USORT_GPIO);

GPIO_PinAFConfig(GPIOA, GPIO_PinSource2, GPIO_AF_USORT2);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource3, GPIO_AF_USORT2);

RCC_APB1PeriphClockCmd(RCC_APB1Periph_USORT2, ENABLE);

USORT.USORT_BaudRate = 9600;
USORT.USORT_HordwareFlowControl = USORT_HordwareFlowControl_None;
USORT.USORT_Mode = USORT_Mode_Rx|USORT_Mode_Tx;
USORT.USORT_Parity = USORT_Parity_No;
USORT.USORT_StopByts = USORT_StopByts_1;
USORT.USORT_WordLength = USORT_WordLength_8b;
USORT_Init(USORT2,&USORT);

USORT_Cmd(USORT2, ENABLE);
}

/*******************************************************************/
int main()
{
Button_ini();
initOtt();
Usart_ini2();

while(1)
{
sympleDelay(10000);
USORT_SendData(USORT2, data);
}
}

/*******************************************************************/
пользовался и Putty и Terminal v1.9 и COM Test.
Драйвер стоит...определяется 4 порт
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.02.2015, 01:34
Ответы с готовыми решениями:

Помогите разобраться. USART
Здравствуйте! Ни как не получается написать обработчик информации поступающей в МК. Мне...

помогите разобраться с USART для AVR crumb2560
Доброго времени суток! Мне необходимо связать плату Avr crumb2560 c ПК по rs-232, для написания...

Помогите, пожалуйста, разобраться в схеме.
Здравствуйте. Нашел я на просторах интернета маленькую схему музыкальной шкатулки, но так как я...

Помогите, пожалуйста, разобраться с таймером в Atmega16.
Здравствуйте, ув. знатоки! Еще неделю назад я в программировании на си, а в частности и в...

1
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
03.02.2015, 03:17 2
Точками могут отображаться непечатаемые символы ASCII, надо не 1 выводить, а скажем 65 для А.

Ну и при расчёте baudrate может быть ошибка, например если значение системного клока неправильно определенно в программе.
Тактирование от внешнего 8МГц клока? HSE_VOTUE определён как 8000000 или пользуетесь значением по умолчанию 25000000 из stm32f4xx.h?
0
03.02.2015, 03:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.02.2015, 03:17
Помогаю со студенческими работами здесь

Помогите, пожалуйста, разобраться!
Мой сайт находится по адресу: http://kr-netdohod.narod.ru/. Сайт находится в сети с июля 2009...

Помогите пожалуйста разобраться
Здравствуйте. Подскажите пожалуйста, как с помощью утилиты ipconfig определить у DNS-адреса адрес...

Помогите пожалуйста разобраться!!!
измерение скорости инета показало следующее...входящая скорость 5.78 мб/с,исходящая...

Помогите Разобраться, Пожалуйста!
Начало проверки отчета по xsd-схеме: : Element content is invalid according to the DTD/Schema. ...

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

Помогите пожалуйста разобраться.
Нужно спроектировать базу данных &quot;Банк&quot; , база должна быть приведена к 3НФ и иметь следующие поля:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru