07.06.2016, 11:34
|
|
Почётный гражданин KAZUS.RU
Регистрация: 22.02.2008
Адрес: Ukraine, рядом с Полтавой
Сообщений: 9,774
Сказал спасибо: 5,556
Сказали Спасибо 25,340 раз(а) в 5,693 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
__________________
«Совершенство — это не тогда, когда уже нечего больше добавить, а тогда, когда уже нечего отнять.»
/Эйнштейн/
моя домашняя страничка: http://www.eddy.com.ua/
|
|
|
Эти 2 пользователя(ей) сказали Спасибо Eddy71 за это сообщение:
|
|
|
09.06.2016, 20:52
|
|
Частый гость
Регистрация: 25.08.2006
Сообщений: 18
Сказал спасибо: 24
Сказали Спасибо 5 раз(а) в 3 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Народ я dsPic33 сейчас юзаю, разбирался с стоп-битом в RS232. Хочу спросить ни кто не использовал, там есть регистр STSEL, пытаюсь понять как принять массив и после приёма чтоб включённый стоп-бит определил что пакет данных прошел? Или я не так понимаю процесс...
Последний раз редактировалось katalianin; 09.06.2016 в 22:46.
Причина: неправильно выразился
|
|
|
|
09.06.2016, 23:23
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,984
Сказал спасибо: 0
Сказали Спасибо 4,943 раз(а) в 2,371 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от katalianin
|
есть регистр STSEL
|
бит, Карл! и как стоп-бит поможет отследить пакет? как строится посылка в RS232? вообще принцип работы с пакетами изучали? зачем в протоколе все оговаривается? зачем алгоритмы и программно-логические модели существуют?
|
|
|
|
10.06.2016, 00:09
|
|
Частый гость
Регистрация: 25.08.2006
Сообщений: 18
Сказал спасибо: 24
Сказали Спасибо 5 раз(а) в 3 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Наверное не правильно выразился. Стоп бит можно на один и два бита настроить, отследить он не может. Цель увидеть два бита без изменений, маленькую паузу после приёма пакета, далее выполнить нужную функцию когда пакет гарантировано принят. Ранее я делал с таймером похожую реализацию на более старых пиках и работало все на протяжении длительного времени. Сейчас подвернулись более современные пики вообщем совет нужен как правильней сделать.
|
|
|
|
10.06.2016, 09:13
|
|
Прописка
Регистрация: 14.02.2010
Адрес: СССР
Сообщений: 286
Сказал спасибо: 141
Сказали Спасибо 51 раз(а) в 43 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
katalianin, я правильно понимаю, что конечная цель - гарантированно отследить окончание приема пакета?
Так в пиках для этого вроде есть аппаратные средства.. точно не помню (давно юзал) - но вроде флаги и прерывания..
|
|
|
|
10.06.2016, 10:54
|
|
Частый гость
Регистрация: 25.08.2006
Сообщений: 18
Сказал спасибо: 24
Сказали Спасибо 5 раз(а) в 3 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Абсолютно верно, прерывания я в прошлой версии использовал и на прием и на передачу чтоб отследить конец пакета использовал таймер. Неделю как юзаю dspic33 вообщем начал изучать что там нового есть, решил использовать кольцевой буффер ну и задался вопросом а как без таймер сделать?
|
|
|
|
10.06.2016, 12:22
|
|
Прописка
Регистрация: 14.02.2010
Адрес: СССР
Сообщений: 286
Сказал спасибо: 141
Сказали Спасибо 51 раз(а) в 43 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Чёт как-то вообще сурово, с таймером-то... Проще буфер проверять на наличие нового символа или ещё чего...
Вот например на 24пике даташит пишет: An receive interrupt will be generated when one or more data characters have been received as per interrupt control bit....
Т.е. прерыване приёма генерируется когда принят один или более символов.
Ставите обработку в прерывание и всё. Уверен, в ds33 - ещё больше возможностей.
Или, если прерывания не нравятся - проверяйте постоянно соответствующий прерыванию регистр - но это, имхо, ихврат.
|
|
|
|
10.06.2016, 21:28
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,984
Сказал спасибо: 0
Сказали Спасибо 4,943 раз(а) в 2,371 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от Old_Monster
|
сурово, с таймером-то... Проще буфер проверять на наличие нового символа
|
эт вы модбасу, например, скажите
Сообщение от katalianin
|
решил использовать кольцевой буффер ну и задался вопросом а как без таймер сделать?
|
для начала озвучьте протокол, если самописный - опишите раскладку в пакете, побайтно
|
|
|
|
10.06.2016, 21:31
|
|
Прописка
Регистрация: 14.02.2010
Адрес: СССР
Сообщений: 286
Сказал спасибо: 141
Сказали Спасибо 51 раз(а) в 43 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от jump
|
эт вы модбасу, например, скажите
|
Не скажу. Не работал с ним. Комментировал исходя из СВОЕГО опыта.
|
|
|
|
11.06.2016, 15:36
|
|
Частый гость
Регистрация: 25.08.2006
Сообщений: 18
Сказал спасибо: 24
Сказали Спасибо 5 раз(а) в 3 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Цитата:
|
для начала озвучьте протокол, если самописный - опишите раскладку в пакете, побайтно
|
В этом и есть проблема , почему я в крайности сурово бросаюсь, с таймером-то... Знал бы что там за протокол я вытащил бы длину и контрольную сумму, а дальше без проблем.
Цитата:
|
Проще буфер проверять на наличие нового символа или ещё чего...
|
Идея по проверки буфера понравилась, фраза ещё чего заинтересовала...
jump модбасом я пока не занимался всё времени не могу найти...
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 05:16.
|
|