共1条 1/1
1
跳转至
页
请教:我用外部中断3配合定时器3进行脉冲计数?
请教:我用外部中断3配合定时器3进行脉冲计数,外部中断3做脉冲输入引脚。TimerCnt计数定时器中断,IntCnt为外部中断3的计数, 但是上面程序有问题,请高手帮我修改一下,谢谢各位! static U32 TimerCnt=0; static U32 IntCnt=0; static int LedStatus=0; volatile int TimerCnt3; int flag=-1; void __irq Timer3Done(void) { rI_ISPC=BIT_TIMER3; TimerCnt3++; } void __irq EINT3_Tick(void) { IntCnt++; flag=-flag; if(flag==1) { rI_ISPC=BIT_EINT3; rTCFG0=0x00000100; rTCFG1=0x00002000; rTCNTB3=10000; rTCMPB3=5000; rTCON=0x0020000; //update T3 rTCON=0x0090000; //T3=auto reload, pISR_TIMER3=(unsigned)Timer3Done; } else { rTCON=0x0 ; TimerCnt3=0; } } void Timer_Init(void) { int save_E,save_PE; save_E=rPCONE; save_PE=rPUPE; rPCONE=0xaaa8; //Tout0/1/2/3/4, RxD0, TxD0 rPUPE |=0xf8; rEXTINT=0x66666666; //rEXTINT=0x22222222; rINTCON=0x5; //Non-vectored,IRQ enable,FIQ disable rINTMOD=0x0; //All=IRQ mode rPCONG=0xffff; //EINT7~0 rPUPG=0x0; //pull up enable pISR_EINT3=(unsigned)EINT3_Tick; rINTMSK=BIT_GLOBAL; rINTMSK=~(BIT_GLOBAL|BIT_EINT3|BIT_TIMER3);//start timer INT Uart_Printf("Timer_;rTCNTO3=%d\n",rTCNTO3); } void Main(void) { rSYSCFG=CACHECFG; // Using 8KB Cache// Port_Init(); Uart_Init(0,57600); Delay(10); Uart_Select(0); //Select UART0 Led_Display(0x07); Timer_Init(); while(1); } 请教:我用外部中断3配合定时器3进行脉冲计数,外部中断3做脉冲输入引脚。 但是上面程序有问题,请高手帮我修改一下,谢谢各位!
关键词: 请教 我用 外部 中断 配合 定时器 进行 脉冲
共1条 1/1
1
跳转至
页
回复
有奖活动 | |
---|---|
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
【有奖活动】智能可穿戴设备AR/VR如何引领科技新潮流! | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
【有奖活动】震撼来袭!这场直播将直击工程师的心灵! |
打赏帖 | |
---|---|
如何实现基于NXPiMX.RT1021的BH1730采集被打赏50分 | |
【换取手持数字示波器】AHT10温度检测分享被打赏40分 | |
【换取手持数字示波器】ACM32F070开发板点亮LCD屏和触控按键,串口,ADC被打赏40分 | |
【换取手持数字示波器】ACM32F070LCD屏和触控按键功驱动蜂鸣器分享被打赏40分 | |
【换取手持数字示波器】国民技术PWM功能知识分享被打赏40分 | |
【换取手持数字示波器】放大器运放知识分享被打赏40分 | |
【分享评测,赢取加热台】+开关电源AC输入知识分享被打赏30分 | |
【换取手持数字示波器】N32G430点亮数码管与串口打印、ADC被打赏40分 | |
老胖子聊电路--分析一个反馈电路被打赏50分 | |
【换取手持数字示波器】+点亮WS2812RGB灯被打赏50分 |