基于ARM嵌入式系统接口技术课程设计报告

上传人:飞*** 文档编号:4528287 上传时间:2017-08-20 格式:DOC 页数:33 大小:616.50KB
返回 下载 相关 举报
基于ARM嵌入式系统接口技术课程设计报告_第1页
第1页 / 共33页
基于ARM嵌入式系统接口技术课程设计报告_第2页
第2页 / 共33页
基于ARM嵌入式系统接口技术课程设计报告_第3页
第3页 / 共33页
基于ARM嵌入式系统接口技术课程设计报告_第4页
第4页 / 共33页
基于ARM嵌入式系统接口技术课程设计报告_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《基于ARM嵌入式系统接口技术课程设计报告》由会员分享,可在线阅读,更多相关《基于ARM嵌入式系统接口技术课程设计报告(33页珍藏版)》请在金锄头文库上搜索。

1、 基于 ARM 嵌入式系统接口技术课程设计报告课程设计题目:实时时钟设计学院:计算机科学与技术学院班级:计算机 09-1 班学号:姓名:指导老师:微型计算机系统与接口技术课程设计设计时间:2011 年 12 月 19 日 至 2011 年 12 月 23 日设计环境1硬件环境:计算机,EV44B0II 实验台2软件环境:Jediview 集成开发环境一、基本功能:利用 S3C44BOX 的 RTC 和实验箱上的 LCD 液晶、4*4 小键盘设计一个实时时钟。1在 LCD 上显示当前日期及时间。可按如下格式显示:2利用 4*4 小键盘校时校时时 LCD 的相应位置要有光标提示。二、定时报警功能通

2、过小键盘设定报警时刻,报警时刻到,则在 LCD 上显示(各自不同的)报警图像。三、步骤:1.掌握预备知识:a.液晶显示b.键盘译码c掌握 S3C44BO 芯片 RTC 的使用方法2.设计:a.实现 RTC 实时时钟功能b.显示实时时钟界面c.实现校时功能d.上机调试,运行,验收e.实现定时报警功能四、硬件接口逻辑图日期:XXXX 年 XX 月 XX 日时间:XX:XX:XX班级,姓名里程: x x x x km电路连接图五、程序代码(1)44binits/* * NAME : 44BINIT.S * Version : 10.JAn.2003 * Description: * C start

3、up codes * Configure memory, Initialize ISR ,stacks * Initialize C-variables * Fill zeros into zero-initialized C-variables */#include arm.h.globl _start_start:b ResetHandler /for debugb HandlerUndef /handlerUndefb HandlerSWI /SWI interrupt handlerb HandlerPabort /handlerPAbortb HandlerDabort /handl

4、erDAbortb . /handlerReservedb IsrIRQb HandlerFIQ/*IMPORTANT NOTE*/If the H/W vectored interrutp mode is enabled, The above two instructions should/be changed like below, to work-around with H/W bug of S3C44B0X interrupt controller. ldr pc,=HandlerEINT0 /mGA H/W interrupt vector tableldr pc,=HandlerE

5、INT1 /ldr pc,=HandlerEINT2 /ldr pc,=HandlerEINT3 /ldr pc,=HandlerEINT4567 /ldr pc,=HandlerTICK /mGAb .b .ldr pc,=HandlerZDMA0 /mGBldr pc,=HandlerZDMA1 /ldr pc,=HandlerBDMA0 /ldr pc,=HandlerBDMA1 /ldr pc,=HandlerWDT /ldr pc,=HandlerUERR01 /mGBb .b .ldr pc,=HandlerTIMER0 /mGCldr pc,=HandlerTIMER1 /ldr

6、 pc,=HandlerTIMER2 /ldr pc,=HandlerTIMER3 /ldr pc,=HandlerTIMER4 /ldr pc,=HandlerTIMER5 /mGCb .b .ldr pc,=HandlerURXD0 /mGDldr pc,=HandlerURXD1 /ldr pc,=HandlerIIC / ldr pc,=HandlerSIO /ldr pc,=HandlerUTXD0 /ldr pc,=HandlerUTXD1 /mGDb .b .ldr pc,=HandlerRTC /mGKAb . /b . /b . /b . /b . /mGKAb .b .ld

7、r pc,=HandlerADC /mGKBb . /b . /b . /b . /b . /mGKBb .b ./*0xe0=EnterPWDN*/ldr pc,=EnterPWDNHandlerFIQ: .word HandleFIQHandlerIRQ: .word HandleIRQHandlerUndef: .word HandleUndefHandlerSWI: .word HandleSWIHandlerDabort: .word HandleDabortHandlerPabort: .word HandlePabortHandlerADC: .word HandleADCHan

8、dlerRTC: .word HandleRTCHandlerUTXD1: .word HandleUTXD1HandlerUTXD0: .word HandleUTXD0HandlerSIO: .word HandleSIOHandlerIIC: .word HandleIICHandlerURXD1: .word HandleURXD1HandlerURXD0: .word HandleURXD0HandlerTIMER5: .word HandleTIMER5HandlerTIMER4: .word HandleTIMER4HandlerTIMER3: .word HandleTIMER

9、3HandlerTIMER2: .word HandleTIMER2HandlerTIMER1: .word HandleTIMER1HandlerTIMER0: .word HandleTIMER0HandlerUERR01: .word HandleUERR01HandlerWDT: .word HandleWDTHandlerBDMA1: .word HandleBDMA1HandlerBDMA0: .word HandleBDMA0HandlerZDMA1: .word HandleZDMA1HandlerZDMA0: .word HandleZDMA0HandlerTICK: .wo

10、rd HandleTICKHandlerEINT4567: .word HandleEINT4567HandlerEINT3: .word HandleEINT3HandlerEINT2: .word HandleEINT2HandlerEINT1: .word HandleEINT1HandlerEINT0: .word HandleEINT0/*One of the following two routines can be used for non-vectored interrupt.*/IsrIRQ: /using I_ISPR register.stmdb r13!,r0-r8,r

11、12,r14bl IRQldmia r13!,r0-r8,r12,r14subs pc,r14,#0x4IRQ: sub sp,sp,#4 /reserved for PCstmfd sp!,r8-r9 ldr r9,I_ISPRldr r9,r9mov r8,#0x0F0:movs r9,r9,lsr #1bcs F1add r8,r8,#4b F0F1:ldr r9,HandleADCadd r9,r9,r8ldr r9,r9str r9,sp,#8ldmfd sp!,r8-r9,pc/* START */ResetHandler:ldr r0,WTCON /watch dog disab

12、le ldr r1,=0x0 str r1,r0ldr r0,INTMSKldr r1,MASKALL /all interrupt disablestr r1,r0/* * Set clock control registers */ldrr0,LOCKTIMEldrr1,=800 / count = t_lock * Fin (t_lock=200us, Fin=4MHz) = 800strr1,r0ldrr0,PLLCON /temporary setting of PLLldrr1,PLLCON_DAT /Fin=10MHz,Fout=40MHzstrr1,r0ldr r0,CLKCO

13、N ldr r1,=0x7ff8 /All unit block CLK enablestr r1,r0/* * Set memory control registers * */adr r0,SMRDATAldmia r0,r1-r13ldr r0,=0x01c80000 /BWSCON Addressstmia r0,r1-r13/* * Initialize stacks * */ldr sp, SVCStack /Why?bl InitStacks/* * Setup IRQ handler */ldr r0,HandleIRQ /This routine is neededldr r1,IsrIRQ /if there isnt subs pc,lr,#4 at 0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

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