CodeVision AVR в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Ответить
Друг Кота
Аватара пользователя
Сообщения: 3059
Зарегистрирован: Пн май 11, 2009 14:15:00
Откуда: СПб

Сообщение *Trigger* »

Спасибо, но это немного не то. В начале программы я пишу:

Код: Выделить всё

#include <ds18b20.h>
А как потом в основном цикле читать температуру и т. д.?
Этот пост оказался полезен? Не поленись, нажми Изображение слева!
:) :)) :)))
Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 326
Зарегистрирован: Сб сен 06, 2008 12:56:13

Сообщение ValBag »

*Trigger* писал(а):Спасибо, но это немного не то.
Это "не то" - позволяет понять вот это: 1wire.h, ds18b20.h, ds18b20.lib.
Если датчик один, то:

Код: Выделить всё

int t;
t = ds18b20_temperature(0);
При нескольких: поиск количества датчиков, их ROM кодов функцией 1wire, а затем считывание температуры.
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Сообщение ChipKiller »

*Trigger* писал(а):А как потом в основном цикле читать температуру и т. д.?
... откройте пример из папки EXAMPLES - там все описано. Если работать на "низком" уровне и на шине только 1 датчик, то достаточно 3 функций w1_init, w1_read и w1_write.
Друг Кота
Аватара пользователя
Сообщения: 3059
Зарегистрирован: Пн май 11, 2009 14:15:00
Откуда: СПб

Сообщение *Trigger* »

Что писать тут в скобках?

Код: Выделить всё

ds18b20_init()
Этот пост оказался полезен? Не поленись, нажми Изображение слева!
:) :)) :)))
Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
Реклама
Эиком - электронные компоненты и радиодетали
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 326
Зарегистрирован: Сб сен 06, 2008 12:56:13

Сообщение ValBag »

*Trigger* писал(а):Что писать тут в скобках?
Это функция установки порогов температуры и разрешающей способности датчика. Вы хотите сделать это ?
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

*Trigger* писал(а):Что писать тут в скобках?

Код: Выделить всё

