Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Някой би ли ми написал една програмка за PIC16F84A
http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=13729
Страница 1 от 2

Автор:  kostov [ Чет Апр 23, 2015 5:04 pm ]
Заглавие:  Някой би ли ми написал една програмка за PIC16F84A

Някой би ли ми написал една програмка за PIC16F84A?
Концепцията е в картинката.
Действието на програмата ще е постоянно да следи двата бутона и в зависимост от конфигурацията им да привежда изходите в определено състояние (таблицата под схемата). Предполагам няма да е много сложна.
Да работи с вътрешният си тактов генератор;
RB0 и RB1 да ползват вътрешните си pull-up резистори;
RA0 - RA4 да се конфигурират като изходи, че ще останат висящи;
Ако може безплатно, електрониката ми е хоби и няма да изкарвам пари от това, за което ми трябва програмата;

Прикачени файлове:
PIC16F84A.GIF
PIC16F84A.GIF [ 12.15 KiB | Прегледано 5475 пъти ]

Автор:  Н'бабане Гт'муан'га [ Чет Апр 23, 2015 6:05 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Набързо драсвам нещо тук само на базата на описанието. Фусовете ги няма тук, ще трябва да си ги добавиш сам, както и други инициализации ако е нужно.


Код:
void main(void) {
    OPTION&=~0b10000000;    // OPTION.RBPU=0
    TRISB=0b00000011;
    while(1) {
        switch(PORTB&0b11) {
            default: break;
            case 0b00: LATB=0b00100000; break;    // +S2, +S1
            case 0b01: LATB=0b01001000; break;    // +S2, -S1
            case 0b10: LATB=0b10010000; break;    // -S2, +S1
            case 0b11: LATB=0b00100100; break;    // -S2, -S1
        }
    }
}

Автор:  ike [ Чет Апр 23, 2015 9:57 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Учителя е трябвало да даде бонус задача: Как да се реализира заданието със 74HC139 и 2 диода ;)

Автор:  kostov [ Чет Апр 23, 2015 10:51 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Благодаря на Н'бабане Гт'муан'га за програмката, но май няма да ми свърши работа, никога не съм се занимавал с езика Си (предполагам този език е ползван), а само с асемблер, но така и не се научих да съставям програми, а само съм променял готови такива.
ike, аз съм съм си дал задачата, с учителите се разделих преди 24 години. Може и твоята идея да ползвам, аз първоначално бях решил с 4028, но реших, че с контролер ще стане по-компактно. Това е за един честотомер, който е готов и накрая се оказа, че съм забравил, че трябва точките между разрядите за MHz, kHz и Hz да се местят спрямо зададените режими на работа с двата бутона, та схемата трябва да е по-компактна за да се събере на платчицата с бутоните (и светодиоди).

Автор:  ike [ Чет Апр 23, 2015 11:14 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

ъъъ нали знаеш, че с PIC16F84A можеш да си направиш цял честотомер, не само да свети 2 светодиода.

Автор:  didofen [ Пет Апр 24, 2015 10:00 am ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

освен това 84а няма вътрешен генератор

Автор:  kostov [ Пет Апр 24, 2015 10:33 am ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Да, знам, че има цели честотомери само с един контролер, но в случая съм го направил с тригери.
Не бях обърнал внимание, че 84 няма вътрешен генератор.

Автор:  ike [ Пет Апр 24, 2015 10:58 am ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Честомер с тригери и четене на копчета с контролер ;) направо ми обърна представите за електроника.

Автор:  kostov [ Пет Апр 24, 2015 1:42 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Ами броячите нали са съставени от тригери. В случая целта беше максимално възможна измервана честота без делител на входа. И като няма достатъчно високочестотни броячи си ги направих от тригери - в случая 74AC74. Четири тригера един разряд. От изходите им през 4511 към съответният 7-сегментен светодиоден индикатор. И така 8 пъти. Плюс съответната схема за управление. Само бях забравил за управлението на десетичните точки.

Автор:  timt [ Пет Апр 24, 2015 7:31 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Ще ти я напиша по късно на асемблер ако те устройва. Държиш ли още на 16f84а?

Автор:  kostov [ Пет Апр 24, 2015 10:03 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Да, държа на 16f84, че имам няколко от тях, защо да купувам друг. Като няма вътрешен генератор ще му свържа RC-верига, няма смисъл да хабя кварц. Вярно, че е старичък, но работата, която ще върши мисля, че е елементарна.

Автор:  timt [ Съб Апр 25, 2015 2:20 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

На pin 6,7 постави резистор 10к към +5В

Прикачени файлове:
New folder.rar [329 Байта]
231 пъти

Автор:  kostov [ Съб Апр 25, 2015 4:28 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Много ти благодаря! А бих ли могъл да получа сорса ако е на асемблер, че може да се наложи да променя сигналите на изходите?

Автор:  michev [ Съб Апр 25, 2015 4:41 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

kostov написа:
Ами броячите нали са съставени от тригери. В случая целта беше максимално възможна измервана честота без делител на входа. И като няма достатъчно високочестотни броячи си ги направих от тригери - в случая 74AC74. ....

Има достатъчно ВЧ броячи подходящи за твоята цел - 74LV161A :) Даже и размера на честотмера ще падне, та няма да има нужда да слагаш пик :D .

Автор:  timt [ Съб Апр 25, 2015 6:06 pm ]
Заглавие:  Re: Някой би ли ми написал една програмка за PIC16F84A

Даже си мисля че за заданието ако се помисли малко върху диоди може да се реализира и да отпадне чипа.

Страница 1 от 2 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/