|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 10:07 pm
Индикатор За скорости (сорс код проблем)
| Автор |
Съобщение |
|
hacker4eto1
Ранг: Минаващ
Регистриран на: Пет Май 18, 2012 9:14 pm Мнения: 64
|
 Индикатор За скорости (сорс код проблем)
ЗДравейте, днес цял ден се лутам с една глупост.. Правя си индикатор за скорости.. Та ето с 2 думи до къде съм стигнал..  Идеята е проста когато съм на задна да ми пише "R" на таблото а на скоростният ми лост да свети нея буква.. когато съм на 1 ва да свети на таблото 1 ца а на лоста 1.. Така.. Почнах да пиша сорса и стигнах до това положение. обаче кода работи само до задната скорост "R" и става ето това.  когато добавя и 2 рата част за 2 рият бутон а именно "1" както се вижда в сорса по-горе,цялата работа се бъгва... Като натисна бутон 1 Си свети диод 1 но на 7 сегментният индикацията която описва цифрата 1 започва да мига...  а като натисна бутон за задната скорост. 7 сегментният свети "R" но мига часта която описва 1... Дано ме разбрахте правилно... П.П не съм много в час с програмирането да си призная (то си и личи де  ) чета и се уча..Та Момчета къде бъркам ? Мислех да движа 7 сегментният със 7447 но като му видях таблицата за истиннос няма индикация за "H"-неутрална и "R"- задна... за това реших да ги "паля" отделно всеки диод на дисплея..
_________________Инж.Тодор Димитров гр./Ямбол / 24г. Последен Проект... http://www.vbox7.com/play:c1e9997504
|
| Чет Юни 27, 2013 8:40 pm |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
 Re: Индикатор За скорости (сорс код проблем)
Направи една таблица (масив) със 7 стойности със съответната стойност за цифрата/буквата на индикатора (0 - Н, 1 - 1, ... 6 - r). Добави още един диод на RC0 за неутрал, премести 1 на RC1.... r на RC6 (за да ти е по-лесно със сорса). Бутоните ги сложи с активна '0'. После четеш PORTA , инвертираш, и стойността директно я изкарваш на PORTC, а с определяне на кой бит е сетнат ще ти е офсет за таблицата кой знак да изкараш на PORTB (може и switch - case ако така ти е трудно).
Постни схемата за Proteus и ще ти я драсна....
|
| Чет Юни 27, 2013 9:48 pm |
|
 |
|
hacker4eto1
Ранг: Минаващ
Регистриран на: Пет Май 18, 2012 9:14 pm Мнения: 64
|
 Re: Индикатор За скорости (сорс код проблем)
http://www.speedyshare.com/UaNJV/skorosti.DSNискаш да кажиш да направя една таблиза за истинност на възможните комбинации от 1 до 5 и Н И Р  добре това ще го направя.. и ще пробвам да видя какво ще стане
_________________Инж.Тодор Димитров гр./Ямбол / 24г. Последен Проект... http://www.vbox7.com/play:c1e9997504
|
| Чет Юни 27, 2013 9:58 pm |
|
 |
|
sparkybg
Ранг: Форумен бог
Регистриран на: Вто Авг 23, 2005 12:02 pm Мнения: 3070 Местоположение: София
|
 Re: Индикатор За скорости (сорс код проблем)
И сложи един 4.7 килоомов резистор от MCLR към 5v.
|
| Чет Юни 27, 2013 10:11 pm |
|
 |
|
Koleto
Ранг: Форумен бог
Регистриран на: Съб Фев 18, 2006 11:55 pm Мнения: 1301 Местоположение: София
|
 Re: Индикатор За скорости (сорс код проблем)
И не че е много фатално в случая ама ако кварца е 24МХз оправи и това:
#use delay(clock=20000000)
_________________ Някой ден и костенурките ще се научат да летят...
|
| Пет Юни 28, 2013 12:52 am |
|
 |
|
didofen
Ранг: Популярен
Регистриран на: Вто Юни 27, 2006 11:13 am Мнения: 381 Местоположение: Варна
|
 Re: Индикатор За скорости (сорс код проблем)
даже за 24 трявва да е HS, да не говорим че са до 20 п.с. това реализирал ли си го физически или караш само на протеус?
|
| Пет Юни 28, 2013 9:30 am |
|
 |
|
hacker4eto1
Ранг: Минаващ
Регистриран на: Пет Май 18, 2012 9:14 pm Мнения: 64
|
 Re: Индикатор За скорости (сорс код проблем)
Карам за сега само на протеус.. проблем ли е ,че съм ги дал на 20МГХ? и какво имаш предвид трябва да е HS малко по подробно го убеснявайте 
_________________Инж.Тодор Димитров гр./Ямбол / 24г. Последен Проект... http://www.vbox7.com/play:c1e9997504
|
| Пет Юни 28, 2013 9:55 am |
|
 |
|
itso.t
Ранг: Форумен бог
Регистриран на: Чет Фев 03, 2005 2:21 am Мнения: 12765 Местоположение: София
|
 Re: Индикатор За скорости (сорс код проблем)
Конфигурацията на осцилатора трябва да е "HS".
И не се пише "убеснявайте". Правилното е "убисневуйти".
|
| Пет Юни 28, 2013 11:15 am |
|
 |
