我是Google-d out。所以,StackOverflow的亲爱的朋友们,是否有可能将Atmel系列微处理器上的IO引脚(例如Atmel 165)从输入更改为输出,或者从输出更改为三态,或者从输出更改为三态到输入以及任何或所有这些相反?
并行问题:是否有Atmel程序员/语言支持或不支持切换IO引脚的“工具”?如果我要在Google上搜索相关信息,这个主题(更改引脚方向)是否具有比“将输入引脚更改为输出引脚”+ Atmel更易于搜索的名称?
答案 0 :(得分:3)
通过更改3个控制寄存器中各个位的值来配置引脚的I / O方向。此文档位于此doc的第12.2节(从第61页开始)。
例如,要将PA1设置为三态输入,需要清除DDRA和PORTA中的相应位。在C:
PORTA &= !(1<<PA1)
DDRA &= !(1<<DDA1)
答案 1 :(得分:2)
是的,您可以随时更改引脚配置。我从来没有听说过一种不允许你切换引脚配置的语言。
只需按照芯片文档中列出的步骤更改引脚配置即可。您基本上只是将值写入该端口的相应数据方向寄存器。见data sheet的第12.4节。在C中,通常像DDRC = 0;
一样简单地将所有端口C引脚设置为输入。
数据表详细介绍了每个端口的功能以及如何在12.4.2到12.4.22节中介绍它们。