реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> две 1-wire шины в одном корпусе, как реализовать?
Anthoni
сообщение Jun 20 2012, 12:50
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 1-12-07
Пользователь №: 32 864



Добрый день друзья. Как в процессе работы переинициализировать шину 1-wire на другую ногу МК в cvavr?
Go to the top of the page
 
+Quote Post
GDI
сообщение Jun 20 2012, 12:57
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Если используете встроенную библиотеку CVAVR, то никак. Пишите свою библиотеку или используйте готовую, которую можно поискать в исходниках программ и библиотек в прикрепленной теме.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jun 20 2012, 14:11
Сообщение #3


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Как раз готовлю статейку к своей библиотеке. Пока не совсем готово, но выкладываю сюда ПО + документацию. Библиотека работает, а дока не до конца оформлена. Сори! Да, Си++...

Прикрепленные файлы
Прикрепленный файл  F1Wire.7z ( 21.28 килобайт ) Кол-во скачиваний: 50
 


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Anthoni
сообщение Jun 20 2012, 15:37
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 1-12-07
Пользователь №: 32 864



Понял. Изучаю вашу haker_fox документацию! Непонятно одно, прикрутится ли ваша C++ библиотека к проекту CVAVR?..
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jun 21 2012, 02:27
Сообщение #5


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Anthoni @ Jun 20 2012, 23:37) *
Понял. Изучаю вашу haker_fox документацию! Непонятно одно, прикрутится ли ваша C++ библиотека к проекту CVAVR?..

Предлагаю Вам три решения решения:
1. Выкидываете CVAVR, если он не поддерживает Си++ rolleyes.gif
2. Переписываете библиотеку на Си. Это очень просто.
3. Понимаете идею указателей на порты ввода-вывода, заложенную в библиотеке, и пишите свою)))


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
hd44780
сообщение Jun 21 2012, 06:14
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Я в своё время сделал тупо и примитивно - сдублировал все CvAVR-овские функции под разными именами и всё. Один "комплект" дёргает одну ногу, 2-й - другую.

Знаю, что некрасиво, жрёт в 2 раза больше флэша (чем могло бы), но так было проще и в той задаче работает.
А флэш свободный там ещё и остался rolleyes.gif .

Сообщение отредактировал hd44780 - Jun 21 2012, 06:15


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jun 21 2012, 07:16
Сообщение #7


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (hd44780 @ Jun 21 2012, 15:14) *
Знаю, что некрасиво, жрёт в 2 раза больше флэша (чем могло бы), но так было проще и в той задаче работает.
А флэш свободный там ещё и остался rolleyes.gif .

Да, как раз один из вариантов я упомянул в статейке. Сам так делал. Но дело даже не в потребляемой памяти. Дело в том, что исправления и нововведения придется делать дважды (трижды, четырежды...). А так, подкорячил базовый класс, перекомпилировал программу, и все)


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Jul 3 2012, 13:15
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



haker_fox
токо непонятно что делать с этой библиотекой на других архитектурах (PIC, STM8, STM32).
привязка всей логики к архитектуре АВР - не лучшая идея.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Jul 3 2012, 13:51
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Anthoni @ Jul 3 2012, 16:09) *
А Си++ это avr studio?

С++ - язык такой...
И в avr studio а ним можно работать.
Go to the top of the page
 
+Quote Post
Anthoni
сообщение Jul 3 2012, 14:21
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 1-12-07
Пользователь №: 32 864



_Артём_ та понятно что язык sm.gif
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Jul 3 2012, 17:02
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата
Добрый день друзья. Как в процессе работы переинициализировать шину 1-wire на другую ногу МК в cvavr?

А на фига? Смысл в чём?


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Jul 3 2012, 17:14
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(ILYAUL @ Jul 3 2012, 20:02) *
А на фига? Смысл в чём?


Видимо, чтобы реализовывать 2 и более мастеров 1-wire.
Go to the top of the page
 
+Quote Post
ARV
сообщение Jul 3 2012, 17:51
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



Цитата(_Артём_ @ Jul 3 2012, 21:14) *
Видимо, чтобы реализовывать 2 и более мастеров 1-wire.

смысл наверняка в том, чтобы избавиться от геморроя с адресацией нескольких однотипных устройств. например, сделать устройство измерения температуры в двух или более точках при помощи DS18x20 достаточно геморная штука, если все датчики сажать на 1 линию: надо предусмотреть целую систему "обучения" девайса адресам новых датчиков с привязкой датчика к месту измерения... а если сделать 2 или более шины - то каждая может быть однозначно соотнесена с местом измерения и независима от адреса датчика (SKIP_ROM для обращения).

я делал либу поддержки до 8 1-wire-шин на одном порту (WinAVR), но все руки не дошли в реале ее испытать sm.gif в протеусе все работает


--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Jul 3 2012, 18:12
Сообщение #14


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(_Артём_ @ Jul 3 2012, 21:14) *
Видимо, чтобы реализовывать 2 и более мастеров 1-wire.

Цитата
до 8 1-wire-шин на одном порту

Т.е поставить мультиплексор , что бы ерундой не нагружать проц и пожалеть его ноги и альтернативные функции - это не наш метод?
А ещё повесить 1-wire на USART , что бы не тратить по посту процессорное время - прерывания великая сила. biggrin.gif


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
ARV
сообщение Jul 3 2012, 19:16
Сообщение #15


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



не хотелось бы устраивать дискуссию... но МК для того и ставят в схему, чтобы по максимуму его нагрузить, избавившись от мультиплексоров и прочей лабуды - не так ли? и ставить во главу угла освобождение МК от работы по меньшей мере странно: он железныйкремниевый - пусть пашет! sm.gif

судя по всему, интерфейс с пользователем при установке произвольных датчиков в уже изготовленный девайс у вас проблем не вызывает... а так же объяснение пользователю того, как именно отличить один черненький датчик от другого и почему их нельзя менять местами (на объекте измерения) без перенастройки девайса... вам можно только позавидовать sm.gif


--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th July 2025 - 14:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01474 секунд с 7
ELECTRONIX ©2004-2016