msp430 IO设置问题

[复制链接]
1646|24
 楼主| kong86176 发表于 2017-6-17 15:50 | 显示全部楼层 |阅读模式

P1.7 P7.6 控制阀门开关P1.5公共端  输出高电平
P1.4 P1.6 设置为输入模式,检测到位开关
开到位,P1.6 变成高电平 //   关到位P1.4变成高电平。
任一个到位开关闭合状态,不能仿真~~连接不上
程序如下:
#include<msp430x41x2.h>
typedef unsignedchar Uchar8;
typedef  unsigned int Uint16;
typedef  unsigned long Uint32;
#define FMON_LOW     P7OUT &= (~BIT6) // FMON=0
#defineFMON_HIGH    P7OUT |= BIT6 // FMON=1
#defineFMOFF_LOW    P1OUT &= (~BIT7) //FMOFF=0
#defineFMOFF_HIGH   P1OUT |= BIT7 // FMOFF=1
#defineFMCOM_HIGH   P1OUT |= BIT5 //FMCOM=1
void IO_Init(void);
void main(void)
{
   OSC_Init();
  IO_Init();
   FMCOM_HIGH;
  while(1)
    {
     if(P1IN==0XB0)
     {
       FMON_HIGH;   进入到这里就出现错误。仿真器连不上了
       FMOFF_LOW;  
      }
       else {
         FMON_LOW;
  FMOFF_HIGH;
      }
     }
}
void IO_Init(void)
{
P7DIR |=0xFF;                             //  P7.6 输出模式
P7OUT = 0x00;                                // All P7.xreset
P1DIR |=0XAF;        // P1.7 P1.5输出模式P1.6 P1.4输入模式
P1OUT =0x00;                                // All P7.x reset
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| kong86176 发表于 2017-6-17 15:55 | 显示全部楼层
新手求助~~~
chuntian2016 发表于 2017-6-17 21:54 | 显示全部楼层
这个IO口的设计是根据实际需要的
dirtwillfly 发表于 2017-6-18 08:13 | 显示全部楼层
你用的哪个型号的msp430?这几个io默认的是io功能吗?
 楼主| kong86176 发表于 2017-6-18 15:52 | 显示全部楼层
用的 msp430f4152
dirtwillfly 发表于 2017-6-18 21:27 | 显示全部楼层
能上传下完整的电路图吗?从这段代码看不出有什么问题
 楼主| kong86176 发表于 2017-6-19 14:12 | 显示全部楼层
感谢 dirtwillfly  的 回复,  问题解决了。
       FMON_HIGH;   进入到这里就出现错误。仿真器连不上了
       FMOFF_LOW;  
这两行换一下,就好了。
原因 我觉得 应该是, 我的电路是一个联动的,控制阀门开关的两个引脚不能同时为高电平,也就是说,P1.7和 P7.6 控制阀门开关,P1.7 高,P1.6低,,转换为P1.6 高,P1.7低,逻辑上没有问题,但是程序执行到P1.6 高时,P1.7 也是高,导致电源对地功耗大,编程器连不上了,所以先将P1.7 低,,再把P1.6置高,~~~搞了好几天,一直以为逻辑有问题,还是电路没看透啊~~

评分

参与人数 1威望 +5 收起 理由
dirtwillfly + 5 赞一个!

查看全部评分

kkzz 发表于 2017-6-21 22:36 | 显示全部楼层
使用的是什么接口?
hudi008 发表于 2017-6-21 22:36 | 显示全部楼层
阀门的通电使用是什么?
lzmm 发表于 2017-6-21 22:37 | 显示全部楼层
使用隔离信号控制。
minzisc 发表于 2017-6-21 22:37 | 显示全部楼层
芯片复位了没有?
selongli 发表于 2017-6-21 22:38 | 显示全部楼层
测量芯片的电压是否正常
fentianyou 发表于 2017-6-21 22:38 | 显示全部楼层
这个跟你配置的 IO模式没有什么关系
xiaoyaodz 发表于 2017-6-21 22:38 | 显示全部楼层
可能电压不稳定造成复位。
febgxu 发表于 2017-6-21 22:39 | 显示全部楼层
仿真器开始的时候能够实现?
sdlls 发表于 2017-6-21 22:39 | 显示全部楼层
感觉是芯片的存在问题。
kkzz 发表于 2017-6-21 22:39 | 显示全部楼层
2线还是4线jtag?
hudi008 发表于 2017-6-21 22:39 | 显示全部楼层
供电是同一个电源吗?
lzmm 发表于 2017-6-21 22:40 | 显示全部楼层
可能瞬间电压太低造成的。
minzisc 发表于 2017-6-21 22:40 | 显示全部楼层
如果芯片出现复位,就是电压过低。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

21

帖子

2

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