|
MC52i STM32Discover не дружат |
|
|
|
Mar 4 2013, 06:26
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Здравствуйте ,прошу помощи . Суть проблемы такова есть GSM модем PC и STM32VL DISCOVER подключаю по RX TX и GND модем CINTERION MC52i к компьютеру, шлю АТ команды ответ получаю. Компьютер подключаю к STM32 (stm шлет команды "ATE0\r" через функцию Send_Str(port,*data); ) обмен происходит пк получает посылку, а контролер прерывается на приход байта . Ну , а когда соединяю модем с stm то ответ я не получаю. Подскажите в чем проблема?
|
|
|
|
|
Mar 7 2013, 08:46
|

Участник

Группа: Участник
Сообщений: 30
Регистрация: 22-10-09
Пользователь №: 53 136

|
В описании интерфейса ASC0 указано MC52i is designed for use as a DCE. Based on the conventions for DCE-DTE connections it communicates with the customer application (DTE) using the following signals: • Port TXD @ application sends data to the module’s TXD0 signal line • Port RXD @ application receives data from the module’s RXD0 signal line или в картинках
Указаны направления подключения сигнальных линий.
Буквенное обозначение I/O вход выход данных. Также всегда можно проверить тестером или осциллографом вход это или выход.
|
|
|
|
|
Mar 18 2013, 14:18
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Я все прекрасно понимаю поменяй rx tx местами да и по мануалу как подключить rs232 я видел , но остается загадочное явление (шнур я использую один и тот же три повода RX TX GND) PC-CINTERION эта связь работает, PC-STM32 работает, а эта CINTERION-STM32 не работает. RX TX я менял местами не оно.
|
|
|
|
|
Mar 18 2013, 14:27
|
Местный
  
Группа: Участник
Сообщений: 339
Регистрация: 10-07-08
Из: Херсон
Пользователь №: 38 856

|
Цитата(drapoz @ Mar 18 2013, 18:18)  Я все прекрасно понимаю поменяй rx tx местами да и по мануалу как подключить rs232 я видел , но остается загадочное явление (шнур я использую один и тот же три повода RX TX GND) PC-CINTERION эта связь работает, PC-STM32 работает, а эта CINTERION-STM32 не работает. RX TX я менял местами не оно. Ответьте на один вопрос, Вы прямо с STM32VL DISCOVER подключаете шнурок (3 провода RX TX GND) к разьёму D-sub RS-232 MC52i?
Сообщение отредактировал alexdos - Mar 18 2013, 14:33
|
|
|
|
|
Mar 18 2013, 14:33
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Нет я подключаю через ST232CN преобразователь уровней.
|
|
|
|
|
Mar 18 2013, 14:57
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Спасибо за подсказку но я сделал эксперемент у меня есть вторая отладочная плата (STM32F103VET6(development board ) ) у нее на борту стоит два USART разьема с готовым преобразователем , но проблема осталась та же что и с дискавери.
Сообщение отредактировал drapoz - Mar 18 2013, 14:59
|
|
|
|
|
Mar 18 2013, 15:24
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Модему я через PC задал 9600 baudrate, контролер 9600, яшлю команду "AT\r" но ответа нет . По отладчику шлются три символа А отправляю я через свою функцию , вот она:
USART2_SendString((u8*)"AT\r",sizeof ("AT\r")); void USART2_SendString(u8* data,u16 len) { u16 i;
for (i=0; i<len; i++){ USART2_SendByte(data[i]); } }
void USART2_SendByte(u16 Data) { while (!(USART2->SR & USART_FLAG_TXE)); USART2->DR = (Data & (uint16_t)0x01FF); }
Авот и оно ,не хочет вызываться. void USART2_IRQHandler(void) { GPIO_SetBits(GPIOD,GPIO_Pin_8);//led for debug if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) { in_bufer_2[counter_2]=USART2->DR;
if(in_bufer_2[counter_2]==0) { counter_2=0; GPIO_SetBits(GPIOD,GPIO_Pin_9);//led for debug } counter_2++; } // Îáðàáîòêà ñîáûòèÿ TXE if ( USART_GetITStatus(USART2, USART_IT_TXE) ) { USART_ClearITPendingBit(USART2, USART_IT_TXE);
} }
|
|
|
|
|
Mar 18 2013, 15:56
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
RTS +CTS и DCD+DSR+DTR
Сообщение отредактировал drapoz - Mar 18 2013, 16:00
|
|
|
|
|
Mar 18 2013, 16:10
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Когда с PC через терминалку шлю команды то модем отвечает на все команды которые шлеш, а вот с контролера я пока ориентируюсь только по отладчику, ну и без бряков по светодиодах.
|
|
|
|
|
Mar 18 2013, 16:22
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Да в этом то и проблема у меня нет лог. анализатора и осциллографа. Или я не так понял "Проверте физически"
Сообщение отредактировал drapoz - Mar 18 2013, 16:24
|
|
|
|
|
Mar 18 2013, 16:45
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Контролер с PC обмениваются здесь все работает терминалка ловит в HEX 41 54 0D. Может скорсть маловата или я уже не знаю что и думать.
Сообщение отредактировал drapoz - Mar 18 2013, 17:26
|
|
|
|
|
Mar 18 2013, 17:57
|
Группа: Участник
Сообщений: 13
Регистрация: 21-02-13
Из: Полтава
Пользователь №: 75 738

|
Тема закрыта проблема решылась ,тоненький волосок от провода коротил на корпус .Сопли они и в носе мешают. Огромное спасибо все ,а особенно alexdos.
Сообщение отредактировал drapoz - Mar 18 2013, 18:28
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|