![]() |
|
Tài trợ cho PIC Vietnam |
Giao tiếp USB, CAN, I2C, SPI, USART... Những giao tiếp được tích hợp trên PIC |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Oct 2009
Bài gửi: 1
: |
![]() Chào các anh,em viết chương trình giao tiếp giữa hai con PIC 16F877A dùng USART,chương trình của em là 32 led sáng dần rồi tắt dần.Tức là em dùng port b và port d của con 1 và con 2 để xuất,mỗi con là 16 led.Em cho giá trị vào 2 thanh ghi ở con 1 để truyền qua cho con 2.Khi biên dịch thì không báo lỗi nhưng khi mô phổng thì nó không chạy.Mấy anh giúp dùm em với......
code của em con A: { title "USART_NHOM_12.asm" processor p16f877a include <p16f877a.inc> __CONFIG _CP_OFF&_WDT_OFF&_BODEN_OFF&_PWRTE_ON&_HS_OSC&_LVP _OFF&_CPD_OFF ;--------------------------------------------------------------------- ;su dung P_b va p_d cua MCU_A va P_b,P_d cua MCU_A ;lay noi dung thanh ghi 0x22 va 0x23 cua MCU_A truyen cho MCU_B(hien thi qua PORTB va PORTD) ;--------------------------------------------------------------------- ORG 0X00 GOTO MAIN_MCU_A ;--------------------------------------------------------------------- ;khoi tao PORTB va PORTD ;--------------------------------------------------------------------- ORG 0X05 MAIN_MCU_A BCF STATUS,RP1 BSF STATUS,RP0 ;CHON BANK 1 CLRF TRISB CLRF TRISD ;--------------------------------------------------------------------- ;khoi tao truyen du lieu ;--------------------------------------------------------------------- MOVLW D'129' ;toc do baud=9600 MOVWF SPBRG BSF TXSTA,BRGH ;BRGH=1:chon toc do cao BCF XSTA,SYNC ;SYNC=0:chon che do bat dong bo BCF STATUS,RP1 BCF STATUS,RP0 ;chon BANK 0 BSF RCSTA,SPEN ;PSEN=1:cho phep cong noi tiep USART ;---------------------------------------------------------------------- ;vong lap chuong trinh chinh ;---------------------------------------------------------------------- CLRF PORTB ; CLRF PORTD ; CLRF 0X22 ; tat het 4 port CLRF 0X23 ; SANG_DAN CALL A_TO_B ;goi noi dung cua 0x22,0x23 qua MCU_B CALL DELAY BSF STATUS,C ;SET C=1; CALL ROTA ;xoay trai cac port qua co C BTFSS STATUS,C ;kiem tra C=1 thi nhay GOTO SANG_DAN TAT_DAN CALL A_TO_B CALL DELAY BCF STATUS,C ;XOA C=0; CALL ROTA BTFSC STATUS,C ;kiem tra C=0 GOTO TAT_DAN GOTO SANG_DAN ;---------------------------------------------------------------------- ; chuong trinh con ;---------------------------------------------------------------------- A_TO_B BSF TXSTA,TXEN ;TXEN=1 cho phep truyen du lieu MOVF 0X22,0 ;chep noi dung cua thanh ghi 0x22 vao W MOVWF TXREG ;dua noi dung can truyen vao thanh ghi dem truyen W1 BTFSS PIR1,TXIF ;kiem tra co hieu truyen GOTO W1 MOVF 0X23 MOVWF TXREG W2 BTFSS PIR1,TXIF GOTO W2 RETURN ;----------------------------------------------------------------------- ROTA RLF PORTB,1 RLF PORTD,1 RLF 0X22,1 RLF 0X23,1 RETURN ;----------------------------------------------------------------------- DELAY CLRF 0X30 D2 CLRF 0X31 D1 DECFSZ 0X31 GOTO D1 DECFSZ 0X30 GOTO D2 RETURN END } con B { title "USART_NHOM_12_B.asm" processor p16f877a include <p16f877a.inc> __CONFIG _CP_OFF&_WDT_OFF&_BODEN_OFF&_PWRTE_ON&_HS_OSC&_LVP _OFF&_CPD_OFF ;--------------------------------------------------------------------- ;su dung Portb va portd cua MCU_A va Portb,Portd cua MCU_A ;lay noi dung thanh ghi 0x22 va 0x23 cua MCU_A truyen cho MCU_B ;--------------------------------------------------------------------- ORG 0X00 GOTO MAIN_MCU_B ;--------------------------------------------------------------------- ;khoi tao PORTB va PORTD ;--------------------------------------------------------------------- ORG 0X05 MAIN_MCU_B BCF STATUS,RP1 BSF STATUS,RP0 ;CHON BANK 1 CLRF TRISB CLRF TRISD ;--------------------------------------------------------------------- ;khoi tao nhan du lieu ;--------------------------------------------------------------------- MOVLW D'129' ;toc do baud=9600 MOVWF SPBRG BSF TXSTA,BRGH ;BRGH=1:chon toc do cao BCF TXSTA,SYNC ;SYNC=0:chon che do bat dong bo BCF STATUS,RP1 BCF STATUS,RP0 BSF RCSTA,SPEN ;PSEN=1:cho phep cong noi tiep USART ;---------------------------------------------------------------------- ;chuong trinh chinh ;---------------------------------------------------------------------- BSF RCSTA,RCEN ;cho phep nhan du lieu L1 BTFSS PIR1,RCIF ;kiem tra co hieu nhan GOTO L1 MOVF RCREG,0 MOVWF PORTB ;dua du lieu nhan vao PORTB CLRF RCREG ;xoa de nhan data tiep theo L2 BTFSS PIR1,RCIF GOTO L2 MOVF RCREG,0 MOVWF PORTD CLRF RCREG GOTO L1 END } |
![]() |
![]() |
|
|