ds18b20_init()
Уважаемый *Trigger*, в header`е библиотеки описаны прототипы всех функций (оттуда узнаете нужны ли параметры функции и что она возвращает). а если это хорошая библиотека, то и назначение каждой функции с примером кода. в общем смотрите файл .h
Ставим плюсы: )
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3059
Зарегистрирован: Пн май 11, 2009 14:15:00
Откуда: СПб

Сообщение *Trigger* »

В этом файле ничего не описано подробно. Пожалуйста, выложите нормальный файл с подробным описанием всех функций.
Этот пост оказался полезен? Не поленись, нажми Изображение слева!
:) :)) :)))
Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

у меня нет этой библиотеки :) смотрите в ней или ищите другую библиотеку:)
Ставим плюсы: )
Родился
Сообщения: 5
Зарегистрирован: Чт мар 24, 2011 14:16:49

Сообщение Kronex »

всем доброго времени суток.
передо мной лежит STK503 c процессором MEGA2560
вот
я хочу передать хотя бы просто слово (к примеру 0x22) через порт RS232
вот. я немного запутался на счёт baudrate и как устанавливать скорости, а также на счёт стартовых и стоповых битов.
если не сложно покажите пожалуйста пример записи посланного числа в регистр скажем
заранее спасибо
P.S. просто я как бы не программист, но вот как вот-вот выпущенному из ВУЗа радиотехнику приходится постигать азы программинга на МК
P.P.S. порт подключен к лате следующим образом: RXD к PD0, TXD - PD1
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1451
Зарегистрирован: Пт фев 19, 2010 19:39:28
Откуда: Москва

Сообщение Сериг »

ребят где можно норм cvavr скачать?я просто с этого сайта не могу прошивки открыть(
Собутыльник Кота
Аватара пользователя
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Сообщение radio-kot »

в google.com
Будете проходить мимо- проходите!
Встал на лапы
Аватара пользователя
Сообщения: 102
Зарегистрирован: Вт мар 22, 2011 22:31:01

Сообщение Errorkpi »

Kronex писал(а):я хочу передать хотя бы просто слово (к примеру 0x22) через порт RS232
Для этих целей очень хорошо подходит USART, только не забудьте преобразовать уровни. Какие именно вы поставите параметры особой роли не играет, главное в ПК выставить такие же.
Я обычно использую

Код: Выделить всё

baudrate        9600 б/с, 
start/stop bits not, 
data bits        8.
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Сообщение hd44780 »

Kronex писал(а):передо мной лежит STK503 c процессором MEGA2560
вот
я хочу передать хотя бы просто слово (к примеру 0x22) через порт RS232
вот.
Возьми CvAvr, там есть генератор кода. Болванку для этих базовых операций он тебе даст.
Даже скорость и пр. вещи сам установит :)) .
Если хочешь, я тебе сделаю эту болванку. Но не имея компилятора, делать что-либо бессмысленно.
Да и частоту контроллера я не знаю :( .
Kronex писал(а):P.P.S. порт подключен к лате следующим образом: RXD к PD0, TXD - PD1
Это и так понятно из ДШ на контроллер.
Лучше узнай, есть ли у тебя в твоем STK преобразователь уровней RS232 типа MAX232. По идее должен быть... Самому лень искать :) .
Потому как напрямую тыкать ноги контроллера в COM порт компа нельзя - сгорит контроллер :( . Там уровни разные - у проца ТТЛ уровни 0..5в (ну Uпит короче), а на COM порту все уровни +-10..12в.

Нашел я доку на твой STK503....
Преобразователь Rs232 там вроде есть, не забудь только его подключить.
А с частотой МК - я не понял :( ....
Родился
Сообщения: 5
Зарегистрирован: Пт мар 18, 2011 16:53:12

Сообщение ReclaimLife »

Такой вопрос. Есть контроллер ATmega88, нужно подключить к нему 3 термодатчика к разным портам, пользую CodeVisionAVR V2.05.0 - он позволяет подключать только к 1му порту, как-нибудь это можно обойти?
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Сообщение hd44780 »

ReclaimLife писал(а):Такой вопрос. Есть контроллер ATmega88, нужно подключить к нему 3 термодатчика к разным портам, пользую CodeVisionAVR V2.05.0 - он позволяет подключать только к 1му порту, как-нибудь это можно обойти?
Датчики типа DS18B20/DS1820/....?
Я сумел это обойти только дублированием библиотеки датчика (исходники там есть) нужное кол-во раз с разными именами функций.
Знаю, что это некрасиво :( ... Для моей задачи подошло. 2 датчика на разных ногах уже 4 года работают без проблем.
Если не нравится - ищите в интернете другие библиотеки или пишите их сами :)) .
Собутыльник Кота
Аватара пользователя
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Сообщение radio-kot »

Kronex писал(а): хочу передать хотя бы просто слово (к примеру 0x22) через порт RS232 вот.
Посмотри все подробно расписано - прием и передача данных по UART - http://www.proavr.narod.ru/z5.htm
http://www.proavr.narod.ru/z4.htm
http://www.proavr.narod.ru/z13.htm - шаг за шагом для начинающих с нуля со скриншотами и архивами с кодом для примеров и симуляции.
Будете проходить мимо- проходите!
Собутыльник Кота
Аватара пользователя
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Сообщение radio-kot »

ReclaimLife писал(а): нужно подключить к нему 3 термодатчика к разным портам,
Объясните зачем к разным ?
Будете проходить мимо- проходите!
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Сообщение ChipKiller »

hd44780 писал(а):Я сумел это обойти только дублированием библиотеки датчика (исходники там есть) нужное кол-во раз с разными именами функций.
... для простой работы с DS18B20/DS1820 достаточно написать всего три функции Init, w1_rd и w1_wr.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18687
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

radio-kot писал(а):
ReclaimLife писал(а): нужно подключить к нему 3 термодатчика к разным портам,
Объясните зачем к разным ?
рискну объяснить за автора вопроса: затем, чтобы исключить из кода весьма объемный "поиск" адресов, проблемы с привязкой датчика к месту его установки, хранение даресов датчиков в EEPROM или RAM и т.п. в общем, чтобы было можно подключать любые датчики к произвольным портам не имея никаких видимых проблем в работе устройства.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Родился
Сообщения: 3
Зарегистрирован: Пн мар 28, 2011 10:00:52

Сообщение forastr »

Здрасте!подскажите пожалуйста.Хочу массиву присвоить содерижимое файла.Как это сделать?(Например массив fontdata
, а в файле font.txt : 0x00,0x01,0x02)
Ответить

Вернуться в «AVR»