hik mình mới làm truyền thông thui, khi truyền được thì mới làm các thao tác tiếp theo dc.Full code:
#include <16f877a.h>
#include <def_877a.h>
//#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOWRT
#use delay(clock=20000000)
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bi ts=8)
//=================================
int buf;
// Ngat Truyen thong
#INT_RDA
Receive_isr()
{
buf=getc();
//putc(buf);
PORTB=0xF0;
}
void main()
{
// Cho phep ngat
enable_interrupts(GLOBAL); // Cho phep tao ngat
enable_interrupts(INT_EXT); // Cho phep ngat ngoai tai chan RB0/INT
enable_interrupts(INT_RDA); // Cho phep ngat ngoai tai chan RB0/INT
TRISB = 0x00; // Tat ca PORTB deu la cong xuat du lieu
// Tat het cac LED
PORTB=0x0F;
While(1)
{
}
}
|