25.08.2009, 18:08
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
А может в - PIC C Compiler (CCS PCWHD v4.093)
http://torrents.ru/forum/viewtopic.php?t=2127616
Исправлено ?
Сообщение от CERGEI1982
|
для pic18f84A
|
кхе ... кхе ...
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
25.08.2009, 18:51
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Спасиб гляну.
Сообщение от avr123-nm-ru
|
Сообщение от CERGEI1982
|
для pic18f84A
|
кхе ... кхе ...
|
Торопился писал,бывает.
|
|
|
|
26.08.2009, 00:42
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
|
|
|
|
22.09.2009, 22:51
|
|
Гражданин KAZUS.RU
Регистрация: 06.08.2006
Сообщений: 694
Сказал спасибо: 24
Сказали Спасибо 38 раз(а) в 31 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Привет форумчане. Помогите пожалуйста, объясните доступно как это работает.
У меня есть такая программа по передаче данных через УСАРТ
Программа написана в ЦЦСПИКЕ
Код:
|
setup_uart(UART_DATA);
setup_uart(TRUE);
output_high(RS485_RX_ENABLE);
for(try=0; try‹5; ++try) {
rs485_collision = 0;
fputc((int16)0x100|rs485_id, RS485);
delay_us(2);
fputc((int16)0x100|to, RS485);
delay_us(2);
fputc((int16)0x000|len, RS485); |
эта часть передает от кого- кому- длина сообщения
эта часть принимает сообщения
порт настроен так
Код:
|
#use rs232(baud=425000, xmit=RS485_TX_PIN, rcv=RS485_RX_PIN,enable=RS485_ENABLE_PIN, bits=9, long_data, errors, stream=RS485) |
все хорошо работало пока я не обратил внимание в ПРОТЕУСЕ что когда приемник принимает данные которые посылает передатчик то по программе первый байт и второй имеют в восьмом бите 1. а когда приемник принимает то в восьмом бите единица у второго и третьего байта(т.е. у кому и длина). Возникает вопрос почему это так.
И еще эти фрагменты из драйвера который находится в папке ЦЦСПИКА. Но как я увидел при отладке в протеусе если навесить несколько контроллеров на одну сеть то при передаче одним все остальные уходят в прерывание по каждому байту- т.е. тупо одному передаеш а регагируют все. Я почитал документация по УСАРТУ и нефига не понял по поводу 9-ти битной передачи. Как я понимаю прерывание должно настраиваться на 1(адрес) в восьмом бите??? Прошу не пинать и не смеяться а по доступному объяснить что я не так понял и что я не так сделал. Заранее благодарен.
|
|
|
|
22.09.2009, 23:36
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
avr123-nm-ru, Чегой то маловат размерчик , или это апдейт ?
__________________
Осторожно , злой кот
|
|
|
|
25.09.2009, 10:17
|
|
Частый гость
Регистрация: 19.05.2004
Сообщений: 16
Сказал спасибо: 4
Сказали Спасибо 1 раз в 1 сообщении
|
Re: Изучение PIC C Compiler(CCS C)
Привет всем!
Я начинал изучать PIC C совместно с Proteus-ом. Но вот ето не получается.
#include "16F877A.h"
#use delay (clock=1000000)
void main()
{
while(1)
{
if (input(PIN_C0==1))
output_high(PIN_D0);
else
output_low(PIN_D0);
}
}
В Proteus-e PIN_D0 не меняет состояние. Где моя ошибка.
У меня Proteus 7.6 SP0
|
|
|
|
25.09.2009, 10:47
|
|
Временная регистрация
Регистрация: 13.06.2006
Сообщений: 51
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Здравствуйте! А где у вас конфигурация портов!?
Последний раз редактировалось spasbyspas; 25.09.2009 в 10:49.
|
|
|
|
25.09.2009, 11:13
|
|
Частый гость
Регистрация: 19.05.2004
Сообщений: 16
Сказал спасибо: 4
Сказали Спасибо 1 раз в 1 сообщении
|
Re: Изучение PIC C Compiler(CCS C)
Привет!
Я прочел что конфигурация портов делает сам компилатор.
А етот пример и дизайн сиз книги брал.
|
|
|
|
25.09.2009, 11:46
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от vank
|
Я прочел что конфигурация портов делает сам компилатор.
|
А где Вы ему говорите про то, как конфигурить порты? Это делается соответствуюшими директивами #use или через мастер, который формирует файл .h
Если это не делать, то перед каждой операцией ввода-вывода компилятор вставит код настройки порта, который абсолютно лишний в Вашем случае.
На мой взгляд опитмально добавить 3 строки:
#use FAST_IO(ALL)
set_tris_c(1);
set_tris_d(0);
Последний раз редактировалось MisterDi; 25.09.2009 в 11:59.
|
|
|
|
25.09.2009, 12:30
|
|
Временная регистрация
Регистрация: 13.06.2006
Сообщений: 51
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
"vank" у вас нужно пороботать с встроеном в PICCIDE PICWizard. Там наглядно все и можна сконфигурировать порты и увидет как ето делается в ручном!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 18:30.
|
|