freetech

IO口对低功耗的影响

0
阅读(3768)

    有一次有个客户反应说MCU低功耗时电流比标称值大很多(标称20uA,实际80uA),且比例还挺大:约20%。说没有充足的证据证明芯片有问题,让我过去看。我告诉他不要轻易怀疑芯片有问题。后来我过去看了,了解了下情况,也做了试验,80uA的情况确实存在。他们似乎证明了芯片有问题,脸上露出一丝容。我拿回几个芯片做了测试,芯片是没问题的。

    问题在哪里?IO口。下面是我用他们认为有问题的芯片做的实测数据:

IO口全设为输入(不使能内部上拉电阻):80~160uA

IO口全设为输入(使能内部上拉电阻):0.9~1uA

IO口全设为输出(高电平):0.9~1uA

IO口全设为输出(低电平):0.9~1uA

    由此看来,不用的IO口要设成输出,用到的IO口设成输入并使用上拉电阻。减少IO口上电平的不确定性对实现低功耗有好处。

    为何IO口设成输入会对功耗有影响呢?很多工程师不理解。其实啊IO口是经过一系列的MOS管到达CPU的,每个MOS管都存在寄生电容(门极和源极之间Cgs,漏极和源极之间Cds),每一次翻转都要对电容充放电,悬空的IO口很可能不停跳变,这就是功耗的来源。

    再提醒广大工程师一句:不要上来就怀疑芯片有问题,多找找自己的原因。否则你会走很多弯路。

Technorati 标签: ,