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

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

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

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

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

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


 
Опции темы
Непрочитано 13.12.2019, 15:09  
kib12
Частый гость
 
Регистрация: 01.03.2008
Сообщений: 31
Сказал спасибо: 2
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
kib12 на пути к лучшему
По умолчанию Re: PIC12F1840 Использование хардварного UART совместно с DAC

Сообщение от mimuh64 Посмотреть сообщение
Два варианта. Видны настройки регистров. Просто открой архив и посмотри ролик.
Посмотрел, спасибо. Вроде работает.
Вопрос: Это все с использованием #use rs232 или настройка регистров руками? Если не жалко, сбросьте ваш код к этим картинкам.

Директива #use rs232 кроме настройки регистров организует поток вывода, и если ее исключить, то не работают команды printf и другие, связанные с выводом в уарт. А я еще использую флаг четности (связано с используемым внешним оборудованием). Это еще больше загадит проект. Хотя может рс232 его и загаживает.

Если получится задуманное, то будет нужно перелопатить все семейство проектов. А хотелось бы малой кровью. К тому же в железе то работает, в протеусе нет.
Реклама:
kib12 вне форума  
Непрочитано 13.12.2019, 15:45  
mimuh64
Прописка
 
Регистрация: 29.10.2008
Сообщений: 272
Сказал спасибо: 0
Сказали Спасибо 102 раз(а) в 95 сообщении(ях)
mimuh64 на пути к лучшему
По умолчанию Re: PIC12F1840 Использование хардварного UART совместно с DAC

Сообщение от kib12 Посмотреть сообщение
кроме настройки регистров организует поток вывода... работают команды printf и другие, флаг четности... хотелось бы малой кровью... в протеусе...
У меня там свои библиотеки (со своим синтаксисом, в данном случае от BoostC), которые тебя еще больше введут в заблуждение.
Я указал тебе на проблему... это даст возможность отладить в Протеусе. Делай со своими директивами макросами и функциями, если внутрь их залезть нельзя, то в нужном месте дополняй операторы руками.
Например.
При совместной работе на один порт сразу после
PHP код:
setup_dac(DAC_OUTPUT DAC_VSS_VDD); //задаем режим DAC 
выключаем его
PHP код:
daccon0 &=~(1‹‹DACEN) ;// отключили DAC 
После применения #use rs232(uart1, baud=19200) пред включение dc_write(dc); добавь строки
PHP код:
rcsta&=~(1‹‹SPEN); //отключили USART
trisa.0 1// перенастроили порт
daccon0 |=(1‹‹DACEN) ; включили DAC 
Перед выдачей в USART
PHP код:
daccon0 &=~(1‹‹DACEN) ; //отключили DAC
rcsta|=(1‹‹SPEN); //включили USART
trisa.0 0// порт на выдачу 
и т.д.

Или по другому... При разных портах
#use rs232(uart1, baud=19200) сразу набираешь
PHP код:
apfcon|=(1‹‹TXCKSEL); // переназначили порт ТХ
trisa.0 1// забрали порт из стандартной функции CCS
trisa.4 0//  порт на выдачу 
В этом случае DAC работает в стандартном исполнении... Главная проблема это то что после использования apfcon порт А0 оставался настроенным на выдачу (из под #use rs232(...))
И все....

Последний раз редактировалось mimuh64; 13.12.2019 в 15:57.
mimuh64 вне форума  
Непрочитано 13.12.2019, 18:19  
kib12
Частый гость
 
Регистрация: 01.03.2008
Сообщений: 31
Сказал спасибо: 2
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
kib12 на пути к лучшему
По умолчанию Re: PIC12F1840 Использование хардварного UART совместно с DAC

Спасибо за советы.

Удалось получить нормальную решение и в Протеусе и в железе.

После переключения ТХ RA0 на RA4 регистр TRISA.0 стоит в 1. И схема не работает. Только передернув TRISA.0 в 0 и сразу в 1, получил вполне достойную картину.
Миниатюры:
Нажмите на изображение для увеличения
Название: DAC1.JPG
Просмотров: 0
Размер:	254.0 Кб
ID:	148346   Нажмите на изображение для увеличения
Название: DAC2.JPG
Просмотров: 0
Размер:	228.5 Кб
ID:	148347  
kib12 вне форума  
Непрочитано 13.12.2019, 21:38  
mimuh64
Прописка
 
Регистрация: 29.10.2008
Сообщений: 272
Сказал спасибо: 0
Сказали Спасибо 102 раз(а) в 95 сообщении(ях)
mimuh64 на пути к лучшему
По умолчанию Re: PIC12F1840 Использование хардварного UART совместно с DAC

ОК. Погуглил я немного этот CCS....Тебе знакомо вот это? Думаю что стоит изначально указать в #use rs232 опцию XMIT=pin - Set transmit pin. В этом случае сначала переключаешь TXCKSEL =1, затем включаешь USART #use rs232 (...., XMIT=pin,....).
Таким образом мы не затрагиваем порт A0.... и сразу работаем на него DAC...
Ну где-то так... попробуй.

Последний раз редактировалось mimuh64; 13.12.2019 в 21:46.
mimuh64 вне форума  
Непрочитано 14.12.2019, 11:48  
kib12
Частый гость
 
Регистрация: 01.03.2008
Сообщений: 31
Сказал спасибо: 2
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
kib12 на пути к лучшему
По умолчанию Re: PIC12F1840 Использование хардварного UART совместно с DAC

Нуу... Мануал я почитываю часто.

CCS сначала обрабатывает директивы, а уже потом все остальное.Так что вставить TXCKSEL =1 перед #use не получается.

Также параметр XMIT=pin - Set transmit pin в основном относится к ногодрыжному уарт, хотя в частном случае его можно применить и к хардварному. Я явно указываю #use rs232(uart1, baud=19200) на хардварный уарт1.

Передергивание TRIS0 нужно только в Протеусе, в железе корректно работает и без этого. Причем мне удалось стабильно принять на ответной стороне 10 состояний DAC (больше не пробовал), причем время установления уровня напряжения довольно малое, а это позволяет на лету организовать анализ довольно плотного шифрованного канала связи.

Спасибо за советы!
kib12 вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PIC12F1840 Использование UART совместно с DAC kib12 PIC 2 11.12.2019 03:00
Программирование программатором STERH 007 PIC микроконтроллеров ispitatel1 Песочница (вопросы новичков) 4 17.04.2017 17:18


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


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