资源描述:
《嵌入式简易电子琴系统设计.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、嵌入式开发试验嵌入式简易电子琴系统设计ARM2110实验开发板,外接矩阵键盘、蜂鸣器、LED显示屏、LED灯模块(带4.7K电阻)主程序#include"systemInit.h"#include"buzzer.h"#include"music.h"#include"systemInit.h"#definelcdenGPIO_PIN_0//PB0;#definelcdrsGPIO_PIN_2//PB2;//定义LED#defineLED1_PERIPHSYSCTL_PERIPH_GPIOA#defineLED1_PORTGPIO_PORTA_BASE#defin
2、eLED1_PINGPIO_PIN_4#defineLED2_PERIPHSYSCTL_PERIPH_GPIOA#defineLED2_PORTGPIO_PORTA_BASE#defineLED2_PINGPIO_PIN_5#defineLED3_PERIPHSYSCTL_PERIPH_GPIOA#defineLED3_PORTGPIO_PORTA_BASE#defineLED3_PINGPIO_PIN_6#defineLED4_PERIPHSYSCTL_PERIPH_GPIOG#defineLED4_PORTGPIO_PORTG_BASE#defineLED4
3、_PINGPIO_PIN_0#defineLED5_PERIPHSYSCTL_PERIPH_GPIOF#defineLED5_PORTGPIO_PORTF_BASE#defineLED5_PINGPIO_PIN_2#defineLED6_PERIPHSYSCTL_PERIPH_GPIOG#defineLED6_PORTGPIO_PORTG_BASE#defineLED6_PINGPIO_PIN_1#defineLED7_PERIPHSYSCTL_PERIPH_GPIOE#defineLED7_PORTGPIO_PORTE_BASE#defineLED7_PING
4、PIO_PIN_0#defineLED8_PERIPHSYSCTL_PERIPH_GPIOE#defineLED8_PORTGPIO_PORTE_BASE#defineLED8_PINGPIO_PIN_1//定义KEY#defineKEY_PERIPH2SYSCTL_PERIPH_GPIOB#defineKEY_PORT2GPIO_PORTB_BASE#defineKEY_PIN2GPIO_PIN_6
5、GPIO_PIN_5
6、GPIO_PIN_4//连接方式矩阵键盘的行线接PC4~7列线接PA0~3unsignedchardata;//PD0-PD7;unsign
7、edcharnum;intguan;intjian;intnumm;//lcd显示模块技术//lcd模块voidwrite_com(unsignedcharcom)//写命令{GPIOPinWrite(GPIO_PORTB_BASE,lcdrs,0x00);//lcdrs=0;GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PIN_0
8、GPIO_PIN_1
9、GPIO_PIN_2
10、GPIO_PIN_3
11、GPIO_PIN_4
12、GPIO_PIN_5
13、GPIO_PIN_6
14、GPIO_PIN_7,com);//PD=com;SysCtlDelay(5*
15、(TheSysClock/4000));//延时5msGPIOPinWrite(GPIO_PORTB_BASE,lcden,0xFF);//lcden=1;SysCtlDelay(5*(TheSysClock/4000));GPIOPinWrite(GPIO_PORTB_BASE,lcden,0x00);//lcden=0;}voidwrite_data(unsignedchardate){GPIOPinWrite(GPIO_PORTB_BASE,lcdrs,0xFF);//lcdrs=1;GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PI
16、N_0
17、GPIO_PIN_1
18、GPIO_PIN_2
19、GPIO_PIN_3
20、GPIO_PIN_4
21、GPIO_PIN_5
22、GPIO_PIN_6
23、GPIO_PIN_7,date);//PD=date;SysCtlDelay(5*(TheSysClock/4000));GPIOPinWrite(GPIO_PORTB_BASE,lcden,0xFF);//lcden=1;SysCtlDelay(5*(TheSysClock/4000));GPIOPinWrite(GPIO_PORTB_BASE,lcden,0x00);//lcden=0;}voidinit(){SysCt
24、lPeriEnable(