广东工业大学嵌入式实验报告

上传人:工**** 文档编号:557483901 上传时间:2022-11-16 格式:DOCX 页数:11 大小:16.18KB
返回 下载 相关 举报
广东工业大学嵌入式实验报告_第1页
第1页 / 共11页
广东工业大学嵌入式实验报告_第2页
第2页 / 共11页
广东工业大学嵌入式实验报告_第3页
第3页 / 共11页
广东工业大学嵌入式实验报告_第4页
第4页 / 共11页
广东工业大学嵌入式实验报告_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《广东工业大学嵌入式实验报告》由会员分享,可在线阅读,更多相关《广东工业大学嵌入式实验报告(11页珍藏版)》请在金锄头文库上搜索。

1、嵌入式系统实验报告学生学院 计算机学院专业班级计算机科学与技术06级班学 号学生姓名指导教师2010年01月13日实验二:I/O端口的使用和中断处理程序实验项目性质:普通所属课程名称:嵌入式系统实验计划学时:2一、实验目的:了解ARM的I/O端口使用和编程方法,了解中断响应处理 的过程和中断编程的方法。二、实验内容和要求:1. 对P01进行控制,周期性(0.5秒)输出高低电平,使 得其连接的发光二极管周期性地闪动。2. 读取INTO的按键状态,当其按下改变发光二极管周期 性地闪动周期改为0.25秒。3. INTO作为中断信号接受端,对其短按一下即触发中断, 使发光二极管周期性地闪动周期变为1秒

2、,再对其短按 一下,又恢复闪动周期为0.5秒三、实验主要仪器设备和材料:1. 嵌入式系统实验箱,微机四、实验方法、步骤及结构测试:1. 编程:端口初始化,软件定时,中断处理。编程要点:include 井include include 2410addrh井include def. hvoid Ledl_0n_or_0ff(int flag); void Led4_0n_or_0ff(int flag); void EINTO_Enable(int flag);void C_Entry()int i;EINTO_Enable(TRUE); while(lO);9void EIXTO.LISR(vo

3、id)int i;Led4_0n_or_0ff(TRUE); while(i+100000);Led4_0n_or_0ff(FALSE); while(i+10000);void Ledl_0n_or_0ff(int flag)int temp;if(flag =TRUE) /ledl on/set GPF4temp = rGPFCON; rGPFCON = temp | (18);temp = rGPFDAT; rGPFDAT = temp&(04);else/ledl off/set GPF4temp = rGPFCON; rGPFCON = temp | (18);temp = rGPF

4、DAT; rGPFDAT = temp (14);void Led4_0n_or_0ff(int flag)int temp;if(flag =TRUE) /ledl on/set GPF7temp = rGPFCON; rGPFCON = temp | (114);temp = rGPFDAT; rGPFDAT = temp&(07);else/ledl off/set GPF7temp = rGPFCON; rGPFCON = temp | (114);temp = rGPFDAT; rGPFDAT = tempi (17); void EINTO_Enable(int flag)int

5、temp;if (flag = TRUE)/set GPFOtemp = rGPFCON; rCPFCON = temp |0x2;temp = rGPGUP; rCPFDAT = tempi 0x1; rINTMSK&= (BIT_EINTO);elserINTMSK&= BIT.EINTO;2. 编译程序3. 调试五、实验报告要求:1. 试验程序流程图2. 带注解的程序清单 程序清单:void CJntryOint i;EINTOEnable(TRUE);while (10);void EINTO_LISR(void)int i;Led5_or-0ff (TRUE);5rtiile(i+1

6、00000);Led0n.or.0ff (FALSE); irt)ile(i-H10000);void Ledl.On_or.Off(int flag)int temp;if (flag =TRUE)/ledl on/set GPF4temp = rGPFCON; rGPFCON = temp | (18); temp = rGPFDAT: rGPFDAT = temp&(04);else/ledl off/set GPF4temp = rGPFCW;rGPFCON = temp | (18);temp = rGPFDAT;rGPFDAT = tempi (14);void LedOivor.

