Например TDA7294

Форум РадиоКот • Просмотр темы - Сколько DS18B20 может обслужить Atmega16
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пт фев 27, 2026 10:26:37

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 92 ]    , 2, , ,  
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Чт апр 02, 2009 07:29:43 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22
Сообщений: 2401
Откуда: Россия, Волгоград
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Во-первых писать надо не в RAM а в EEPROM, иначе при сбросе/выключении вы потеряяте все данные, для расширения памяти рекомендую использовать I2C мелкосхемы памяти типа 24Lxxx

_________________
Чем дальше, тем больше становлюсь занудой...
Изображение


Вернуться наверх
 
 Заголовок сообщения:
СообщениеДобавлено: Чт апр 02, 2009 07:32:10 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
Vov123 писал(а):
При обнаружении устройства контроллер должен прописать ROM-код в RAM. А у Mega16 его как известно 1000 байт.
А что - мега16, в отличие от остальных мег, с внешней памятью работать не может? Странные ребята, эти атмеловцы, непоследовательные какие-то... :?
Впрочем, внешняя память и не понадобится, я полагаю, так как с практической точки зрения, монтировать, обслуживать будет проще небольшие кусты от 16 до 64 датчиков, расположенные на небольшом расстоянии от контроллера.

Vov123 писал(а):
ROM-код у DS18B20 составляет 8 байт.
1 байт - это CRC, его хранить не нужно, еще 1 байт - код семейства, его тоже хранить незачем, так как, по условиям задачи, подключаться будут датчики одного семейства, а может даже одного типа. Это я говорю автору вопроса на заметку - чтобы учел, что тут можно сэкономить.

Кстати, длина кода одинакова у всех 1-wire устройств, если мне память ни с кем не изменяет, ссылаться на DS18B20 необязательно.


Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Чт апр 02, 2009 11:04:32 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Вы правы тигра я уже обдумывал оптимизацию. Читал их номера CRC и код семейства я откинул Это так Остальных заполненных байт у меня оказалось 4. Остальные ноль. Нафик их хранить :))
Кстати что означает в вашей последней фразе "ссылаться на DS18B20 необязательно." И еще вы мне рекомендовали дополнять посты Убей не вижу возможности Я на форумах недавно


Вернуться наверх
 
 Заголовок сообщения: Re: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Чт апр 02, 2009 11:51:58 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
lkote68 писал(а):
я уже обдумывал оптимизацию. ... заполненных байт у меня оказалось 4. Остальные ноль. Нафик их хранить :))
А есть гарантия, что в будущих экземплярах два старших байта тоже будут нулевыми? Если есть договоренность с Далласом, то тогда канешна... :)
lkote68 писал(а):
Кстати что означает в вашей последней фразе "ссылаться на DS18B20 необязательно."
Просто, Vov123 так высказался, что у кого-нибудь могло сложиться мнение, будто длина ROM-кода равна 8 байтам именно у DS18B20, я поправил его, на всякий случай.
lkote68 писал(а):
... рекомендовали дополнять посты Убей не вижу возможности Я на форумах недавно
В своих постах есть кнопочка - Изображение


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Пн апр 13, 2009 17:08:57 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Уважаемые Коты. Благодаря Вашему тыканию меня носом в нужные источники моя прога заработала и теперь я в сети вижу 10датчиков. Все вроде тип топ. Но есть еще два вопроса меня беспокоящие. Вопрос 1. Если моя сеть будет ну довольно протяженная ну скажем метров 50. Не надо ли как нибудь саму сеть гальванически отвязывать от контроллера.
Вопрос 2. Хотелось бы все таки разнести датчики по ветвям. Генератор кода CodeVisionа устанавливает константу номер порта куда подвешена сеть .equ __w1_bit=6 Если бы писать на асме можно бы было расписать опрос на все 8 ног порта. Кто знает как можно пререопределить по ходу работы программы значение константы __w1_bit=6. Есть правда еще один выход ключи ветвления сети DS2405 и др но у меня их нет и с ними я еще не працювал и купить попробовать не могу так как в наличии их нет на самой нашей продвинутой фирме. И могут примезти под заказ только партию.


Вернуться наверх
 
 Заголовок сообщения: Re: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Пн апр 13, 2009 18:24:29 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
