Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
19.07.2005, 14:25
|
|
Вид на жительство
Регистрация: 13.05.2005
Сообщений: 386
Сказал спасибо: 9
Сказали Спасибо 44 раз(а) в 37 сообщении(ях)
|
"стандартные" процедуры и лучшие идеи на PIC
Господа, есть ли где нибудь библиотеки "идеальных" кусочков кода - процедур, выполняющхся быстрее всего и ?занимающих мало места? Противоречиво, да? Или каждый программер додумывается сам, хранит в секрете и уносит его с собой...
Мне хочется состыковать pic16f84 и термометр ds1820, еще часы там в прошивке. Есть ли где-то тексты процедур инициализации и обмена информацией с термометром.
Или проще, процедура перевода двоичного числа (одно, двух... байтного) в десятичный, для вывода на индикатор?
|
|
|
|
19.07.2005, 15:48
|
|
Прописка
Регистрация: 29.01.2005
Адрес: Киев
Сообщений: 227
Сказал спасибо: 50
Сказали Спасибо 32 раз(а) в 24 сообщении(ях)
|
Для ПИКа брал кусочки кода из книги Яценкова. Отправить тебе пока не мого, так как только столкнулся и все это в процессе тестирования, пока на все здОрово работает. Только там 1620 термометр, он с управлением по И2С. А по поводу перевода из двоичной в двоично-десятичную - привожу из книги К. Тавернье. Проверено. Работает. Там перевод 8-бит в двухразрядное десятичное. Не универсально, но может пригодится...
;получает данные из аккумулятора, выдает старшее слово в МСД, младшее в ЛСД
bin_to_bcd clrf msd
movwf lsd
gtenth movlw .10
subwf lsd, w
btfss STATUS, C
goto over
movwf lsd
incf msd, f
goto gtenth
over retlw .0
|
|
|
|
19.07.2005, 16:18
|
|
Вид на жительство
Регистрация: 13.05.2005
Сообщений: 386
Сказал спасибо: 9
Сказали Спасибо 44 раз(а) в 37 сообщении(ях)
|
Да, хорошая процедурка. А не жалко для других выкладывать?
Может имеет смысл собрать коллекцию готовых процедур? Или контроллеры быстро устаревают, что это уже не нужно? Хотя, алгоритм-то от контроллера не зависит.
lisergin
Я еще в личку вам написал вопросы.
|
|
|
|
19.07.2005, 18:05
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
|
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
|
|
|
|
20.07.2005, 18:26
|
|
Вид на жительство
Регистрация: 13.05.2005
Сообщений: 386
Сказал спасибо: 9
Сказали Спасибо 44 раз(а) в 37 сообщении(ях)
|
DK.
Да есть архив, полезный, много примеров приведено, правда, ИМХО, много далеко не лучших алгоритмов. Хотя, с другой стороны одним нужно время, другим память.
|
|
|
|
20.07.2005, 18:39
|
|
Вид на жительство
Регистрация: 13.05.2005
Сообщений: 386
Сказал спасибо: 9
Сказали Спасибо 44 раз(а) в 37 сообщении(ях)
|
lisergin, расскажите о часах. Они с программной коррекцией или нет? Какой дисплей? В какой момент производится вывод на него, в превывании или в теле основной программы? А клавиатуру когда опрашиваете?
|
|
|
|
20.07.2005, 20:39
|
|
Временная регистрация
Регистрация: 26.12.2003
Сообщений: 49
Сказал спасибо: 0
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
|
Идеал недостижим!!!!
|
|
|
|
23.07.2005, 15:54
|
|
Прописка
Регистрация: 29.01.2005
Адрес: Киев
Сообщений: 227
Сказал спасибо: 50
Сказали Спасибо 32 раз(а) в 24 сообщении(ях)
|
Стояла другая задача, коррекцию пока не делал. Прерывания задействованы только для обработки таймера, остальное - в главной проге, а как иначе?
Удачи!
|
|
|
|
23.07.2005, 17:49
|
|
Вид на жительство
Регистрация: 13.05.2005
Сообщений: 386
Сказал спасибо: 9
Сказали Спасибо 44 раз(а) в 37 сообщении(ях)
|
Вариантов на самом деле много, я еще в одном месте создал тему, там и пообсуждали как. Хотя там пока решен вопрос с часами, а мне еще термостат нужен, но это потом... в процессе... вопросы возникнут.
Часы, 4 будильника и термостат на одном PIC16F84.
http://forum.ixbt.com/0048/004429.html
|
|
|
|
23.07.2005, 21:24
|
|
Прописка
Регистрация: 29.01.2005
Адрес: Киев
Сообщений: 227
Сказал спасибо: 50
Сказали Спасибо 32 раз(а) в 24 сообщении(ях)
|
Приват смотрел?
__________________
Невежество всегда на что-нибудь испражняется.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:38.
|
|