°ìÄê´ü´Ö¹¹¿·¤¬¤Ê¤¤¤¿¤á¹¹ð¤òɽ¼¨¤·¤Æ¤¤¤Þ¤¹
JUGEM¥Æ¡¼¥Þ¡§Å´Æ»ÌÏ·¿
¡¡DsAir¤Î΢µ¡Ç½¡ÊÊ̤˱£¤·¤Æ¤Ê¤¤¤«¤â¡Ë¤ËDC¥¢¥Ê¥í¥°¥â¡¼¥É¤¬¤¢¤ê¤Þ¤¹¡£¤¤¤ï¤æ¤ëDCC¥³¥ó¥È¥í¡¼¥é¤ÎÂжËŪ¤ÊΩ¤Á°ÌÃ֤Ǥ¢¤ë¥¢¥Ê¥í¥°¥â¡¼¥É¤ÎPWM¥³¥ó¥È¥í¡¼¥é¤ÎÍͤËÆ°¤«¤»¤ë¥â¡¼¥É¤Ç¤¹¡£¤³¤ÎDC¥¢¥Ê¥í¥°¥â¡¼¥É¤âDsAir¤Î»ê¤ì¤ê¿Ô¤¯¤»¤êµ¡Ç½¤Ç¡Ödsair_wifi_specification¡×¤Ëµ¬Äꤵ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¡ÖSmile wifi Throttle¡×¤Î¥½¥Õ¥È¤Ë»Å¹þ¤ó¤Ç¤ä¤ì¤Ð¡¢DC¥¢¥Ê¥í¥°¤Îwifi Throttle¤Ë¤âÁáÊѤï¤ê¤·¤Þ¤¹¡£
¡¡¥½¥Õ¥È¤Î¼ÂÁõ¼«ÂΤÏDCC¥¢¥É¥ì¥¹¤ä¥Õ¥¡¥ó¥¯¥·¥ç¥ó¤òÁȤ߹ç¤ï¤»¤ëɬÍפ¬¤Ê¤¯¤Ê¤ë¤Î¤Ç¡¢ÌÌÅݤÊÊ£¿ô¥¢¥É¥ì¥¹»Åʬ¤±Åù¤Î½èÍý¤¬¤Ê¤¯¤Ê¤Ã¤Æ¤«¤Ê¤ê¥·¥ó¥×¥ë¤Ë¤Ç¤¤Þ¤·¤¿¡£¤Þ¤¿Â裳¤Î¥¹¥í¥Ã¥È¥ë¤È¤·¤ÆVR²ÄÊÑÄñ¹³´ï¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤¬¤Þ¤¿2¤ÄÁõÈ÷¤µ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤³¤Ëµ¡Ç½¤ò³ä¤ê¿¶¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢DC¥¢¥Ê¥í¥°¥â¡¼¥É¤ÎÁàºî¥¹¥í¥Ã¥È¥ë¤È¤·¤Æ¤ß¤Þ¤·¤¿¡£
¡¡¢¡Çã¤Ã¤¿¤Ð¤«¤ê¤ÇDCC²þÁõÁ°¤Î¥¥Ï40¤Ç»îÁö¤·¤Æ¤ß¤Þ¤·¤¿¡£
¡¡¥µ¥¦¥ó¥É¤¬Ìµ¤¤¤Î¤Çʪ¤ê¤Ç¤¹¤¬¡¢DC¥¢¥Ê¥í¥°¥â¡¼¥É¤Ç¤â¥¹¥à¡¼¥º¤ËÁö¤é¤»¤ë¤³¤È¤¬½ÐÍè¤Þ¤·¤¿¡£
¡¡DCC¸¼¿Í»Ö¸þ¤ÎÊý¡¹¤«¤é¤ß¤ë¤È¼ÙÆ»¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢DC¥¢¥Ê¥í¥°¥â¡¼¥É¤¢¤ì¤ÐÊØÍø¤Êµ¡Ç½¤Ç¤¹¡£
JUGEM¥Æ¡¼¥Þ¡§Å´Æ»ÌÏ·¿
¡¡ESP32¥Ù¡¼¥¹¤Ç¥½¥Õ¥È¤òÁȤó¤Ç¤¤¤ë¡ÖSmile Wifi throttle¡×¤Ç¤¹¤¬¡¢¤³¤ì¾¤Ë¤Ê¤¤¤À¤í¡Á¡ª¤È»×¤¤¤¤ä¡¦¡¦¼Â¤ÏÀ¤³¦¤ËÌܤò¸þ¤±¤Æ¤ß¤ë¤È¤¹¤Ç¤Ëºî¤Ã¤Æ¤¤¤ëÊý¤¬¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤·¤¿¡£
https://model-railroad-hobbyist.com/node/35652
http://www.scalemodelanimation.com/Articles/WiFi_Throttle_RE-Apr2019.pdf
¡¡
¡¡DCC¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤ÏJMRI¤Ê¤Î¤Ç¡¢¡ÖSmile Wifi throttle¡×¤¬¿Æµ¡¤È¤·¤Æ¤¤¤ë¡ÖDsAir2¡×¤È¤Ï°Û¤Ê¤ê¤Þ¤¹¤¬¡¢¥Ù¡¼¥¹¤È¤Ê¤ë¥Ç¥Ð¥¤¥¹¤ÏESP32¤Ê¤Î¤Ç¡ÖWifi throttle¡×¤È¤¤¤¦¥«¥Æ¥´¥ê¤Ç¤Ï¤ªÃç´Ö¤Ç¤¹¡£
¤â¤¦¤¹¤Ç¤Ë´°À®¤Ê¤µ¤Ã¤Æ¤¤¤ë¤ß¤¿¤¤¤Ç¤¹¡£
æ˹¤Ç¤¹¡¦¡¦¡¦
JUGEM¥Æ¡¼¥Þ¡§Å´Æ»
¡¡¥Þ¥ë¥Á¥í¡¼¥¿¥ê¥¹¥í¥Ã¥È¥ë¤òÁõÈ÷¤·¤Æ¤¤¤ë¡ÖSmile Wifi Throttle¡×¤Ç¤¹¤¬¡¢µ¡Ç½¤òÅÔÅÙÁý¤ä¤·Â³¤±¤Æ¤¤¤ë¤¿¤á¾¯¤·¤º¤Ä¤Ç¤¹¤¬¡¢Æ°ºî¤Î¤â¤Ã¤µ¤ê´¶¤¬µ¤¤Ë¤Ê¤Ã¤Æ¤¤Þ¤·¤¿¡£²¿¤«¥µ¥¯¥µ¥¯´¶¤Ë¤â¤Ã¤Æ¤æ¤¯°Ù¤ÎÈ´ËÜŪ¤Ê¼êΩ¤Æ¤¬¤Ê¤¤¤«Æü¡¹¹Í¤¨¤Æ¤¤¤Þ¤·¤¿¡£¼Â¤ÏESP32¡¢£²¤Ä¤ÎCPU¤¬ºÜ¤Ã¤Æ¤¤¤ë¤é¤·¤¤¤Ç¤¹¡£¤Ç¤¹¤¬¤Ê¤¼¤«¥æ¡¼¥¶¤¬ºîÀ®¤¹¤ë¥½¡¼¥¹¥³¡¼¥É¤Ï1¸Ä¤ÎCPU¤Ç¤·¤«Æ°¤¤¤Æ¤¤¤Ê¤¤¤é¤·¤¯¡¢½ù¡¹¤ËÁý²Ã¤¹¤ë¥½¡¼¥¹¥³¡¼¥É¤ò¤â¤¦°ì¤Ä¤ÎCPU¤Ë½èÍý¤òʬ»¶¤µ¤»¤Æ¤ä¤ì¤ÐÍýÏÀ¾å¤Ï¥µ¥¯¥µ¥¯Æ°¤¤¤Æ¤¯¤ì¤ë¥Ï¥º¤Ç¤¹¡£¤È¤¤¤¦¤³¤È¤Ç¥ì¥¹¥Ý¥ó¥¹¸þ¾å¤Î±ü¤Î¼ê¤È¤·¤Æ»Ä¤·¤Æ¤¤¤¿ESP32¤Î¥Þ¥ë¥Á¥¿¥¹¥¯²½¤ËÄ©À路¤Æ¤ß¤Þ¤·¤¿¡£
¡¡ESP32¤Î¥Þ¥ë¥Á¥¿¥¹¥¯¤ò¥Í¥Ã¥È¤ÇÄ´¤Ù¤ë¤È¤¤¤¯¤Ä¤«»²¹Í¤Ë¤Ê¤ëµ»ö¤ò¸«¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£º£²ó»²¹Í¤Ë¤µ¤»¤Æ¤¤¤¿¤À¤¤¤¿¤Î¤Ï¼¡¤Î¥µ¥¤¥È¤Ç¤¹¡£¡¡”ESP32 ( ESP-WROOM-32 ) » Arduino – ESP32 ¤Î¥Þ¥ë¥Á¥¿¥¹¥¯ ( Dual Core ) ¤ò»î¤¹’’
¡¡»²¹Í¤Ë±ÜÍ÷¤·¤¿ÆâÍƤ«¤é¡¢º£²ó¤ä¤ë¤³¤È¤Î¥¤¥á¡¼¥¸¤Ï¼¡¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¡¡ÖSmile Wifi Throttle¡×¤Î¥¹¥±¥Ã¥Á¤Îµ¡Ç½¡Ê¼ç¤Ë´Ø¿ôñ°Ì¡Ë¤òÀ°Íý¤·¤Æ2¥¹¥í¥Ã¥È¥ëʬËè¤Ëʬ³ä¤¹¤ë¡£
¡¡¢Ê¬³ä¤·¤¿£±¥¹¥í¥Ã¥È¥ëʬ¤Î°ìÊý¤ò»È¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿CPU0¦¤Ø½èÍý¤¹¤ëÍͤ˥³¡¼¥É¤ò½ñ¤´¹¤¨¤ë¡£
-----------------¡ÖSmile Wifi Throttle¡×¥Þ¥ë¥Á¥¿¥¹¥¯¤Î¥¹¥±¥Ã¥Á¹½À®¥¤¥á¡¼¥¸--------------
¡¡¡¡
void ¥¿¥¹¥¯Ì¾(void *pvParameters){
while(1){
←¡¡Ê¬³ä¤·¤¿¥¹¥í¥Ã¥È¥ë2¤Î½èÍýÉôʬ¤òµ½Ò
}
}
void setup(){
xTaskCreatePinnedToCore(¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡←¥Þ¥ë¥Á¥¿¥¹¥¯²½¤Î¹½Ê¸Ä̤ê¤ËÄɲ乤ë
¥¿¥¹¥¯Ì¾,
"¥¿¥¹¥¯Ì¾",
¥¹¥¿¥Ã¥¯¥á¥â¥ê¥µ¥¤¥º,
NULL,
¥¿¥¹¥¯Í¥Àè½ç°Ì,
¥¿¥¹¥¯¥Ï¥ó¥É¥ë¥Ý¥¤¥ó¥¿,
Core ID
);
}
void loop(){
¡¡←¡¡Ê¬³ä¤·»Ä¤·¤¿¥¹¥í¥Ã¥È¥ë1½èÍý¤ÎÉôʬ¤òµ½Ò
}
¡¡Àè¿ÍÍͤε»ö¤«¤éESP32¤Î¥Þ¥ë¥Á¥¿¥¹¥¯²½¤ÏESP32¤Î¥½¥Õ¥È¤Î»ÅÍ;åÌäÂê¤Ê¤¯½ÐÍ褽¤¦¤Ê¤Î¤Ç¤¹¤¬¡¢£±¤Äµ¤¤Ë¤Ê¤ëÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
¤½¤ì¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç»ÈÍѤ·¤Æ¤¤¤Ê¤¤CPU£°Â¦¤Ï¡¢ESP32¤Î¥·¥¹¥Æ¥à¥¿¥¹¥¯¤¬Æ°¤¤¤ë¤é¤·¤¤¤È¤¤¤¦»ö¤Ç¤¹¡£¤Ä¤Þ¤êCPU0¤ÏESP32¤Î¥·¥¹¥Æ¥à¥¿¥¹¥¯½èÍýÀìÍѤǤ¢¤Ã¤Æ¡¢¥æ¡¼¥¶ºîÀ®¤Î¥¿¥¹¥¯¤ò½èÍý¤¹¤ë;͵¤Ï¤¢¤Þ¤ê¤Ê¤¤¤«¤â¤·¤ì¤Ê¤¤¤È¤¤¤¦ÅÀ¤Ç¤¹¡£¤Ê¤Î¤Ç¤³¤³¤Ï°ìȯÅÒ¤±¤Ë¶á¤¤¤Ç¤¹¤¬¤ä¤Ã¤Æ¤ß¤ë¤·¤«¤Ê¤¤´¶¤¸¤Ç¤¹¡£
¡¡¼¡¤ËŬÅö¤Ë¥¹¥±¥Ã¥Á¤ò¾åµ¤Î·Á¤Ë2¤Ä¤Î½èÍý¥ë¡¼¥×¹½À®¤Ë¤·¤Æ¡¢”¥¹¥±¥Ã¥Á¥Ó¥ë¥È”⇒”¥Ü¡¼¥É½ñ¤¹þ¤ß”¤Þ¤Ç¤Ï¤Ê¤ó¤È¤«¤Ç¤¤Þ¤·¤¿¡£
¤³¤³¤Þ¤Ç¤Ï¤½¤³¤½¤³½çÄ´¤Ç¤·¤¿¤¬¡¢¤¤¤¶¡ÖSmile Wifi Throttle¡×¤òÆ°¤«¤·¤Æ¤ß¤ë¤È¡¦¡¦¡¦
¡¡¢¡¥Þ¥ë¥Á¥¿¥¹¥¯²½¤·¤¿¥¹¥±¥Ã¥Á¡§DsAir¤È¤Îǧ¾Ú¡¡¤¬ÂÔ¤Á¾õÂ֤ޤǤÏÀµ¾ï¤½¤¦¤Ç¤¹¡£
¡¡¢¡¥Þ¥ë¥Á¥¿¥¹¥¯²½¤·¤¿¥¹¥±¥Ã¥Á¡§DsAir¤È¤Îǧ¾Ú¡¡¥¹¥¿¡¼¥È¤ÇWifi Throttle¥â¡¼¥É¤Ø°Ü¹ÔÃæ¤Ç¤¹¡£
¡¡¢¡¥Þ¥ë¥Á¥¿¥¹¥¯²½¤·¤¿¥¹¥±¥Ã¥Á¡§DsAir¤È¤Îǧ¾Ú¸å¡¢¡¡¤¢¤¢¡ªÊ¸»úɽ¼¨¤¬¤ª¤«¤·¤¤¡¡¤³¤Î¸åɽ¼¨¤Ï¾Ã¤¨¤ÆºÆµ¯Æ°¤·¤Þ¤·¤¿¡£
¡¡¥Þ¥ë¥Á¥¿¥¹¥¯²½¸å¤Î·ë²Ì¤Ç¤¹¤¬¡¢¼Ì¿¿¤ÎÍͤËDsAir¤ËÀܳ¤¹¤ëÅÓÃæ¤ÇºÆµ¯Æ°¤¬µ¯¤³¤ê¤Þ¤¯¤ê¤Þ¤¹¡£¤³¤Î¾õÂ֤ǤϻȤ¨¤ëÂåʪ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¶²¤é¤¯Wifi¤¬Æ°¤¤Þ¤¯¤ë¤Î¤ÇCPU0¤Ë¥¿¥¹¥¯¤ò¿¶¤Ã¤Æ¤âCPU0¦¤Î¥Ñ¥ï¡¼ÉÔ¤ÇWifi Throttle¥â¡¼¥É¤¬µ¯Æ°¤Ç¤¤º¡¢ÎÏ¿Ô¤¤ÆºÆµ¯Æ°¤·¤Æ¤¤¤ë¤È»×¤¤¤Þ¤¹¡£Wifi¤ÎÆ°ºî¤ò»ß¤á¤ì¤Ð¥Þ¥ë¥Á¥¿¥¹¥¯²½¤·¤¿¥¹¥±¥Ã¥Á¤Ç¤âÆ°¤¯¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢¤½¤ì¤Ç¤Ï¡ÖWifi Throttle¡×¤Ë¤Ê¤ê¤Þ¤»¤ó¤è¤Í¡£¥Þ¥ë¥Á¥¿¥¹¥¯²½ºîÀï¤Ï¤Ï¤¢¤¨¤Ê¤¯·âÄÀ¤·»ÄÇ°¤Ê·ë²Ì¤È¤Ê¤ê¤Þ¤·¤¿¡£
¡¡¶µ·±¡§¡ÖESP32¤ÏÉáÄ̤˥·¥ó¥°¥ë¥¿¥¹¥¯¤Ç¥³¡¼¥Ç¥ó¥°¤¹¤ë¤Ë¸Â¤ë¡×¤Ç¤¹¡£
JUGEM¥Æ¡¼¥Þ¡§Å´Æ»ÌÏ·¿¡¡
¡¡¡Ö¥ª¥Ë¥³¥ó³ÊÆ®µ¤Î¤½¤Î£³¡×¤Ç¤¹¡£¥ª¥Ë¥³¥ó³ÊÆ®µ¤ÈÂꤷ¤Æ¤¤¤Þ¤¹¤¬¡¢¥½¥Õ¥È¤ò¤¤¤¸¤Ã¤Æ¤¤¤ë´ü´Ö¤¬ÅÓÃæÊÝα¤Ë¤Ê¤Ã¤¿´ü´Ö¤â´Þ¤áĹ´ü¤ËÅϤë¤Î¤Ç¡¢¤ä¤Ã¤Æ¤¤¿»ö¤ò˺¤ì¤Ê¤¤¤è¤¦¤ËÈ÷˺ϿŪ¤Ê»ëÅÀ¤Ç½ñ¤¤¤Æ¤¤¤Þ¤¹¡£
¡¡Á°²ó¤Þ¤Ç¤Ï¥ª¥Ë¤Î£²¤Ä¤Î³Ñ¤Ç¤¢¤ë¡Ö¤í¡¼¤¿¤ê¡¼¤¨¤ó¤³¡¼¤À¡×¤òÂ༣¤Ç¤¤ëÌÜÅÓ¤¬¤Ä¤¤Þ¤·¤¿¡£º£²ó¤Ï¥ª¥Ë¤Î¥Ñ¥ó¥Ä¤Î¼ÊÌÏÍͤÎÍͤˤ䤿¤é¤Ë¿¤¤¥Ü¥¿¥ó¤Ë¤Ä¤¤¤Æ¤Ç¤¹¡£¥ª¥Ë¥³¥ó¤ËÁõÈ÷¤µ¤ì¤Æ¤¤¤ë¥Ü¥¿¥ó¿ô¤Ç¤¹¤¬¡¢¤Þ¤º£±È֤諤¿ÌܤÇÆÃħ¤È¤Ê¤ë£±£°Ï¢Áõ¤Î£±£°¥¡¼¤È¡¢¡Ö¤í¡¼¤¿¤ê¡¼¤¨¤ó¤³¡¼¤À¡×ÉÕ¶á¤Î¥µ¥¤¥É¤Ë£´¤Ä¤È¡Ö¤í¡¼¤¿¤ê¡¼¤¨¤ó¤³¡¼¤À¡×¤Ë¤â¥¹¥¤¥Ã¥Á·óÍѤÇÁõÈ÷¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Ê»¤»¤ÆÍøÍѲÄǽ¤Ê¥Ü¥¿¥óÎà¤Ï£±£¶¸Ä¤Ë¤Ê¤ê¤Þ¤¹¡£¤è¤¯¤â¤³¤ì¤À¤±¤Î¿ô¤òÉÕ¤±¤ì¤¿¤Ê¤È»×¤¤¤Þ¤·¤¿¡£¤Õ¤ÈÅϤµ¤ì¤¿²óÏ©¿Þ¤ò¤ß¤Æ¤ß¤ë¤È¡£¡£¡£¤Ê¤ó¤ÈÁ´¤Æ¤¬Äñ¹³Ê¬³ä¤Î¥¢¥Ê¥í¥°¥¹¥¥ã¥óÊý¼°¤ÇÀ߷פµ¤ì¤Æ¤¤¤Þ¤·¤¿¡£¤³¤ì¤Ï¥ª¥Ë¤Ç¤¹¡£ÉáÄÌ¥¿¥¯¥È¥¹¥¤¥Ã¥Á¤Ï¥Ç¥¸¥¿¥ë¥×¥Ã¥Ä¥·¥å¼°¤¬°ìÈÌŪ¤È¤¤¤¦¤«¥¢¥Ê¥í¥°¥¹¥¥ã¥óÊý¼°¤Ï¤¢¤Þ¤ê»È¤ï¤ì¤Ê¤¤¤È»×¤¤¤Þ¤¹¡£³Î¤«¤Ë¥¢¥Ê¥í¥°¥¹¥¥ã¥óÊý¼°¤Ï¥â¥¸¥å¡¼¥ëPIN¤Ø·Ò¤°¿ô¤¬¾¯¤Ê¤¯¤ÆºÑ¤à¥á¥ê¥Ã¥È¤Ï¤¢¤ê¤Þ¤¹¤¬¡¢¤¢¤Þ¤ê»È¤ï¤ì¤Ê¤¤¤Î¤½¤ì¤Ê¤ê¤ÎÍýͳ¤¬¤¢¤ë¤ï¤±¤Ç¡¢Î㤨¤ÐÄñ¹³Ê¬³ä¤ÎÀ߷פ¬Æñ¤·¤¤¤È¤«¥¢¥Ê¥í¥°ÃͤÎÆɤ߼è¤ê¤Ç¥½¥Õ¥È¤òÁȤà¤Î¤¬ÌÌÅݤʤɥǥá¥ê¥Ã¥È¤â¤¢¤ê¤Þ¤¹¡£¤Ç¤â¤â¤¦¥Ö¥Ä¤Ï½ÐÍè¾å¤¬¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤ë¤Î¤Ç¼è¤ê¹ç¤¨¤º¿ô¤Î¤Þ¤È¤Þ¤Ã¤¿£±£°¥¡¼Éôʬ¤«¤é¼ê¤òÉÕ¤±¤ë¤³¤È¤Ë¤·¤Þ¤·¤¿¡£
¡¡¤Þ¤º¤Ï¥¢¥Ê¥í¥°¥¡¼¥¹¥¥ã¥ó¤ÎÍý²ò¤ò¿¼¤á¤ë¤¿¤á²¼µ¤Î¥µ¥¤¥È¤ò»²¹Í¤ËÄñ¹³Ê¬°µ¤ÎÍýÁÛŪ¤ÊÃͤò´ù¾å¤Ç¸¡Æ¤¤·¤Æ¤ß¤Þ¤·¤¿¡£
¡¡»²¹Í¥µ¥¤¥ÈÄñ¹³Ê¬°µ´ï¤ò»È¤Ã¤¿¡¢Â¿¤¯¤Î¥¹¥¤¥Ã¥Á¤Î¥»¥ó¥·¥ó¥°¡Öhttps://synapse.kyoto/tips/ResDiv/page001.html¡×
¡¡´ù¾å¤Ç½ÐÍè¾å¤¬¤Ã¤Æ¤¤¤ë¥Ö¥Ä¤Î²óÏ©¹½À®¤ò¤ß¤Æ¹Í¤¨¤Æ¤ß¤Þ¤·¤¿¤¬Äñ¹³¤Çʬ°µ¤·¤Æ¤¤¤ëÃͤò·×»»¤·¤Æ¤ß¤ë¤È¡¢Äñ¹³ÃͤÎÇÛʬ¤¬Èù̯¤Ë¶ÑÅù¤Ç¤Ê¤¤¤³¤È¤¬µ¤¤Ë¤Ê¤ê¤Þ¤·¤¿¡£¤É¤¦¤ä¤Ã¤Æ·è¤á¤¿¤ó¤À¤í¡©¤³¤ÎÅÀ¤ò¥Ï¡¼¥ÉÀ߷פ·¤¿Êý¤ËÌ䤤¹ç¤ï¤»¤¿¤È¤³¤í¡¢¤É¤³¤«¤ÎArduino¤Îµ¡´ï¤Ç¤Ä¤«¤ï¤ì¤Æ¤¤¤ë²óÏ©¿Þ¤òžÍѤ·¤Æ¤¤¿¤È¤Î²óÅú¤Ç¤·¤¿¡£¤¢¡Á¡ª£µVÅŸ»¤Î¥Þ¥¤¥³¥ó¤Î²óÏ©¤òžÍѤ·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤ë¡£ESP32¤Ï3.3VÅŸ»¤ÎCPU¤Ç¤¹¡£ÅöÁ³ÅëºÜ¤µ¤ì¤Æ¤¤¤ëA¡¿D¥³¥ó¥Ð¡¼¥¿¤ÎÆÃÀ¤â°ã¤Ã¤Æ¤¤Þ¤¹¡£¾å¼ê¤¯Æ°¤«¤»¤ë¤Î¤«¤Ê…
¡¡´ù¾å¤Ç¹Í¤¨¤Æ¤¤¤Æ¤â¥é¥Á¤¬¤¢¤«¤Ê¤µ¤½¤¦¤Ê¤Î¤Ç¡¢¤â¤¦¸½Êª¹ç¤ï¤»¤Ç¤ä¤Ã¤Æ¤ß¤ë¤·¤«¤Ê¤¤¤È»×¤¤¡££±£°¥¡¼¥Ü¥¿¥ó¤ò²¡¤·¤¿¤È¤¤Ë·Ò¤¬¤ì¤¿¥Ô¥ó¤Î£Á£Ä£Ã¤«¤éÃͤòÊÖ¤¹Æ°ºî³ÎǧÍѤβ¼µ¥¹¥±¥Ã¥Á¤òºî¤Ã¤Æ¼ÂºÝ¤ËÆ°¤¤ò³Î¤«¤á¤Æ¤ß¤ë¤³¤È¤Ë¤·¤Þ¤·¤¿¡£
------------------------- -------------------------------
/********************************
*BUTTON keyscan
*******************************/
int readButtons1(){
int PushBtnNo;
int inSW1 = analogRead(25); //keyscan read SW1 -> GPIO-25
int inSW2 = analogRead(26); //keyscan read SW2 -> GPIO-26
int inSW3 = analogRead(27); //keyscan read SW3 -> GPIO-27
int inSW4 = analogRead(14); //keyscan read SW4 -> GPIO-14
int inSW4 = analogRead(15); //keyscan read SW4 -> GPIO-15
int inSW5 = analogRead(13); //keyscan read SW5 -> GPIO-13
//Side Btn SW
if (inSW1 < 800){
Serial.print("BUTTON_SW34 ");
Serial.println(inSW1);
PushBtnNo = 34; //BUTTON_SW34;// ¼Â¬ÃÍ= 0.780V 0
return PushBtnNo;
}
if (inSW1 < 1300){
Serial.print("BUTTON_SW3 ");
Serial.println(inSW1);
PushBtnNo = 3; //BUTTON_SW3;// ¼Â¬ÃÍ= 1.180V 0
return PushBtnNo;
}
if (inSW1 < 1700){
Serial.print("BUTTON_SW4 ");
Serial.println(inSW1);
PushBtnNo = 4; //BUTTON_SW4; // ¼Â¬ÃÍ= 1.500V 448
return PushBtnNo;
}
if (inSW2 < 800){
Serial.print("BUTTON_SW56 ");
Serial.println(inSW2);
PushBtnNo = 56; //BUTTON_SW56; // ¼Â¬ÃÍ= 0.780V 0
return PushBtnNo;
}
if (inSW2 < 1300){
Serial.print("BUTTON_SW5 ");
Serial.println(inSW2);
PushBtnNo = 5; //BUTTON_SW5; // ¼Â¬ÃÍ= 1.180V 0
return PushBtnNo;
}
if (inSW2 < 1700){
Serial.print("BUTTON_SW6 ");
Serial.println(inSW2);
PushBtnNo = 6; //BUTTON_SW6; // ¼Â¬ÃÍ= 1.500V 448
return PushBtnNo;
}
//Main Btn SW
if (inSW4 < 110){
Serial.print("BUTTON_SW7 ");
Serial.println(inSW4);
PushBtnNo = 7; //BUTTON_SW7; // ¼Â¬ÃÍ= 0.11V 0
return PushBtnNo;
}
if (inSW4 < 680){
Serial.print("BUTTON_SW8 ");
Serial.println(inSW4);
PushBtnNo = 8; //BUTTON_SW8; // ¼Â¬ÃÍ= 0.680V 448
return PushBtnNo;
}
if (inSW4 < 1550){
Serial.print("BUTTON_SW9 ");
Serial.println(inSW4);
PushBtnNo = 9; //BUTTON_SW9; // ¼Â¬ÃÍ= 1.435V 912
return PushBtnNo;
}
if (inSW4 < 2500){
Serial.print("BUTTON_SW10 ");
Serial.println(inSW4);
PushBtnNo = 10; //BUTTON_SW10; // ¼Â¬ÃÍ= 2.210V 1200
return PushBtnNo;
}
if (inSW4 < 3450){
Serial.print("BUTTON_SW11 ");
Serial.println(inSW4);
PushBtnNo = 11; //BUTTON_SW11; // ¼Â¬ÃÍ= 2.830V 1456
return PushBtnNo;
}
//Main Btn SW12-SW16
if (inSW5 < 110){
Serial.print("BUTTON_SW12 ");
Serial.println(inSW5);
PushBtnNo = 12; //BUTTON_SW12; // ¼Â¬ÃÍ= 0.11V 0
return PushBtnNo;
}
if (inSW5 < 680){
Serial.print("BUTTON_SW13 ");
Serial.println(inSW5);
PushBtnNo = 13; //BUTTON_SW13; // ¼Â¬ÃÍ= 0.680V 448
return PushBtnNo;
}
if (inSW5 < 1550){
Serial.print("BUTTON_SW14 ");
Serial.println(inSW5);
PushBtnNo = 14; //BUTTON_SW14; // ¼Â¬ÃÍ= 1.435V 912
return PushBtnNo;
}
if (inSW5 < 2500){
Serial.print("BUTTON_SW15 ");
Serial.println(inSW5);
PushBtnNo = 15; //BUTTON_SW15; // ¼Â¬ÃÍ= 2.210V 1200
return PushBtnNo;
}
if (inSW5 < 3450){
Serial.print("BUTTON_SW16 ");
Serial.println(inSW5);
PushBtnNo = 16; //BUTTON_SW16; // ¼Â¬ÃÍ= 2.830V 1456
return PushBtnNo;
}
//Rotary Btn SW
if (inSW3 < 850){
Serial.print("BUTTON_SW1&2 ");
Serial.println(inSW3);
PushBtnNo = 120; //BUTTON_SW1&2; // ¼Â¬ÃÍ= 0750V 912
return PushBtnNo;
}
if (inSW3 < 1300){
Serial.print("BUTTON_SW1 ");
Serial.println(inSW3);
PushBtnNo = 1; //BUTTON_SW1; // ¼Â¬ÃÍ= 0.1520V 0
return PushBtnNo;
}
if (inSW3 < 1700){
Serial.print("BUTTON_SW2 ");
Serial.println(inSW3);
PushBtnNo = 2; //BUTTON_SW2; // ¼Â¬ÃÍ= 1.480V 448
return PushBtnNo;
}
//Btn No Push
Serial.println("BUTTON_ERRORR");
Serial.println(inSW1);
Serial.println(inSW5);
PushBtnNo = 0; //ERRORR;
return PushBtnNo;
}
¡¡¸½Êª¤Î³ÎǧÊýË¡¤Ï¡¢¥Ü¥¿¥ó¤ò²¡¤·¤¿»þ¤Ë¤Ä¤Ê¤¬¤Ã¤Æ¤¤¤ëÀè¤Î¥Ô¥ó¤Î£Á£Ä£Ã¤ÎÃͤòÆɤó¤ÇÌ᤹Ãͤò¥·¥ê¥¢¥ë¥Ç¥Ð¥Ã¥¯¤Î¥í¥°¤Ëɽ¼¨¤µ¤»¤Æ£±¤Ä£±¤Ä³Îǧ¤·¤Æ¤æ¤¤Þ¤·¤¿¡£
¡¡¤³¤Î»þÅÀ¤Ç¤Ï¤È¤ê¤¢¤¨¤º£±£°¥¡¼¤ò²¡¤·¤¿»þ¤Ï¤½¤ì¤Ê¤ê¤ÎÃͤ¬Æɤ᤽¤¦¤Ê¤³¤È¤¬¤ï¤«¤ê¤Þ¤·¤¿¡£¤À¤À¤·¤³¤Î¸å¡¢¥ª¥Ë¤¬Î©¤Á¤Ï¤À¤«¤Ã¤ÆÆàÍî¤ÎÄì¤ËÍî¤Á¤Æ¤¤¤¯¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£¡£
JUGEM¥Æ¡¼¥Þ¡§Å´Æ»ÌÏ·¿
¡¡Á°²ó¡¢Smile Wifi Throttle¤ËÁõÈ÷¤·¤Æ¤¤¤ë£²¤Ä¤Î¥¹¥í¥Ã¥È¥ë¤«¤é£²Îó¼Ö¤òÆ°¤«¤·¤Æ¤ß¤Þ¤·¤¿¤¬¡¢¼ç¡¿Éû¥¹¥í¥Ã¥È¥ëÀÚ¤êÂؤ¨¤ÎÁàºî¤¬·ë¹½Ë»¤·¤¯»È¤¤¤º¤é¤¤´¶¤¸¤¬¤·¤¿¤Î¤Ç¡¢¾¯¤·²þÎɤ·¤Æ¤ß¤Þ¤·¤¿¡£º£¤Þ¤Ç¤Ï¼ç¡¿Éû¥¹¥í¥Ã¥È¥ë¤ÎÀÚ¤êÂؤ¨¤òº¸¥µ¥¤¥É¤Î¾å²¼£²¤Ä¤Î¥Ü¥¿¥óƱ»þĹ²¡¤Ç¥¹¥í¥Ã¥È¥ë¤Î¼ç⇔Éû¤òÀÚ¤êÂؤƤ¤¤Þ¤·¤¿¤¬¡¢º£²ó¤Ï¤³¤ÎĹ²¡¤·¤ò»ß¤á¤ÆOnePush¤ÇÀÚ¤êÂؤ¨¤¬¤Ç¤¤ë¤è¤¦¤Ë¤·¤Æ¤ß¤Þ¤·¤¿¡£¤³¤ì¤Ç¥Ü¥¿¥óÁàºî¤¬¾¯¤·¤ä¤ê°×¤¯¤Ê¤ê¡¢¼ç¡¿Éû¥¹¥í¥Ã¥È¥ë¤ÎÀÚ¤êÂؤ¨¤¬¥¹¥à¡¼¥º¤Ê¤ë¤È»×¤¤¤Þ¤¹¡£¤³¤ì¤À¤±¤Ç¤Ï¤Ä¤Þ¤é¤Ê¤¤¤Î¤ÇÊ»¤»¤Æ¶ØÃǤε¡Ç½¤âÀ¹¤ê¹þ¤ó¤Ç¤ß¤Þ¤·¤¿¡£¶ØÃǤε¡Ç½¤È¤Ï²¿¤«¤È¤¤¤¤¤Þ¤¹¤È¡¢¼ç¡¿Éû¥¹¥í¥Ã¥È¥ëÁàºî¤Î½àÊÂÎó½èÍý¤Îµ¡Ç½¤Ë¤Ê¤ê¤Þ¤¹¡£ÊÂÎó½èÍý¤ÎÁ°¤Ë½à¤¬ÉÕ¤¤¤Æ¤¤¤ë¤Î¤Ç¥Á¥ã¥ó¥È¤·¤¿ÊÂÎó½èÍý¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤³¤ì¤ÏDsAir¤ÎÄÌ¿®IFµ¬³Ê¤ÎÅÔ¹ç¤Ç500msËè¤Ë£±Áàºî¥³¥Þ¥ó¥É¤·¤«Á÷¿®¤Ç¤¤Ê¤¤¤¿¤á½çÎó½èÍý¤ÇÁ÷¿®¤¹¤ë¤³¤È¤¬´ðËܤǤ¢¤ë¤È¤³¤í¤ò¡¢¼ç¡¿Éû¥¹¥í¥Ã¥È¥ë¤«¤é¤Î¥³¥Þ¥ó¥ÉÁ÷¿®¤ò¼«Æ°Åª¤Ë¸ò¸ß¤ËÁ÷¿®¤¹¤ë¤è¤¦¤Ë¹©Éפ·¤Æµ¿»÷Ū¤ËÊÂÎó½èÍý¥Á¥Ã¥Ä¥¯¤Ë¤·¤Æ¤ß¤¿¤â¤Î¤Ç¤¹¡£¤¿¤À¤³¤Îµ¡Ç½¤ÇÆ°¤«¤¹¤È¥×¥í¥°¥é¥à¾å¡¢¼ç¡¿Éû¸ÄÊ̤ǻȤ¤Ê¬¤±¤¿¤¤DCC¥¢¥É¥ì¥¹¤ä¥Õ¥¡¥ó¥¯¥·¥ç¥ó¥³¥Þ¥ó¥É¤òÀµ³Î¤Ë´ÉÍý¤·¤Æ¤¤¤¯¤Î¤¬Æñ¤·¤¯¤Ê¤ë¤¿¤á·ë²Ì¡¢¥³¥Þ¥ó¥ÉÁ÷¿®¤¬ÉÔ°ÂÄê¤Ë¤Ê¤ê¤ä¤¹¤¯ºÇ°¥³¥ó¥È¥í¡¼¥ë¤¬ÉÔǽ¤Ë´Ù¤ë¥Î¡¼¥³¥ó¥È¥í¡¼¥é¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¥ê¥¹¥¯¤¬¤¢¤ë¤Î¤Ç¶ØÃǤε¡Ç½¤È¤·¤Æ¤¤¤Þ¤¹¡£¤³¤Îµ¡Ç½¤Ï¼Â¸³Åª¤ÊÍ×ÁǤ¬¶¯¤¤¥¥ï¥â¥Î·Ï¤Ç¤¹¡£
¢¡¼ç¡¿Éû¥¹¥í¥Ã¥È¥ë¼êÆ°ÀÚ¤êÂؤ¨¥â¡¼¥É¡Ê´ÊñOne Push²½)
¡¡¢¡¼ç¡¿Éû¥¹¥í¥Ã¥È¥ë¡¡½àÊÂÎó½èÍý¥â¡¼¥É
¡¡¡¡¡Ê½ªÈ×ÎÏ¿Ô¤¤ÆÅݤì¤Þ¤·¤¿¡Ë
¡¡¼ç¡¿Éû¥¹¥í¥Ã¥È¥ë¼êÆ°ÀÚ¤êÂؤ¨¥â¡¼¥É¡Ê´ÊñOne Push²½)¤Ï£²¤Ä¤Î¼Öξ¤ò¸ò¸ß¤ËÆ°¤«¤¹ÈϰϤǻȤ¦¤Î¤Ç¤¢¤ì¤ÐÀÚ¤êÂؤ¨Áàºî¤¬¥¹¥à¡¼¥º¤Ë¤Ê¤ê·ë¹½»È¤¤°×¤¯¤Ê¤Ã¤¿¤È»×¤¤¤Þ¤¹¡£
¡¡¶ØÃǵ¡Ç½¤Î½àÊÂÎó½èÍý¥â¡¼¥É¤Ë¤Ä¤¤¤Æ¤Ï·üÇ°¤·¤Æ¤¤¤¿¤È¤ª¤ê¡¢³Æ¡¹¤ÎÁàºî¥ì¥¹¥Ý¥ó¥¹¤¬°¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤·¤¿¡£DsAir¤ÎÄÌ¿®IFµ¬³Ê³°¤Î¶Ø¤¸¼ê¤ò»È¤¤£²¥¹¥í¥Ã¥È¥ë¤ÎÀÚ¤êÂؤ¨Áàºî¤ò¾Ê¤¯Âå½þ¤Ê¤Î¤Ç»ß¤à¤òÆÀ¤Ê¤¤¤È¤³¤í¤Ç¤¹¡£
¡¡º£¸å¥Á¥å¡¼¥Ë¥ó¥°¡ÊMECY¤Î¤ä¤ëµ¤¼¡Âè¤Ç¤¹¤¬¡Ë¤Ç¤É¤ì¤À¤±¸þ¾å¤¹¤ë¤Î¤«¤ï¤«¤ê¤Þ¤»¤ó¤¬¼è¤ê¹ç¤¨¤º£²¥¹¥í¥Ã¥È¥ë½àÊÂÎó½èÍý¤Ï¤«¤í¤¦¤¸¤ÆÆ°¤¤¤¿¤È¤¤¤¦·ë²Ì¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
(C) 2024 ¥Ö¥í¥° JUGEM Some Rights Reserved.