1、广东工业大学嵌入式实验报告12嵌入式系统实验报告学生学院 计算机学院 专业班级 计算机科学与技术 班学 号 学生姓名 指导教师 2010 年 月 日实验二:I/O端口的使用和中断处理程序实验项目性质: 普通所属课程名称: 嵌入式系统实验计划学时: 2一、 实验目的:了解ARM的I/O端口使用和编程方法,了解中断响应处理的过程和中断编程的方法。二、 实验内容和要求:1. 对P01进行控制,周期性(0.5秒)输出高低电平,使得其连接的发光二极管周期性地闪动。2. 读取INT0的按键状态,当其按下改变发光二极管周期性地闪动周期改为0.25秒。3. INT0作为中断信号接受端,对其短按一下即触发中断,
2、使发光二极管周期性地闪动周期变为1秒,再对其短按一下,又恢复闪动周期为0.5秒三、 实验主要仪器设备和材料:1. 嵌入式系统实验箱,微机四、 实验方法、步骤及结构测试:1. 编程:端口初始化,软件定时,中断处理。编程要点:#include #include #include 2410addr.h#include def.hvoid Led1_On_or_Off(int flag);void Led4_On_or_Off(int flag);void EINT0_Enable(int flag);void C_Entry() int i; EINT0_Enable(TRUE); while(10
3、); ;void EINT0_LISR(void) int i; Led4_On_or_Off(TRUE); while(i+100000); Led4_On_or_Off(FALSE); while(i+10000);void Led1_On_or_Off(int flag) int temp; if(flag =TRUE) /led1 on /set GPF4 temp = rGPFCON; rGPFCON = temp |(18); temp = rGPFDAT; rGPFDAT = temp&(04); else /led1 off /set GPF4 temp = rGPFCON;
4、rGPFCON = temp |(18); temp = rGPFDAT; rGPFDAT = temp|(14); void Led4_On_or_Off(int flag) int temp; if(flag =TRUE) /led1 on /set GPF7 temp = rGPFCON; rGPFCON = temp |(114); temp = rGPFDAT; rGPFDAT = temp&(07); else /led1 off /set GPF7 temp = rGPFCON; rGPFCON = temp |(114); temp = rGPFDAT; rGPFDAT = t
5、emp|(17); void EINT0_Enable(int flag) int temp; if(flag = TRUE) /set GPF0 temp = rGPFCON; rGPFCON = temp |0x2; temp = rGPGUP; rGPFDAT = temp|0x1; rINTMSK&= (BIT_EINT0); else rINTMSK&= BIT_EINT0; 2. 编译程序3. 调试五、 实验报告要求:1. 试验程序流程图2. 带注解的程序清单程序清单:void C_Entry() int i; EINT0_Enable(TRUE); while(10); ;voi
6、d EINT0_LISR(void) int i; Led4_On_or_Off(TRUE); while(i+100000); Led4_On_or_Off(FALSE); while(i+10000);void Led1_On_or_Off(int flag) int temp; if(flag =TRUE) /led1 on /set GPF4 temp = rGPFCON; rGPFCON = temp |(18); temp = rGPFDAT; rGPFDAT = temp&(04); else /led1 off /set GPF4 temp = rGPFCON; rGPFCON
7、 = temp |(18); temp = rGPFDAT; rGPFDAT = temp|(14); void Led4_On_or_Off(int flag) int temp; if(flag =TRUE) /led1 on /set GPF7 temp = rGPFCON; rGPFCON = temp |(114); temp = rGPFDAT; rGPFDAT = temp&(07); else /led1 off /set GPF7 temp = rGPFCON; rGPFCON = temp |(114); temp = rGPFDAT; rGPFDAT = temp|(17
8、); void EINT0_Enable(int flag) int temp; if(flag = TRUE) /set GPF0 temp = rGPFCON; rGPFCON = temp |0x2; temp = rGPGUP; rGPFDAT = temp|0x1; rINTMSK&= (BIT_EINT0); else rINTMSK&= BIT_EINT0; 实验三:LCD显示与触摸屏实验项目性质: 普通所属课程名称: 嵌入式系统实验计划学时: 2一、 实验目的:学习LCD显示和触摸屏的编程方法。二、 实验内容和要求:1. 在彩色LCD显示屏上显示数字和汉字以及画图。2. 触摸屏
9、编程,触摸位置信息的检测3. 编程实现,任点触摸屏一下,即在该处显示该处的x,y坐标数据。三、 实验主要仪器设备和材料:嵌入式系统实验箱,微机四、 实验方法、步骤及结构测试:1. 编程要点与相关函数a) 画点:int setpixel(int x,int y,unsigned short pencolor)b) 清屏:clrsrc(void)c) 显示字符:drawtext(int x0,int y0,char *c,int pencolor)d) 触摸屏初始化:INT_ADC_Enable(TRUE);e) 读取X:int adc_x_position()f) 读取Y:int adc_y_p
10、osition()2. 编译程序3. 调试五、 实验报告要求:1. 试验程序流程图2. 带注解的程序清单程序清单:1. LCD编程主函数Main.C示例void C_Entry() int i,j,k=0; i=0; Led4_On_or_Off(TRUE); while(i+1000000); Led4_On_or_Off(FALSE); clrsrc(); for(i=0;i240;i+) for(j=0;j320;j+) setpixel(j,j,0xff); while(10); ;int setpixel(int x,int y,unsigned short pencolor) in
11、t movetop; /*THE PIXEL ADDRESS*/ short *p; if (x(int)x_limit) return ERROR; if (y(int)y_limit) return ERROR; /*指向所要显示的像素偏移地址*/ movetop=(x*x_size+y)*2;/一个像素占两个字节 p=(short *)(VideoAddrStart+movetop); *p=pencolor; return 1;void clrsrc(void)short *p;for(p=(short*)VideoAddrStart;p(short*)VideoAddrEnd;p+)
12、 *p=0;return ;void Led1_On_or_Off(int flag) int temp; if(flag =TRUE) /led1 on /set GPF4 temp = rGPFCON; rGPFCON = temp |(18); temp = rGPFDAT; rGPFDAT = temp&(04); else /led1 off /set GPF4 temp = rGPFCON; rGPFCON = temp |(18); temp = rGPFDAT; rGPFDAT = temp|(14); void Led2_On_or_Off(int flag) int tem
13、p; if(flag =TRUE) /led1 on /set GPF4 temp = rGPFCON; rGPFCON = temp |(110); temp = rGPFDAT; rGPFDAT = temp&(05); else /led1 off /set GPF4 temp = rGPFCON; rGPFCON = temp |(110); temp = rGPFDAT; rGPFDAT = temp|(15); void Led3_On_or_Off(int flag) int temp; if(flag =TRUE) /led1 on /set GPF4 temp = rGPFCON; rGPFCON = temp |(112); temp = rGPFDAT; rGPFDAT = temp&(06); else /led1 off /set GPF4 temp = rGPFCON; rGPFCON = temp |(112); temp = rGPFDAT; rGPFDAT = t
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1