PC键盘与AVR单片机连接的C语言源程序
main.c
/********************************************
Chip type : AT90S4434
Clock frequency : 8,000000 MHz
Memory model : Tiny
Internal SRAM size : 256
External SRAM size : 0
Data Stack size : 64
*********************************************/
#include <90s4434.h>
#include "kb.h"
#include
// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x15
#endasm
#include
// Declare your global variables here
void main(void)
{
// Declare your local variables here
unsigned char key;
// Input/Output Ports initialization
// Port A
PORTA=0x00;
DDRA=0x00;
// Port B
PORTB=0x00;
DDRB=0x00;
// Port C
PORTC=0x00;
DDRC=0x00;
// Port D
PORTD=0x00;
DDRD=0x00;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Output Compare
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Output Compare
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Output Compare
// OC2 output: Disconnected
TCCR2=0x00;
ASSR=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Oon
// INT1: Off
GIMSK= 0x40; // Enable INT0 interrupt
MCUCR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
// LCD module initialization
//lcd_init(20); // Init 20 Zeichendisplay
lcd_init(16); // Init 16 Zeichendisplay
InitKeyBoard(); // Initialize keyboard reception
while(1)
{
key = getchar_kb();
lcd_putchar(key);
delay_ms(5);
}
}
PC键盘AVR单片机C语 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)