大家进来帮下忙~~

[复制链接]
2492|12
 楼主| shtxz 发表于 2011-4-26 10:50 | 显示全部楼层 |阅读模式
我想用MSP430F149的开发板弄一个很简单的功能,就是监测P1.0输入是否为高电平,如果为高电平P6.7就置1,如果P1.0是低电平P6.7就置0,请问这样一个简单的程序需要用IO口中断吗?下面是我写的 大家帮忙看看,我是初学者!unsigned char key;
unsigned int i;

void main (void)
{
  WDTCTL=WDTPW+WDTHOLD;
  P1DIR&=-0x01;   //P1.0 作为输入

  key=P1IN&0x01;  //输出P1.0的值
  P6DIR|=BIT7;    //P6.7 作为输出
while(1)
{

  i = 5000;                              // Delay
    do (i--);
    while (i != 0);

  if(key&0x01)
    P6OUT ^= BIT7;              
    //P6OUT|=0x80;  //P6.7输出1
  else
    P6OUT&=-0x80; //P6.7输出0
}
}

谢谢大家帮忙指导!
yewuyi 发表于 2011-4-26 11:22 | 显示全部楼层
不需要用中断,连MSP430都不需要,甚至连芯片都不需要,只要有三极管、电阻等就可以了。
 楼主| shtxz 发表于 2011-4-26 11:32 | 显示全部楼层
目前我是想这样,可能后续再加些东西。请教二楼 如果用430的话 我那个程序可以吗?
yewuyi 发表于 2011-4-26 11:37 | 显示全部楼层
不行,那个delay很坏。
 楼主| shtxz 发表于 2011-4-26 11:39 | 显示全部楼层
大哥你能帮忙改下吗?
yewuyi 发表于 2011-4-26 11:49 | 显示全部楼层
大哥你能帮忙改下吗?
shtxz 发表于 2011-4-26 11:39



不能,你自己动手才对。
 楼主| shtxz 发表于 2011-4-26 11:58 | 显示全部楼层
不能,你自己动手才对。
yewuyi 发表于 2011-4-26 11:49


这 ~~
知道动手才对。可是就快交这个任务了,给些指导吧!
谢谢。好人一生平安!
playjian 发表于 2011-4-26 12:51 | 显示全部楼层
7# shtxz 好人一生平安~~~这话说得~~
 楼主| shtxz 发表于 2011-4-26 13:01 | 显示全部楼层
7# shtxz 好人一生平安~~~这话说得~~
playjian 发表于 2011-4-26 12:51



哥们你也帮忙看看把!谢谢啦
zjswuyunbo 发表于 2011-4-26 13:06 | 显示全部楼层
干嘛要delay?
while(1)
{
  if(key&0x01)
    P6OUT ^= BIT7;              
  else
    P6OUT&=-0x80; //P6.7输出0
}
不就好了?
zjswuyunbo 发表于 2011-4-26 13:07 | 显示全部楼层
不过,这个不用单片机吧?
 楼主| shtxz 发表于 2011-4-26 13:11 | 显示全部楼层
谢谢楼上解答,这个是不需要单片机,主要是先弄着试试,以后可能要加些功能!
 楼主| shtxz 发表于 2011-4-26 13:13 | 显示全部楼层
请问下不加延时的话,能循环检测吗?检测时间是多少呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

7

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部