|
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 |
19-10-2009, 11:50 PM | #1 |
Nhập môn đệ tử
Tham gia ngày: Oct 2009
Bài gửi: 1
: |
giup do gium em ve usart
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 } |
|
|