Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SD卡用Arduino软件电源开关_Arduino_Microcontroller_Sd Card - Fatal编程技术网

SD卡用Arduino软件电源开关

SD卡用Arduino软件电源开关,arduino,microcontroller,sd-card,Arduino,Microcontroller,Sd Card,别在这里打败我,但我对微控制器的东西还很陌生。。。 我尝试构建一个数据记录器,需要在空闲(睡眠)状态下尽可能节省电源。在进入睡眠模式之前,是否有办法通过软件将电源切换至液位控制器和SD卡模块? 我使用Arduino Uno板连接电平控制器,用于SD卡的信号线。SD卡现在通过Arduino板供电 谢谢 这取决于SD卡的供电方式。如果您使用的电流小于40mA,您可以直接从IO端口为这些设备供电,当您试图关闭IO端口时,可以将其反转。如果可以的话,请确保将它们放在单独的寄存器中。每个端口寄存器的最大电

别在这里打败我,但我对微控制器的东西还很陌生。。。 我尝试构建一个数据记录器,需要在空闲(睡眠)状态下尽可能节省电源。在进入睡眠模式之前,是否有办法通过软件将电源切换至液位控制器和SD卡模块? 我使用Arduino Uno板连接电平控制器,用于SD卡的信号线。SD卡现在通过Arduino板供电


谢谢

这取决于SD卡的供电方式。如果您使用的电流小于40mA,您可以直接从IO端口为这些设备供电,当您试图关闭IO端口时,可以将其反转。如果可以的话,请确保将它们放在单独的寄存器中。每个端口寄存器的最大电流为100mA

否则,您可以使用一个简单的晶体管设置来驱动更多的功率,并从IO打开/关闭

编辑下面的问题

我将假设您正在使用UNO或与ATmega328p相同的车载设备来驱动它。以下是芯片的引脚,显示了Arduino映射:

您会注意到,pin名称以PB、PC或PD开头。这是端口寄存器B、端口寄存器C和端口寄存器D。PB和PD有8个引脚,PC有7个引脚。您只需要确保记住,引脚组上存在电源限制。每个管脚的最大电流为40mA(不会造成损坏),但这并不意味着你可以让每个管脚的电流达到最大值。理论上,每个管脚的最大电流可以达到80mA左右,但你会在抽签时造成损坏

请参阅此处,了解引脚图最大电流的详细信息

您可能需要查看Atmega328p数据表并阅读“电源管理和睡眠模式”一节。您如何为Arduino供电?Arduino将由一个电池组(3x 1,5V米格农)供电。我知道他们不会在arduino板上持续很久,但这只是为了测试。我要用一根棒状骨头来设置最终的数据记录器。@shuttle87,我不是在寻找睡眠模式,而是在寻找一个可以通过软件将电源切换到SD卡模块的设置。不过还是谢谢你。你好,谢谢你的回答。这是有道理的,我会检查一下。但是你能解释一下我是怎么把东西放在不同的寄存器上的吗?谢谢。请看我的进一步评论!非常感谢你。我会照别人说的去做。