Двухцветный светодиод.

Вобщем расковырял какойто древний монитор и выташил от туда двухцветный светодиод(красный и зелёный) и решил его пременить.

На схеме светик показан как два.
***Не забываем про 10 и 20 ногу***
Со схемой всё понятно приступим к прошивке. Очень давно была спиз взята с какихто бегущих огоньков и немного переделана.
;---Моргаем двухцветным светодиодом---

;---Команды правления
.include "tn2313def.inc"
.list

.def null          =r5
.def temp0         =r16
.def leds          =r17

;---Начало кода
.CSEG
.org 0
rjmp RESET ;reti; External Interrupt0 Handler

;---Отвечает за РСТ	
RESET:
ldi	temp0,RAMEND ; Locate stack
out	SPL,temp0

ldi temp0,0b11110000 ;Port B7..B4 = out, B3..B0 = in
out DDRB, temp0

ldi temp0,0b00000000
out DDRD, temp0  ; PORTD D7..D0 = in

clr null
ldi leds,0b10000000 ; set initial value

;---Основной цикл
MAIN_LOOP: 
rcall PAUSE_1_SEK ;rcall ROTATE ;out PORTB,leds ; rcall PAUSE_1_SEK ;
out PORTB,null ; 
rjmp MAIN_LOOP ; 
;################################################
ROTATE:
push temp0
mov	temp0,leds	; ror	temp0		; aeo
ror	leds		; sbrc leds,3 ; skip if bit #2 is clr
ldi leds,0b10000000 ; set initial value
pop temp0
ret

;################################################
PAUSE_1_SEK:
push R17


; ============================= 
; ----------------------------- 
; delaying 3999996 cycles:         
WGLOOP0:  ldi  R17, $0B; $24
		  dec  R17
          brne WGLOOP0
; ----------------------------- 
; ============================= 
pop R17
ret

Думаю всё понятно. Незабываем зеркалить печатку.
Прошивка и печатка в архиве: upload.com.ua/get/902544314/Прошивка и плата 2.rar
  • -2
  • 25 апреля 2011, 16:18
  • Andrey

Комментарии (4)

RSS свернуть / развернуть
Êîììåíòû æãóò )))
0
Ты че ругаешься? надо быть терпимее ;)
0
… поставь после схемы
0
… поставь «cut» после схемы
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.