Usart (uztvērējs) Pic 16f877

N

Nidin

Guest
Vajag palīdzību .... Es esmu uzrakstījis programmu uztvērēju usart un tā nedarbojas: skumji. var any1 atrast kļūdas vai konsultēt mani ........ paldies. Šeit ir prog. Programma Receiver
Code:
 "Deklarācijas sadaļā tuvās vec kā baits galvenais:" Galvenais programmas TXSTA.2 = 0 TXSTA.4 = 0 PIE1.5 = 0 RCSTA = 0x90 TRISC = 0x80 PORTB = 0x00 TRISB = 0x00 Usart_Init (4800) delay_ms ( 100), bet TRUE delay_us panta 50) RCSTA.4 = 1, bet Usart_Data_Ready = 0 iet bet PIR1.5 = 0 iet y =-Usart_Read () ja RCSTA.1 = 0, tad RCSTA.4 = 1 End If y = PORTB delay_us ( 50) iet
 
Esmu mainījis kodu šo:
Code:
 programmas UAEDA deklarācijas sadaļa tuvās y kā baitu galvenie: "Galvenais programmas TXSTA.2 = 0 TXSTA.4 = 0 PIE1.5 = 0 RCSTA = 0x90 TRISC = 0x80 PORTB = 0x00 TRISB = 0x00 Uart1_Init (4800) delay_ms (100), bet TRUE delay_us panta 50) RCSTA.4 = 1, bet Uart1_Data_Ready = 0 iet y = Uart1_Read () ja RCSTA.1 = 0, tad RCSTA.4 = 1 End If PORTB = y delay_us (50) iet beigas [/kods]. es varu pateikt, ka jūs izmantojat veco mikroBASIC. Lejupielādēt jaunāko mikroBASIC Pro PIC un lietot to. USART rutīnas tagad ir aizstāts ar UART1 rutīnas. Tātad, es izmantoti, ka tā tas ir tas, ko es izmantoti, lai mainītu un pārbaudītu kodu. Pārbaudi RCIF nav vajadzīgs šeit. Galvenā kļūda bija šeit: [code] y =-Usart_Read ()
Kāpēc "-"? USART modulis atgriež pozitīvu vērtību un y ir mainīgais, kas var saglabāt pozitīvas vērtības (baits). Tad šis:
Code:
 y = PORTB
Šis skan pie PORTB un nesūta to. Jums nepieciešams:
Code:
 PORTB = y
Hope this helps. Tahmid.
 

Welcome to EDABoard.com

Sponsor

Back
Top