lkote68 писал(а):
Вопрос 1. Если моя сеть будет ну довольно протяженная ну скажем метров 50. Не надо ли как нибудь саму сеть гальванически отвязывать от контроллера.
Если я правильно помню, в стандарте определена макс. емкость линии - вот от нее и плясать. И еще, если опять-таки мне память ни с кем не изменяет, была там речь о дополнительной подтяжке к питанию, если линия длинная.
lkote68 писал(а):
Вопрос 2. Хотелось бы все таки разнести датчики по ветвям. Кто знает как можно пререопределить по ходу работы программы значение константы __w1_bit=6.
Я бы посоветовал модифицировать библиотеку, добавив в нее дополнительным параметром номер пина, в который "дуть" (если совсем туго будет, можно и порт на ходу менять, но это уж немного сложнее, по-моему, хотя и не бином Ньютона).


Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Пн апр 13, 2009 20:10:30 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Линия Тигра у меня подтянута 4.7k Датчики планирую запитать и табличку с номиналами в зависимости от длины я у Далласа видел. Цель преследую слегка другую чтобы сеть можно было сегментировать скажем датчиков по 15. Если отвалится сегмент то небольшой. Я же по этому про DS2405 сказал. А насчет развязки спросил а кто знает что там будет вдруг разряд какой или всунет кто то в сеть :-)
А вот насчет библиотеки и смены порта не могли бы Вы неразумного на путь истинный направить. Библиотека она на то что бы ею пользоваться а вот как ее мона редактить это уже высший пилотаж.


Вернуться наверх
 
 Заголовок сообщения:
СообщениеДобавлено: Пн апр 13, 2009 22:30:06 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
Ну, вовсе необязательно редактировать саму библиотеку, да и не нужно это делать - я говорил о том, чтобы взять из неё текст всех 1-w функций, перенести его в свой программный модуль и уже там модифицировать. Ты каким компилятором пользуешься? Я что-то не нашел указания на это в теме.

Кстати, если разветвление сети нужно только для исключения обрыва большого сегмента, то я думаю, что вполне можно и без DS2405 обойтись - он ведь только затем и нужен, чтобы отключать неиспользуемые сегменты, а тебе это не нужно, так как у тебя на одном м/к будет немного датчиков. Я бы не дергался вовсе - повесил бы несколько шлейфов на одну ногу и использовал бы библиотечные функции - двух заяйцев, одним выстрелом! Изображение


Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Вт апр 14, 2009 07:30:32 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Yellow Tiger писал(а):
Ну, вовсе необязательно редактировать саму библиотеку, да и не нужно это делать - я говорил о том, чтобы взять из неё текст всех 1-w функций, перенести его в свой программный модуль и уже там модифицировать. Ты каким компилятором пользуешься? Я что-то не нашел указания на это в теме.
Пользуюсь CodeVision по моему для быстрого старта самэ той.
Асма я для Аtmel не знаю. А С перенес с программирования для ПК. И насколько понимаю библиотека это практически бинарник. Компилятор оттуда надергивает функций которые в хэдерах. Поэтому как оттуда можна надергать функций вопрос.
Ну а насчет на одну ногу я бы и вешал. Работодатель грит а ведь можно на разные чтоб у нас если замкнуло мы особо не кипишевали. Я грю мона только сложнее и дольше будет.(на асме на много его еще изучить)


Вернуться наверх
 
 Заголовок сообщения: Re: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Вт апр 14, 2009 08:43:20 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
lkote68 писал(а):
насколько понимаю библиотека это практически бинарник. ... Поэтому как оттуда можна надергать функций вопрос.
Не, там все гораздо интересней. :) Во-первых, библиотеки лежат в виде сишных текстов в каталоге "...\CVAVR\lib", но это не все - перед компиляцией CvAvr генерит один сишный исходник ({имя_проекта}__.c), в котором объединяет все Си-исходники, входящие в проект, вот оттуда можно взять все библиотечные модули никуда далеко не отходя. :)
Наконец, самое смешное, что некоторые функции хранятся в исполняемом модуле cvavr.exe (например, w1_init(), w1_read(), w1_write() и некоторые другие), я не знаю, нафига сделан такой странный ход, но и эти функции все же можно получить - из asm-листинга проекта (низовые написаны на asm'е).

lkote68 писал(а):
Ну а насчет на одну ногу я бы и вешал. Работодатель грит а ведь можно на разные чтоб у нас если замкнуло мы особо не кипишевали.
Я бы посчитал, что дешевле - на каждый кластер (сколько они согласны включать в один сегмент) датчиков вешать одну тиньку (один бакс всего), но не тратиться на написание лишнего кода и не закладывать будущие грабли, либо сэкономить на самом дешевом (на тиньках) ценой дополнительного кодирования и дополнительных граблей, которые еще больше увеличат и сроки и стоимость, а потом предложил бы заказчику выбирать из этих двух сумм. В конце концов, если им очень хочется оплатить твое обучение ассемблеру, то пуркуа бы и не па? :)))

Кстати, поскольку тайминги обмена по 1-wire сети довольно жестко оговорены, может статься, что параллельная обработка нескольких сетей одним м/к окажется этому м/к не под силу... Не подсчитывал - просто догадка, которую необходимо проверить.


Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Вт апр 14, 2009 10:08:28 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
О это интересно. Посмотрел. Мне и в голову не пришло либы глядеть. Нашел асмовский файл. А вот __.с у меня нет. Кстати Тигра не подскажешь на твой взляд толковый мануал по таким Сям (отличается)и Асму для атмела.


Вернуться наверх
 
 Заголовок сообщения: Re: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Вт апр 14, 2009 11:10:12 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
lkote68 писал(а):
Мне и в голову не пришло либы глядеть.
Преимущество малого формата - можно хранить либы в исходниках. :)))

lkote68 писал(а):
Нашел асмовский файл. А вот __.с у меня нет.
Хм, первый такой случай. Наверное, я что-то о CvAvr упустил. Или ты не туда смотришь. :)))

lkote68 писал(а):
не подскажешь на твой взляд толковый мануал по таким Сям (отличается)и Асму для атмела.
Хм... это ж надо знать, чего те в мануале нужно, а я твоих требований не представляю. Так, навскидку:
- хэлп от CvAvr'а - обязательно. Причем, я его поначалу в текст сконвертил и читал в редакторе с использованием поиска, отрабатывая все кросс-ссылки прямо по мере их прочтения - для первого раза, процедура очень полезная, хотя башню может снести за один вечер. :))) Зато потом читается значительно эффективнее.
- апнота от Атмела "Эффективное программирование на С для м/к AVR" (AVR035: Efficient C Coding for AVR), - неплохое дополнение, хотя, в самом начале может оказаться невовремя, смотря, что за "начало".
- есть еще цельнотянутые книжки, типа Шпаковской "прогр-е для м/к Pic и AVR" и еще каких-то, но их ценность, на мой взгляд, такова, что я бы рекомендовал их читать только в том случае, если ничего другого нет.
По асму я читал только родную доку, но я на нем много и не пишу.


Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Пт май 15, 2009 10:52:55 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Уважаемые Коты. Кому интересно запитать свои датчики паразитно. Все заработало с параметрами как в даташите.
Это возможно решит проблему тех из котов которые жалуются на нагрев датчиков.
В библиотеке ds18b20.lib есть функция

float ds18b20_temperature(unsigned char *addr)
{
unsigned char resolution;
if (ds18b20_read_spd(addr)==0) return -9999;
resolution=(__ds18b20_scratch_pad.conf_register>>5) & 3;
if (ds18b20_select(addr)==0) return -9999;
w1_write(0x44);
PORTA.2 = 1;
delay_ms(conv_delay[resolution]);
PORTA.2 = 0;
if (ds18b20_read_spd(addr)==0) return -9999;
w1_init();
return (*((int *) &__ds18b20_scratch_pad.temp_lsb) & ((int) bit_mask[resolution]))*0.0625;
}

и еще одной функции надо сделать изменение


unsigned char ds18b20_init(unsigned char *addr,signed char temp_low,signed char temp_high,
unsigned char resolution)
{
if (ds18b20_select(addr)==0) return 0;
resolution=(resolution<<5) | 0x1f;
w1_write(0x4e);
w1_write(temp_high);
w1_write(temp_low);
w1_write(resolution);
if (ds18b20_read_spd(addr)==0) return 0;
if ((__ds18b20_scratch_pad.temp_low!=temp_low) ||
(__ds18b20_scratch_pad.temp_high!=temp_high) ||
(__ds18b20_scratch_pad.conf_register!=resolution)) return 0;
if (ds18b20_select(addr)==0) return 0;
w1_write(0x48);
PORTA.2 = 1;
delay_ms(15);
PORTA.2 = 0;
return w1_init();
}

