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

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

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

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

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

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


 
Опции темы
Непрочитано 12.02.2015, 21:37  
vavan1983
Почётный гражданин KAZUS.RU
 
Аватар для vavan1983
 
Регистрация: 26.12.2007
Сообщений: 1,198
Сказал спасибо: 70
Сказали Спасибо 80 раз(а) в 69 сообщении(ях)
vavan1983 на пути к лучшему
По умолчанию Пропадает байт 0x55 при передачи USART

PIC16F877A
Куда может пропадать байт 0x55?

Нажмите на изображение для увеличения
Название: 477168827.jpg
Просмотров: 185
Размер:	229.5 Кб
ID:	75719

unsigned short pid[17]={0x44,0x42,0xA4,0x26,0x8D,0x27,0x9F,0xC4,0x24,
0x21,0x69,0x9A,0xA4,0x33,0x62,0x55,0x99};
unsigned short i=0,k=0,v=0,t=0;
void main()
{
ADCON1=0x07;
CMCON=0x07;
OPTION_REG=0X07;
INTCON=0XC0;
PIE1=0X21;
TXSTA=0X24; //BRGH=1
RCSTA=0X80;
SPBRG=103; //скорость 2404 бот.с
TRISA=0;
PORTA=0;
T1CON=0X30;

while(1)
{
if(k==0)
{
RCSTA.SPEN=0; //отк. модуль USART
TRISC.RC6=0; //пин выхода USART как обычный цифровой выход
k=1;
v=1;
PORTA.RA0=~PORTA.RA0; //контроль работы кода
RCSTA.SPEN=1; //вкл. модуль USART
INTCON.T0IE=1; //разрешает прерывание по переполнению от таймера 0
TMR0=0;
}
}
}
//================================================== ============================
void interrupt()
{
if(PIR1.TXIF==1&&v==0)
{
TXREG=pid[i++]; //передача 17 байт из массива pid[17]
if(i==17)
{
i=0;
k=0;
PIE1.TXIE=0;
}
}
//================================================== ============================
if(INTCON.T0IF==1&&v==1)
{
INTCON.T0IF=0;
t++;
if(t==10)
{
t=0;
v=0;
INTCON.T0IE=0;
PIE1.TXIE=1; //начать передачу данных USART
}
}
}

Если не отключать модуль USART в регистре RCSTA.SPEN=0 то байт не пропадает.
Реклама:
vavan1983 вне форума  
Непрочитано 12.02.2015, 23:06  
3d cube
Гражданин KAZUS.RU
 
Регистрация: 27.11.2012
Адрес: 30км от Софии
Сообщений: 732
Сказал спасибо: 89
Сказали Спасибо 310 раз(а) в 180 сообщении(ях)
3d cube на пути к лучшему
По умолчанию Re: Пропадает байт 0x55 при передачи USART

0x55 01010101 байт синхронизации скорости обмена. Пользуется для бескварцевых устройств. Вы явно гдето передаете состояние БРЕК. Тоесть логический ноль по шине за время полтора байта. И самосинхронизацию включили.

Последний раз редактировалось 3d cube; 12.02.2015 в 23:09.
3d cube вне форума  
Непрочитано 12.02.2015, 23:19  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Пропадает байт 0x55 при передачи USART

3d cube, http://www.microchip.su/showthread.php?t=17054
__________________
Осторожно , злой кот
dosikus вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Бортовой комп (почти) теперь и у меня (+) kd_Rash Микроконтроллеры, АЦП, память и т.д 79 11.08.2011 14:23
Связь 2 двух МК по RS485,ошибки при передаче данных. Zemlyanov Микроконтроллеры, АЦП, память и т.д 8 12.10.2007 12:58
[Решено] Сборник перлов любителей кабельщины mikesmith Отвлекитесь, эмбеддеры! 135 14.08.2007 15:49
Вопрос по мультипроцессорному обмену USART MEGA8 vikont-s Микроконтроллеры, АЦП, память и т.д 0 10.08.2006 14:55


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


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