
ãã€ã¯ãã³ã³ãããŒã©é»åæ©åšã®å¹³åçãªãã·ã¢èªåã®éçºè
ããã€ã¯ãã³ã³ãããŒã©ã®æãæåãªãŸãã¯äž»èŠãªã¡ãŒã«ãŒã3ã5åæããããã«æ±ããããå Žåããã€ã¯ãããããã¢ãã¡ã«ãTIãŸãã¯STMãªã©ã®ååãèãå¯èœæ§ãæãé«ãã§ãããã 誰ããNXPãFreescaleãSamsungããŸãã¯FujitsuãåŒã³åºãããšããããŸãã ããããä»ã®ã¡ãŒã«ãŒãèŠããŠãã人ã¯ã»ãšãã©ããŸãããããã¯ããœããšãåŸã®åéã§ã¯ã»ãšãã©ç¥ãããŠããŸããã
æ¥æ¬äŒæ¥Renesas Electronicsã«ã€ããŠè©±ããŠããŸããäžæ¹ããã®å¹Žæ¬¡å ±åæžã§ã¯ããã®ãããªè峿·±ãã€ã³ãã©ã°ã©ãã£ãã¯ãèªã£ãŠããŸã...

æ±çšãã€ã¯ãã³ã³ãããŒã©ãŒïŒèªåè»çšé»åæ©åšãé€ããå¹
åºãçšéã®ãã€ã¯ãã³ã³ãããŒã©ãŒ
ãã®ããã以äžã§è£œåã説æãããããŒã¯ããŒã¹ãã¯ãæ±çšãã€ã¯ãã³ã³ãããŒã©ãŒãšè»èŒé»åæ©åšåžå Žã®äž¡æ¹ã®äžçåžå Žã®ãªãŒããŒã§ããããäžçã§ãã³ããŒã¯ã³ã®ãã€ã¯ãã³ã³ãããŒã©ãŒãµãã©ã€ã€ãŒããšèªç§°ãããã¹ãŠã®æš©å©ãæã£ãŠããŸãã åç€Ÿã®æåã®ç§Theã¯ç°¡åã§ããã«ããµã¹ãã¯ãããžã¯2003å¹Žã«æ¥ç«ãšäžè±ã®ååŒäŒç€ŸãšããŠç»å Žãã2010幎ã«Nec Electronicsãåå ããŠååŒäŒç€ŸRenesas Electronicsãèšç«ããŸããã
ãã®ååã®çµæã3瀟ã®ååã«ç¢ºç«ãããã³ã¢ããå¹ççãªå°çšåšèŸºæ©åšãšçµã¿åãããŠäœ¿çšââã§ããããã«ãªããŸããã
- æ¥ç«ããã¯ãH8ãH8SãH8SXãããã³SuperHã³ã¢ã䜿çšãããŸããã
- äžè±ãããM16 / M32ãR32ã720ãããã³740ã³ã¢ãéçºè
ã®æã«æž¡ããŸããã
- NECãã-ã³ã¢V850ããã³78Kã®ã©ã€ã³ã
ãã®ãããªå€ãã®éçºãåããŠãã«ããµã¹ã¯åå äŒæ¥ãå©çšã§ããæè¡ã䜿çšããŠæ°ããã©ã€ã³ãéçºãå§ããŸããã Hitachi H8SXãšMitsubishi R32Cã眮ãæããããã«ã32ãããRXãã€ã¯ãã³ã³ãããŒã©ãŒã®ã©ã€ã³ãç»å ŽããŸããã 人æ°ã®ããNEC V850ã®åŸç¶ãšããŠãRH850ãéçºãããŸãã-èªåè»çšé»åæ©åšã§äœ¿çšããããã®ãã€ã¯ãããã»ããµã®ã©ã€ã³ã§ãã R8Cã³ã¢ã¯ãäžè±M16Cãšäºææ§ã®ããäœã³ã¹ããœãªã¥ãŒã·ã§ã³ãšããŠãéçºãããŠããŸãã
NECãšå䜵ããã«ããµã¹ã®æåã®ç¬ç«éçºã¯ãCISCã¢ãŒããã¯ãã£ãåããæ°ãã16ãããRL78ã³ã¢ã§ããã ãã®äžã§ãéçºè
ã¯ãR8Cãš78K0ã®ãã©ã¹ã®åŽé¢ã1ã€ã®ãã¡ããªãŒã«çµ±åããããšããŸããã çŸæç¹ã§ã¯ããã¡ããªãŒã¯ããŸããŸãªã¢ããªã±ãŒã·ã§ã³ã®ããã«5ã€ã®ããã©ã³ããã«åå²ã§ããŸãã
- RL78 / G1x-æ±çšãã€ã¯ãã³ã³ãããŒã©ãŒïŒæå€§28ãã£ãã«ã®ADCãDACãUSBãI2CãSPIãPWMãRTCCã
- RL78 / L1x-LCDããã«ãã€ã¯ãã³ã³ãããŒã©ãŒïŒUSB 2.0ãµããŒããæå€§4x53 / 8x48ã»ã°ã¡ã³ãã®LCDã€ã³ãžã±ãŒã¿ãŒç®¡çã
- RL78 / F1x-èªåè»ç£æ¥åãã®ãã€ã¯ãã³ã³ãããŒã©ãŒïŒCANã€ã³ã¿ãŒãã§ãŒã¹ãµããŒãããšã³ãžã³ç®¡çã+ 150ºCãŸã§ã®æ¡åŒµæž©åºŠç¯å²ã
- RL78 / D1x-èšè£
çšãã€ã¯ãã³ã³ãããŒã©ãŒïŒ4ãã£ã³ãã«ã®ã¹ãããã¢ãŒã¿ãŒã®ã³ã³ãããŒã©ãŒããç®±ããåºããŠãçŽæ¥ãæå€§4x53ã»ã°ã¡ã³ãã®LCDã€ã³ãžã±ãŒã¿ãŒã®å¶åŸ¡ãCANã
- RL78 / I1x-ç
§æå¶åŸ¡çšãã€ã¯ãã³ã³ãããŒã©ãŒïŒDALI / DMX512ãPWMã
RL78ãã€ã¯ãã³ã³ãããŒã©ã®åæãã¯åçŽã«èšå€§ã§ãããç¹å®ã®çšéã«é©ããã¢ãã«ãéžæããããšã¯é£ãããããŸããã ãã¹ãŠã®ãã¡ããªã®ã³ã³ãããŒã©ãŒã¯ãDMAã©ã€ã³ãADC / DACã³ã³ããŒã¿ãŒãI2Cããã³SPIã€ã³ã¿ãŒãã§ãŒã¹ã®ãµããŒããç£æ¥çšLINãããã¯ãŒã¯ã§ã®åäœã®ãµããŒããèªããŸãã
RL78ã³ã¢CISCãã€ãã©ã€ã³ã¯3ã€ã®ã¹ããŒãžã§æ§æãããåœä»€ã®çŽ86ïŒ
ã1ã2ããã»ããµãµã€ã¯ã«ã§å®è¡ã§ããŸãã 16x16ãããMACã³ãã³ãã®ããŒããŠã§ã¢å®è¡ããµããŒããããŠããŸãã
RL78ãã€ã¯ãã³ã³ãããŒã©ãŒã®äž»ãªå©ç¹ãšããŠãã¡ãŒã«ãŒã¯æå°æ¶è²»é»åã宣èšããã©ã€ã³ã¯çã®äœæ¶è²»é»åïŒçã«äœæ¶è²»é»åïŒã§ãããšåŒã³ãŸãã ããã«ãããããããé«ãçç£æ§ãšå¹
åºãåäœé»å§ã®ç¶æã«æ³šç®ããããšãã§ããŸãã
ããããããããããã«ããã®ã³ã³ãããŒã©ãŒã®äž»èŠãªç¹åŸŽãšã人æ°ã®ããããã©ã³ãã®äž»èŠãªç«¶åä»ç€Ÿãäžè¬çãªè¡šã«ãŸãšããŠããŸãã
äžè¬çãªãã€ã¯ãã³ã³ãããŒã©ã®ç¹æ§ã®æ¯èŒ
| STM8L
| STM32L
| Pic24 lite
| MSP430
| RL78
|
å容人æ°
| 8ããã
| 32ããã
| 16ããã
| 16ããã
| 16ããã
|
æ§èœ
| ã1 DMIPS / MHzãæå€§16 MHz
| ã1.04 DMIPS / MHzãæå€§32 MHz
| ã0.5 MIPS / MHzãæå€§32 MHz
| ã1 DMIPS / MHzãæå€§25 MHz
| ã1.3 DMIPS / MHzãæå€§32 MHz
|
ãã©ãã·ã¥
| 2ã64 KB
| 32-384 KB
| 16-32 KB
| 0.5-512 KB
| 0.125-512 KB
|
RAM
| 1-4 KB
| 4-48 KB
| 1-2 kb
| 0.125-66 KB
| 1-32 KB
|
æ¶è²»ã¹ã¬ãŒãã
| 150-180ÎŒA/ MHz
| 214-230ÎŒA/ MHz
| 195-350ÎŒA/ MHz
| 80-280ÎŒA/ MHz
| 46-156.25ÎŒA/ MHz
|
ç¡ç æ¶è²»+ RTC
| 1.3ÎŒA
| 0.9ÎŒA
| 0.5-0.7ÎŒA
| 0.7ÎŒA
| 0.56-0.68ÎŒA
|
ãã¯ãŒã¬ã³ãž
| 1.65-3.6 V
| 1.65-3.6 V
| 1.8-3.6 / 2.0-5.5 V
| 1.65-3.6 B
| 1.6-5.5V
|
æšå®äŸ¡æ Œåž¯
| 0.5ã4.5ãã«
| 1.5ã7.7ãã«
| 0.8ã4.2ãã«
| 0.34ã9.5ãã«
| 0.68ã8ãã«
|
ãã®è¡šã§ã¯åšèŸºæ©åšã«ã€ããŠã¯æå³çã«èšåããŠããŸããããããã§ã®å©ç¹ã¯ç«¶åä»ç€Ÿã«ã¯çµ¶å¯Ÿã«æå©ã§ã¯ãããŸãããåšèŸºæ©åšã«é¢ããŠã¯ãã«ããµã¹ã¯äŒçµ±çã«éåžžã«ããŸããã£ãŠããŸãã
åç·ã®äžéšã®ä»£è¡šè
ã®æçšãªæ©èœã«ã€ããŠã¯ã次ã®ããšã«æ³šæããŠãã ããã
- ããŒã¿è»¢éå¶åŸ¡-ããã»ããµã®é¢äžãªãã«åšèŸºã¢ãžã¥ãŒã«éã§ããŒã¿ã転éããæ©èœã
- ã€ãã³ããªã³ã¯ã³ã³ãããŒã©ãŒ-ããã»ããµãŒãªãã®åšèŸºã¢ãžã¥ãŒã«éã®å²ã蟌ã¿äº€æã
- ECCãåãããã©ãã·ã¥ã¡ã¢ãªã
- LVD-äœé»å§æ€åºã
- GPIOãã³ããšã«æå€§20 mAã5V蚱容ãã³ãæäŸããæ©èœã
ãããã¯ã©ããèŠæ ããããçŸãããã®ã§ãããã«ããµã¹ãã€ã¯ãã³ã³ãããŒã©ã¯éçºã«éåžžã«äŸ¿å©ã§ããïŒ ããã確èªããã«ã¯ãã«ããµã¹YRPBRL78G13ãããã°ããŒãã䜿çšããŠãã«ããµã¹RL78ã·ãªãŒãºãã€ã¯ãã³ã³ãããŒã©ã䜿çšããããã®ãšã³ããªãããå€ãè©äŸ¡ããŠãã ããã
R5F100LEAFBãã€ã¯ãã³ã³ãããŒã©ãŒã¯ãRL78 / G13ãã¡ããªãŒã«å±ããããªã³ããŒããã§ã€ã³ã¹ããŒã«ãããŸãã64KBãã©ãã·ã¥ã¡ã¢ãªã4 KB RAMãããŒã¿ãä¿åããããã®æžãæããµã€ã¯ã«ãå¢å ãã4 KBãã©ãã·ã¥ã¡ã¢ãªãå²ãåœãŠãããŸãã 12ãã£ãã«ã®å
èµADCã¯æå€§10ãããã®è§£å床ãæäŸãã2ãã£ãã«ã®DMAã¯åä¿¡ããŒã¿ãã¡ã¢ãªã«ä¿åããã®ã«åœ¹ç«ã¡ãŸãã 14åã®ã¿ã€ããŒãã£ãã«ã7åã®PWMãã£ãã«ã3åã®UARTã7åã®I2Cã¯ã1.60ãã«ã®LFQFP64ããã±ãŒãžã®ãèµ€ã¡ãããã«éåžžã«é©ããŠããŸãïŒ1000å以äžã®ãããã§ïŒã
ãã®æ²ç€ºæ¿ã¯ãã«ããµã¹èªäœãããã¢ãŒã·ã§ã³æ²ç€ºæ¿ã®ã»ã¯ã·ã§ã³ã«èµ·å ããŠãããããå°å£²äŸ¡æ Œã¯25ãã«ã§ãã å
¬å¹³ã«ã¯ãããã¯äŒç€Ÿã«ãšã£ãŠæãè峿·±ããªãã¡ãŒã§ã¯ãããŸãããRL78/ L12ã®ãããã°ããŒãYRPBRL78L12ã¯çŸåšããã10ãã«ã§æäŸãããŠããŸãã ãåžæã®æ¹ã«ã¯ã倿°ã®å€§èŠæš¡ãªãã¢ãã«ãããããã°ããããŸãã

ãããã°ããŒãRenesas YRPBRL78G13
ããŒãã¯100x30 mmã®ã³ã³ãã¯ããªãã©ãŒã ãã¡ã¯ã¿ãŒã§äœãããŠãããRL78 / G13ã³ã³ãããŒã©ãŒèªäœã«å ããŠãUSBãä»ããŠããŒãããã©ãã·ã¥ããã ãã§ãªãããªã¢ã«ã¿ã€ã ã§ã€ã³ãµãŒããããããã°ãå®è¡ã§ããããŒããŠã§ã¢ãããã¬ãŒãå«ãŸããŠããŸãã ãã®ããŒãã¯ãUSBãã¹ãšå€éšé»æºã®äž¡æ¹ããé»åãäŸçµŠããŸãã

ã«ããµã¹YRPBRL78G13éçºããŒãå³
å€éšé»æºïŒ+ 5VïŒã¯ãJ4ã³ãã¯ã¿ã䜿çšããŠããŒãã«çŽæ¥æ¥ç¶ã§ãã飿¥ãããããã忥ç¶ããå¿
èŠããããŸãã ãžã£ã³ãJ6ãJ9ã䜿çšããŠãUSBããŒããæ©èœãããã©ãããéžæã§ããŸããOCDïŒãªã³ããããããã°ïŒãŸãã¯ä»®æ³UARTïŒåè¿°ã®78K0ãã¡ããªã®è¿œå ã®8ãããã³ã³ãããŒã©ÎŒPD78F0730ã䜿çšããUSBââçµç±ã®COMããŒããšãã¥ã¬ãŒã¿ïŒã ãã ããä»®æ³UARTã¯ããããã°äžã«ãžã£ã³ããçµ¶ããåé
眮ããå¿
èŠããããããåžžã«äœ¿çšãããšäŸ¿å©ã§ã¯ãããŸããã å¿
èŠã«å¿ããŠãJ5ã³ãã¯ã¿ãä»ããŠæ¥ç¶ãããå€éšãããã¬Renesas E1ã䜿çšã§ããŸãã
ãã€ã¯ãã³ã³ãããŒã©ãŒã®ã»ãŒãã¹ãŠã®ãã³ã¯ãé·ãè¡J1ããã³J2ã«è¡šç€ºãããŸãã J10ã³ãã¯ã¿ã¯ãå®çšŒåç°å¢ã§78K0è£å©ã³ã³ãããŒã©ããã©ãã·ã¥ããããã«äœ¿çšãããŸãã ãã€ã¯ãã³ã³ãããŒã©ã®é»åæ¶è²»ãå¶åŸ¡ããããã«ããžã£ã³ãJ3ãä»ããŠé»åãäŸçµŠãããŸãã
ããŒãã«ã¯ã2ã€ã®LEDïŒé»æºã€ã³ãžã±ãŒã¿ãšãŠãŒã¶ãŒLEDïŒãšã10ãããADCãã€ã¯ãã³ã³ãããŒã©ãŒã«æ¥ç¶ãããããã³ã·ã§ã¡ãŒã¿ãŒããããŸãã è峿·±ãããšã«ãããã³ã·ã§ã¡ãŒã¿ãŒã調æŽããããã«ãå°ããªãã©ã€ããŒãããŒãã«ä»å±ããŠããŸãã
ãããã£ãŠãããŒããŠã§ã¢ã䜿çšãããšããã¹ãŠãæç¢ºã«ãªããŸããæ¬¡ã«ãã«ããµã¹ããœãããŠã§ã¢éçºè
ã«æäŸãããã®ãèŠãŠã¿ãŸãããã
éçºã¯ææžåããå§ãŸããããã§ã«ããµã¹ã¯åŸãã¹ãäŸãšåŒã¶ããšãã§ããŸãïŒä»æ§ã¯èªç±ã«ç°¡åã«èŠã€ããããšãã§ãããã®é¢é£æ§ãšå®å
šæ§ã§ã»ãšãã©ã®å Žååé¡ã¯ãããŸãã-ææžã®éã¯åå¿è
ã§ãæããããããšãã§ããŸãã ã¡ãŒã«ãŒã¯åŸæ¥ãåšèŸºæ©åšã®èª¬æãšã¢ããªã±ãŒã·ã§ã³ããŒãã«ç¹å¥ãªæ³šæãæã£ãŠããŸãã ã«ããµã¹ã¯åºãæ®åããŠãããããæ§ãããªååã®ã«ããµã¹ã©ã«ããæã€ç¬èªã®ãªã³ã©ã€ã³ã³ãã¥ããã£ããããŸãã
RL78ã®ã³ãŒãèšèªã¯Cã§ãã éçºç°å¢ãšããŠãå€ãã®æãããŠããRL78ãµããŒãïŒããŒãžã§ã³EWRL78ïŒãåããIAR Embedded Workbenchã®å€ããæäŸãããŠããŸãã IARã«çµã¿èŸŒãŸããC-SPYãããã¬ãŒã¯å®å
šã«ãµããŒããããŠããŸããã¬ãžã¹ã¿ãŒ/倿°ã衚瀺ããªããããã¬ãŒã¯ãã€ã³ããèšå®ããã³ãŒããèªç±ã«æ©ãåãããšãã§ããŸãã ãŸããéçºç°å¢ãšããŠãe²studioïŒEclipse Embedded StudioïŒãGDBãããã¬ãŒãä»ã®å€ãã®ãŠãŒãã£ãªãã£ãšãšãã«äœ¿çšã§ããŸãã
ãã¡ãŒã ãŠã§ã¢ã³ãŒãã¯ããã¢ã¡ã¿ã«ãšRTOSã®äž¡æ¹ã§èšè¿°ã§ããŸãïŒã¡ãŒã«ãŒã¯ãFreeRTOSãCMX-RTXãMicriumÎŒC/ OSãOSEK Run Time InterfaceïŒORTIïŒãExpress LogicãŸãã¯Segger embOSã®å®è£
ã䜿çšããããšãæšå¥šããŠããŸãã ããŒã ãªãŒãã¡ãŒã·ã§ã³æå¥œå®¶ã«ã¯ãKNXã¹ã¿ãã¯ã®å®è£
ããããŸãã
ã³ã³ãããŒã©ãŒã«ãã¡ãŒã ãŠã§ã¢ãã¢ããããŒãããããã®å€ãã®ã¢ããªã±ãŒã·ã§ã³ããããŸããããšãã°ãç¡æã®ãŠãŒãã£ãªãã£WriteEZ5ã§ãã ãã®ãŠãŒãã£ãªãã£ã¯æ±çšã§ããç¹å®ã®ãã€ã¯ãã³ã³ãããŒã©ã¢ãã«ããµããŒãããã«ã¯ã察å¿ããæ§æãã¡ã€ã«ãpr5圢åŒã§ããŠã³ããŒããããã©ãã·ã¥ããåã«ããã°ã©ã ããã€ã³ãããã ãã§ååã§ãã
ã«ããµã¹ã¯ãã°ã©ãã£ã«ã«ãŠãŒãã£ãªãã£Appliletã䜿çšããŠãããã°ã©ã ã³ãŒãéçºã®èгç¹ããæãè峿·±ãã¢ãããŒãã瀺ããŠããŸãã ãã®ãŠãŒãã£ãªãã£ã䜿çšãããšããã€ã¯ãã³ã³ãããŒã©ãŒãgpioãå²ã蟌ã¿ãµãã·ã¹ãã ãADC / DACåäœã¢ãŒãã§äœ¿çšããããã¹ãŠã®åšèŸºæ©åšã人éãèªãã圢åŒã§æ§æãããã®æ§æã«åºã¥ããŠããã¹ãŠã®ã€ãã³ããã³ãã©ãŒã®åæåã³ãŒããšãã¹ã¿ãããçæã§ããŸãã çæãããã³ãŒãã¯ãããžã§ã¯ãã®åºç€ãšããŠäœ¿çšã§ããã³ãŒããæŽçããããã®ã«ãŒã«ïŒäžèšåç
§ïŒã«åŸã£ãŠããã€ã§ã宿ãããããžã§ã¯ãã®æ§æã倿Žã§ããŸãã
ãã®ãããªã¢ãããŒãã«ãããã¢ããªã±ãŒã·ã§ã³ããžãã¯ãåšèŸºã®åæåãããã³ç®¡ççšã®APIã«éäžããŠãçæããããŠãŒãã£ãªãã£ã³ãŒããåŒãç¶ãããšãã§ããŸãã åæã«ãä»ã®ãã³ããŒã®å Žåã®ããã«ãåšèŸºæ©åšãæäœããããã«å·šå€§ãªã©ã€ãã©ãªãæ±ãå¿
èŠã¯ãªããçæãããã³ãŒãã«ã¯æå°éã®åé·æ§ãå«ãŸããããšãä¿èšŒãããŠããŸãã
ãããã£ãŠãRL78ã®ãšã³ããªãããå€ã¯å€§å¹
ã«åæžããããã€ã¯ãã³ã³ãããŒã©ãŒã®ããã°ã©ãã³ã°ã®çµéšã®ãªãéçºè
ã§ããæå°éã®æéã§ç°¡åãªãã¡ãŒã ãŠã§ã¢ãäœæã§ããŸãã
äŸãšããŠããã€ã¯ãã³ã³ãããŒã©ã®äžçããäŒçµ±çãªHelloã®äžçãæžãæ¹æ³ã瀺ããŸã-LEDã§ç¹æ»
ããŸãã ãããŠããããããã»ã©éå±ã§ã¯ãªãããã«ãç§ãã¡ã¯çç±ã®ããã«ç¹æ»
ããŸããããã«ã¹å¹
å€èª¿ãšã¿ã€ããŒã䜿çšããŠLEDãã¹ã ãŒãºã«ãªã³/ãªãããŸãã åèšã§3ã€ã®ã¿ã€ããŒãå¿
èŠã«ãªããŸãããã®ãã¡2ã€ã¯PWMã«äœ¿çšããã3ã€ç®ã¯ãã«ã¹ã®ãã¥ãŒãã£ãµã€ã¯ã«ãã¹ã ãŒãºã«å€æŽããŸãããã®å ŽåãèŒåºŠãå€åããŸãã
Renesas AppliletãŠãŒãã£ãªãã£ãéããR5F100LEAFBã³ã³ãããŒã©ãŒã®æ°ãããããžã§ã¯ããäœæããŸãã

RL78 / G13ã®ãŠãŒãã£ãªãã£ãŠã£ã³ããŠApplilet3ã®æ°ãããããžã§ã¯ã
ããã¯ãã¿ã€ããŒãã£ãã«ã®ãŒãèšå®ã¿ãã§éããŠããçŸåšã®ããŒãžã§ã³3ã§ã®AppliletãŠãŒãã£ãªãã£ãŠã£ã³ããŠã®å€èгã§ãã é©åãªåäœã¢ãŒãã䜿çšããå Žåããã£ãã«0ã¯PWMåšæãèšå®ããã¿ã€ããŒçšã«äºçŽãããŠãããããèšå®ãè±å¯ã§ã¯ãããŸããã åšèŸºããã®ä»ã®å²ã蟌ã¿ãšåæ§ã«ãINTTM00å²ã蟌ã¿ããªã³ã«ãªããšããã®å²ã蟌ã¿ã®ãã¹ã¿ããã®ã³ãŒãããŠãŒãã£ãªãã£ã«ãã£ãŠçæãããã³ãŒãã«èªåçã«è¿œå ïŒããã³åæåïŒãããŸãã
ãã£ãã«1ã¯ãæéã®ã¢ã¯ãã£ããªéšåãçŽæ¥èšå®ããããããã®æ§æã®ã¿ãã§ãã¢ã¯ãã£ãã¬ãã«ã®å¹
ïŒãã£ãã«0ã®æéã®å²åãšããŠïŒããã³ã¬ãã«èšå®ãèšå®ã§ããŸãã

