Отговори на тема  [ 6 мнения ] 
mikropascal led_blinking с pic16f84 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Сеп 20, 2006 10:45 pm
Мнения: 14
Мнение mikropascal led_blinking с pic16f84
program Led_blinking;

begin
TRISB := 0; // configure pins of portb as output
repeat // beginning of a repeat loop
begin
PORTB := $FF; // turn ON diodes on portb
delay_ms(1000); // wait for 1 second
PORTB := 0; // turn OFF diodes on portb
delay_ms(1000); // wait for 1 second
end;
until 0 = 1; // endless loop (as this condition is never satisfied)
end.

така би трябвало на всичките RB0 - RB7 да дават on i off
а как трябва да стане само за определен пин например RB2 ?


Пет Сеп 22, 2006 1:14 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Трябва да имаш битови операции, на С може и да стане с AND и OR, примерно &FE за 0 и ||01 за единица, погледни си хелпа за битовите, не помня на паскала как беше синтаксиса за тия операции по горе.


Пет Сеп 22, 2006 1:19 am
Профил
Ранг: Напреднал
Ранг: Напреднал
Аватар

Регистриран на: Пет Окт 21, 2005 8:45 am
Мнения: 499
Мнение 
Има два начина (до колкото съм запознат с продуктите на MikroE - разглеждал съм по-подробно MikroC):
1. PORTB.FX:=1; PORTB.FX:=0; //X е от 0 до 7 - номера на бита
2. Предварително дефинираш интересуващия те бит с някакъв етикет
#define my_bit PORTB.FX
my_bit:=0; my_bit:=1;
(3. Винаги е възможно да използваш и маска, както те съветва @ТоНи.)
Разбира се и двата начина са добре описани в страхотно подробния хелп на компилатора. Не е лошо човек да попрочитва от време на време малко, понякога помага!

_________________
Простотията е Божи дар, но човек не бива да парадира с подаръците си!


Пет Сеп 22, 2006 8:06 am
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Сеп 20, 2006 10:45 pm
Мнения: 14
Мнение 
мерси за помощта и вниманието разбрах как става :roll: всичко е като в доброто старо вереме :twisted: самоче 3 пъти по интересно


Нед Сеп 24, 2006 1:26 pm
Профил
Ранг: Минаващ
Ранг: Минаващ
Аватар

Регистриран на: Пон Авг 14, 2006 1:53 am
Мнения: 19
Мнение 
c82
При PicBasicPro
за управление на определен порт би трябвало да е така:
program Led blinking

TRISB=0 'портовете B са ти изходи

PORTB=0 'зануляваме порт B

Begin:

PORTB=1 'светни всички диоди на PORTB
pause 1000 'изчакай 1 секунда
PORTB=0 'изгаси всички диоди на порт B
pause 1000 'изчакай отново 1 секунда
HIGH PORTB.0 'направи PORTB.0 с високо ниво или :idea: 'PORTB.0=1

GOTO Begin

END

мисля че така ще стане :P


Сря Окт 25, 2006 12:52 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Сеп 20, 2006 10:45 pm
Мнения: 14
Мнение 
techboy мерси за вниманието и помощта прочетох доста за микропаскала сега имам други въпроси които се опитвам да разреша по един или друг начин :oops:


Пон Окт 30, 2006 11:28 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 6 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни