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

 
 
> Помогите с PIC16F84A
Asekart
сообщение Dec 3 2006, 16:54
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 3-12-06
Из: SV-IX
Пользователь №: 23 068



Помогите с усовершенствованием кода help.gif
Код
;*******************************************************************************
*************
;*                   Мигание светодиода               ***************************************
;*******************************************************************************
*************

list p=16f84
  
   #include <p16F84a.inc>

__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC


count1 EQU  0x0C
count2 EQU  0x0D
ledset EQU  0x0E


   ORG 0x000
  
   clrf PORTA
   clrf PORTB
      bsf STATUS, RP0
   movlw b'11111100'
   movwf PORTA
   movlw b'00000101'
   movwf PORTB

   bcf OPTION_REG,7
   bcf STATUS,RP0
   clrf ledset

loop   movlw b'00000011'
   xorwf ledset, f
   movf ledset, w
   movwf PORTA
      
      movlw 0x00

   movwf count1
cycle1 movlw 0xFF
      movwf count2
cycle2 decfsz count2, f
      goto cycle2
      
      incfsz count1, f
      goto cycle1
    
      goto loop
      
      end

Значит эта прога заставляет мигать 2 диода...за ножки отвечает эта строчка, она рассчитана и она была дописана мной для двух светиков
movlw b'11111100' ; последние 2 нуля показывают что на 17 и 18 ножках светики
movwf PORTA
Далее инвертируется этот адресс в строчке

movlw b'00000011' ; тут инвертируется значние и выходит так что на 17 и 18 ножках логическая 1....

xorwf ledset, f
movf ledset, w
movwf PORTA

Как дописать, чтоб светики мигали поочередно, а не вместе...??? Кто знает отзовись и помоги юному пиковщику.... Не допру сам никак smile3046.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
xemul
сообщение Dec 3 2006, 17:04
Сообщение #2



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



Цитата(Asekart @ Dec 3 2006, 16:54) *
...
Как дописать, чтоб светики мигали поочередно, а не вместе...??? Кто знает отзовись и помоги юному пиковщику.... Не допру сам никак smile3046.gif

Вместо
Код
   clrf PORTA

напишите, например:
Код
   movlw b'00000001'
   movwf PORTA

Светодиоды будут мигать в противофазе.
Go to the top of the page
 
+Quote Post
Asekart
сообщение Dec 3 2006, 18:09
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 3-12-06
Из: SV-IX
Пользователь №: 23 068



Цитата(xemul @ Dec 3 2006, 16:04) *
Цитата(Asekart @ Dec 3 2006, 16:54) *

...
Как дописать, чтоб светики мигали поочередно, а не вместе...??? Кто знает отзовись и помоги юному пиковщику.... Не допру сам никак smile3046.gif

Вместо
Код
   clrf PORTA

напишите, например:
Код
   movlw b'00000001'
   movwf PORTA

Светодиоды будут мигать в противофазе.

Как показала практика то не будут...будут опять вместе мигать....так как после вашего присваивания...им дальше как и у меня присаивается опять новое значение... Нужен другой како-то способ....
Go to the top of the page
 
+Quote Post
xemul
сообщение Dec 3 2006, 19:44
Сообщение #4



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



Цитата(Asekart @ Dec 3 2006, 18:09) *
Цитата(xemul @ Dec 3 2006, 16:04) *

Цитата(Asekart @ Dec 3 2006, 16:54) *

...
Как дописать, чтоб светики мигали поочередно, а не вместе...??? Кто знает отзовись и помоги юному пиковщику.... Не допру сам никак smile3046.gif

Вместо
Код
   clrf PORTA

напишите, например:
Код
   movlw b'00000001'
   movwf PORTA

Светодиоды будут мигать в противофазе.

Как показала практика то не будут...будут опять вместе мигать....так как после вашего присваивания...им дальше как и у меня присаивается опять новое значение... Нужен другой како-то способ....

Упс-с, извините. Естесно, читать:
Код
   clrf ledset

напишите, например:
Код
   movlw b'00000001'
   movwf ledset

Это я подумал про то, что в данном случае можно и не заводить промежуточную переменную, а работать прямо с PORTA, ну и написал, что думалsmile.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 15:38
Рейтинг@Mail.ru


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