После подключить как в схеме приложения. Ну естественно номер порта выбирайте сами.
Осталась последняя проблема переработать функи чтоб разнести датчики по ногам порта. Мы не сдаемся YellowTiger :))


Вложения:
1.PNG [548 байт]
Скачиваний: 516
Вернуться наверх
 
 Заголовок сообщения:
СообщениеДобавлено: Пт май 15, 2009 19:29:35 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
Я тебе здесь набросок развязки 1-wire шины выкладывал, а ты не ответил; я решил, что тебе это больше не нужно, а теперь вижу - ты продолжаешь копать (но - без развязки :))).


Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Пт май 15, 2009 19:47:09 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Привет тигра. Конечно продолжаю, самому интересно довести до ума и разобраться. Я же лет много '8' паяльник не брал в руки. Вот еще думаю упростить этот соствной транзистор. Ты конечно выкусил набросок. А я не сохранил думал тут он и полежит. Просто ем слона по кускам, до ушей надрезать не охота :)) И развязку как нибудь реализую. Сегодня позакаментил функи посмотрел на init read write...
В принципе реализуемо распаралеливание.


Вернуться наверх
 
 Заголовок сообщения:
СообщениеДобавлено: Пт май 15, 2009 21:10:56 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
Да я просто решил, что тебе уже не интересно, так как ты долго молчал. Нет ничего сложного в том, чтобы повторить тот пост, раз он-таки еще интересен. Вот только перерисовывать влом, так что на ляпы не смотри, торопился я. :)))
Итак: Пн Май 04, 2009 21:17:04 я написал:
Цитата:
Мысль относительно развязки 1-wire вертелась приблизительно такая:
Изображение
Обычных обозначений здесь нет, потому поясню - в начале и в конце - м/к, на концах двух подтянутых пуллапами (PU1, PU2) линий - оптопары, между оптопарами и м/к - буферы с третьим состоянием. В данном варианте состояние обоих концевых буферов управляется только ведущим контроллером (тем, что слева), но при необходимости можно второму м/к (там может быть и 1-w датчик) разрешить рулить своим звеном. По-моему, это ничего не даст, но как вариант держать в уме надо - вдруг в этом решении есть что-то полезное?
За фазировкой нулей/единиц не следил (это уже дело техники) - время экономлю, извини. Хотя, похоже, что всего и делов-то - добавить пуллапы и ко вторым оптронам, как они добавлены к первым.
Сомнение вызывает способность оптронов передавать частотки, необходимые для 1-wire, там счет на мегагерцы. Может быть, шинные формирователи спасут.

Вот такой вот эскиз.

P.S. В спешке ошибся в направлении передачи оптронов нижней линии - там стрелки справа-налево!


Последний раз редактировалось Yellow Tiger Ср июн 03, 2009 21:12:57, всего редактировалось 1 раз.

Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Пт май 15, 2009 21:37:16 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Уважаемые коты Извините ошибочку допустил - в схемке вложения не дорисовал подтягивающий резистор. Вот здесь уже все то.
Тигра пасиба


Вложения:
1.PNG [546 байт]
Скачиваний: 463
Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Ср май 20, 2009 15:56:50 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Всем привет. ТигроКотик Ау. Я тута распаралелил на 5,6 вывод тенденция понятна. Паралелил так. Создал глобальную переменную которая будет содержать номер пина. И изменил 3 функи в асемблере

_w1_init:
ldi r16,5
cpse r13,r16
jmp _init_pin6

clr r30
cbi __w1_port,__w1_bit_5
sbi __w1_port-1,__w1_bit_5
__DELAY_USW 0x1E0
cbi __w1_port-1,__w1_bit_5
__DELAY_USB 0x13
sbis __w1_port-2,__w1_bit_5
ret
__DELAY_USB 0x65
sbis __w1_port-2,__w1_bit_5
inc r30
__DELAY_USW 0x186
ret
_init_pin6:
clr r30
cbi __w1_port,__w1_bit_6
sbi __w1_port-1,__w1_bit_6
__DELAY_USW 0x1E0
cbi __w1_port-1,__w1_bit_6
__DELAY_USB 0x13
sbis __w1_port-2,__w1_bit_6
ret
__DELAY_USB 0x65
sbis __w1_port-2,__w1_bit_6
inc r30
__DELAY_USW 0x186
ret

__w1_read_bit:
ldi r16,5
cpse r13,r16
jmp _read_bit_6

