ARM程序设计范例1

ARM程序设计范例1

ID:38363873

大小:83.50 KB

页数:4页

时间:2019-06-11

ARM程序设计范例1_第1页
ARM程序设计范例1_第2页
ARM程序设计范例1_第3页
ARM程序设计范例1_第4页
资源描述:

《ARM程序设计范例1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、如图所示,系统的工作主时钟频率为64MHz,要求实现如下功能:l按开关SB1202,LED灯同时亮一段时间后熄灭l按开关SB1203,定时器time0输出的PWN为占空比20%的波形,使蜂鸣器延时5秒钟响一短声,连响5声。请编写下列函数:(1)定时器Timer0用于产生PWM驱动蜂鸣器,请完成初始化函数Timer0_init()(2)GPIO端口的初始化函数Port_init()(3)中断配置初始化函数Int_init()(4)用于LED灯的延时程序Delay(nTime)(5)LED灯的驱动程序LED1_on(),LED

2、1_off(),LED2_on(),LED2_off(),LEDS_on()全亮,LEDS_off()全灭(6)外部中断EINT4567的中断服务程序EINT4567_ISR()(7)定时器Timer0中断服务程序Timer0_ISR()(8)主程序main()注:假设系统已作如下设置#include"44blib.h"#include"44b.h"#define_ISR_STARTADDRESS0xc7fff00//GCS6:16MbitDRAM/SDRAM#definerPCONG(*(volatileunsigned

3、*)0x1d20040)#definerPDATG(*(volatileunsigned*)0x1d20044)#definerPUPG(*(volatileunsigned*)0x1d20048)#definerEXTINT(*(volatileunsigned*)0x1d20050)#definerEXTINTPND(*(volatileunsigned*)0x1d20054)#definerPCONC(*(volatileunsigned*)0x1d20010)#definerPDATC(*(volatileunsi

4、gned*)0x1d20014)#definerPUPC(*(volatileunsigned*)0x1d20018)#definepISR_TIMER0(*(unsigned*)(_ISR_STARTADDRESS+0x78))#definepISR_EINT4567(*(unsigned*)(_ISR_STARTADDRESS+0x74))#definerI_ISPC(*(volatileunsigned*)0x1e00024)(1)定时器Timer0初始化函数Timer0_init(){rTCFG0=TCFG0&~(

5、0xff)

6、199;//设置Timer0的prescaler值(rTCFG0[0:0])为199rTCFG1=TCFG1&~0b1111

7、0b0100;//设置Timer0的DIV值(rTCFG1[3:0])为1/32rTCNT0=50000;//手工装载定时器的初值rTCMP0=10000;//手工装载比较寄存器初值,占空比20%rTCNTB0=50000;//设置定时器缓冲器初值rTCMPB0=10000;//设置比较缓冲寄存器初值,占空比20%rTCON

8、=0b01110;//设置设置Timer0(rTCON[4:0

9、])不使能死区,自动重载,不反转输出,手动更新,停止定时器}(2)GPIO端口的初始化函数Port_init(){//PORT_B口配置LED灯rPCONB=rPCONB&~(1<<4)

10、(1<<5);//设置端口BPCONB[5]=1,BPCONB[4]=1(输出)//PORT_G口配置外部中断rPCONG=0xffff;//功能3EINT7~0rPUPG=0x0;//写0设置端口G外的外接上拉电阻rEXTINT=rEXTINT

11、0x22220020;//EINT4567下降沿触发rEXTINTPND=0xf;//写1清

12、除外部中断挂起寄存器//PORT_E口配置定时器Timer0rPCONE=rPCONB&(~(0b11<<6)

13、(0b10<<6));//设置端口E第PE3位为功能2(PCONE[7:6]=10)(TOUT0)rPUPE

14、=~(0x1<<3);//写0设置端口E第PE3(rPUPE[3])外接上拉电阻}(3)中断配置初始化函数Int_init(){rI_ISPC=0x3ffffff;//写1清除中断挂起寄存器rINTMOD=0x0;//均为IRQ中断模式rINTCON=0x1;//IRQ相量模式,允许IRQ中断,禁止FIQ

15、中断rINTMSK

16、=~(0x1<<26

17、0x1<<21

18、0x1<<13);//写0开启全局屏蔽位(rINTMSK[26]),EINT4567屏蔽位(rINTMSK[21]),定时器Timer0屏蔽位(rINTMSK[13])//设置外部中断服务程序入口地址pISR_EINT4567=(int)EINT

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。