嵌入式 > 嵌入式开发 > 详情

IAR+Proteus7.6仿真MSP430单片机PORT1外部中断功能

发布时间:2020-11-17 发布时间:
|
1. Proteus电路
2. msp430程序
#include
#define uint unsigned int
#define uchar unsigned char
/
函数:void delay_1ms(void) void delay_nms(uint n)
功能:延时1ms 延时Nms
*/
void Delay_1ms(void) //1ms延时函数
{
uint i;
for (i=0;i<80;i++);
}
void Delay_Nms(uint n) //N ms延时函数
{
uint i=0;
for (i=0;i Delay_1ms();
}
/
函数:void P1_ISR(void)
功能:外部中断服务函数
*/
#pragma vector=PORT1_VECTOR
__interrupt void Port_1(void)
{
uchar i;
for(i=0;i<10;i++)
{
P1OUT=0x01;
Delay_Nms(1000);
P1OUT=0x00;
Delay_Nms(1000);
}
P1IFG = 0x00; //清除中断标志
}
/
函数:void P1_INIT(void)
功能:PORT1端口初始化
*/
void P1_INIT(void)
{
P1SEL = 0x00; //设置为普通I/O口
P1DIR |= 0X01; //设置I/O方向
P1IE = 0x80; //P1^7中断允许
P1IES = 0x00; //上升沿使相应标志位置位
P1IFG = 0x00; //清除中断标志
}
/
函数:void main(void)
功能:主函数
*/
void main(void)
{
WDTCTL = WDTPW + WDTHOLD;
P1_INIT();
_EINT(); //开总中断
while(1)
{
P1OUT=0x00;
}
}



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
定时器CTC模式的测试