![]() |
![]() |
|
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]()
. . . Общее описание:
. . . Модуль предназначен для умножения или деления поступающего сигнала на коэффициент, записанный в энергонезависимой памяти. Входной канал имеет подтяжку к 5 вольтам, выходной канал имеет отрицательный коллектор. Коэффициент, также как и режим работы модуля, можно вписать в еепром, или ввести с помощью кнопки. Коэффициент имеет диапазон 2-99. Рабочая входная частота делителя имеет ограничение 45 кГц. Погрешность деления отсутствует. Максимальная выходная частота в режиме умножения - 10кГц. При выходной частоте до 300 Гц погрешность умножения не превышает 1%. При выходной частоте до 1кГц погрешность умножения не превышает 3%. . . . Внешний вид готового устройства: ![]() ![]() . . . Распиновка разъёма IDC-10: ![]() . . . Принципиальная схема модуля: ![]() . . . Программирование модуля: . . . Для входа в режим программирования нужно нажать на кнопку на модуле и удерживая её включить питание. Светодиод выдаст 20 вспышек за 2 секунды, сигнализируя о входе в режим программирования. Следующие длинные вспышки с периодом 2 и паузой между сериями 1 секунда информируют о номере разряда программирования. Короткие нажатия на кнопку увеличивают разряд на единицу. Всего доступно 3 разряда. Первый разряд отвечает за режим работы модуля (1-делитель сигнала, 2-умножитель сигнала), следующие 2 разряда - десятки и единицы коэффициента. Для редактирования текущего разряда нужно длительно нажать на кнопку. Светодиод выдаст серию вспышек, сигнализируя о входе в режим редактирования текущего разряда. Следующие короткие вспышки с периодом 1 и паузой между сериями 2 секунды информируют о текущем состоянии разряда. Редактирование разряда на единицу осуществляется короткими нажатиями на кнопку. Для выхода из режима редактирования текущего разряда нужно длительно нажать на клавишу. Светодиод выдаст серию вспышек, сигнализируя о выходе из режима редактирования текущего разряда. Изменение любого регистра автоматически записывается в энергонезависимую память микроконтроллера. . . . Программа поддерживает функцию сброса всех регистров. Сброс происходит при удержании кнопки на 5 секунд после подачи питания на модуль. После сброса модуль переходит в режим делителя с коэффициентом 2. . . . Архив с прошивкой качаем здесь. . . . Обсуждение проекта и пожелания ниже. |
#2
|
|||
|
|||
![]() Цитата:
|
#3
|
|||
|
|||
![]()
BC817 самые распространённые транзистора, я стараюсь не использовать труднодоставаемые детали. Появился этот проект, когда я работал автоэлектриком. У меня соседи занимаются авто-ралли, переставляют моторы и трансмиссии, переделывают ходовую. В конце надо адаптировать сигналы с датчиков тахометра и спидометра для щитка приборов.
|
#4
|
|||
|
|||
![]()
Данное изделие меня очень заинтересовало, но почему то тема затихла. На данный момент делитель/умножитель частоты мне очень бы пригодился. Как его приобрести?
|
#5
|
|||
|
|||
![]()
Этот проект не коммерческий, рассчитан для самостоятельной сборки.
|
#6
|
|||
|
|||
![]()
Приветствую ADMIN!
собрал схему, взял два PIc12f675 программатор собрал JDM programmator, на ПК поставл WInpic800, HEx прошиваю в PIc, но после когда читаю пишется куча нолей в code, как я понял потому что стоит защита от считывания кода CP\CPD. можно их убрать при прошивании? и после подания питания на схему светодиод постоянно моргает и все =(( с перерывом в секунду вроде=( и еще вопрос можно по умолчанию сделать чтоб умножалось на 90 например? |
#7
|
|||
|
|||
![]()
Читайте хелп по программатору, думаю найдёте ответ по биту защиты. Остальные биты должны быть настроены, как указано в hex, тогда работать будет нормально. Данные прописаны в eeprom, можете 90 прописать через оболочку программатора.
|
#8
|
|||
|
|||
![]()
Спасибо за ответ!
снял CP. все вроде норм сегодня проверю. Просто открываю диссамблером код и пытаюсь найти где прописано деление на 2? =(( |
#9
|
|||
|
|||
![]()
Блин немогу войти в умножение. какне пробую. поскажи порядок нажатия плиз
|
#10
|
|||
|
|||
![]()
Кнопка работает? В режим программирования вошли?
|
#11
|
|||
|
|||
![]()
в режим входит. дальше каша какаято просто не могу понять логику перехода в режим умножение. смог сделать 9 выспышек, но походу в режиме деления.
могу открыть код в дизасме, что прописать чтоб было по умолчанию умножить на 90 например |
#12
|
|||
|
|||
![]()
было б круто если на ногу Gp0 повесить красный светодиод он бы указывал на разряд умножения=)
но я пока тока осваиваю PIC в голове кошмар |
#13
|
|||
|
|||
![]()
вот тут как я понял прописано деление по умолчанию на 2?
0x0004 : 0x00A0 movwf 0x20 0x0005 : 0x0EA0 swapf 0x20 , F 0x0006 : 0x0E03 swapf 0x03 , W |
#14
|
|||
|
|||
![]()
1 разряд отвечает за режим работы, умножение - 2 вспышки.
|
#15
|
|||
|
|||
![]()
то есть порядок такой
сбрасываю потом жму коротко два раза и получаю режим умножения. потом длительно жму два раза чтоб были десятки и жму 9раз потом зажимаю на 5 сек чтоб выйти из режим программирования так? если не сложно подскажите как по умолчанию сделать коэффициент умножения в коде |
#16
|
|||
|
|||
![]()
Ячейка 0х01 в еепроме 1=делитель, 2=умножение.
|
#17
|
|||
|
|||
![]()
Присвоено 0х02 я так понимаю первая ячейка это деление и указана константа.
аа ячейка памяти 0х02 где присвоено 0x00 это умножение? Тоесть в првой ячейке присвоить 0х00 а второй 0хна коэффиц на который хочу умножить сигнал в 16 системе я правильно понял? |
#18
|
|||
|
|||
![]()
Коэффициент 2 и 3 ячейка. 2=десятки, 3=единицы. Ячейка 0х00 не используется.
|
#19
|
|||
|
|||
![]() Цитата:
вот вопрос а где указываем что именно по умолчанию умножение? по умолчаниюв прошивке прописано в первой ячейке 0х02(тоесть это коэффициент? или разряд всетаки--1--делим\2---множим?) сорри за вопрос |
#20
|
|||
|
|||
![]() Цитата:
ORG 0x2101 DATA 0x02(режим умножения) DATA 0x5A(множим на 90) DATA 0x01(+1) получается умножу на 91 коэффициент? ![]() |
#21
|
|||
|
|||
![]()
90 без нуля. А так правильно.
|
#22
|
|||
|
|||
![]()
написал вам в личку посмотрите я правильно понял Вас
|
#23
|
|||
|
|||
![]()
Data 0х02
Data 0х09 или data 5А ?тоесть 9 десяток. Data 0х00 Получу умножить на 90 |
#24
|
|||
|
|||
![]()
Ккак проверить схему вплане на входе и выходе должнобыть какое показание если тестером смотреть?
Без подключения в датчику скорости и мозгу |
#25
|
|||
|
|||
![]()
C 9 правильно. Для проверки нужен генератор сигналов и частотомер.
|
#26
|
|||
|
|||
![]()
Простите за вопросы.
после внесения данных , светодиод вообще не загорается. вношу 0х02 0x09 0х00 Поидее умножить на 90. А диод вообще иолчит. Значение аасцилятора родное оставлят? Последний раз редактировалось SILF; 01.04.2015 в 12:32. |
#27
|
|||
|
|||
![]()
Попробуйте проверить работу с другими коэффициентами. 90 Может быть сильно высокий для простой программы.
|
#28
|
|||
|
|||
![]() ![]() как выходить из режимаа программирования , когда через кнопкуу делаешь? Диод долженже просто гореть когда выйдешь |
#29
|
|||
|
|||
![]()
Нигде немогунайти подобные проекты
![]() Вшоке ![]() |
#30
|
|||
|
|||
![]()
Выход из режима программирования - отключение питания модуля.
|
#31
|
|||
|
|||
![]()
После впрошивки нех, читаю его , а та
0*01 0*00 0*01 и диодгорит ставлю 0*02 Во второй и третей ячейке любое с 1-9 т не горит диод расскажу о моей проблеме при скорости 100 спидом кажет 1-2 км.ч Кашмар устал исчать решение, надежда была на ваш проект дпатчик хола в коробке стоит 3 провода , рабочий |
#32
|
|||
|
|||
![]()
Я так понял вы редактируете программу, поэтому ничего не получается. Данные хранятся в области ЕЕПРОМ.
|
#33
|
|||
|
|||
![]()
Аадреса еепром правлю.
нашел ккосяк в паайке, вс817 неправильно впаял. иззанего могло неработать да? Такого нет поставил вс337, проверю сегодня, отпишусь |
#34
|
|||
|
|||
![]()
прошиваю и в ic-prog и в winpic800
вот что вижу после прошивания в Адрес-Данных EEPROM ![]() 0000: FF 01 00 01 56 65 72 2E я...Ver. 0008: 31 2E 31 2E 44 65 73 69 1.1.Desi 0010: 67 6E 20 62 79 20 45 6C gn by El 0018: 2E 20 20 20 65 6C 40 6D . el@m 0020: 6F 74 6F 2E 63 6F 6D 2E oto.com. 0028: 75 61 20 20 00 FF FF FF ua .яяя 0030: FF FF FF FF FF FF FF FF яяяяяяяя 0038: FF FF FF FF FF FF FF FF яяяяяяяя 0040: FF FF FF FF FF FF FF FF яяяяяяяя 0048: FF FF FF FF FF FF FF FF яяяяяяяя 0050: FF FF FF FF FF FF FF FF яяяяяяяя 0058: FF FF FF FF FF FF FF FF яяяяяяяя 0060: FF FF FF FF FF FF FF FF яяяяяяяя 0068: FF FF FF FF FF FF FF FF яяяяяяяя 0070: FF FF FF FF FF FF FF FF яяяяяяяя 0078: FF FF FF FF FF FF FF FF яяяяяяяя хотя менял первые три ячейки вот так прописывал 0000: FF 02 05 09 |
#35
|
|||
|
|||
![]()
подскажите почнму так
что я не так делаю то ![]() |
#36
|
|||
|
|||
![]()
Работает функция сброса - проверяйте кнопку.
|
#37
|
|||
|
|||
![]()
Странно то, что прошиваю и тут же жму прочитать и вотакое показывает.
настройки не трогаю ввваши. программматор дждм. |
#38
|
|||
|
|||
![]()
Зааметил вот что
после прошивки делаю чтение и вижу как написаал сверху сохраняю нех и открываю в picdissam В памяти еепром отсутствует нулевая ячейка FF которая равна нолику куда рыть? Ккакким по вы шили? |
#39
|
|||
|
|||
![]()
Я пользуюсь PicKit2. Проверьте, правильно ли установлены биты конфигурации.
|
#40
|
|||
|
|||
![]()
биты конфига не трогаю все как у вас
залил прошивку после считал чип и сохранил ее открываю в мплаб и processor 12F675 #include <P12F675.INC> __config 0x3144 ; _CPD_OFF & _CP_ON & _BODEN_ON & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF ; & _INTRC_OSC_NOCLKOUT __idlocs 0xFFFF ; EEPROM-Data Org 0x2100 DE 0xFF, 0x01, 0x00, 0x01, 0x56, 0x65, 0x72, 0x2E DE 0x31, 0x2E, 0x31, 0x2E, 0x44, 0x65, 0x73, 0x69 DE 0x67, 0x6E, 0x20, 0x62, 0x79, 0x20, 0x45, 0x6C DE 0x2E, 0x20, 0x20, 0x20, 0x65, 0x6C, 0x40, 0x6D DE 0x6F, 0x74, 0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x2E DE 0x75, 0x61, 0x20, 0x20, 0x00, 0xFF, 0xFF, 0xFF в вашем Hex нет __idlocs 0xFFFF да что за фигнято |
#41
|
|||
|
|||
![]()
Не нужен __idlocs в этой программе.
Кнопку проверяли? |
#42
|
|||
|
|||
![]()
кнопка рабочая ведь если заливаю без изменения ваш рех то все работает.моргает в режим программинга входит
может программа косячить при заливании рех в чип? |
#43
|
|||
|
|||
![]()
Теоретически возможно, что программатор не отключает питание, и удерживает пин сброса в низком состоянии. Тогда запустится программа сброса.
|
#44
|
|||
|
|||
![]()
Проблема в jdm программааторе походу
при программировании должно быть по даташиту сначала vpp ,а потом vdddd. А у меня 5вольт сразу на первую ножку идет. и когда жму считать,зашить 12 появляется на 4ой. придется другой программатор паять? |
#45
|
|||
|
|||
![]()
Рекомендую взять пиккит, можно даже купить не оригинал за недорого.
|
#46
|
|||
|
|||
![]()
Тоесть последовательность неправильная всетаки, верно?
буду собирать другой проггер. пикккит попробую |
#47
|
|||
|
|||
![]()
Для запуска программы сброса нужно около 10 секунд, так что можно успеть отключить программатор после записи.
|
#48
|
|||
|
|||
![]()
Тоесть залить прошивку и сразу дернуть сам проггерот компа?
Попробую, ток как проверить прошиваа с моими 02 09 01 |
#49
|
|||
|
|||
![]()
Что значит как проверить? А верификация не устраивает?
|
#50
|
|||
|
|||
![]()
Есть 16ф628 под рукаами, в него не получится?
|
![]() |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|