29.03.2012, 23:07 | #1 (permalink) |
Member
Регистрация: 13.12.2010
Сообщений: 22
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Работа со строками
приведу немного моего "кривого" кода: В файле main.c: volatile char tx_string[100]; volatile char rx_string[100]; int main(void) { strcpy(tx_string, "AT\r\n"); strcpy(rx_string, ""); ... } В файле at_commands.h: extern volatile char tx_string[100]; //Transferred string extern volatile char rx_string[100]; //Accepted string В файле stm32f10x_it.c: #include "at_commands.h" void USART2_IRQHandler(void) { ... rx_string[rx_bufsize] = USART_ReceiveData(USART2); t = strcmp((const char*)rx_string[rx_bufsize-1],"A"); ... } Так вот функция strcmp отказывается выдавать правильный результат. Подскажите пожалуйста, что я делаю не так? Спасибо!!! |
29.03.2012, 23:07 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Пожалуйста, попробуйте поискать ответ в схожих обсуждениях Работа Помогите пожалуйста со строками в Pascal |
29.03.2012, 23:08 | #2 (permalink) |
Member
Регистрация: 13.12.2010
Сообщений: 22
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Функция USART_ReceiveData(USART2) возвращает значение регистра (8 бит)
Программирую в Keil |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|