完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
*********************************************************************************************************/
#include "LPC11xx.h" /* LPC11xx外设寄存器 */ /********************************************************************************************************* 宏定义 *********************************************************************************************************/ #define BEEP (1ul << 3) #define BEEPON() LPC_GPIO2->DATA |= BEEP /* 蜂鸣器关 */ #define BEEPOFF() LPC_GPIO2->DATA &= ~BEEP /* 蜂鸣器开 */ /********************************************************************************************************* ** Function name: myDelay ** Descriptions: 软件延时 ** input parameters: 无 ** output parameters: 无 ** Returned value: 无 *********************************************************************************************************/ void myDelay(uint32_t ulTime) { uint32_t i; i = 0; while (ulTime--) { for (i = 0; i < 5000; i++); } } /********************************************************************************************************* ** Function name: timer0Init ** Descriptions: 32位定时器0初始化函数 ** input parameters: 无 ** output parameters: 无 ** Returned value: 无 *********************************************************************************************************/ void timer0Init (void) { LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 6); /* 初始化GPIO AHB时钟 */ LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 16); /* 打开IOCON的配置时钟 */ LPC_IOCON->PIO3_3 &= ~0x07; /* 将P3.3初始化为GPIO功能 sck */ LPC_GPIO3->DIR =BEEPON() ; /* 将P3.3方向设置为输出 */ LPC_GPIO3->DATA = BEEPOFF(); /* 将P3.3设置为低电平 */ LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 9); /* 打开定时器模块 */ LPC_TMR32B0->PR = 0x01; /* 设置分频系数 */ LPC_TMR32B0->MCR = 0x03; /* 设置MR0匹配后复位TC并产生中断*/ LPC_TMR32B0->MR0 = SystemFrequency/10000; /* 设置中断时间 100us */ LPC_TMR32B0->TCR =0X02; LPC_TMR32B0->CTCR =0X00; LPC_TMR32B0->IR =0x1; LPC_TMR32B0->TCR =0x01; NVIC_EnableIRQ(TIMER_32_0_IRQn); /*定时器中断使能*/ NVIC_SetPriority(TIMER_32_0_IRQn,2); } void TIMER_32_0_IRQnHander(void) { LPC_TMR32B0->IR=1; LPC_GPIO3->DATA = BEEPON(); return; } /********************************************************************************************************* ** Function name: main *********************************************************************************************************/ int main(void) { SystemInit(); /* 初始化目标板,切勿删除 */ timer0Init(); while (1); } /********************************************************************************************************* End Of File *********************************************************************************************************/ |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
1912个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36362 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4400 浏览 0 评论
6055 浏览 1 评论
6765 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4217 浏览 0 评论
620浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
618浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
609浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
696浏览 2评论
799浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 11:22 , Processed in 1.482536 second(s), Total 52, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号