历史上的今天
今天是:2025年02月08日(星期六)
2020年02月08日 | MSP430x149x之----------外部中断
2020-02-08 来源:eefocus
外部中断
IO口中断
MSP430x149x的6组IO口中,只有P0、P1才具有外部中断功能。
设置IO口中断,并书写中断服务函数
设置步骤:
1. 设置相应IO口的方向为输入,即 在PXDIR 中的相应位置0。
2. 设置相应IO口为普通引脚,即PXSEL 中相应位置0。
3. 开启相应的IO口中断,即PXIE中的相应位置1。
4. 设置中断触发方式,即PxIES中, 0为上升沿,1为下降沿。
5. 开启外部总中断,即_EINT();。
6. 书写中断服务程序。
中断服务子程序的格式:
#pragma vector = PORTx_VECTOR
_interrupt void IRQ_PORT(void) ; 中断服务函数名自定
{
switch(PXIFG)
{
case 0x01: //do something
break;
case 0x02: //do something
break;
......
}
}
注意事项:
1. 注意开启总中断和相应的外部中断模块
2. 注意只有P0,P1端口才有外部中断功能。
3. 注意不要在中断服务函数中占用大量的时间。
上一篇:MSP430初学---下程序
史海拾趣
|
现在手机中的射频信号通道越来越拥挤。蜂窝电话已经从双频向三频甚至四频快速发展。这些复杂手机还需要处理来自外围无线设备的各种信号,如蓝牙、Wi-Fi和GPS。而随着WiMAX和LTE(4G)的加入,这种复杂度将越来越高。在移动电话中,天线开关控制着天线 ...… 查看全部问答> |
|
我用这个方法,但是好像获取的大小有问题,不知道这个方法是不是正确的方法,还没有更好的办法? DDCAPS ddcaps; ddcaps.dwSize = sizeof DDCAPS; lpdd ...… 查看全部问答> |
|
LPCWSTR strDrvName=L\"\"; strDrvName=TEXT(\"NDS0:\"); HANDLE hHandle; hHandle ...… 查看全部问答> |
|
128M扩到512M,我用的是uboot+NK.nb0,uboot已经改好ram初始化部分,没有开mmu,在uboot下测试512内存读写正常,wince改了config.bib中ram大小,oemtable也改了内存映射,但是现在内核跑到oeminit跑完就死了,不好调试。试着用oemgetextensiondram( ...… 查看全部问答> |
|
我想做一个一主多从(1对8甚至1对16)的系统, 想选用SPI作为板级通讯总线,不知这样做能不能实现? 如果能,那么在设计时要注意什么? 我现在想到的是加254增加驱动,还有就是适当的降低SPI速度以降低误码率, 不知我的这些想法对不对?… 查看全部问答> |
|
今天在看书时发现一点疑惑,问题大致是这样的: 一个电路网络,要对其中一个2输入与门的输出(定义为tmp吧,其实此处并不存在端口或变量)进行一些赋值操作,。在Verilog编程中按说是应该把其定义为wire型变量,可是今天看的一个例子却定义成了reg ...… 查看全部问答> |




