我使用的是ATmega128的微型,并拥有所有我的脚inits设置为输出,并在我的代码主要部分设置为低:ATmega128的输出闪烁在启动时
PORTB=0x00;
DDRB=0xFF;
但是在启动时,输出相关PORTB.0在瞬间高速跳动(我已经在范围内捕捉到了它),而其他输出似乎也是如此。看起来好像它变成LOW-HIGH-LOW。我已经做了一些读取,可能是由于三态在启动期间输出开关引起的,所以我在引脚进入之前将PUD寄存器设置为1,然后在没有运气的情况下回到0。有没有人有任何其他想法在启动期间保持输出关闭?它并不总是会发生,这是什么让我难住。
你有偏置电阻吗? –
至少为配置输出之前写入端口数据做好了准备。 –
这几乎肯定是一个硬件问题,而不是软件问题,您应该将其发布在http://electronics.stackexchange.com/上。 GPIO在复位时为高阻抗输入,并且通过示波器测量的电平取决于连接到引脚的电路。如果这是一个问题,并且在启动时需要一个特定的级别,请使用上拉或下拉电阻 - 即该电平必须外部置位,因为输入不会驱动它 - 它是浮动的。 – Clifford