Был закуплен датчик температуры от DalSemi ds1820, трехногий чип. Питание на питание, пин данных на PC0 процессора.
В файле board-sam9260ek.c были добавлены строки:
в функции ek_board_init(void)
почти в конце добавлено
Возник вопрос, есть ли софтинка, которая считывает и возвращает результат в удобоваримом виде (на консоль или в файл), или писать свое?
к сожалению, lm-sensors, ksensors не встают (ругаются на busybox). digitemp знать не знает о чтение с пина, только через сом-порт.. варианты?
Update at 20.01.2010 Дописать в файл борды include для хидеров w1
Update at 24.01.2010 Я описал действия применительно к 2.6.28, там есть понятие w1-gpio. Не забыть поднять в ядре поддержку sysfs
(почесав в затылке) ну-у в принципе можно и на ком-порт, благо какой-то выведен на внешнюю гребенку, завтра засмотрю сорцы на предмет что софтина хочет от ком-порта.
не.. мне что-то билдрут разонравился, очень смахивает на дефективный калейдоскоп, сегодня собирается, завтра не собирается, я летом получил стабильную сборку, но вот возвращаться к ней нет желания
в данный момент на SD и CF поставлен дистрибутив с Emdebian (с тем же busybox-ом).. ох и намаялся с такой конфигурацией. чуть чего надо доставить apt-get радостно грит "щаз буду бизибокс сносить"..
вот на новогодние оттащу домой usb-ide, буду на второй раздел ставить Debian под 9260, на первом уже засетаплен под W90P950 :)
впрочем дома где-то поставлен билдрут, может подниму чисто для теста..
Пользуюсь только релизами и проверенным внешним тулчайном - проблемы на порядок сократились хотя конечно стабильнность сборки там оставляет желать лучшего...
я, обчитавшись местного форума, раза три его успешно ставил на разные компы, пару раз переставлял после неудачных подстроек, терпимо.. но что-то доставить _мне_ было достаточно тяжело или нереально, впрочем я с последней своей установки стырил ядро и с ним вожусь в плане 9260 :)
а от рутфс отказался в пользу Debian..
PS тулчейны пользую или от Павла или есть пара, взятых с инета arm-linux-gcc (3.3.2 и 3.4.1)
Почитал ваш пост Jury093, увидел там что вы данные на PC0 посадили. :)) Что-то у меня в подсознании это PC0 уже сидело :), не выдержал, решил освежить память, глянул ДШ, это же ножка AD0(0-й канал АЦП).
Я просто недавно с горем пополам сделал драйвер АЦП оттуда у меня это PC0 в подсознании было :), может он пригодится? Тут и не надо будет w1 шину в ядре настраивать?
я выбрал PC0 совершенно "от балды", стараясь не задеть жизненно важные пины :)
полагаю, что можно пересадить на любой другой. на данный момент я поставил пиновый коммутатор с перемычкой и выбором между PC0 и DTR0.
в ядре уже есть поддержка W1 и все отлично видится. мой же вопрос был о какой-нить готовой проге, типа digitemp.
кстати, она пока "упрямится" и не желает видеть датчик, думаю что это поправимо :))
ЗЫ в начале 2000-х я сопрягал ds1821 (w1) и мотороловский контроллер на асме, вполне все работало и меряло температуру..
не-а, ядро его видит отлично через подсистему w1. подключаю его на пин PC0, по логам проходит сообщение о датчике, температуру показывает вышеприведенным способом.
С digitemp пока не поженил. Я же "нагло" цепляю его на DTR0 (~PB24). Т.е. это порт /dev/ttyS1. Надо будет проследить, может пины порта где-нить еще задействованы. Или потащу на работы - там есть осцилл :)
Использование/неиспользование пинов UART-ов задается в инициализации порта через аргументы, достаточно DTR от туда убрать, если он там вообще сейчас фигурирует.