Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 25.03.2009, 08:17  
russo_turisto
Прописка
 
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
russo_turisto на пути к лучшему
По умолчанию Подскажите по Си, программа обмена данными по 232

Подскажите по программе, обмениваются данными два ПИКа, написано на микроСи.
Обмен такой -запрос (F1, 01, F4, 3C)-ответ (FE)-запрос (FD)-ответ (0A)-запрос (74)-ответ (0A)
Почему-то нет ответов.

Прошу не пинать ногами - моя первая программа на Си.

Прикрепленный файл: 3060959.rar
Реклама:
russo_turisto вне форума  
Непрочитано 25.03.2009, 08:29  
russo_turisto
Прописка
 
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
russo_turisto на пути к лучшему
По умолчанию

Или надо было написать на СSS, легче отлаживать с cof файлом. Может есть подобные примеры с исходниками?
russo_turisto вне форума  
Непрочитано 25.03.2009, 10:23  
YagVlad
Частый гость
 
Регистрация: 29.07.2008
Сообщений: 29
Сказал спасибо: 24
Сказали Спасибо 7 раз(а) в 5 сообщении(ях)
YagVlad на пути к лучшему
По умолчанию

Если Usart_Write грузит данные в буффер передатчика, то необходимо перед загрузкой проверять передан ли предедущий байт.
YagVlad вне форума  
Непрочитано 25.03.2009, 13:26  
russo_turisto
Прописка
 
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
russo_turisto на пути к лучшему
По умолчанию

Первая передача четырёх байт в прогр. rs232.c идет нормально. Видимо проверять буфер не надо, проверяется компилятором.
Нет ответа на запрос. Видимо в программе ответа rs232_otvet.c ошибки

//Программа принимает байты и отправляет ответы
unsigned char d1,d2,d3,d4,d5,d6,d7,d8 ;
char i = 0 ;
// программа посылает ответы на запросы


void main(void) {

Usart_Init(2400);
Lcd_Config(&PORTB,4,5,6,7,2,1,0);
Lcd_Init(&PORTB); // Initialize LCD on PORTC
Lcd_Cmd(LCD_CLEAR); // Clear display
Lcd_Cmd(LCD_CURSOR_OFF); // Cursor off

Lcd_Out(1, 1, "kamera");
Lcd_Out(2, 1, " 60");


if (Usart_Data_Ready()) { // если данные приняты
d1 = Usart_Read(); // прочитать первый байт
d2 = Usart_Read(); // прочитать второй байт

d3 = Usart_Read(); // прочитать третий байт

d4 = Usart_Read(); // прочитать четвёртый байт

if ((d1 == 0xF1) && (d2 == 0x01) && (d3 == 0xF4) && (d4 == 0x3C)) {
Usart_Write(0xFE);
Lcd_Out(1, 7, "otvet");
Lcd_Out(2, 7, "FE");
} else Lcd_Out(1, 7, "error");
}

if (Usart_Data_Ready()) { // если данные приняты
d5 = Usart_Read(); // прочитать байт
}
if (d2 == 0xFD) {
Usart_Write(0x0A),
Lcd_Out(1, 7, "otvet");
Lcd_Out(2, 7, "0A");
} else Lcd_Out(1, 7, "error");

if (Usart_Data_Ready()) { // если данные приняты
d6 = Usart_Read(); // прочитать байт
}
if (d6 == 0x74) {
Usart_Write(0x0A),
Lcd_Out(1, 7, "menu");
Lcd_Out(2, 7, "ok");
} else Lcd_Out(1, 7, "error");



// } //while (1);
}//~!
russo_turisto вне форума  
Непрочитано 25.03.2009, 16:40  
YagVlad
Частый гость
 
Регистрация: 29.07.2008
Сообщений: 29
Сказал спасибо: 24
Сказали Спасибо 7 раз(а) в 5 сообщении(ях)
YagVlad на пути к лучшему
По умолчанию

Компилятор никогда не проверяет буфер.
YagVlad вне форума  
 

Закладки
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программа для микроконтроллера (подскажите что в ней не так) _Inna_ Микроконтроллеры, АЦП, память и т.д 41 16.06.2009 00:18
вопрос по протоколу обмена Gladkih Микроконтроллеры, АЦП, память и т.д 12 17.02.2009 13:46
Вопрос по протоколам обмена данными в ATmegaAVR vikpol Микроконтроллеры, АЦП, память и т.д 12 17.04.2008 10:58
Скопировать и расшифровать протокол обмена georg222 Делимся опытом 1 05.03.2008 08:03
Подскажите пожалуйста интерфейс типа 232 на 500 метров Muzicant Микроконтроллеры, АЦП, память и т.д 9 16.02.2008 11:37


Часовой пояс GMT +4, время: 19:13.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot