ããŒã1ããŒã2ããŒã3ããŒã4.1ããããŒã°
äžè¬ã«ãã³ãŒãã®åæãšãã®å¿
èŠæ§ã«ã€ããŠã®æèŠã¯ç°ãªã£ãŠããŸããã ãã®èšäºã§ã¯ãããŽãŒã«ãã³ã»ã¯ã·ã§ã³ãã¡ãœãããå®è£
ããããšããŸããã
ãããã£ãŠãaïŒèšäºã®æåŸã«ã
å°éå®¶ã«ãœãŒã¹ã³ãŒããæ·»ä»ãã
ãŸããbïŒä»äºã®ã¢ã«ãŽãªãºã ãäžããŠåæããŸã
cïŒSPLã©ã€ãã©ãªã®äœ¿ç𿹿³ã説æããŸã
dïŒèšäºã®ç¯å²å
ã§ãç¹å®ã®åšèŸºæ©åšã®äœ¿ç𿹿³ã説æããã³ãŒãã§ã®åšèŸºæ©åšã®äœ¿çšã®å®è£
ã瀺ããŸã
dïŒILI9341ã§ã®äœæ¥ãå¥ã®æ®µèœãšããŠèª¬æããŸãã äž»é¡ã¯ããªãåã¿ç ãããŠããã®ã§ãäž»ãªããš-åæå颿°ã®å®è£
ãæ€èšããæ¹æ³ïŒã€ã³ã¿ãŒãããäžã§ã¯ããããã§ã¯å®éã®åæåãã³ããŒããããŠãããäœã§ããããèããªãããšãããã¬ãŒãºã®ã³ãŒãã®ã¿ãèŠãŸããïŒã«ã€ããŠè©±ããããŒããŠã§ã¢SPIãä»ããŠå®è¡ããŸãã
ããã§ã¯ã³ãŒãã®è©³çްãªåæã¯è¡šç€ºãããŸããããã¹ãŠãé©åºŠã«è¡ãããŸãããã以å€ã®å Žåã¯ããã®ãããªããŒãžã200ã250åã§æžããªããã°ãªããŸããã ãããã£ãŠãããã°ã©ã ã®äœæãéå§ããåã«ãããŒã¿ã·ãŒãããã³ãã®ä»ã®ããã¥ã¡ã³ãïŒ
ãªã³ã¯ããããŸã ïŒã調ã¹ãŠãã ããã åããŠMKã«åº§ã人ãã¡-å¿é
ããªãã§ãã ããã質åãããå Žåã¯ãããã³ããã衚瀺ããŠæäŒããŸãã®ã§ããã®ã³ãŒããç¿åŸããŠãã ããã
ã©ããªéçºç°å¢ãããã峿žé€šã¯çæŽ»ãæ¥œã«ããŸããïŒ
ç§ã¯ããã«èšããŸã -
ãã®èšäºã®
ã³ãŒãã¯ããã€ãã£ããã§ã¯ãããŸãããããã¹ããããŠåäœããŸãïŒ ãªããªã IARã¯åå¿è
ã«ãšã£ãŠæã䟿å©ãªãœãããŠã§ã¢ã§ã¯ãããŸãããæ©èœãå€ããããªã©ã®çç±ã§å€ãã®äººããã€ãã¹ããŠããããããã¬ãŒãã³ã°èšäºã§ãããžã§ã¯ãããcoconutãïŒ
CooCoxIDE 1.7.7 ïŒã«ç§»è¡ããããšã«ããŸããã ãŸããã¬ãžã¹ã¿ãŒããé¢ããŠã
SPLã§ã³ãŒããæžãããšã«ããŸãã
ãSPLã¯ãåšèŸºæ©åšMK STM32ãšé£æºããããã®STã®æšæºã©ã€ãã©ãªã§ãã çŸåšãæ°ããHALã©ã€ãã©ãªã¯çœ®ãæããããŠããŸããããããŸã§ã®ãšãããå€ãã®ãããžã§ã¯ãã§æåã®ã©ã€ãã©ãªã眮ãæããŠããŸããã Googleã§ãã©ã¹ãšçŸåŸ³ãå·®ãåŒãããšãã§ããŸãã
ç§ã¯
SPLãéžã³ãŸãã-ãªããªã ãå³å¯ãªæé©åãåŸã®æçµçãªã³ãŒãã奜ãã§ãããããã¯ããçŽæçã§ãHALã¯ããŸããŸãª
RTOSã§åäœããããã«ããé©åããŠã
ãŸãã ããã¯çŽç²ã«ç§ã®æèŠã§ããç§ã¯èª°ã«ããããåœããåã®ããšãšã¯æãããã³ã¡ã³ãã®äžã§ãããè¯ããæªãããäŒããããšãæ±ããŸããã
äžèšã§æžããããã«ãã¬ãžã¹ã¿ããã©ã€ãã©ãªãžã®ç§»è¡ããããŸããããéãã¯äœã§ããïŒ
é·æïŒ
aïŒSPLã䜿çšããŠèšè¿°ãããã³ãŒãã®å¯èªæ§ã¯éåžžã«åªããŠããããã¬ãŒãã³ã°ã«åã£ãèšäºã§ã¯ããããæãéèŠãªããšã§ãã
bïŒã³ãŒãã®èšè¿°é床ãã¯ããã«éããæ¢åã®ã¢ã«ãŽãªãºã ã§ã³ãŒããæåããèšè¿°ããŠãããã°ããã®ã«1.5æéããããŸããã
cïŒç³ããç³ãžã®ç§»åã容æã«ãªããŸããããŸããçªç¶STM32F103RBT6ã¯ãããŸããããSTM32F105VCT6ãããããããåéããŸãã
çæïŒ
aïŒSPL颿°ã¯ãã倧ãããããå€ãã®ã¡ã¢ãªãæ¶è²»ããå®è¡ã«æéãããããŸãã
ãã ããããã¯åæå颿°ã«ã®ã¿é©çšãããä»ã¯ãã¹ãŠåãé床ã§ããbïŒããŒã¿ã·ãŒãã§ã¯ãåæå
šäœãã¬ãžã¹ã¿ã«æ£ç¢ºã«åæ ããããããã¡ã€ã³ã®ãã€ãã¹ã§ãã
ç§ã®èŠçŽïŒ
CoIDEã§å®å
šã«äœæ¥ããSPLã䜿çšããŠãèªåãã¢ããã¥ã¢ã§ãããšã¿ãªãã¬ãã«ãŸã§æ£ç¢ºã«ããã°ã©ã ãäœæã§ããŸãã çé¢ç®ãªããã€ã¹ãèšèšããããé»åæ©åšã§ãéã皌ãããšãç®æšã«ãããããã«ãããã«IARã«è»¢éããã¬ãžã¹ã¿ãŒä»ãã®ããŒã¿ã·ãŒããåžã£ãŠãã ãããããã°ã©ã ã®ã¢ã«ãŽãªãºã ãäœæããŸã
æåã«ãããã€ã¹ã®äžè¬çãªæ©èœæ§é ã西æŽããã³ã®éŒ»ã«æšå®ããŸãããïŒ
å³1-å¶åŸ¡ããã°ã©ã ã®ãããã¯å³
ããã§ãããã€ã¹ã®ã©ã®éšåãæž¬å®ããåä¿¡ããããŒã¿ãã©ãåŠçããããæããã«ãªããŸããã æž¬å®ããããã¹ãŠã®é»å§ãšé»æµãTFTããã«ã«è¡šç€ºããé»å§ãæ£åžžç¯å²å
ã«ãããã©ããã倿ãïŒ
GOSTã«åŸã£ãŠ ïŒãæåŸã«åºå黿µã«åºåé»å§ãæããŠãè² è·ã«ããé»åæ¶è²»ãååŸããŸãã ãã¹ãŠãã·ã³ãã«ã§æç¢ºãªããã§ãã
ãŸããããŒãã¯æž©åºŠã枬å®ããç»é¢ã«è¡šç€ºããå¿
èŠããã
ãŸããç·æ¥
85 °Cãè¶
ããå Žåã¯ã
ãã°ãèšé² ããŠããã€ã¹ã®é»æºããªãã«ããå¿
èŠããã
ãŸãã 黿ºããŒãã®
SDãã©ã€ããŒ
IR2110ã®è¶³ã«
1 ã ãŸããæž¬å®ãããæž©åºŠã®çµæã«å¿ããŠãPWMå¶åŸ¡ã¯ãŒã©ãŒã®ãã¥ãŒãã£ãµã€ã¯ã«ã調æŽããå¿
èŠããããŸãã
ãã¹ãŠã®ç·æ¥ç¶æ
ãLEDãã£ã¹ãã¬ã€ã«è¡šç€ºããå¿
èŠããããŸããLEDãã£ã¹ãã¬ã€ã¯ãã·ã¹ãã ã®
ãé倧ãªãäžå
·åãããã€ã¹ã®æ
éã衚瀺ããã®ã«åœ¹ç«ã¡ãŸãã
ãã®ãŠãããã®æ©èœã¯è€éã§ã¯ãããŸãããã€ãŸããå®è£
ã«å€§ããªäœæ¥ã¯ãããŸããã
èšäºã®å匷ãç¶ããåã«äœãããå¿
èŠããããŸããïŒ
1ïŒäœ¿çš
ãããœãããŠã§ã¢ãããŠã³ããŒãããŸãã CooCoxIDE 1.7.7ã«ãªããŸãã以äžã®Poisonãžã®ãªã³ã¯ãæ·»ä»ããŸãããã®ããŒãžã§ã³ã®ããã°ã©ã ãå«ããã©ã«ããŒãããŠã³ããŒãã§ããŸããæ¢ã«
SPLãã€ã³ã¹ããŒã«ãããŠããã ãã§ãªããããŠã³ããŒãæžã¿ã®ã³ã³ãã€ã©ãŒã䜿çšãããšã
ç
©ãããæ€çŽ¢ãããŸããã ããã§äœæ¥ãéå§ããããã®ãã¹ãŠïŒ
CooCoxIDE 1.7.72ïŒããŒã¿ã·ãŒããšåŒã°ãã
ç¥èãªåçš¿ã
STM32F103ã«ããŠã³ããŒãã
ãŸã ã
ããŒã¿ã·ãŒãSTM32F1033ïŒ
RM0008ã®ãããª
Googleã§ããã1128ããŒãžã®å£®å€§ãªããªã¥ãŒã ãæã€ãªãã¡ã¬ã³ã¹ããã¥ã¢ã«ãšåŒã°ãã
ç¥èãªçµå
žãããŠã³ããŒãããŸãã ããã¯ç§ãç¿åŸããæãèšå€§ãªç§åŠè«æã§ãããLandau-Livshitsã®å
šå·»ããŸã ãããŸããããŸã ããã€ãã®æ¬ããããŸã...çç±ã§ã-çè§£ã§ããªãããšãé¢çœãããšã«ã€ããŠã¯ãã®ãã¡ã€ã«ãåç
§ããããšããå§ãããŸãã
RM00084ïŒç§ã¯ãŸã ãSTã®ç¥èã¬ãã«ãæã€ç·ã®ããã°ã匷ããå§ãããŸã-ç¥ã圌ã¯åå¿è
ãéåžžã«è€éã§è峿·±ãä»äºã®ããã«åšèŸºãåãã§ããŸãïŒ
ãã³ã©ã€ã»ãŽã«ããã5ïŒæåŸã®...
STM32CubeMXã®éåžžã«äŸ¿å©ãªããã°ã©ã ãããŠã³ããŒãããããã«å®è¡ããŸã-
å
¬åŒãµã€ãSTããªããç§ãããªãã«å©èšãããã¹ãŠãããŠã³ããŒãããŠãä»ããªããããã°ã©ã ãæžãå§ããããšãã§ããããšãæã¿ãŸãã
ãããžã§ã¯ãããŸãšãã
1ïŒç§ãã¡ãåããªããã°ãªããªãåšèŸºæ©åšãéžæããŠãã ãã

å³2-䜿çšããåšèŸºæ©åšãéžæããããã®ãªããžããª
次ã«ã誰ãäœã«å¯ŸããŠè²¬ä»»ãè² ãããç°¡åã«èª¬æããŸããaïŒ
CMSISã³ã¢ -æåã«è¡ãããšã¯ããã®ã©ã€ãã©ãªã確èªããããšã§ããããã«ããã€ãã®ã©ã€ãã©ãªãããã«æ¥ç¶ãããŸãã ããã¯ãäœæ¥å¯èœãªæå°å€ã§ãã ãã®ã©ã€ãã©ãªã¯ããã®ååã瀺ãããã«ããã³ã¢ããåšèŸºã®æ®ãã®éšåãæ©èœããåºæ¬æ©èœãæ¥ç¶ããŸã
bïŒ
RCC-ãã€ã¯ãã³ã³ãããŒã©ã®ã¯ãããã³ã°ãæ
åœããã©ã€ãã©ãªãããã¯å¥ã®ããªãããŒãªãã€ã³ãã§ããã仿¥ã¯åæ§ã«æ€èšããŸãã ãã®ã©ã€ãã©ãªã䜿çšãããšãçæå
ãéžæããããååšèŸºæ©åšã®åšæ³¢æ°åå²ä¿æ°ãèšå®ãããã§ããŸãã
cïŒ
GPIO-å
¥å/åºåããŒããåããäœæ¥ã©ã€ãã©ãªã ãŸããæ®ãã®åšèŸºæ©åšã®ãã¹ãŠã®äž»èŠãªèšå®ãå®è¡ã§ããŸãã
dïŒ
DMA-ãã®ã©ã€ãã©ãªã䜿çšãããšãã¡ã¢ãªã«çŽæ¥ã¢ã¯ã»ã¹ããŠäœæ¥ã§ããŸãã ããã¯ã€ã³ã¿ãŒãããã§è©³çްã«èªãããšãã§ããŸã-ãããã¯ã¯ãã¿ç ãããŠããŸããåå¿è
ã«ãšã£ãŠã¯ããã®åçãããã€ã¹å
šäœã®é床ãäžããããšãã§ããããšãçè§£ããã®ã«ååã§ãã
eïŒ
SPI-倿°ã®ããã€ã¹ãšããŒã¿ã亀æã§ãã
SPIã€ã³ã¿ãŒãã§ãŒã¹ãæäœããããã®ã©ã€ãã©ãªã ç§ãã¡ã®å Žåããããä»ããŠ
ILI9341ã® TFTã¹ã¯ãªãŒã³ãšéä¿¡ããŸãã
fïŒ
TIM-ã¿ã€ããŒãæäœããããã®ã©ã€ãã©ãªã ããã§ã¯ãã¹ãŠãæç¢ºã ãšæããŸããããã«ããã
PWMãèµ·åããŠã¯ãŒã©ãŒãå¶åŸ¡ãããã¡ããé
å»¶ãå®è£
ããŠå²ã蟌ã¿ãçæã§ããããã«ãªããŸãã
gïŒ
ADCã¯ããã¹ãŠã®é»å§ãšé»æµã枬å®ãã
A / Dã³ã³ããŒã¿ãŒ ïŒADCïŒã䜿çšããŠã¡ã€ã³åšèŸºæ©åšãæäœããããã®ã©ã€ãã©ãªã§ãã
ããã°ã©ã ãæžãããšã«ããŸã
ç§ã¯
Cã§ã¬ãã¹ã³ãããã€ããã¯ãããŸããã§ããããMKã®å匷ãå§ããã®ãæã人ãã¡ã®èŽè¡ã«çŠç¹ãåãããŠã圌ããããã·ã¥ãããã®ã§ãèŠç¹ã説æããŸãã æåã®2ããŒã ïŒ
1ïŒ
defineã¯ãããå€ãå¥ã®å€ã«çœ®ãæããããã®ã³ãã³ãã§ãã ç§ãå匷ãããšãã®ããã«ãååã¯ããã§çè§£ããŠããŸããã§ããïŒ
äŸ1ïŒGPIO_SetBitsã³ãã³ã
ïŒGPIOAãGPIO_Pin_1ïŒã§ LEDãç¹ç¯ããããã°ã©ã ããã
ãŸãã GPIO_ResetBitsã³ãã³ã
ïŒGPIOAãGPIO_Pin_1ïŒã§ãªãã«ã
ãŸãã ã ãããã®ããŒã ã«ã€ããŠèããå¿
èŠã¯ãããŸããã ã芧ã®ãšãããã³ãã³ãã¯éåžžã«è€éã§ãããã³ãŒããèšè¿°ããéçšã§100åæžãæãããã¯ãããŸãããããã«ãLEDããªã³/ãªãããæ¹æ³ãæ¯åèŠããŠããå¿
èŠã¯ãããŸããã ãããã£ãŠã次ã®ããã«èšè¿°ããŸãã
#define LED_ON GPIO_SetBits(GPIOA, GPIO_Pin_1) #define LED_OFF GPIO_ResetBits(GPIOA, GPIO_Pin_1)
ç§ãã¡ã¯äœãããŸãããïŒ ãããŠããªãã®äººçãç°¡çŽ åããŸããã ããã§ãããã°ã©ã
LED_ONã®ããã¹ããæžã蟌ã
ãã³ã«ã ïŒ
ã»ãã³ãã³ãå¿
èŠã§ã ïŒããã®ãã¬ãŒãºã¯
GPIO_SetBitsã³ãã³ã
ïŒGPIOAãGPIO_Pin_1ïŒã«çœ®ãæããã
ãŸã; ã·ã£ããããŠã³ã«ã€ããŠãåãã§ãã
äŸ2ïŒ1å¹Žã§æ¥ãæ°ããããã°ã©ã ãäœæããŸãã æ¯åããã°ã©ã ã«æ°å€
365ãæžã蟌ãŸãªãããã«ããããïŒãã ããå®éã«ã¯ä»»æã®è€çŽ æ°ãPiã§ãããŸããŸããïŒãåã®äŸãšåãããã«èšè¿°ããŸãã
#define Year 365
365ã¯ããŒã ã§ã¯ãªãåãªã宿°ã§ããããããã®åŸã¯ã»ãã³ãã³ãå
¥åããå¿
èŠããªãããšã«æ³šæããŠãã ããã ãã以å€ã®å Žåã
365ã¯æ¿å
¥ãããŸãããã
365ã¯æ¿å
¥ãã
ãŸãã åãåŒã§äœ¿çšãããšããšã©ãŒãšããŠèªèãããŸãã
#define X1 Y2ã³ãã³ãã¯ãåã«ã³ãŒãå
ã®ãã¹ãŠã®X1ãY2ã«çœ®ãæããŸãã質åãæ®ã£ãŠããªãããšãæã¿ãããåçŽãªãã®ã«ç§»ããŸãããããããæãéèŠãªã³ãã³ãã§ãã
2ïŒinclude-ä»ã®ãã¡ã€ã«ãã©ã€ãã©ãªãã³ãŒãã«æ·»ä»ã§ããŸãã
äŸ1ïŒç§ãã¡ã®ãã®ãå«ããŠãã©ããªã³ãŒãã§ããã®ã³ãã³ãã§å§ãŸããŸãïŒ ãªããžããªå
ã®ã©ã€ãã©ãªã確èªããCoconutã¯ã©ã€ãã©ãªãã¡ã€ã«ããããžã§ã¯ãã®ãã©ã«ããŒã«ã³ããŒããŸããã ããã§ã¯ååã§ã¯ãããŸãã
ãã¡ã€ã³ãã¡ã€ã«ã«æ·»ä»ããå¿
èŠããããŸã
ãäžèšã®ã©ã€ãã©ãªãADCãã¿ã€ããŒãªã©ããã¹ãŠæ·»ä»ããããšã¯ãŸã å§ããŠããŸããããããã«ã¯è¿œå ããŠããŸããã ã¡ã€ã³ã©ã€ãã©ãªãã¢ã¿ããããŠããã®æ®µéã§çã£éããŸã«ãªããªãããã«ããŸãã
次ã®ã³ãŒããååŸããŸãã #include "stm32f10x_conf.h" #include "stm32f10x_rcc.h" #include "stm32f10x.h" #include "stm32f10x_gpio.h" #include "stm32f10x_spi.h" #include "TFT ILI9341.h"
ãã®å¥åŠãªãã¡ã€ã«ãã©ãã§ååŸããããçè§£ããã«ã¯ããããžã§ã¯ãããªãŒã調ã¹ãå¿
èŠããããŸãã

å³3-å¿
èŠãªã©ã€ãã©ãªãå«ããããžã§ã¯ãããªãŒ
ã芧ã®ãšãããæ·»ä»ãããã®ã¯ãã¹ãŠãã®ãããªãŒãã«ãããŸãã ããã¯CMSISã©ã€ãã©ãªãªã©ã§ãã ããã§ã¯ã4ã€ã®ç¹ã«æ³šæãã䟡å€ããããŸãã
aïŒæ¥ç¶ã®ç¬éã¯çè§£ã§ãããšæããŸãããæç¢ºã«ããŸã-
#include "file name"ããã¯ããã¡ã€ã«ãå«ããå¿
èŠãããæ¹æ³ã§ãããã¡ã€ã«åãæ¬åŒ§ã§å²ã¿ãè¡æ«ã«ã»ãã³ãã³ãå
¥ããªãã§ãã ããã
bïŒæ°ã¥ããããæ¡åŒµå
.hã®ãã¡ã€ã«ã®ã¿ãæ¥ç¶ããŸããåžžã«ãããè¡ãå¿
èŠããããŸãã
.hæ¡åŒµåãæã€ãã¡ã€ã«ãš
.cæ¡åŒµåãæã€ãã¡ã€ã«ã®éãã¯äœã§ãã
cïŒ
SPLã©ã€ãã©ãªã䜿çšããå Žåãåžžã«
mainã§æ¥ç¶ããã2ã€ã®ãã¡ã€ã«ããããŸãã
#include "stm32f10x_conf.h" #include "stm32f10x.h"
dïŒæããã«ã¡ã€ã³ã®ã¡ã€ã³ãã¡ã€ã«ã«æ¥ç¶ããªãã£ã
font.hãã¡ã€ã«
TFTã©ã€ãã©ãªãã¡ã€ã«
ILI9341.hã«æ¥ç¶ããŠããŸããããã¯ãªãã§ããïŒ FONTã¯ãã©ã³ããåããã©ã€ãã©ãªã§ãããTFTããã«ãæäœããæ©èœã§ã®ã¿äœ¿çšãããŸãã ã¡ã€ã³ã®ã¡ã€ã³ãã¡ã€ã«ãä¹±éã«ãªããªãããã«ã
TFTãã¡ã€ã«
ILI9341.hå
ã«æ¢ã«
#includeã䜿çšããŠãã©ã³ããæ·»ä»ã
ãŸãã ã
3ïŒ
.hããŒããã·ã§ã³ãš.cããŒããã·ã§ã³ã®éãé©åãªã©ã€ãã©ãªãŒã¯2ã€ã®ãã¡ã€ã«ã§æ§æããããã®ãã¡ã®1ã€ã¯èš±å¯
.cãæã£ãŠããŸãããã®ãã¡ã€ã«ã«ã¯ããã¹ãŠã®æ©èœãšãã®å®è£
ãå«ãŸããŠããŸãã ãã®æ¡åŒµåãæã€ãã¡ã€ã«ã¯ã
.hãã¡ã€ã«ã®ã¡ã€ã³ãã¡ã€ã«ã§ãããããåŸè
ã®å
éšã«æ·»ä»ãããŸãã
ã©ã€ãã©ãª
.hãã¡ã€ã«ã®2çªç®ã®éšåã«ã¯ã
TFT ILI9341ã® FONTãªã©ãå¿
èŠãªãã¹ãŠã®ã€ã³ã¯ã«ãŒããå«ãŸããŠããŸãã ãŸãããã¹ãŠã®
define ã宿°ã宣èšãããŠããããšã説æããŠã
ãŸã ã äžã§èŠãããã«ããã®ã©ã€ãã©ãªãæäœããããã«ããã®ç¹å®ã®ãã¡ã€ã«ãã€ã³ã¯ã«ãŒãããŸã
ã.cãã¡ã€ã«ã¯
.hå
ã§ãããŒã«ãã«ãªããŸã
ã¡ãã£ãš...ãã¹ãŠãè³ãççºããŠããªããã°ãäŒæ©ããŠãè¶ã飲ãã§ãããã«é¢çœããã®ãæ¢ããŠãã ããã
ã¯ãããã³ã°ãã€ã¯ãã³ã³ãããŒã©STM32
æã責任ãããããªãããŒãªãã€ã³ãã«å°éããã ã¯ãããã³ã°
STM okã¯ãAVRãããŒã¯ã®ããã«ã¯çºçããŸããã ããã§ã¯ãã¯ã©ãŒãã®åšæ³¢æ°ãåçŽã«åãããç³ã«è¿œããããããŸãã
STM32ã§ã¯ããããè¡ãããŸããaïŒMKã¯åžžã«
HSIããå§ãŸããŸã-ããã¯å
éš8 MHzçºæ¯åšã§ã
bïŒãã®åŸãMKã¯
HSEã«åãæ¿ãããŸã-ããã¯å€éšæ°Žæ¶æ¯ååã§ã
cïŒæ¬¡ã«ãä¿¡å·ã¯PLLã«éãããããã§åšæ³¢æ°ãéåãããŠåšèŸºã«éãããŸãã
ããã¯ãSTMã«åãæ¿ãããšãã«æåŸã®ãã€ã³ãã ã£ãããã§ããã¯ã©ãŒãã8 MHzã«æ¥ç¶ãããšããã¹ãŠã72 MHzã§åäœããŸãã ãããã£ãŠãäžè¬çãªã¯ã©ãŒãã¯8ã16ã24 MHzã§ãã ããã«ãåšæ³¢æ°ã¯ãã€ã¯ãã³ã³ãããŒã©ãŒå
éšã§ä¹ç®ãããŸãã
ããã¯ãã¹ãŠãããŒã¿ã·ãŒãã®æ¬¡ã®å³ã§èŠãããšãã§ããŸãã14ããŒãžã«ãããŸãããã®ããããã®åçš¿ãå¿
é é
ç®ã«å«ããŸããã