7、Off (int flag)int temp;if (flag =TRUE) /ledl on/set GPF7temp = rGPFCON;rGPFCON = temp | (114);temp = rGPFDAT; rGPFDAT = temp&(07);else/ledl off/set GPF7temp = rGPFCON;rGPFCON = temp | (114);temp = rGPFDAT; rGPFDAT = tempi (17);void EINTOJnablednt flag)int temp;if(flag = TRUE)/set GPFOtemp = rGPFCON;

8、 rGPFCON = temp |0x2; temp = rGPGUP;rGPFDAT = tempi 0x1; rINTMSK&= (BITJINTO);elserINTOSK4= BIT.EINTO;实验项目性质: 普通所属课程名称: 嵌入式系统实验计划学时:2一、实验目的:学习LCD显示和触摸屏的编程方法。二、实验内容和要求:1. 在彩色LCD显示屏上显示数字和汉字以及画图。2. 触摸屏编程,触摸位置信息的检测3. 编程实现,任点触摸屏一下,即在该处显示该处的x, y坐标数据。三、实验主要仪器设备和材料:嵌入式系统实验箱,微机四、实验方法、步骤及结构测试:1. 编程要点与相关函数a) l

9、El 点:int setpixel(int x,int y,unsigned short pencolor)b) 清屏:clrsrc(void)c) 显不字符:drawtext(int xO,int vO,char pencolor)d) 触摸屏初始化:INT_ADC_Enable(TRUE);e) 读取 X: int adc_x_position()f) 读取 Y: int adc_v_position()2. 编译程序3. 调试五、实验报告要求:1.试验程序流程图2. 带注解的程序清单程序清单:1. LCD编程主函数Main.C示例void C_EntryQmt i、j、k=O;1=0;L

10、edOn.oi_Off(TRUE);while(i+ 1000000);LedOn.oi_Off(FALSE); clisrcQ;foi(i=0;i240;i+) for(j=0j320j+) setpixel(jj,Oxff);while(lO);mt setpixel(int xjnt unsigned short pencolor) nit movetop;/* 像素地址*/short *p;if (x(mt)x Jmut) return ERROR;if (y(mt)yJmut) retuin ERROR;/*指向所要显示的像素偏移地址 movetop=(x*x_size+y) * 2

11、个像素占两个字节p=(short *)(VideoAddrStart+movetop);*p=pencolor;return 1;void cksrc(void)short *p;fbi(p=(shoit*)VideoAddrStan;p(shoit*)VideoAddrEnci;p+) *p=0;return;void Led l_On_oi_Off(int flag)mt temp;if(flag =TRUE) /ledl on/set GPF4temp = 1GPFCON; rGPFCON = temp |(18);temp = 1GPFDAT; rGPFDAT =忙 mp&(04);e

12、lse/ledl off/set GPF4temp = 1GPFCON; rGPFCON = temp |(18);temp = rGPFDAT; rGPFDAT = temp|(l4);void Led2_On_oi_Off(int flag)mt temp;if(flag =TRUE) /led 1 on/set GPF4temp = 1GPFCON; rGPFCON = temp |(l10);temp = 1GPFDAT; rGPFDAT =忙 mp&(05);else/ledl off/set GPF4temp = 1GPFCON; rGPFCON = temp |(l10);tem

13、p = rGPFDAT; rGPFDAT = temp|(l5);void Led3_On_oi_Off(int flag)mt temp;if(flag =TRUE) /ledl on/set GPF4temp = 1GPFCON; rGPFCON = temp |(112);temp = rGPFDAT; rGPFDAT =忙 mp&(06);else/ledl off/set GPF4 temp = 1GPFCON; rGPFCON = temp |(112);temp = 1GPFDAT; rGPFDAT = temp|(l6); void Led4_On_oi_Off(int flag)mt temp;if(flag =TRUE) /ledl on/set GPF4temp = 1GPFCON; rGPFCON = temp |(114);temp = rGPFDAT; rGPFDAT =忙 mp&(07);else/ledl off/set GPF4temp = 1GPFCON; rGPFCON = temp |(114);temp = rGPFDAT; rGPFDAT = temp|(l7);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号