Applilet3ã®RL78 / G13ã®ãŠãŒãã£ãªãã£ãŠã£ã³ããŠã§ã®ãã£ãã«1èšå®
ãŸãã0.2ç§ããšã«å²ã蟌ã¿ãçæãããããããã€ã³ã¿ãŒãã«ã¿ã€ããŒãå¿
èŠã§ãã ãã®æ§æã¯ãAppliletãŠãŒãã£ãªãã£ã€ã³ã¿ãŒãã§ã€ã¹ã®ããã€ãã®ããã§ãã¯ãã«ããªããŸãã

RL78 / G13ã®Applilet3ã®ãŠãŒãã£ãªãã£ãŠã£ã³ããŠã§ã€ã³ã¿ãŒãã«ã¿ã€ããŒãèšå®ãã
ãããŠãã¡ãããLEDãæ¥ç¶ãããŠããP77ãã³ãåºåã¢ãŒãã«ããå¿
èŠããããŸãã

RL78 / G13ã®ãŠãŒãã£ãªãã£ãŠã£ã³ããŠApplilet3ã§ãã³P77ãæ§æãã
ããã§åæ¢ãããããžã§ã¯ããä¿åããŠã倧åãªãã¿ã³ãã³ãŒããçæããæŒããŠãã ããã IARãéçºç°å¢ãšããŠäœ¿çšããŸãã
çæããããããžã§ã¯ãã®ãã¡ã€ã«ãèŠãŠã¿ãŸãããã
r_cg_cgc.c
r_cg_cgc_user.c
r_cg_it.c
r_cg_it_user.c
r_cg_port.c
r_cg_port_user.c
r_cg_timer.c
r_cg_timer_user.c
r_main.c
r_systeminit.c
ååãããããããã«ããã¹ãŠã®ã³ãŒãã¯å®è¡ãããæ©èœã«å¿ããŠã¢ãžã¥ãŒã«ã«åå²ãããŸãïŒã¯ããã¯ãžã§ãã¬ãŒã¿ãŒãã€ã³ã¿ãŒãã«ã¿ã€ããŒãgpioãã¿ã€ããŒãã¡ã€ã³ããã°ã©ã ãµã€ã¯ã«ïŒãã®å Žåã¯ç©ºïŒãããã³ã³ã³ãããŒã©ãŒã®äœã¬ãã«åæåã³ãŒãã * _user.cã®åœ¢åŒã®ãã¡ã€ã«ã«ã¯ã察å¿ããåšèŸºæ©åšã®ã€ãã³ããã³ãã©ãŒã®ã¹ã¿ããå«ãŸããŠããŸãã
r_cg_it_user.cãã¡ã€ã«ãéããã€ã³ã¿ãŒãã«ã¿ã€ããŒãã³ãã©ãŒã倿ŽããŸãã ãã³ãã©ãŒãåŒã³åºããã³ã«ãã¹ãããæ°STEPS_NUMã§æå®ãããéã ãPWMãã¥ãŒãã£ãµã€ã¯ã«ãæžå°ãŸãã¯å¢å ããŸãã æå€§ãŸãã¯æå°ã«éãããšãèŒåºŠã®å€åã®æ¹åãéã«ãªããŸãã
#pragma vector = INTIT_vect __interrupt static void r_it_interrupt(void) { int16_t TDR0_value, TDR1_value, step; R_TAU0_Channel0_Stop(); TDR0_value = TDR00; TDR1_value = TDR01; step = TDR0_value / STEPS_NUM; if (moving_up == 1) { if (TDR1_value > TDR0_value - step) moving_up = 0; else TDR1_value += step; } else { if (TDR1_value < step) moving_up = 1; else TDR1_value -= step; } TDR01 = TDR1_value; R_TAU0_Channel0_Start(); }
ã芧ã®ãšãããçæããããããžã§ã¯ãã«ã¯ããŠãŒã¶ãŒã«ãã£ãŠèªåçã«çæãããŠèšè¿°ãããã³ãŒããåé¢ããããã«èšèšãããã³ã¡ã³ãã倿°ãããŸãã ãããã®å¢çã芳å¯ããŠã³ã¡ã³ããä¿åãããšããããžã§ã¯ãã®æ¢åã®ãŠãŒã¶ãŒã³ãŒãã倱ãããšãªãããã€ã§ãAppliletãŠãŒãã£ãªãã£ã䜿çšããŠåšèŸºæ©åšã®èšå®ã倿Žã§ããŸãã
ãããžã§ã¯ãã«è¿œå ããå¿
èŠãããã®ã¯ãLEDãæ¥ç¶ãããŠããPWMã¹ããŒã¿ã¹ãšP77ãã³ã®æ¥ç¶ã ãã§ãã ãããè¡ãã«ã¯ããã£ãã«0ã¿ã€ããŒå²ã蟌ã¿ãããªã¬ãŒããããšãã«ãã³ã³ãããŒã©ãŒã¬ãã°ã1ã«èšå®ããŸãã
#pragma vector = INTTM00_vect __interrupt static void r_tau0_channel0_interrupt(void) { P7_bit.no7 |= 1; }
ãŸãããã£ãã«1ã§ã¯ããã®å€ããŒãã«ãªã»ããããŸãã
#pragma vector = INTTM01_vect __interrupt static void r_tau0_channel1_interrupt(void) { P7_bit.no7 &= 0; }
ãã¹ãŠã®æºåãæŽã£ãŠããŸãïŒãããžã§ã¯ããã³ã³ãã€ã«ããWriteEZãŠãŒãã£ãªãã£ã䜿çšããŠã³ã³ãããŒã©ãŒã«å
¥åãããããã°ããŒãã®ãžã£ã³ããŒããããã°ã¢ãŒãããåäœã¢ãŒãã«åé
眮ããå¿
èŠã«å¿ããŠããŒãäžã®LEDããã£ãããšã¹ã ãŒãºã«ç¹ç¯ããã³æ¶ç¯ããæ§åã芳å¯ããŸãã
瀺ãããã¢ãããŒãã䜿çšãããšãã«ããµã¹RL78ã·ãªãŒãºãã€ã¯ãã³ã³ãããŒã©ãŒã®å
éšæ©èœã¯ç§ãã¡ã«ãšã£ãŠèå°è£ã®ãŸãŸã§ããããè€éãªãããžã§ã¯ããå®è£
ãããšãã«èŠæ±ã®å³ããéçºè
ã®ããŒãºãæºãããŠããªãå¯èœæ§ããããŸãããç°¡åãªæäœã¢ã«ãŽãªãºã ã§ã¯ãã«ããµã¹RL78ã³ã³ãããŒã©ãŒåšèŸºæ©åšã®åºç¯ãªãªã¹ãã®åæåã³ãŒãã®èªåçæã䜿çšãããšã倧å¹
ã«åæžã§ããŸãæéããããã£ãŠè¶
äœæ¶è²»é»åã®ããã€ã¹ã®éçºã³ã¹ãã
質åãã³ã¡ã³ããæè¿ããŸãã
PSãã®èšäºã¯ããžã£ãŒãã«Vestnik Elektronikiã®ææ°å·ã«æ²èŒãããŸããã é»åæ©åšã®éçºã«äœ¿çšããä»ã®é»åéšåããã³æè¡ã«é¢ãã詳现æ
å ±ã¯ãPromwadããŒã ã®Webãµã€ãã®
ãæè¡ãã»ã¯ã·ã§ã³ã«ãããŸãã