你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

产品

[复制链接]
Nicholas Wu 提问时间:2021-8-24 15:14 /
void Port8_CS_Handler(void)
{
        printf("Port8 CS  hotplug  IN\r\n");
        g_Port8.portstatus =EXIO_Port_CS_CHECK(PORT8);
        g_Port8.porttype = EXIO_DIDO_CS_CHECK(PORT8);
       
        if(g_Port8.portstatus == ONLINE)
        {
                        if(g_Port8.porttype == OUTPUT )
                        {
                                g_Port8._uIIC = IIC1;
                        }else{
                                g_Port8._uIIC = IIC2;
                        }       
                        //delay for IIC init
                        DISABLE_INT();
                        delay_ms(PLUGIN_DELAY);
                        ENABLE_INT();
                       
                        int count =20;
                        while(count-- >0)
                        {
                                if (EXIO_Port_CS_CHECK(PORT8) == ONLINE)
                                {
                                        break;
                                }
                                delay_ms(50);
                               
                        }                               
                       
                        if(PCA9555Init(&g_Port8)==IIC_OK)
                        {
                                printf("PORT8_IIC init OK\n\r ");
                               
                                if (g_Port8.porttype == INPUT)
                                {
                                        U_INPUT inp;
                                        EXGPIO_GetData(PORT8,&inp);       
          g_Port8.data = inp.data;                                       
                                }
                               
                        }else{
                                printf("PORT8_IIC init error\n\r ");
                        }                       
               
        }

       
}


收藏 评论4 发布时间:2021-8-24 15:14

举报

4个回答
butterflyspring 回答时间:2021-8-25 10:59:45
楼主没有将MCU的配置以及要工作的方式说得具体些。这里猜测是外部中断。这个中断里用了打印和延时,看起来时间很长。再次有中断进来的话,会没有时间去执行。建议你测测这个中断的执行时间,考虑优化一下。
STMCU-管管 回答时间:2021-8-24 16:54:22
你好,标题可以再编辑一下,问题可以说明一下原因,谢谢!
Nicholas Wu 回答时间:2021-8-25 08:48:01
STMCU-管管 发表于 2021-8-24 16:54
你好,标题可以再编辑一下,问题可以说明一下原因,谢谢!

现在在搭建一个用IO控制的服务器,可是当DI输入状态变化时,有时中断不响应。怀疑是中断屏蔽状态下,有DI中断申请,但被屏蔽,进不了中断。请问是什么原因呢
Nicholas Wu 回答时间:2021-8-25 08:54:28
现在在搭建一个用IO控制的服务器,可是当DI输入状态变化时,有时中断不响应。怀疑是中断屏蔽状态下,有DI中断申请,但被屏蔽,进不了中断。请问是什么原因呢
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版