欢迎来到天天文库
浏览记录
ID:55879584
大小:523.50 KB
页数:5页
时间:2020-06-12
《非操作系统下lED灯控制.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、南京邮电大学通达学院《嵌入式系统与开发》实验报告《非操作系统下lED灯控制》实验报告学生姓名:学号:专业班级:指导教师:完成时间:实验1非操作系统下LED灯控制实验一.实验目的熟悉裸板开发环境构建,掌握利用ADS开发工具或arm-linux-gcc开发工具编写裸板系统下程序的基本步骤和方法,掌握裸板程序的基本架构,熟悉汇编设计的基本指令和伪指令的使用方法,掌握S3C6410接口开发基本方法和步骤,并编程设计LED流水灯程序设计。深刻体会软件控制硬件工作的基本思路和方法。二.实验内容实验1.1熟悉基于嵌入式实验箱TINY6410,再了解LED灯电路;实验1.2在非操作系统下,编写驱动le
2、ddrv.c和应用程序main.c,完成点亮LED灯5秒,熄灭5秒,依次重复;实验1.3修改上述代码,要求逐个点亮6个LED灯,然后逐个熄灭,要求每个时延为1秒左右。南京邮电大学通达学院《嵌入式系统与开发》实验报告三.预备知识C语言、微机接口等四.实验设备及工具(包括软件调试工具)硬件:ARM嵌入式开发平台、PC机Pentium100以上、串口线。软件:WinXP或UBUNTU开发环境。五.实验步骤5.1LED流水灯设计子实验11基本步骤(画出实验步骤图)2.代码设计(1)看懂相关硬件电路图,以LED报警灯为例进行设计打开PDF硬件电路图,明确LED灯用到的多个GPIO及其控制器本实验电
3、路LED1-------GPM0LED2-------GPM1LED3-------GPM2LED4-------GPM3LED5-------GPM4LED6-------GPM5LED7-------GPQ0LED8-------GPQ1得出结论:8个LED灯使用到的硬件控制器分别为__GPM__和___GPQ__南京邮电大学通达学院《嵌入式系统与开发》实验报告两个硬件控制器(2)在芯片手册中找到相应的硬件控制器部分,重心是看懂端口寄存器本实验要求完成LED流水灯设计,所以需要设置控制器中端口寄存器:GPMCON----设置相应位为输出口GPMDAT-----控制相应位输出高电平--
4、--点亮LED灯输出低电平-----熄灭LED灯(3)编写驱动和应用程序编写LED功能驱动文件LedDrv.c#definerGPMCON*((unsignedint*)0x7F008820)#definerGPMDAT*((unsignedint*)0x7F008824)//configgpm0~5==inputvoidLedConfig(){rGPMCON=0x111111;}voidLedOn(){rGPMDAT=0x0;}voidLedOFF(){rGPMDAT=0x3F;}(4)编写主应用程序main.c//本程序完成LED报警灯依次间隔5秒亮灭//基于S3C6410处理器,无
5、OS下运行voiddelay(){volatileinti=0x100000;while(i--);}voidmain(){LedConfig();for(;;){LedOn();delay();delay();LedOff();delay();delay();}南京邮电大学通达学院《嵌入式系统与开发》实验报告return;}5.2LED流水灯设计子实验2(1)编写主应用程序main.c//本程序完成LED报警灯流水效果//基于S3C6410处理器,无OS下运行voiddelay(){volatileinti=0x100000;while(i--);}voidmain(){for(i=0
6、;i<6;i++){iLedOn(i++);delay();}for(i=0;i<6;i++){iLedOff(i++);delay();}return;}(2)编写相关Makefile和汇编启动文件Makefile:led.bin:start.omain.oarm-linux-ld-Ttext0x50000000-oled.elf$^arm-linux-objcopy-Obinaryled.elfled.binarm-linux-objdump-Dled.elf>led_elf.dis%.o:%.Sarm-linux-gcc-o$@$<-c%.o:%.carm-linux-gcc-o$
7、@$<-cclean:rm*.o*.elf*.bin*.dis-rf//启动代码.global_start南京邮电大学通达学院《嵌入式系统与开发》实验报告_start://把外设的基地址告诉CPUldrr0,=0x70000000//对于6410来说,内存(0x00000000~0x60000000),外设(0x70000000-0x7fffffff)orrr0,r0,#0x13//外设大小:256Mmcrp15,0,r0,c15,
此文档下载收益归作者所有