共2条
1/1 1 跳转至页
P2 求教P2口做捕获口是的初始化问题
问
我正在用P2.0口来捕获红外发射信号,可是怎么也捕获不到信号,我对P2.0口的初始化是这样做的:
mov.w #CM1+CM0+SCS+SCCI+CAP+CCIE,&CCTL2
bit.b #0FEh,&P2DIR ;P2.0 input
bis.b #001h,&P2SEL ;选择P2.0口做捕获口
mov.b #001h,&P2IE ;开中断
不知有没有漏掉什么?请各位大虾指点一下. 答 1: 我正在用P2.0口来捕获红外发射信号,可是怎么也捕获不到信号,我对P2.0口的初始化是这样做的:
mov.w #CM1+CM0+SCS+SCCI+CAP+CCIE,&CCTL2
BIS.B #0FEh,&P2DIR ;P2.0 input
bis.b #001h,&P2SEL ;选择P2.0口做捕获口
EINT 答 2: mov.w #CM1+CM0+SCS+SCCI+CAP+CCIE,&CCTL2
MOV.B #0FEh,&P2DIR ;P2.0 input
bis.b #001h,&P2SEL ;选择P2.0口做捕获口
EINT 答 3: 将bit.b #0FEh,&P2DIR 改 bic.b #01,&p2dir 答 4: 引用: 答 5: 关于P2.0口的设置没有了,别的设置和此无关
我给红外信号后,按上面的设置可以跳到中断程序,可是在中断程序开始用:
bit.w #0004h,&TAIV
jnc flagclr
来判断时,就会跳到flagclr处,表明事件并不是P2.0捕获事件
另外,我想问一下,我初始化CCTL2是不是已经默认是用TA了?可是我在用LCD显示时有这样一句话:
mov.b #00h+BTFRFQ1,&BTCTL ;set LCD frame freq = ACLK / 128
也就是LCD是用的基本定时器,不知道这两个有没有冲突? 答 6: 初始化CCTL2是已经默认是用TA了.如果是Timer B的话,是TB打头的比如TBCCTL2等等。你的其他时钟的设置是怎么样的。 答 7: 现在发现即使什么信号都不给,程序就能跑到P2中断程序,可一判断是不是捕获事件时,又判断不是捕获事件,所以想问P2口的捕获向量和P2口的中断向量是不是一个向量. 答 8: 我就是在用LCD显示的时候用到了BTCTL,程序:
mov.b #00h+BTFRFQ1,&BTCTL ;set LCD frame freq = ACLK / 128
不知道这两个时钟可不可以同时用?
mov.w #CM1+CM0+SCS+SCCI+CAP+CCIE,&CCTL2
bit.b #0FEh,&P2DIR ;P2.0 input
bis.b #001h,&P2SEL ;选择P2.0口做捕获口
mov.b #001h,&P2IE ;开中断
不知有没有漏掉什么?请各位大虾指点一下. 答 1: 我正在用P2.0口来捕获红外发射信号,可是怎么也捕获不到信号,我对P2.0口的初始化是这样做的:
mov.w #CM1+CM0+SCS+SCCI+CAP+CCIE,&CCTL2
BIS.B #0FEh,&P2DIR ;P2.0 input
bis.b #001h,&P2SEL ;选择P2.0口做捕获口
EINT 答 2: mov.w #CM1+CM0+SCS+SCCI+CAP+CCIE,&CCTL2
MOV.B #0FEh,&P2DIR ;P2.0 input
bis.b #001h,&P2SEL ;选择P2.0口做捕获口
EINT 答 3: 将bit.b #0FEh,&P2DIR 改 bic.b #01,&p2dir 答 4: 引用: 答 5: 关于P2.0口的设置没有了,别的设置和此无关
我给红外信号后,按上面的设置可以跳到中断程序,可是在中断程序开始用:
bit.w #0004h,&TAIV
jnc flagclr
来判断时,就会跳到flagclr处,表明事件并不是P2.0捕获事件
另外,我想问一下,我初始化CCTL2是不是已经默认是用TA了?可是我在用LCD显示时有这样一句话:
mov.b #00h+BTFRFQ1,&BTCTL ;set LCD frame freq = ACLK / 128
也就是LCD是用的基本定时器,不知道这两个有没有冲突? 答 6: 初始化CCTL2是已经默认是用TA了.如果是Timer B的话,是TB打头的比如TBCCTL2等等。你的其他时钟的设置是怎么样的。 答 7: 现在发现即使什么信号都不给,程序就能跑到P2中断程序,可一判断是不是捕获事件时,又判断不是捕获事件,所以想问P2口的捕获向量和P2口的中断向量是不是一个向量. 答 8: 我就是在用LCD显示的时候用到了BTCTL,程序:
mov.b #00h+BTFRFQ1,&BTCTL ;set LCD frame freq = ACLK / 128
不知道这两个时钟可不可以同时用?
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【笔记】生成报错synthdesignERROR被打赏50分 | |
【STM32H7S78-DK评测】LTDC+DMA2D驱动RGBLCD屏幕被打赏50分 | |
【STM32H7S78-DK评测】Coremark基准测试被打赏50分 | |
【STM32H7S78-DK评测】浮点数计算性能测试被打赏50分 | |
【STM32H7S78-DK评测】Execute in place(XIP)模式学习笔记被打赏50分 | |
每周了解几个硬件知识+buckboost电路(五)被打赏10分 | |
【换取逻辑分析仪】RA8 PMU 模块功能寄存器功能说明被打赏20分 | |
野火启明6M5适配SPI被打赏20分 | |
NUCLEO-U083RC学习历程2-串口输出测试被打赏20分 | |
【笔记】STM32CUBEIDE的Noruletomaketarget编译问题被打赏50分 |