سلام خدمت اساتید محترم
من یک صفحه کلید PS/2 را به پورت سریال میکرو کنترلر atmega128 وصل کردم و از طریق UDR دارم دیتا را می خونم
اما دیتا که باید کد اسکی باشد اشتباه است مثلا :
باید کد اسکی A باشد C1
من کدی که دریافت می کنم هست C
برنامه گرفتن دیتا از پورت سریال :NO:
قسمت برنامه نمایش برروی GLCD 240*64 :NO:
قسمت تنظیمات پورت سریال :NO:
به نظر شما کدام قسمت اشتباه کردم ؟؟؟
oo: که کد درست ا****** دریافت نمی کنم
من یک صفحه کلید PS/2 را به پورت سریال میکرو کنترلر atmega128 وصل کردم و از طریق UDR دارم دیتا را می خونم
اما دیتا که باید کد اسکی باشد اشتباه است مثلا :
باید کد اسکی A باشد C1
من کدی که دریافت می کنم هست C
برنامه گرفتن دیتا از پورت سریال :NO:
کد:
// USART0 Receiver interrupt service routine interrupt [USART1_RXC] void usart1_rx_isr(void) { unsigned char buffer; buffer=UDR1; switch(buffer) { case 0xF0: break; case 0xE0: break; default: Scan_Code=buffer; } }
قسمت برنامه نمایش برروی GLCD 240*64 :NO:
lcd_setup_page(4);
lcd_clear_text();
CommandOut(GraphicsOff| TextOn | CursorOff | CursorBlinkOff);
lcd_xy(0,4);
sprintf(buffer_lcd,"key_press=%X",Scan_C ode);
lcd_print(buffer_lcd);
lcd_clear_text();
CommandOut(GraphicsOff| TextOn | CursorOff | CursorBlinkOff);
lcd_xy(0,4);
sprintf(buffer_lcd,"key_press=%X",Scan_C ode);
lcd_print(buffer_lcd);
قسمت تنظیمات پورت سریال :NO:
UCSR1A=0x00;
UCSR1B=0x90;
UCSR1C=0x06;
UBRR1H=0x00;
UBRR1L=0x33;
// Global enable interrupts
#asm("sei"
UCSR1B=0x90;
UCSR1C=0x06;
UBRR1H=0x00;
UBRR1L=0x33;
// Global enable interrupts
#asm("sei"


دیدگاه