|
hacker4eto1
Ранг: Минаващ
Регистриран на: Пет Май 18, 2012 9:14 pm Мнения: 64
|
 Re: Индикатор За скорости (сорс код проблем)
Извинявам се за правописните грешки.. Малко раздвижих проекта.. ще оправя и забележките които изказахте. Ето как се държи сега програмата на симулация: Клип: http://img853.imageshack.us/img853/2563/gghxozeebmeweyexlcqgye.mp4Справих се с проблема който имах по-горе ,но се появи този проблем който накрая се вижда а именно какво става ако се натиснат 2 бутона примерно.. Има ли някаква фунцкия или пример да ми дадете с който да изкл. "опцията" да бъдат натиснати 2 бутона смисъл да чете само един който е натиснат. (или много филми съм гледал  ) Ето сорса кода както е сега. не съм променил само колегата както каза по горе това за кварца. П.П измислих Когато колата не е на скорост. и никой от бутоните не е натиснат всичките диоди да мигат ,а на дисплея да свети постоянно "Н" Според вас възможно ли е и ако да каква фунцкия да използвам и ако може пример? Благодаря предварително на отзовалите се. 
_________________Инж.Тодор Димитров гр./Ямбол / 24г. Последен Проект... http://www.vbox7.com/play:c1e9997504
|
| Пет Юни 28, 2013 1:43 pm |
|
 |
|
CarBeta
Ранг: Форумен бог
Регистриран на: Пет Май 01, 2009 4:01 pm Мнения: 1438
|
 Re: Индикатор За скорости (сорс код проблем)
При така написана програма е нормално това поведение. При натискане на бутон просто светваш нужните сегменти, приемайки на доверие, че останалите не светят, а при отпускане гасиш тия, които си светнал, пак приемайки на доверие, че останалите не светят. Задавай ниво на всички сегменти! Ако искаш да не реагира на повече от един бутон или каквото там искаш, трябва да си поиграеш още малко със софтуера!
|
| Пет Юни 28, 2013 2:39 pm |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
 Re: Индикатор За скорости (сорс код проблем)
Е аз малко понагоре поописах алгоритъма... Чети целия PORTA и го вкарай него в един switch-case, така ще отфилтрираш повече от един натиснат бутон и програмата ще стане 5-10 реда.
|
| Пет Юни 28, 2013 2:54 pm |
|
 |
|
raven_feather
Ранг: Популярен
Регистриран на: Чет Сеп 28, 2006 4:24 pm Мнения: 320 Местоположение: Варна
|
 Re: Индикатор За скорости (сорс код проблем)
За LED, които са на порт B не е ли по-лесно с една команда да ги сменяш ,за да спестиш писане  output_b(0xFF) - HIGH output_b(0x0) - LOW
|
| Пет Юни 28, 2013 7:50 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Индикатор За скорости (сорс код проблем)
Ами то по горе са му писали как да го направи най-лесно и ефективно и като код и като производителност. Варианта с аблица е най-оптималния,става ленсо, бързо и гъвкаво.
|
| Съб Юни 29, 2013 12:18 am |
|
 |
|
itso.t
Ранг: Форумен бог
Регистриран на: Чет Фев 03, 2005 2:21 am Мнения: 12765 Местоположение: София
|
 Re: Индикатор За скорости (сорс код проблем)
Според мен, ще е по-добре да дефинираш числата които искаш да се изписват на дисплея като състояние на порта. Например, 1 е съставено от сегменти "B" и "C", което при активно състояние на порта 0, съответства на 0xF9, 2 от A, B, D, E, G, което е 0xA4... #define GEAR_1 0xF9 #define GEAR_2 0xA4 output = GEAR_1;
|
| Съб Юни 29, 2013 12:31 am |
|
 |
|
hacker4eto1
Ранг: Минаващ
Регистриран на: Пет Май 18, 2012 9:14 pm Мнения: 64
|
 Re: Индикатор За скорости (сорс код проблем)
Нещо не ми се получава искам сега да направя часта със това когато никой бутон не е натиснат диодите да мигат успявам да го постигна това но когато натисна някой от бутоните всички светят  а не трябва да е така трябва да остане да свети само този диод на който му е натиснат бутона.. вече все повече се убеждавам ,че програмирането не е з амен  а ако е за мен то едни романи се пишат....  |  |  |  | itso.t написа: Според мен, ще е по-добре да дефинираш числата които искаш да се изписват на дисплея като състояние на порта. Например, 1 е съставено от сегменти "B" и "C", което при активно състояние на порта 0, съответства на 0xF9, 2 от A, B, D, E, G, което е 0xA4... #define GEAR_1 0xF9 #define GEAR_2 0xA4 output = GEAR_1; |  |  |  |  |
Колега как ли не го въртях това ... все ми дава грешка в реда output = GEAR_1; и по конкретно грешка Expecting LVALUE such as a variable name or *expresion... П.П знам ,че ми казвате кое как да стане ама явно не мога да ви разбера опитвам го но не се получава.. уценям ,че ме траете 
_________________Инж.Тодор Димитров гр./Ямбол / 24г. Последен Проект... http://www.vbox7.com/play:c1e9997504
|
| Съб Юни 29, 2013 5:29 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|