sbi __w1_port-1,__w1_bit_5
__DELAY_USB 0x3
cbi __w1_port-1,__w1_bit_5
__DELAY_USB 0xF
clc
sbic __w1_port-2,__w1_bit_5
sec
ror r30
__DELAY_USB 0x6B
ret
_read_bit_6:
sbi __w1_port-1,__w1_bit_6
__DELAY_USB 0x3
cbi __w1_port-1,__w1_bit_6
__DELAY_USB 0xF
clc
sbic __w1_port-2,__w1_bit_6
sec
ror r30
__DELAY_USB 0x6B
ret

__w1_write_bit:
ldi r16,5
cpse r13,r16
jmp _write_bit_6

clt
sbi __w1_port-1,__w1_bit_5
__DELAY_USB 0x3
sbrc r23,0
cbi __w1_port-1,__w1_bit_5
__DELAY_USB 0x11
sbic __w1_port-2,__w1_bit_5
rjmp __w1_write_bit0
sbrs r23,0
rjmp __w1_write_bit1
ret
_write_bit_6:
clt
sbi __w1_port-1,__w1_bit_6
__DELAY_USB 0x3
sbrc r23,0
cbi __w1_port-1,__w1_bit_6
__DELAY_USB 0x11
sbic __w1_port-2,__w1_bit_6
rjmp __w1_write_bit0
sbrs r23,0
rjmp __w1_write_bit1
ret
__w1_write_bit0:
sbrs r23,0
ret

__w1_write_bit1:
ldi r16,5
cpse r13,r16
jmp _write_bit1_6

__DELAY_USB 0x64
cbi __w1_port-1,__w1_bit_5
__DELAY_USB 0x7
set
ret
_write_bit1_6:
__DELAY_USB 0x64
cbi __w1_port-1,__w1_bit_6
__DELAY_USB 0x7
set
ret


И не поверишь даже работает Ну правда пока только search но думаю
все остальные тоже будут. Тока сварил сразу ж кричу :))
Вот мне не хватает твоих знаний
1. как это красиво упаковать
2. Были версии моих изменений тоже вроде нормальные но вот CodeVision по моим подозрениям писал в чип старую версию из буфера. А сейчас грит буфер пуст давайте зальем туда новую и все ж поехало. Вот только я не уследил как его заставить буфер очищать.[/b]


Последний раз редактировалось lkote68 Чт май 21, 2009 10:14:39, всего редактировалось 3 раз(а).

Вернуться наверх
 
 Заголовок сообщения: Re: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Ср май 20, 2009 23:03:06 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Вт июл 08, 2008 12:24:17
Сообщений: 1148
Рейтинг сообщения: 0
lkote68 писал(а):
1. как это красиво упаковать
Я посмотрю, но уже не сегодня, плотная неделька выдалась. :)


Вернуться наверх
 
 Заголовок сообщения: Сколько DS18B20 может обслужить Atmega16
СообщениеДобавлено: Чт май 21, 2009 06:09:00 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Пн мар 30, 2009 15:58:32
Сообщений: 231
Откуда: Украина Запорожье
Рейтинг сообщения: 0
Насчет упаковать. Я сейчас делаю как. Задаю номер пина в глобальную преременную и вызываю стандартную функции
w1_search().....
Компилю и лезу а асм файл Потом заменяю те функи в асм файле на мои с теми же именами, асемблю прошиваю и готово. Но хотелось бы без таких заверченных телодвижений. Чтобы записать их а они подставлялись сами.
Кстати проверил работает и ds18b20_temperature(unsigned char *addr)
Сегодня купят мне разъемчики чтоб ДСок насовать и ключи Соберу сообщу.
Во вложении полный текст функции.
Внимание кто скачал функа была с ошибкой Эта проверена и работает.
Работать будет если глобальная переменная хранится в R5. Иначе пока не придумал Если у кого есть мысли высказывайте. Функции конечно переделаны не оптимально просто не особо времени в алгоритмах разбираться Просто куски накопированы и кое что поменяно.
В результате сеть будет разбита на 8 кустов. :)) :))


Вложения:
Комментарий к файлу: более поздняя версия тоже все на асме не смотрите на расширение. Проверено в полевых условиях :-))
zaplatka.c [9.54 KiB]
Скачиваний: 255
Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 92 ]    , 2, , ,  

Часовой пояс: UTC + 3 часа


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y