![]() |
|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 | |
Đệ tử 9 túi
|
Trích:
Code:
LOOP1 DECFSZ REG_L,1 ;có thể thay số 1 bằng chữ F, số 0 bằng chữ W GOTO LOOP1 GOTO LOOP2 Code:
BCF STATUS,RP1 BSF STATUS,RP0 ; chon BANK 1 = cách xóa bit RP1, set bit RP0 CLRF TRISA ; toàn bộ PORTA là output nè. MOVLW b'11110000' MOVWF TRISB ;Bit nào bằng 1, chân tương ứng là input, ;ngược lại bằng 0 là output.Chân RB0 = output, RB6 = input,.... BCF STATUS,RP0 ; chon BANK 0 = cách xóa bit RP0, xóa bit RP1; ở đây RP1 bằng 0 rồi nên không cần. Chương trình sau sẽ làm sáng bừng 8 con led nối với portb của PIC6F84 qua 8 điện trở 220 Ohm: Code:
;==================================================================== ;Auhor: NHH ;Date: 10/02/06 ;Hardware: PIC16F84 ;XTAL 10MHz, PORTB noi voi 8 LED qua 8 dien tro 220Ohm ;====================================================================== TITLE "ON-LED" PROCESSOR PIC16f84 INCLUDE<P16f84.inc> __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _CPD_OFF &_LVP_OFF ;=========================CHUONG TRINH CHINH========================= ORG 0x000 GOTO MAIN MAIN BCF STATUS,RP1 BSF STATUS,RP0 ; select BANK 1 CLRF TRISB ; PORTB output BCF STATUS,RP0 ; select BANK 0 MOVLW d'255' MOVWF PORTB ; sáng 8 led đi nào! END Còn đây là chương trình nhấp nháy 8 con led trong trường hợp trên, thời gian trễ là 1s Code:
;======================================== ;Auhor: NHH ;Date: 10/02/06 ;Hardware: PIC16F84 ;XTAL 10MHz, PORTB noi voi 8 LED qua 8 dien tro 220Ohm ;======================================== TITLE "ON-OFF LED 1 SECOND" PROCESSOR PIC16f84 INCLUDE<P16f84.inc> __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _CPD_OFF &_LVP_OFF ;============================================================================= COUNT1 EQU 0x20 COUNT2 EQU 0x21 COUNT3 EQU 0x22 ;=========================CHUONG TRINH CHINH========================= ORG 0x000 GOTO MAIN MAIN BCF STATUS,RP1 BSF STATUS,RP0 ; select BANK 1 CLRF TRISB ; PORTB output BCF STATUS,RP0 ; select BANK 0 MOVLW d'255' MOVWF COUNT1 ;<-COUNT1=255 MOVWF COUNT2 ;<-COUNT2=255 NEXT MOVLW d'14' MOVWF COUNT3 ;<-COUNT3=13 MOVLW b'11111111' ;LED ON MOVWF PORTB CALL LOOP MOVLW d'14' MOVWF COUNT3 ;<-COUNT3=13 MOVLW b'00000000' ;LED OFF MOVWF PORTB CALL LOOP GOTO NEXT ;========================CHUONG TRINH CON==================== LOOP DECFSZ COUNT1,1 GOTO LOOP DECFSZ COUNT2,1 GOTO LOOP DECFSZ COUNT3,1 GOTO LOOP RETURN END Chúc học tốt nhé!
__________________
Ngày mai bắt đầu từ ngày hôm nay Bạn có thắc mắc, bạn cần sự hỗ trợ của các thành viên. Hãy đọc luồng này: http://www.picvietnam.com/forum//showthread.php?t=1263 thay đổi nội dung bởi: nhh, 03-06-2006 lúc 06:59 PM. Lý do: Nothing |
|
![]() |
![]() |
![]() |
|
|