Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Инженерный раздел > Микроконтроллеры, робототехника, схемотехника, 3D принтеры
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 04.03.2018, 10:46   #1
Umar95
Пользователь
 
Регистрация: 21.02.2016
Сообщений: 10
Репутация: 10
По умолчанию Stm32f1 usart3 как принять строку - ARM, Cortex, STM32 микроконтроллер

через cp2102 Bridge Controller (USB to UART), обмен строками происходит, а вот место cp2102 подключаю sim800 ответ не получаю
Код:

#include "stm32f10x.h" 
 
GPIO_InitTypeDef GPIO_InitStructure;
USART_InitTypeDef USART_InitStructure;
 
    unsigned char Buffer[512];  //  Буфер
    int a,b;
 
void init()
{
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE);
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
 
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;      //  Tx
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
 
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;  //  Rx
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
 
  USART_InitStructure.USART_BaudRate = 9600;
  USART_InitStructure.USART_WordLength = USART_WordLength_8b;
  USART_InitStructure.USART_StopBits = USART_StopBits_1;
  USART_InitStructure.USART_Parity = USART_Parity_No;
  USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
  USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
 
  USART_Init(USART3, &USART_InitStructure);
  USART_Cmd(USART3, ENABLE);
}
 
void delay(unsigned long p)
{
    while(p>0){p--;}
}
 
void send_Uart(USART_TypeDef* USARTx, unsigned char c)
{
    while(USART_GetFlagStatus(USARTx, USART_FLAG_TXE)== RESET){}
        USART_SendData(USARTx, c);
}
 
unsigned char getch_Uart(USART_TypeDef* USARTx)
{
    while(USART_GetFlagStatus(USARTx,USART_FLAG_RXNE) == RESET){}
    return USART_ReceiveData(USARTx);
}
 
//  Отправка строки в USTR
void send_Uart_str(USART_TypeDef* USARTx, unsigned char *s)
{
  while (*s != 0) 
    send_Uart(USARTx, *s++);
}
 
//  читаем текстовую строку с UART, до ввода <enter>. Максимальная длина строки 512Байт
void read_str_uart(USART_TypeDef* USARTx,unsigned char* s)
{
    unsigned char temp;
    unsigned int index=0;
    while(index<512)
    {
        temp=getch_Uart(USARTx);
        if(temp!=13)
        {
            *s++=temp;
        }
        else
        {
            index=512;
        }
        index++;
    }
}
 
int main(void)
{
 
    init();
        
    send_Uart_str(USART3, "AT");
        read_str_uart(USART3, Buffer);
    
}

Umar95 вне форума   Ответить с цитированием
Старый 05.03.2018, 00:12   #2
WorldMaster
Профессионал
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Адрес: Россия, Мурманск
Сообщений: 1,883
Репутация: 513

icq: 359393755
По умолчанию

Че че ?? а по конкретнее??
что отправляете?? мож терминатор забыли вставить??
__________________
ICQ - 359393755 E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
Если помог - нажми на весы
WorldMaster вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
планшет WonderMedia WM8850, ARM Cortex-A9 runbe Помощь студентам 3 19.01.2014 23:56
asm и arm(stm32) evilboy Помощь студентам 0 03.06.2012 20:42
Перегрузка оператора (принять номер строки и строку char) delias Общие вопросы C/C++ 0 06.01.2010 16:40
Как принять GET запрос eldar Работа с сетью в Delphi 2 11.08.2008 00:19
Как принять сообщение (SendMessage) Crazyman Win Api 4 20.02.2008 05:42


16:42.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru