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

 
 
 
Reply to this topicStart new topic
> Зарядное устрйство на PIC12F675
Archivarius
сообщение Feb 12 2008, 18:53
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 7-11-05
Из: Калуга
Пользователь №: 10 558



Собрал тут схему для автоматической зарядки аккумуляторов на PIC12F675 (схема и прошивка прилагается). При программировании IC-PROG выдается сообщение:
"Не найдено значение установки Осциллятора. Вы настаиваете на использовании Установок из файла (3FFFh) ?" Т.к. я в этих вопросах плохо разбираьсь, хотелось бы узнать, что с этим делать (далее жать ДА или НЕТ - правильно как)?. Пробовал и так и этак - PIC не подает признаков жизни (питание присутствует естественно), а на GP4 и GP5 ничего :-((
Ранее собирал другое зарядное устройство (с другой прошивкой на PIC16C620) - все работает.
Прошу совета, что я делаю не так!
Прикрепленные файлы
Прикрепленный файл  _____.rar ( 84.28 килобайт ) Кол-во скачиваний: 420
 
Go to the top of the page
 
+Quote Post
Andrey_B
сообщение Feb 13 2008, 06:45
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 221
Регистрация: 20-06-07
Из: Россия, Тула.
Пользователь №: 28 569



В последней ячейке програмной памяти контроллера хранится калибровочный коэффициент для внутреннего генератора 4 МГц. У Вас видимо кристалл был стерт, а значение не сохранено. Ничего страшного нет в этом, просто 4МГц будут не точные. Фьюзы в файле вроде правильно выставлены, так что дело еще в чем-то. Верификация ПИКа проходит нормально ?
А так, смотрите монтаж, на 1 ноге ПИКа должно бить +5В, на 8 - земля. Если все есть видимо проблема в самой прошивке, был-бы исходник, можно было глянуть. Можно конечно дизасемблировать, но это уж больно муторно, проще по новой написать.

Я тоже когда-то хотел что-то подобное собрать, даже начал, но потом пришел к выводу, что проще просто купить, например это : http://www.robiton.ru/catalog/smartdis.php
Цена небольшая, 4 аккума (а не 3, не то не сё) заряжает отдельно каждый, умеет и разряжать, и самое главное - имеет режим быстрой зарядки по dV.

Сообщение отредактировал Andrey_B - Feb 13 2008, 06:49


--------------------
vodaspb.ru
Go to the top of the page
 
+Quote Post
Archivarius
сообщение Feb 16 2008, 12:36
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 7-11-05
Из: Калуга
Пользователь №: 10 558



Цитата(Andrey_B @ Feb 13 2008, 09:45) *
В последней ячейке програмной памяти контроллера хранится калибровочный коэффициент для внутреннего генератора 4 МГц. У Вас видимо кристалл был стерт, а значение не сохранено. Ничего страшного нет в этом, просто 4МГц будут не точные. Фьюзы в файле вроде правильно выставлены, так что дело еще в чем-то. Верификация ПИКа проходит нормально ?
А так, смотрите монтаж, на 1 ноге ПИКа должно бить +5В, на 8 - земля. Если все есть видимо проблема в самой прошивке, был-бы исходник, можно было глянуть. Можно конечно дизасемблировать, но это уж больно муторно, проще по новой написать.

Я тоже когда-то хотел что-то подобное собрать, даже начал, но потом пришел к выводу, что проще просто купить, например это : http://www.robiton.ru/catalog/smartdis.php
Цена небольшая, 4 аккума (а не 3, не то не сё) заряжает отдельно каждый, умеет и разряжать, и самое главное - имеет режим быстрой зарядки по dV.

В монтаже ошибок нет (в этом соображаю), а вот с написанием программ - глухо. Похоже придется разобрать уже собранную конструкцию (P.S. Устройство собрал на 6 аккумуляторов)
Go to the top of the page
 
+Quote Post
evc
сообщение Feb 17 2008, 05:27
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 206
Регистрация: 17-03-07
Из: Москва
Пользователь №: 26 266



Цитата(Archivarius @ Feb 16 2008, 15:36) *
В монтаже ошибок нет (в этом соображаю), а вот с написанием программ - глухо. Похоже придется разобрать уже собранную конструкцию (P.S. Устройство собрал на 6 аккумуляторов)


Ничего разбирать не надо. Попробуйте файлы, которые прилагаю. Когда IC-PROG спрашивает "Вы настаиваете на использовании Установок из файла (3480h) ?", жмите "да".
Прикрепленные файлы
Прикрепленный файл  Fixed_freq.rar ( 3.25 килобайт ) Кол-во скачиваний: 141
 


--------------------
УЭР
Go to the top of the page
 
+Quote Post
Archivarius
сообщение Feb 23 2008, 20:42
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 7-11-05
Из: Калуга
Пользователь №: 10 558



Цитата(evc @ Feb 17 2008, 08:27) *
Ничего разбирать не надо. Попробуйте файлы, которые прилагаю. Когда IC-PROG спрашивает "Вы настаиваете на использовании Установок из файла (3480h) ?", жмите "да".

Некоторые сдвиги есть, т.е светодиод HL1 начал мигать (что говорит о работе PIC12F675). Но на этом все и заканчивается - далее устройство для зарядки аккумуляторов не работает. Спасибо за помощь.
Go to the top of the page
 
+Quote Post
Archivarius
сообщение Apr 8 2008, 18:32
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 7-11-05
Из: Калуга
Пользователь №: 10 558



Цитата(evc @ Feb 17 2008, 08:27) *
Ничего разбирать не надо. Попробуйте файлы, которые прилагаю. Когда IC-PROG спрашивает "Вы настаиваете на использовании Установок из файла (3480h) ?", жмите "да".

Начал моделировать работу устройства в Proteus и вот что выяснил:
1. ошибка в схеме устройства (напряжение с XS1 надо подавать на 5-ю ногу PIC, с XS2 - на 6-ю, а XS3 - на 7-ю; т.к. я эксперементировал только на разъеме XS1-XP1 - отсюда и одна из проблем)
2. прилагаемая к схеме прошивка в Proteus не работает. Из двух Ваших прошивок работает только эта - ZU12F675_V2_2_fixed_freq.HEX
3. ZU12F675_V2_2_fixed_freq.HEX реально работает в схеме, но с одной оговоркой: если питание на устройство подавать с подключенным аккумулятором (пока экспериментирую только с одним), то все нормально (происходит тест аккумулятора и, далее, разряд или заряд). Если аккумулятор подключить после включения устройства - PIC работает (видно по миганию светодиода HL1), а далее тишина (режима зарядки/разрядки нет).
Похоже, что в прошивке не предусмотрен (или не работает) опрос портов в процессе работы программы. Можно ли это исправить? Спасибо.
Go to the top of the page
 
+Quote Post
evc
сообщение Apr 10 2008, 15:16
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 206
Регистрация: 17-03-07
Из: Москва
Пользователь №: 26 266



Цитата(Archivarius @ Apr 8 2008, 22:32) *
Начал моделировать работу устройства в Proteus и вот что выяснил:
1. ошибка в схеме устройства (напряжение с XS1 надо подавать на 5-ю ногу PIC, с XS2 - на 6-ю, а XS3 - на 7-ю; т.к. я эксперементировал только на разъеме XS1-XP1 - отсюда и одна из проблем)

По идее (цитата:"После подачи питающего напряжения МК DD1 последовательно проверяет наличие подключенных к ячейкам аккумуляторов. При отсуствии напряжения на гнезде XS1 MK DD1 "делает вывод", что аккумулятор не установлен и переходит к анализу состояния следующей ячейки.") это должно никакого влияния не оказывать, т.к. даже и если разменены места подключения разъемов, он все равно должен опрашивать их всех. Проверьте внимательнее подключение R4/R1, R6/R2 и R7/R3!
Цитата(Archivarius @ Apr 8 2008, 22:32) *
3. ZU12F675_V2_2_fixed_freq.HEX реально работает в схеме, но с одной оговоркой: если питание на устройство подавать с подключенным аккумулятором (пока экспериментирую только с одним), то все нормально (происходит тест аккумулятора и, далее, разряд или заряд). Если аккумулятор подключить после включения устройства - PIC работает (видно по миганию светодиода HL1), а далее тишина (режима зарядки/разрядки нет).
Похоже, что в прошивке не предусмотрен (или не работает) опрос портов в процессе работы программы. Можно ли это исправить? Спасибо.

Так и должна работать прошива по описанию. Это можно исправить, поставив на выводе GP3 (MCLR), кнопку с подтяжкой к земле. Нужно микроконтроллер фюзами настроить (поставить галочку напротив "MCLR"), что бы тот работал с внешним ресетом. Тогда каждый раз когда нажимаете на кнопку, контроллер будет опрашивать своих входов и если на них окажется напряжение, должен продолжить по алгоритму зарядки.


--------------------
УЭР
Go to the top of the page
 
+Quote Post
Archivarius
сообщение Apr 12 2008, 11:04
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 7-11-05
Из: Калуга
Пользователь №: 10 558



[quote name='evc' post='394967' date='Apr 10 2008, 19:16']
По идее (цитата:"После подачи питающего напряжения МК DD1 последовательно проверяет наличие подключенных к ячейкам аккумуляторов. При отсуствии напряжения на гнезде XS1 MK DD1 "делает вывод", что аккумулятор не установлен и переходит к анализу состояния следующей ячейки.") это должно никакого влияния не оказывать, т.к. даже и если разменены места подключения разъемов, он все равно должен опрашивать их всех. Проверьте внимательнее подключение R4/R1, R6/R2 и R7/R3!

[quote]Не согласен! Пример: подключаем аккумулятор на разъем XS1-XP1 (схему см. выше). PIC определяет состояние аккумулятора и дает сигнал на зарядку/разрядку, но на разъем XS3-XP3

Так и должна работать прошива по описанию. Это можно исправить, поставив на выводе GP3 (MCLR), кнопку с подтяжкой к земле. Нужно микроконтроллер фюзами настроить (поставить галочку напротив "MCLR"), что бы тот работал с внешним ресетом. Тогда каждый раз когда нажимаете на кнопку, контроллер будет опрашивать своих входов и если на них окажется напряжение, должен продолжить по алгоритму зарядки.
[/quote]
[quote] Проверим как-нибудь. И еще вопрос по этому поводу: нормально ли будет работать в случае перезапуска PIC микросхема DD2 (74HC164N)? На 9-й ноге висит конденсатор
Go to the top of the page
 
+Quote Post
evc
сообщение Apr 12 2008, 14:57
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 206
Регистрация: 17-03-07
Из: Москва
Пользователь №: 26 266



Цитата(Archivarius @ Apr 8 2008, 22:32) *
Из двух Ваших прошивок работает только эта...

Сразу не заметил! Вы наверно считаете, что я их писал. smile.gif Наверно так бы было и проще и, по крайней мере, они нормально работали бы!
В вашем первом посте вы рассказали, что IC-Prog выдает вам сообщение, что не может найти значение установки осцилятора. Т.к. это значение записывается фабрично в чипе (у вас оно наверно стерлось в процесе отладки програматора), в файле его стоимость обычно не записывается, эта ячейка остается по умолчанию 0x3FFF. Но "0x3FFF" (код инструкции addlw, а должна быть retlw - 0х34ХХ) неприемлемая стоимость для выполнение программой в том месте, и вот поэтому у вас не заработало. Я взял эти два файла, которые вы прикрепили, проверил есть ли у них обращение по адресу, в котором находится каллибровочная константа, и записал у них значения установки осцилятора. Только того. Поэтому я не могу знать, что там в ваших smile.gif прошивках творится, так как и мне не очень понятно как вы умудрились сделать:
Цитата(Archivarius @ Feb 13 2008, 09:45) *
Устройство собрал на 6 аккумуляторов.
huh.gif
Я вам написал "по идее", но имел ввиду идея статьи из вашего поста, на цитату из которой я ссылался...

В схеме действительно есть конденсатор на 9-ом выводе регистра (ресет) и это не очень хорошая идея, т.к. процессор (!внутренный генератор, зависимость от температуры, питающего напряжения, настроение электронов и т.д.!) можеть начать отправлять данные серийному регистру, до того как тот еще находиться в состояние ресета (конденсатор еще не зарядился). Может быть это и есть причина несовпадения разъемов. Можете уменшить стоимость конденсатора С1 до 0,01мкф. Я бы сделал это вообще по другому, не используя ресет входа регистра, но как уже сказал, не я писал эту программу. Все таки то решение, которое я вам предложил (с внешним ресетом), должно сработать, на всякий случай проверьте осциллографом входят ли на 8-ом выводе регистра, пачки из 8 импульсов положительной полярности. Если колличество импульсов отличается от 8, программу нужно написать заново. smile.gif


--------------------
УЭР
Go to the top of the page
 
+Quote Post
Archivarius
сообщение Apr 17 2008, 18:01
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 7-11-05
Из: Калуга
Пользователь №: 10 558



Цитата(evc @ Apr 12 2008, 18:57) *
Сразу не заметил! Вы наверно считаете, что я их писал. smile.gif Наверно так бы было и проще и, по крайней мере, они нормально работали бы!
Я и предполагал, что Вы исправили прошивку
Цитата
В вашем первом посте вы рассказали, что IC-Prog выдает вам сообщение, что не может найти значение установки осцилятора. Т.к. это значение записывается фабрично в чипе (у вас оно наверно стерлось в процесе отладки програматора), в файле его стоимость обычно не записывается, эта ячейка остается по умолчанию 0x3FFF. Но "0x3FFF" (код инструкции addlw, а должна быть retlw - 0х34ХХ) неприемлемая стоимость для выполнение программой в том месте, и вот поэтому у вас не заработало. Я взял эти два файла, которые вы прикрепили, проверил есть ли у них обращение по адресу, в котором находится каллибровочная константа, и записал у них значения установки осцилятора. Только того. Поэтому я не могу знать, что там в ваших smile.gif прошивках творится, так как и мне не очень понятно как вы умудрились сделать:

Я могу запрограммировать PIC, собрать устройство, отладить его работу, на я не имею ни малейшего понятия о написании программ :-((
Цитата
huh.gif
Я вам написал "по идее", но имел ввиду идея статьи из вашего поста, на цитату из которой я ссылался...

В схеме действительно есть конденсатор на 9-ом выводе регистра (ресет) и это не очень хорошая идея, т.к. процессор (!внутренный генератор, зависимость от температуры, питающего напряжения, настроение электронов и т.д.!) можеть начать отправлять данные серийному регистру, до того как тот еще находиться в состояние ресета (конденсатор еще не зарядился). Может быть это и есть причина несовпадения разъемов. Можете уменшить стоимость конденсатора С1 до 0,01мкф. Я бы сделал это вообще по другому, не используя ресет входа регистра, но как уже сказал, не я писал эту программу. Все таки то решение, которое я вам предложил (с внешним ресетом), должно сработать, на всякий случай проверьте осциллографом входят ли на 8-ом выводе регистра, пачки из 8 импульсов положительной полярности. Если колличество импульсов отличается от 8, программу нужно написать заново. smile.gif

Устройство уже собрано и работает (надо немного разобраться с делителями напряжения на входах PIC). Спасибо за помощь!
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 17:08
Рейтинг@Mail.ru


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