å³4-STM32ãã€ã¯ãã³ã³ãããŒã©ãŒåšèŸºã®ã¯ããã¯åè·¯
ãŸããã¯ããã¯åšæ³¢æ°ã
PLL ïŒåšæ³¢æ°éååšïŒããååŸãããåšèŸºã«åé
ãããååšåšã䜿çšããŠèšå®ãããå Žåã«ã泚æããŠãã ããã
APB2ãš
APB1ã® 2ã€ã®ã¿ã€ã€ããããããããç¹å®ã®åšèŸºã«ã¶ãäžãã£ãŠããŸãã åãã¹ã«ã¯åšæ³¢æ°å¶éããããŸããAPB2ã®å Žåã¯72 MHzãAPB1ã®å Žåã¯36 MHzã§ããã€ãŸããæåã®ãã¹ã§ã¯ãåšæ³¢æ°ã¯
PLLã®ã¯ããã¯ã®
1/2ã§ãã
äŸãæããŸããã ãSPI1ã®
å Žåãé»åã¯æå€§åšæ³¢æ°72 MHzã®APB2ãã¹ããäŸçµŠããã
SPI2ã¯36 MHzã®åšæ³¢æ°ã®APB1ãã¹ã§ãã³ã°ããSPI2ã¯äœããªããŸãã
ããã¯æ€èšãã䟡å€ããããŸãïŒããã§ã¯ããã¹ãŠã®ãã¹èšå®ãå®è¡ããæ©èœãèŠãŠã¿ãŸãããã
RCCã©ã€ãã©ãªã¯ã¯ãããã³ã°ãè¡ããããæåã«ãããžã§ã¯ãã«æ¥ç¶ãã
stm32f10x_rcc.hãã¡ã€ã«ã§é¢æ°ãæ¢ãå¿
èŠããããŸãã
void RCC_Configuration(void) { RCC_DeInit(); // reset RCC_HSEConfig(RCC_HSE_ON); // HSE ( ) HSEStartUpStatus = RCC_WaitForHSEStartUp(); // if (HSEStartUpStatus == SUCCESS) // , { RCC_HCLKConfig(RCC_SYSCLK_Div1); // 1 (Div1), 72 RCC_PCLK2Config(RCC_HCLK_Div1); // APB2 PLL 72 RCC_PCLK1Config(RCC_HCLK_Div1); // APB1 PLL 72 RCC_ADCCLKConfig(RCC_PCLK2_Div2); // 2 (Div2) 36 72 RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_9); // 9, 8 * 9 = 72 PLL RCC_PLLCmd(ENABLE); // PLL while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) {} // PLL RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); // PLL while (RCC_GetSYSCLKSource() != 0x08) {} // PLL } }
ããã§ã颿°ã䜿çšããåã«ãããã°ã©ã ã®å
é ã§å®£èšããå¿
èŠãããããšãå¿ããªãã§ãã ããããã®ãããæçµçã«ãã¿ã€ãã³ã°ãèšå®ãããããªã³ãŒããååŸã§ããŸãã F10xã·ãªãŒãºã®ã©ã®MKã§ãåäœãããããã©ã€ãã©ãªãšããŠä¿åã§ããŸãã /*************************************** **********************************/ void RCC_Configuration(void); ErrorStatus HSEStartUpStatus; RCC_ClocksTypeDef RCC_Clocks; void RCC_Configuration(void) { RCC_DeInit(); // reset RCC_HSEConfig(RCC_HSE_ON); // HSE ( ) HSEStartUpStatus = RCC_WaitForHSEStartUp(); // if (HSEStartUpStatus == SUCCESS) // , { RCC_HCLKConfig(RCC_SYSCLK_Div1); // 1 (Div1) 72 RCC_PCLK2Config(RCC_HCLK_Div1); // APB2 PLL 72 RCC_PCLK1Config(RCC_HCLK_Div1); // APB1 PLL 72 RCC_ADCCLKConfig(RCC_PCLK2_Div2); // 2 (Div2) 36 72 RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_9); // 9, 8 * 9 = 72 PLL RCC_PLLCmd(ENABLE); // PLL while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) {} // PLL RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); // PLL while (RCC_GetSYSCLKSource() != 0x08) {} // PLL } }
ç§ã¯å€ããå°ãªãã詳现ã«èª¬æããã¿ã€ãã³ã°ãèãããšãä»ã§ã¯åšèŸºãåè§£ããå¿
èŠããããŸãã
å
¥å/åºåããŒããæäœãã
GPIO-ãããã¯I / OããŒãã§ãã ãããåºæ¬ã®åºç€ã§ãããªããªã ä»ã®åšèŸºæ©åšã䜿çšããåã«ãããã衚瀺ãããããŒããèšå®ããå¿
èŠããããŸãã
åè·¯ã®LED衚瀺ã®äŸã䜿çšããŠããã®åšèŸºã®è©±ãå
å°ããŸãã
åã®èšäºããæ¥ç¶ãååŸããŸãã
aïŒLED No. 1ïŒLED1ïŒã¯PB12ã«æ¥ç¶ãããŠããŸã
bïŒLED No. 2ïŒLED2ïŒã¯PB13ã«æ¥ç¶ãããŠããŸã
cïŒLED No. 3ïŒLED3ïŒã¯PB14ã«æ¥ç¶ãããŠããŸã
dïŒLED No. 4ïŒLED4ïŒã¯PB15ã«æ¥ç¶ãããŠããŸã
dïŒLED No. 5ïŒLED5ïŒã¯PC6ã«æ¥ç¶ãããŠããŸãããã¯ã©ãããæå³ã§ãã... STM-okã«ã¯ããŒããããã0ãã15ãŸã§ã®16ãã³ããããŸãã
確ãã« ãäžéšã®ããŒãã«ã¯åžžã«16ã¬ãã°ããã
ãŸããã ãããšãã°4ãŸãã¯5ã®ã¿ã§ãã 12çªç®ã®çµè«ã ããã§ã以åã«ããŠã³ããŒããã
STM32CubeMXãéãããããã®è¶³ãã©ãã«ãããããããŠç¹æ®ããã®ã«äŸ¿å©ãã©ããã確èªããŸãã

å³5-STM32CubeMXããã°ã©ã ã§ã®åšèŸºã®å Žæã®éžæ
STMã®å€§ããªé
åã¯ããã®
ãæè»æ§ãã«ãããI / Oã«ä»»æã®ã¬ãã°ã䜿çšã§ããããšãããã³åšèŸºå
šäœã代æ¿ã®ã¬ãã°ïŒãã©ãŒã«ããã¯ïŒããããã
Remapã«è»¢éã§ããããšã§ãã ããã«ãããããŒããéåžžã«å¹ççãè¿
éãã€äŸ¿å©ã«è²ãŠãããšãã§ãããããåå¿è
ã¯STéçºè
ãæäŸãããã¹ãŠã®ãã®ã®äœ¿ç𿹿³ãåŠã³ãŸãã
ããã§ã衚瀺ãæäœããå¿
èŠããããŸããã€ãŸããç¹å®ã®ç¶æ³ã§LEDãç¹ç¯ããŸãã æ¬¡ã«ããããè¡ãæ¹æ³ã確èªããåºåã
ãã°ã«èšå®ããå¿
èŠããã
ãŸãã ã¢ããŒãã¯MKã«æ¥ç¶ãããã«ãœãŒãã¯ãã€ãã¹åè·¯ã«æ¥ç¶ãããŠããŸãã ãããè¡ãã«ã¯ã
stm32f10x_gpio.hãã¡ã€ã«ãéããŠãã¡ã€ã«ãã¹ã¯ããŒã«ããŠã³ããŸãã䜿çšå¯èœãªãã¹ãŠã®æ©èœã®ãªã¹ãããããŸãã

å³6-GPIOã§äœæ¥ãããšãã«äœ¿çšã§ããæ©èœ
ããã«ã¯ãåºåã¹ããŒã¿ã¹ãèšå®ããã³ãªã»ããããããã®æ©èœããããŸãã
void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
ãã®ãããªé¢æ°ã䜿çšããæ¹æ³ïŒã³ããŒããŸãããã©ã±ããå
ã®æåã®ãšã³ããªã¯
GPIO_TypeDef * GPIOxã§ããçè§£ã§ããããã«ã
ãxãã®ä»£ããã«ããŒããæå®ããå¿
èŠããããããŒãBãšCãããã
GPIOBãååŸã
ãŸã ã ããã§ã¯ãç¹ã«é£ã¹ãªãããã«é Œãã èšäºã®æåããã®æ©èœãæãåºããŸããä»ããã®æã§ãã
uint16_t GPIO_Pinãã©ã±ããã®2çªç®ã®éšåãèŠããšã
GPIO_Pin倿°ãããããã®å€æ°ã®åã¯
16ãããã®ç¬Šå·ãªãã®å€ãã€ãŸã
2 16ãŸãã¯
65536ã§ããããšã
ããããŸãã ããããããã»ã©å¿
èŠã§ã¯ãªãã®ã§ãããã§ã¯ãã³ïŒãã³ïŒçªå·
ã0ã15ã«æå®ããå¿
èŠãããããšã¯æããã ãšæããŸã
ããã®çµæã
GPIO_Pin_12ãååŸã
ãŸã ã ããããã¹ãŠãèæ
®ããŠãã³ãŒããèšè¿°ããŸãã
GPIO_SetBits(GPIOB, GPIO_Pin_12); // â 1 GPIO_SetBits(GPIOB, GPIO_Pin_13); // â 2 GPIO_SetBits(GPIOB, GPIO_Pin_14); // â 3 GPIO_SetBits(GPIOB, GPIO_Pin_15); // â 4 GPIO_SetBits(GPIOC, GPIO_Pin_6); // â 5
ã芧ã®ãšãããLEDãã©ã®èã«æ¥ç¶ããããæãåºããã³ã«ãã³ãŒããå°ãªããšã5,000è¡ã«ãªã£ããšãã«äœåãªæåãæžããŸããããã¯ãã§ã«ã©ãã»ã©éèŠãªã®ã§ããããïŒïŒ
#define LED1_ON GPIO_SetBits(GPIOB, GPIO_Pin_12) // â 1 #define LED2_ON GPIO_SetBits(GPIOB, GPIO_Pin_13) // â 2 #define LED3_ON GPIO_SetBits(GPIOB, GPIO_Pin_14) // â 3 #define LED4_ON GPIO_SetBits(GPIOB, GPIO_Pin_15) // â 4 #define LED5_ON GPIO_SetBits(GPIOC, GPIO_Pin_6) // â 5
ããŠãããã«ããããªãã«ãã颿°ãäœæããããšã¯å¿ããããŸããã ãããè¡ãã«ã¯ãçŸåšã®
SetBits颿°
ã§ResetBitsã«å€æŽããŸããããã§ã¯ãã¹ãŠãéåžžã«æç¢ºã ãšæããŸãã æ¬¡ã®æçµã³ãŒããååŸããŸãã
#define LED1_ON GPIO_SetBits(GPIOB, GPIO_Pin_12) // â 1 #define LED2_ON GPIO_SetBits(GPIOB, GPIO_Pin_13) // â 2 #define LED3_ON GPIO_SetBits(GPIOB, GPIO_Pin_14) // â 3 #define LED4_ON GPIO_SetBits(GPIOB, GPIO_Pin_15) // â 4 #define LED5_ON GPIO_SetBits(GPIOC, GPIO_Pin_6) // â 5 #define LED1_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_12) // â 1 #define LED2_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_13) // â 2 #define LED3_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_14) // â 3 #define LED4_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_15) // â 4 #define LED5_OFF GPIO_ResetBits(GPIOC, GPIO_Pin_6) // â 5
ããã§ãLEDãç°¡åã«ç¹ç«ããã«ã¯ã
LED1_ONãšæžãã ãã§åå
ã§ãã ãªãã«ããã«ã¯ãLED1_OFFãæžã蟌ã¿ãŸãã
ãã¹ãŠãã·ã³ãã«ã«èŠããŸããïŒ ããããéããŸãïŒ æåã«èŠããªããã°ãªããªãæåŸã®ç¬éããããŸãããã圌ã¯ããããååã®äººã
ã远ãæãã§ãããã ããã¯ç°¡åã§ãããããã©ãŒãã³ã¹ã¯ããã«äŸåããŸã-ããã¯
GPIOåšèŸºæ©åšã®åæåã§ã ã ããã¯ãã¯ããã¯åšæ³¢æ°ã®ååŸå
ãåäœå
ãã¢ãŒããããŒãã«ç€ºãããã«å¿
èŠã§ãã ãããã¯ãã¹ãŠåã
stm32f10x_gpio.hã©ã€ãã©ãªã§è¡ãããŸããã
stm32f10x_rcc.hã¯ããã¯
ã©ã€ãã©ãªãããã«æ¥ç¶ããå¿
èŠããããŸãã
åšèŸºæ©åšã§äœããè¡ãå
ã«ãã¯ãããã³ã°ãæå¹ã«ã ã
stm32f10x_rcc.hã§ããã
å®è¡ã ãããã«è¡ã£ãŠãã©ã®æ©èœãå®è¡ãããã確èªããå¿
èŠããããŸãã

å³7-ã¿ã€ãã³ã°é¢æ°
ããã§ãããªãã¿ã®APB2ãšAPB1ã衚瀺ãããŸãããããã¯ãããŒããæ¥ç¶ãããŠãããã¹ã§ãã ãã®å ŽåãCãšBã®äž¡æ¹ãAPB2ã«åº§ã£ãŠãããç»é¢ã§ãã®æ©èœã匷調衚瀺ããŸããã ããã¯æãç°¡åã§ãïŒæåã®éšåã§ã¯åšèŸºæ©åšã®ååãæžãå¿
èŠãããã2çªç®ã®éšåã§ã¯ã¹ããŒã¿ã¹ã瀺ããŸãã ã¹ããŒã¿ã¹ã¯ã
ENABLE ïŒå«ãŸããïŒãš
DISABLEã® 2ã€ã§ã
ã Xsã®çç±ã§ãããã¹ããŒã¿ã¹ã倧æåã§æžãããšãéèŠã§ããããããªããšãCocosã¯ããã¹ãã匷調ããŸããã
次ã«ãã©ããããåšèŸºã®æ£ããååãååŸããå¿
èŠããããŸãã ãããã£ãŠãã©ã€ãã©ãªãã¡ã€ã«
stm32f10x_rcc.hã«ç§»åãã
Ctrl + Fã
æŒããŸããããã¯ãã¡ã€ã«å
ã®æ€çŽ¢ã§ãããRCC_APB2Periphãããã«æžã蟌ãã§[
æ€çŽ¢ ]
ãã¯ãªãã¯ã
ãŸã ã ãããŠããã®ç¢æãåãåŸããã¹ãŠã®ç¶æ
ã瀺ãããŠãããªã¹ãã«å°éãããŸã§ã
Findãæ°åçªããŸããã ç®çã®åšèŸºæ©åšãéžæããŸãã

å³8-ã©ã€ãã©ãªãŒå
ã®æ€çޢ颿°å€
ãããŠ...ã¯ãããã³ã°ãæå¹ã«ããæ¹æ³ã¯ãç§ãã¡ãèãåºãããç§ãã¡ã¯ãã®ãããªè¡ããŸãã¯ããã2è¡ãåŸãããªããªã 2ã€ã®ããŒãBãšCã䜿çšããŸãã
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
ã¯ããã¯ã©ã€ãã©ãªã䜿çšããŠãæåŸã«
stm32f10x_gpio.hãã¡ã€ã«ã«ç§»åããŸã
ãæåŸã«ç§»åããŠãéåžž
InitãšåŒã°ããåæå颿°ãæ¢ããŸã
ãå°ãªããšãå°ãè±èªãç¥ã£ãŠããã°ããã¹ãŠãã£ããã³ã§ãã æ¬¡ã«ãæšæºã®
Ctrl + Fã«åŸã£ãŠã
GPIO_Init颿°ã®ååãã³ããŒããŸãã

å³9-ãªã¹ãå
ã®é¢æ°
次ã«ã颿°ã®èª¬æãšå€èгã衚瀺ããããŸã§
ã[æ€çŽ¢]ãæ°åæŒã
ãŸã ã

å³10-åæå颿°
ãã®ãããæ¬¡ã®3ã€ã®ã³ã³ããŒãã³ãã§æ§æãããŠããŸãã
aïŒGPIO_Pin-ããã§ãåºåã®æ§ææ¹æ³ã瀺ããŸã
bïŒGPIO_Speed-ããã§ã¯ãã³ã³ãããŒã©ãŒããããåäœã§ããæå€§é床/åšæ³¢æ°ã瀺ããŸã
cïŒGPIO_Mode-ã¬ãã°æäœã¢ãŒããèšå®ããŸã
åã³ã³ããŒãã³ããéžæããå Žåã¯ã
Ctrl + FãæŒããŠè²Œãä»ããŠ[
æ€çŽ¢ ]
ãã¯ãªãã¯ããŸããåã³ã³ããŒãã³ãã«ã€ããŠèšè¿°ã§ãããã®ã®ãªã¹ãã衚瀺ãããŸãã æ¬¡ã«ããã®ã±ãŒã¹ã®åæåã®äŸã瀺ããŸãã
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); // GPIO_InitTypeDef led; // led led.GPIO_Pin = (GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15) ; // led.GPIO_Speed = GPIO_Speed_2MHz; // led.GPIO_Mode = GPIO_Mode_Out_PP; // , push-pull GPIO_Init(GPIOB, &led); //
èšå®ã«é¢ãã詳现ã¯ããŒã¿ã·ãŒããŸãã¯ã°ãŒã°ã«ã§èªãããšãã§ããŸããæ®ãã®åäœã¢ãŒãã®äžéšã¯åŒãç¶ã衚瀺ããããããåŠç¿æ¹æ³ãéžæããŠãã ããã
æå€§åšæ³¢æ°ã2 MHzã«èšå®ããã®ã¯ã ãã®ã¢ãŒãã§ã¯ãåšèŸºæ©åšã®æ¶è²»é»æµãå°ãå°ãªããªããŸãã ããã
SPIã®èšå®ã§
ããå Žåãå¶éããªãããã«æå€§å€ãæå®ããå¿
èŠããããŸãã PMã§åçããæºåãã§ããŠããªããã°ãããã§ãã¹ãŠãæç¢ºã ãšæããŸãã
ãã®çµæã仿¥ã®ããŒãã®åŸããã®ãããªã³ãŒããååŸããå¿
èŠããããŸã ã ããã¯ãã¬ãŒãã³ã°çšã§ãããå°æ¥çã«ã¯è£è¶³ããŠæçµçãªãœãŒã¹ãååŸããŸãïŒ
è§£äœããã誰ã§ãçè§£ã§ããããã«ãªããŸãïŒ #include #include #include #include #include #include #define LED1_ON GPIO_SetBits(GPIOB, GPIO_Pin_12) // â 1 #define LED2_ON GPIO_SetBits(GPIOB, GPIO_Pin_13) // â 2 #define LED3_ON GPIO_SetBits(GPIOB, GPIO_Pin_14) // â 3 #define LED4_ON GPIO_SetBits(GPIOB, GPIO_Pin_15) // â 4 #define LED5_ON GPIO_SetBits(GPIOC, GPIO_Pin_6) // â 5 #define LED1_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_12) // â 1 #define LED2_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_13) // â 2 #define LED3_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_14) // â 3 #define LED4_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_15) // â 4 #define LED5_OFF GPIO_ResetBits(GPIOC, GPIO_Pin_6) // â 5 /****************************************************************************************************************/ /********************** **********************************************************/ /****************************************************************************************************************/ /*************************************** **********************************/ void RCC_Configuration(void); ErrorStatus HSEStartUpStatus; RCC_ClocksTypeDef RCC_Clocks; void RCC_Configuration(void) { RCC_DeInit(); // reset RCC_HSEConfig(RCC_HSE_ON); // HSE ( ) HSEStartUpStatus = RCC_WaitForHSEStartUp(); // if (HSEStartUpStatus == SUCCESS) // , { RCC_HCLKConfig(RCC_SYSCLK_Div1); // 1 (Div1) 72 RCC_PCLK2Config(RCC_HCLK_Div1); // APB2 PLL 72 RCC_PCLK1Config(RCC_HCLK_Div1); // APB1 PLL 72 RCC_ADCCLKConfig(RCC_PCLK2_Div2); // 2 (Div2) 36 72 RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_9); // 9, 8 * 9 = 72 PLL RCC_PLLCmd(ENABLE); // PLL while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) {} // PLL RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); // PLL while (RCC_GetSYSCLKSource() != 0x08) {} // PLL } } /************************** ***********************************************/ /**************************************************************************************************/ /**************************************************************************************************/ int main(void) { RCC_GetClocksFreq (&RCC_Clocks); RCC_Configuration(); RCC_GetClocksFreq (&RCC_Clocks); /************* *****************************************/ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); // GPIO_InitTypeDef led; // led led.GPIO_Pin = (GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15) ; // led.GPIO_Speed = GPIO_Speed_2MHz; // led.GPIO_Mode = GPIO_Mode_Out_PP; // , push-pull GPIO_Init(GPIOB, &led); // while(1) { LED1_ON; LED2_OFF; LED3_ON; LED4_ON; LED5_OFF; } }
ãã®çµæãé«ç²ŸåºŠã®ããã«ã¯ã©ãŒãããã¯ãããã³ã°ãæ§æããæ¹æ³ãåŠã³ãSPLã©ã€ãã©ãªã®äœ¿ç𿹿³ãšGPIOã®æ§æããã³äœ¿ç𿹿³ãèŠã€ããŸããã ãŸããå®éã®ã³ãŒãã§ã®ã¢ããªã±ãŒã·ã§ã³ã®åæãšãšãã«ãalaã®å®çŸ©ãšå
æ¬çã®äž»èŠæ©èœã«ã€ããŠãèšåããŸããããšãããŒã°
ããããã®èšäºã¯æ¬åœã«é ãçããŸããã ç§ããã®å
çã¯æªãã§ããããã¡ãŒã ãŠã§ã¢ã«ã€ããŠè©³ããæããŠãããšé ŒãŸããŸããã ç§ãæåãããã€ã¯ãã³ã³ãããŒã©ã®ããã°ã©ãã³ã°ã®å匷ãå§ããããšããŠãã人ãã¡ãç§ãç§ã®èª¬æãã¢ããã€ã¹ãçè§£ã§ããããšãé¡ã£ãŠããŸãã
ããŸããŸãã®éšåãæåŸã§ã¯ãªãã
å¥ã®4.3ããããæ®ãã®åšèŸºæ©åšãåæããŠããã°ã©ã ã远å ããŸãã ããããã®ãµãã»ã¯ã·ã§ã³ãè¡ãããã¯ãããŸããã§ãããã1ã€ã®ã¹ã«ãŒãã®ããªãåçŽãªã³ãŒãã«ã€ããŠã¯ã1ã€ã®èšäºã®éã§ã¯è©±ããªãããšãããããŸããã
ããã°ã©ã ã³ãŒãã®æåŸã®ç¬¬4.3æ¡ã¯æ°å¹Žã®åã«ãªãªãŒã¹ããã黿ºåè·¯ãåããéšåã¯æ¥å¹Žã«ãªããŸãã確ãã«ãå°ããªãã³ããŸã ãããŸã-NGã®åã«ãç§ã¯UPSã«é¢ãããã®ãµã€ã¯ã«ã«å°çšã®å¥ã®èšäºãå
¬éããäºå®ã§ãããåè·¯ã®é¢ã§ãŸã é¢ä¿ããããŸãããã®èšäºã¯ã0-60Vããã³20Aã®ãã«ã¹å®éšå®€çšé»æºã補é ããŸãããšåŒã°ããŸããç§ã®ãããã¿ã€ãã¯æºåãã§ããŠãããæ
£ããé転ãããŠãå
ã®äžã§çŸããæºåãã§ããŠããŸãããããããããã¯åå¿è
åãã®æè²èšäºã§ãããã³ãŒãã®å
èš³ã¯ããã ãã§ãããããæå®€ã®å°éå®¶ã«ã³ã¡ã³ããæ®ãããã®ãã¹ãŠãšèŠæ±ããããŸãããããããé¡ãããŸãïŒããŒã5ããŒã6