[363] | 1 |
|
---|
| 2 | ï¼ TOPPERS/JSPã«ã¼ãã« ã¦ã¼ã¶ãºããã¥ã¢ã« ï¼
|
---|
| 3 | ï¼Xstormy16 ã¿ã¼ã²ããä¾åé¨ï¼
|
---|
| 4 |
|
---|
| 5 | ï¼Release 1.4.4対å¿ï¼æçµæ´æ°: 07-Dec-2010ï¼
|
---|
| 6 |
|
---|
| 7 | ------------------------------------------------------------------------
|
---|
| 8 | TOPPERS/JSP Kernel
|
---|
| 9 | Toyohashi Open Platform for Embedded Real-Time Systems/
|
---|
| 10 | Just Standard Profile Kernel
|
---|
| 11 |
|
---|
| 12 | Copyright (C) 2003 by Embedded and Real-Time Systems Laboratory
|
---|
| 13 | Toyohashi Univ. of Technology, JAPAN
|
---|
| 14 | Copyright (C) 2004-2010 by Embedded and Real-Time Systems Laboratory
|
---|
| 15 | Graduate School of Information Science, Nagoya Univ., JAPAN
|
---|
| 16 |
|
---|
| 17 | ä¸è¨èä½æ¨©è
|
---|
| 18 | ã¯ï¼ä»¥ä¸ã® (1)ã(3) ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ããã¥ã¡
|
---|
| 19 | ã³ãï¼æ¬ããã¥ã¡ã³ããæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹
|
---|
| 20 | å¤ã»åé
|
---|
| 21 | å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
|
---|
| 22 | (1) æ¬ããã¥ã¡ã³ããå©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶
|
---|
| 23 | ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ããã¥ã¡ã³ãä¸ã«å«ã¾ãã¦
|
---|
| 24 | ãããã¨ï¼
|
---|
| 25 | (2) æ¬ããã¥ã¡ã³ããæ¹å¤ããå ´åã«ã¯ï¼ããã¥ã¡ã³ããæ¹å¤ããæ¨ã®è¨è¿°
|
---|
| 26 | ãï¼æ¹å¤å¾ã®ããã¥ã¡ã³ãä¸ã«å«ãããã¨ï¼ãã ãï¼æ¹å¤å¾ã®ããã¥ã¡
|
---|
| 27 | ã³ããï¼TOPPERSããã¸ã§ã¯ãæå®ã®éçºææç©ã§ããå ´åã«ã¯ï¼ãã®é
|
---|
| 28 | ãã§ã¯ãªãï¼
|
---|
| 29 | (3) æ¬ããã¥ã¡ã³ãã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害
|
---|
| 30 | ãããï¼ä¸è¨èä½æ¨©è
|
---|
| 31 | ããã³TOPPERSããã¸ã§ã¯ããå
|
---|
| 32 | 責ãããã¨ï¼ã¾ãï¼
|
---|
| 33 | æ¬ããã¥ã¡ã³ãã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãçç±ã«åºã¥
|
---|
| 34 | ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
|
---|
| 35 | ããã³TOPPERSããã¸ã§ã¯ããå
|
---|
| 36 | 責ãããã¨ï¼
|
---|
| 37 |
|
---|
| 38 | æ¬ããã¥ã¡ã³ãã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
|
---|
| 39 | ãã
|
---|
| 40 | ã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ããã¥ã¡ã³ãã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®çã«å¯¾ã
|
---|
| 41 | ãé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ããã¥ã¡ã³ãã®å©ç¨
|
---|
| 42 | ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè²
|
---|
| 43 | ããªãï¼
|
---|
| 44 |
|
---|
| 45 | ------------------------------------------------------------------------
|
---|
| 46 |
|
---|
| 47 | ï¼ï¼Xstormy16 ã¿ã¼ã²ããä¾åé¨ã®æ¦è¦
|
---|
| 48 |
|
---|
| 49 | 1.1 ã¿ã¼ã²ããã·ã¹ãã ã¨éçºç°å¢
|
---|
| 50 |
|
---|
| 51 | TOPPSER/JSPå
|
---|
| 52 | ¬å¼å
|
---|
| 53 | ¬éçã§ã®Xstormy16ããã»ããµã®ã¿ã¼ã²ããã·ã¹ãã ã¨ãã¦
|
---|
| 54 | ã¯ããä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ãã®EVAãããã¬ã®ã¨ãã¥
|
---|
| 55 | ã¬ã¼ã·ã§ã³ç°å¢ããµãã¼ããã¦ããã
|
---|
| 56 | ãä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ãã¯ä»¥ä¸ããå
|
---|
| 57 | ¥æã§ããã
|
---|
| 58 | http://semicon.sanyo.com/jp/micon/index.php
|
---|
| 59 | ãã®ä¸ã«Cã³ã³ãã¤ã©çãå«ã¾ããã
|
---|
| 60 | Xstormy16ã·ãªã¼ãºã®åCPUã«å¯¾å¿ããTOPPERS/JSPé¢é£ã®ãã¡ã¤ã«ã¯ãä¸è¨ã«é
|
---|
| 61 | æ追å ãããã®ã§ãéã¨ãã¥ã¬ã¼ã·ã§ã³ç°å¢ã§ã®åä½ãå®éã®è£½åéçºãè¡ã
|
---|
| 62 | å ´åã¯ãä¸è¨ããå
|
---|
| 63 | ¥æã§ããææ°çã®ãã¡ã¤ã«ã使ç¨ããå¿
|
---|
| 64 | è¦ãããã
|
---|
| 65 | ã¾ããä¸è¨éçºãã¼ã«ä¸ã«ã¯ãTOPPERS/JSPããã¼ã¹ã«ããã¤ãã®ä¿®æ£ãè¡ã£ã
|
---|
| 66 | ãã®ããã½ã¼ã¹ããã³ã³ã³ãã¤ã«æ¸ã¿ã®ã©ã¤ãã©ãªã®å½¢ã§ç´ãããã¦ããã®ã§ã
|
---|
| 67 | ã«ã¼ãã«èªèº«ãä¿®æ£ã»åã³ã³ãã¤ã«ããå¿
|
---|
| 68 | è¦ããªãã®ã§ããã°ãä¸è¨éçºãã¼
|
---|
| 69 | ã«ããã¦ã³ãã¼ãã»ã¤ã³ã¹ãã¼ã«ããã®ã¿ã§ãTOPPERS/JSPãå©ç¨ã§ããã
|
---|
| 70 |
|
---|
| 71 | 1.2 ãµãã¼ãããæ©è½ã®æ¦è¦
|
---|
| 72 |
|
---|
| 73 | Xstormy16ã§ã¯ãJSPã§æ¡å¼µããã以ä¸ã®æ©è½ã¯ãµãã¼ããã¦ããªãã
|
---|
| 74 | (1) å²è¾¼ã¿ãã¹ã¯ã®å¤æ´ã»åç
|
---|
| 75 | §(chg_ixx/get_ixx)
|
---|
| 76 | (2) å²è¾¼ã¿ã®ç¦æ¢ã¨è¨±å¯(dis_int/ena_int)
|
---|
| 77 | (3) æ§è½è©ä¾¡ç¨ã·ã¹ãã æå»åç
|
---|
| 78 | §æ©è½(vxget_tim)
|
---|
| 79 | Xstormy16ã§ã¯ãå²ãè¾¼ã¿ã®è¨±å¯ã»ç¦æ¢ããã³ã¬ãã«(åªå
|
---|
| 80 | 度)ãSFR(IL1L-IL2H)
|
---|
| 81 | ã§ç®¡çããã¦ãããããä¸è¨APIã«é©åããªãããããã®å¤æ´ã¯SFRã¸ã®è¨å®ã«
|
---|
| 82 | ãã£ã¦å¤æ´ããå¿
|
---|
| 83 | è¦ãããã
|
---|
| 84 |
|
---|
| 85 | 1.3 ä»ã®ã¿ã¼ã²ããã¸ã®ãã¼ãã£ã³ã°
|
---|
| 86 |
|
---|
| 87 | Xstormy16ã·ãªã¼ãºã®(LC590200ãé¤ã)å
|
---|
| 88 | ¨ã¦ã®CPUã§ã¯CPUã³ã¢èªèº«ã®æ©è½ããã³
|
---|
| 89 | ã¿ã¤ã ã¹ãã£ãã¯ä¾çµ¦ç¨ã®ã¿ã¤ãã¯åä¸ã®ä»æ§ã§å®è£
|
---|
| 90 | ããã¦ãããã¾ãSIOãå®
|
---|
| 91 | è£
|
---|
| 92 | ããã¦ããæ©ç¨®ã§ã¯å
|
---|
| 93 | ¨ã¦åä¸ã®ä»æ§ã¨ãªã£ã¦ããã®ã§ãä»ã®ã¿ã¼ã²ããã¸ã®
|
---|
| 94 | ãã¼ãã£ã³ã°ãè¡ãæã«ãã«ã¼ãã«èªèº«ã¯ä¿®æ£ããå¿
|
---|
| 95 | è¦ã¯ãªãã
|
---|
| 96 | å®è£
|
---|
| 97 | ããã¦ããã¡ã¢ãªãµã¤ãºã«å¿ãããªã³ã«ã¼ã¹ã¯ãªããçãã¿ã¼ã²ããæ¯ã«
|
---|
| 98 | ä¿®æ£ãå¿
|
---|
| 99 | è¦ãªãã¡ã¤ã«ã¯ãä¸è¨ãä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ã
|
---|
| 100 | ã«å«ã¾ãã¦ããã®ã§ãããã使ç¨ããã
|
---|
| 101 |
|
---|
| 102 | 1.4 ã·ãªã¢ã«ãã¼ã (UART)
|
---|
| 103 |
|
---|
| 104 | EVAãããã¬ã§ã¯ãã¨ãã¥ã¬ã¼ã·ã§ã³ç°å¢ã»éã¨ãã¥ã¬ã¼ã·ã§ã³ç°å¢ã¨ãã«UART0
|
---|
| 105 | ã¨UART1ã®2æ¬ã®ã·ãªã¢ã«ãã¼ããæã¤ãã¾ããå®CPUã§ãåæ§ã®ä»æ§ã§UARTãæ
|
---|
| 106 | ã¤æ©ç¨®ãããã
|
---|
| 107 | TOPPERS/JSPã®ãã°åºåãããã³printf()/scanf()çã®æ¨æºå
|
---|
| 108 | ¥åºåã«ã¯ããã®å
|
---|
| 109 |
|
---|
| 110 | UART0ãç¨ããã(sys_config.hã®LOGTASK_PORTIDã§å¤æ´å¯è½)
|
---|
| 111 | ã·ãªã¢ã«ãã¼ãã®è¨å®ã以ä¸ã«ç¤ºãã
|
---|
| 112 | ã»ãã¼ã¬ã¤ãã57600Baud
|
---|
| 113 | ã»ãã¼ã¿é·ã8 ããã
|
---|
| 114 | ã»ã¹ããããããã1 ããã
|
---|
| 115 | ã»ããªãã£ãªã
|
---|
| 116 | ã»ããã¼å¶å¾¡ãªã
|
---|
| 117 |
|
---|
| 118 | ï¼ï¼Xstormy16 ããã»ããµä¾åé¨ã®æ©è½
|
---|
| 119 |
|
---|
| 120 | ãã®ç¯ã§ã¯ãã«ã¼ãã«ããã³ã·ã¹ãã ãµã¼ãã¹ã®æ©è½ã®ä¸ã§ãXstormy16ä¾åã®
|
---|
| 121 | é¨åã«ã¤ãã¦è§£èª¬ããã
|
---|
| 122 |
|
---|
| 123 | 2.1 ãã¼ã¿å
|
---|
| 124 |
|
---|
| 125 | signed intåããã³ unsigned intåã®ãµã¤ãºã¯ 16ãããã§ããã
|
---|
| 126 |
|
---|
| 127 | 2.2 å²è¾¼ã¿ç®¡çæ©è½ã¨å²è¾¼ã¿ãã³ãã©
|
---|
| 128 |
|
---|
| 129 | 2.2.1 ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿
|
---|
| 130 |
|
---|
| 131 | ãXstormy16ããã°ã©ãã¼ãºã¬ã¤ãã2.4ç« ã«è¨è¿°ãããæ¹æ³ã§å®ç¾©ãããå²ã
|
---|
| 132 | è¾¼ã¿å¦çã«ã¼ãã³ã¯ãã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿ã¨ãã¦æ©è½ããã
|
---|
| 133 | ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿ã¯ã«ã¼ãã«ã«é¢é£ããä½åãªãªã¼ãã¼ããããå°ãª
|
---|
| 134 | ãé«éã§ããå©ç¹ãããåé¢ã以ä¸ã®ç¹ã«æ³¨æããå¿
|
---|
| 135 | è¦ãããã
|
---|
| 136 | (1) ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿ã®åªå
|
---|
| 137 | 度ã¯ãå
|
---|
| 138 | ¨ã¦ã®ã«ã¼ãã«ç®¡çã®å²ãè¾¼ã¿ã®
|
---|
| 139 | åªå
|
---|
| 140 | 度ãããé«ããªããã°ãªããªãã(ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿å¦çä¸ã«
|
---|
| 141 | ã«ã¼ãã«ç®¡çã®å²ãè¾¼ã¿ãåãä»ããã¨ãããã§ãã£ã¹ããããçºçãã
|
---|
| 142 | ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿ã®å¦çãéä¸ã§ä¸æãã¦ãã¾ãå¯è½æ§ãããã
|
---|
| 143 | ãã)
|
---|
| 144 | ãä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ãã«å«ã¾ããçã§ã¯ã"é
|
---|
| 145 | ã¿ã¹ã¯ã³ã³ããã¹ãããã®ãµã¼ãã¹ã³ã¼ã«ã®é
|
---|
| 146 | 延å®è¡"ãæ¡ç¨ãã¦ããããã
|
---|
| 147 | ãã®å¶éã¯ãªãã
|
---|
| 148 | (2) ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿ã®å²ãè¾¼ã¿å¦çã«ã¼ãã³ã§ã¯ãã«ã¼ãã«ãµã¼ã
|
---|
| 149 | ã¹ãå¼ã³åºãã¦ã¯ãªããªãã
|
---|
| 150 | (3) ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿ã§ã¯ããã®çºçæã®ã¹ã¿ãã¯ããã®ã¾ã¾ç¨ãã
|
---|
| 151 | ãããå
|
---|
| 152 | ¨ã¦ã®ã¿ã¹ã¯ã®ã¹ã¿ãã¯ã®å®¹éã«ãã®å¿
|
---|
| 153 | è¦åãå
|
---|
| 154 | ¥ãã¦ããå¿
|
---|
| 155 | è¦ãã
|
---|
| 156 | ãã
|
---|
| 157 | (4) ã«ã¼ãã«ç®¡çå¤ã®å²ãè¾¼ã¿ããCPUããã¯ç¶æ
|
---|
| 158 | ã§ã¯åãä»ããããªãã
|
---|
| 159 | å
|
---|
| 160 | ¬å¼å
|
---|
| 161 | ¬éçã®Xstormy16ç¨TOPPERS/JSPã§ã¯ã大é¨åã®ãµã¼ãã¹ã³ã¼ã«ãå
|
---|
| 162 |
|
---|
| 163 | é¨ã§ã¯CPUããã¯ç¶æ
|
---|
| 164 | ã¨ãªã£ã¦ããã®ã§æ³¨æãå¿
|
---|
| 165 | è¦ã
|
---|
| 166 | ãä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ãã«å«ã¾ããçã§ã¯ããµã¼
|
---|
| 167 | ãã¹ã³ã¼ã«å
|
---|
| 168 | ã§CPUãããã¯ããªããå²ãè¾¼ã¿ãã³ãã©ã®å
|
---|
| 169 | ¥ãå£ã»åºå£å¦ç
|
---|
| 170 | çã§æ大12ã¯ããã¯ã®CPUããã¯ã®åºéãããã
|
---|
| 171 |
|
---|
| 172 | 2.2.2 å²è¾¼ã¿ãã³ãã©çªå·
|
---|
| 173 |
|
---|
| 174 | DEF_INH ã§æå®ããå²è¾¼ã¿ãã³ãã©çªå·(inhno)ã¯ãXstormy16 ã§ã®å²ãè¾¼ã¿
|
---|
| 175 | ãã¯ã¿çªå·ã表ãããã®ãã¼ã¿å(INHNO)㯠unsigned intåã«å®ç¾©ããã¦ããã
|
---|
| 176 | å²ãè¾¼ã¿ãã³ãã©çªå·ã«ã¯ã0-16ãæå®ã§ããEVAãããã¬ã®ã¨ãã¥ã¬ã¼ã·ã§ã³
|
---|
| 177 | ç°å¢ã§ã¯ã以ä¸ãå®è£
|
---|
| 178 | ããã¦ããã
|
---|
| 179 | 1 : Base Timer (ã¢ããªã±ã¼ã·ã§ã³ã§ä½¿ç¨å¯)
|
---|
| 180 | 2 : Timer0 (ã¿ã¤ã ã¹ãã£ãã¯ä¾çµ¦ç¨ã«ä½¿ç¨)
|
---|
| 181 | 3 : Timer1 (ã¢ããªã±ã¼ã·ã§ã³ã§ä½¿ç¨å¯)
|
---|
| 182 | 16 : UART (ãã°åºåã»æ¨æºå
|
---|
| 183 | ¥åºåã§ä½¿ç¨)
|
---|
| 184 | å®CPUã§ä½¿ç¨å¯è½ãªå²ãè¾¼ã¿ã¨ä¾å¤ãã¯ã¿çªå·ã«ã¤ãã¦ã¯ãããããã®ãã¤ã³ã³
|
---|
| 185 | ã®ã¦ã¼ã¶ã¼ãºããã¥ã¢ã«ãåç
|
---|
| 186 | §ã
|
---|
| 187 |
|
---|
| 188 | 2.2.3 åã
|
---|
| 189 | ã®å²ãè¾¼ã¿ã®è¨±å¯ã»ç¦æ¢ã¨åªå
|
---|
| 190 | 度
|
---|
| 191 |
|
---|
| 192 | Xstormy16ã§ã¯ãåã
|
---|
| 193 | ã®å²ãè¾¼ã¿ã®è¨±å¯ã»ç¦æ¢ã¨åªå
|
---|
| 194 | 度ã¯ã«ã¼ãã«ã§ã¯ç®¡çããª
|
---|
| 195 | ãããããã®å¶å¾¡ã¯IL1L/IL1H/IL2L/IL2Hã¸ã®è¨å®ã§è¡ãã
|
---|
| 196 |
|
---|
| 197 | 2.3 CPUä¾å¤ç®¡çæ©è½ã¨CPUä¾å¤ãã³ãã©
|
---|
| 198 |
|
---|
| 199 | DEF_EXC ã§æå®ããå²è¾¼ã¿ãã³ãã©çªå·ã®ãã¼ã¿å(EXCNO)㯠unsigned int
|
---|
| 200 | åã«å®ç¾©ããã¦ããã以ä¸ã®çªå·ãæå®å¯è½ã§ããã
|
---|
| 201 | 0 : æªå®ç¾©å½ä»¤ã®å®è¡
|
---|
| 202 | 1 : å¥æ°çªå°ã¸ã®ã¯ã¼ãã¢ã¯ã»ã¹
|
---|
| 203 | 2 : ROM/RAMæªå®è£
|
---|
| 204 | ã¨ãªã¢ã¸ã®ã¢ã¯ã»ã¹
|
---|
| 205 |
|
---|
| 206 | 2.4 ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«
|
---|
| 207 |
|
---|
| 208 | Xstormy16ä¾åã®ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«(start.S)ã§ã¯ã次ã®åæåå¦çã
|
---|
| 209 | è¡ãã
|
---|
| 210 | (1) ã¹ã¿ãã¯ãã¤ã³ã¿ã®åæå
|
---|
| 211 | (2) .bssã»ã¯ã·ã§ã³ã®åæå
|
---|
| 212 | (3) .dataã»ã¯ã·ã§ã³ã®åæå
|
---|
| 213 | (4) ã«ã¼ãã«ã®èµ·å(kernel_startã¸åå²)
|
---|
| 214 |
|
---|
| 215 | 2.5 éã¿ã¹ã¯ã³ã³ããã¹ãã®ä½¿ç¨ããã¹ã¿ãã¯
|
---|
| 216 |
|
---|
| 217 | Xstormy16ã§ã¯ãå²ãè¾¼ã¿ãã³ãã©ãå«ãéã¿ã¹ã¯ã³ã³ããã¹ãç¨ã®ã¹ã¿ãã¯ã¨
|
---|
| 218 | ãã¦ãéçå¤æ°ãã¿ã¹ã¯ç¨ã¹ã¿ãã¯ã確ä¿ããå¾ã®æ®ãã®RAMã使ç¨ããã
|
---|
| 219 | ã¿ã¹ã¯å®è¡ä¸ã«å²ãè¾¼ã¿ãçºçããå ´åãå²ãè¾¼ã¿ãã³ãã©ãå¼ã³åºãããå
|
---|
| 220 | ã«ã«ã¼ãã«å
|
---|
| 221 | ã§ã¹ã¿ãã¯ãã¤ã³ã¿ãéã³ã³ããã¹ãç¨ã®ã¹ã¿ãã¯ã«åãæ¿ãã
|
---|
| 222 | ãããåã¿ã¹ã¯ç¨ã®ã¹ã¿ãã¯ã®å¿
|
---|
| 223 | è¦ãªãµã¤ãºã決ããæã«å²ãè¾¼ã¿ãã³ãã©å
|
---|
| 224 |
|
---|
| 225 | ã§ä½¿ç¨ãããã¹ã¿ãã¯ãèæ
|
---|
| 226 | ®ããå¿
|
---|
| 227 | è¦ã¯ãªãã
|
---|
| 228 | ããããå²ãè¾¼ã¿çºçæã®PCã¨PSWããã³R0-R2ã¾ã§ã®ä¿åã¯ã¹ã¿ãã¯ã®åãæ¿
|
---|
| 229 | ãåã«è¡ãããããã12ãã¤ãåã®ã¨ãªã¢ã¯ã¿ã¹ã¯ç¨ã®ã¹ã¿ãã¯ã§ç¢ºä¿ãã¦ã
|
---|
| 230 | ãå¿
|
---|
| 231 | è¦ãããã
|
---|
| 232 | ã¯ã¼ã¹ãã±ã¼ã¹ã¨ãªãã®ã¯ãã¬ãã«ï¼ã®å²ãè¾¼ã¿ã§ã¹ã¿ãã¯ãåãæ¿ããç´å
|
---|
| 233 | ã«ã¬ãã«ï¼ã®å²ãè¾¼ã¿ãçºçãããã«ã¬ãã«2å²ãè¾¼ã¿ã§ã®ã¹ã¿ãã¯åãæ¿ãç´
|
---|
| 234 | åã«ã¬ãã«ï¼å²ãè¾¼ã¿çºçã»ã»ã»ã¨ãªããããªå ´åã§ããã®å¿
|
---|
| 235 | è¦ãªã¨ãªã¢ã¯ã
|
---|
| 236 | 12 à (ãã¹ããã¦çºçããå¯è½æ§ã®ããå²ãè¾¼ã¿ã¬ãã«ã®æ°) ã«ãªãããã®å
|
---|
| 237 | ã®ã¨ãªã¢ã¯ã¿ã¹ã¯ã®ã¹ã¿ãã¯ã«ç¢ºä¿ãã¦ããå¿
|
---|
| 238 | è¦ããã
|
---|
| 239 |
|
---|
| 240 | 3. ã·ã¹ãã ä¾åé¨ã®æ©è½
|
---|
| 241 |
|
---|
| 242 | 3.1 ã·ã¹ãã ã¯ããã¯ãã©ã¤ã
|
---|
| 243 |
|
---|
| 244 | ã·ã¹ãã ã¯ããã¯ãã©ã¤ãã«ä½¿ç¨ããTIMER0ã®ãªã·ã¬ã¼ã¿ã¯ããã©ã«ãã§ã¯
|
---|
| 245 | Xstormy16å
|
---|
| 246 | èã®RCçºä¿¡ãç¨ãã¦ããã(ç´1MHz)
|
---|
| 247 | ã·ã¹ãã ã¯ããã¯ãã©ã¤ãã isig_tim ãå¼ã³åºãå¨æã¯ãsys_defs.h ä¸ã®
|
---|
| 248 | TIC_NUME 㨠TIC_DENO ã§å®ç¾©ããã¦ãã(æ¨æºã¯ 5ããªç§å¨æ)ã
|
---|
| 249 | å
|
---|
| 250 | èRCçºä¿¡ãç¨ãã¦5ããªç§å¨æã§ã¿ã¤ã ãã£ãã¯ãä¾çµ¦ãããã©ã¤ãã¯ã«ã¼
|
---|
| 251 | ãã«ã©ã¤ãã©ãªä¸(ã½ã¼ã¹ã¯hw_timer.c)ã«å«ã¾ãã¦ãããããã©ã«ãã§ã¯ãã
|
---|
| 252 | ããªã³ã¯ãããããã¦ã¼ã¶ã¼ããã°ã©ã å´ã§hw_timer.cãä¿®æ£ãããã®ãä½æ
|
---|
| 253 | ããªã³ã¯ãããã¨ã§ã使ç¨ãããªã·ã¬ã¼ã¿ã»å²ãè¾¼ã¿ã®å¨æãä»»æã«å¤æ´ãã
|
---|
| 254 | ãã¨ãã§ããããã®å ´åãå¼ã³åºãå¨æãCPUã¯ããã¯ã«å¯¾ãã¦ååã«é·ãå¿
|
---|
| 255 |
|
---|
| 256 | è¦ãããã(ç®å®ã¨ãã¦ãå¼ã³åºãå¨æ >2000/CPUã¯ããã¯)
|
---|
| 257 | Xstormy16å
|
---|
| 258 | èã®RCçºä¿¡ã¯ããã®å¨æ³¢æ°ã®ç²¾åº¦ãä½ããããã¿ã¤ãã®ç²¾åº¦ãå¿
|
---|
| 259 | è¦
|
---|
| 260 | ãªå ´åã¯ãå¤é¨X'talãªã·ã¬ã¼ã¿çã«åãæ¿ããå¿
|
---|
| 261 | è¦ãããã
|
---|
| 262 |
|
---|
| 263 | 3.2 ã·ãªã¢ã«ã¤ã³ã¿ãã§ã¼ã¹ãã©ã¤ã
|
---|
| 264 |
|
---|
| 265 | ã·ã¹ãã ä¾åé¨ã®ã·ãªã¢ã«ã¤ã³ã¿ã¼ãã§ã¼ã¹ãã©ã¤ãã¯ãUART0/UART1ã®ï¼ã¤ã®
|
---|
| 266 | ã·ãªã¢ã«ã¤ã³ã¿ã¼ãã§ã¼ã¹ããµãã¼ããã¦ããããã¼ãID=1ãUART0ããã¼ãID=2
|
---|
| 267 | ãUART1ã«å¯¾å¿ãã¦ããã
|
---|
| 268 | ã·ã¹ãã ãã°çã§ç¨ããããã©ã«ãã®ã·ãªã¢ã«ãã¼ãã¯ãUART0ã«è¨å®ãã¦ããã
|
---|
| 269 |
|
---|
| 270 | 3.3 ã¡ã¢ãªããã
|
---|
| 271 |
|
---|
| 272 | EVAãããã¬ã®ã¨ãã¥ã¬ã¼ã·ã§ã³ç°å¢ã®ã¡ã¢ãªãããã¯ä»¥ä¸ã®ã¨ããã§ããã
|
---|
| 273 | 00000-077FF : RAM
|
---|
| 274 | 07E00-07FFF : SFR(Special Function Register)
|
---|
| 275 | 08000-7FFFF : ROM
|
---|
| 276 | ã«ã¼ãã«ç¨ã®ãã¼ã¿é åã»ã¦ã¼ã¶ã¼ããã°ã©ã ç¨ã®ãã¼ã¿é åãããã³ã¿ã¹ã¯
|
---|
| 277 | ç¨ã®ã¹ã¿ãã¯ã00000çªå°ãã確ä¿ããæ®ãã®RAMãéã¿ã¹ã¯ã³ã³ããã¹ãç¨ã®
|
---|
| 278 | ã¹ã¿ãã¯(ä¸ä½ãã)ãããã³ãã¼ãã¡ã¢ãª(ä¸ä½ãã)ã¨ãã¦ä½¿ç¨ããã
|
---|
| 279 |
|
---|
| 280 | ï¼ï¼éçºç°å¢ã®æ§ç¯
|
---|
| 281 |
|
---|
| 282 | 4.1 ä¸æ´æä¾ã®ãã¡ã¤ã«ãå©ç¨ããå ´å
|
---|
| 283 |
|
---|
| 284 | ãä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ãã«ã¯ãã³ã³ãã¤ã«æ¸ã¿ã®ã©
|
---|
| 285 | ã¤ãã©ãªå½¢å¼ã®JPSã«ã¼ãã«ãå«ããã³ã³ãã¤ã©ã»ãããã¬ã»çµ±åéçºç°å¢çã
|
---|
| 286 | Windowsä¸ã§éçºã«å¿
|
---|
| 287 | è¦ãªå
|
---|
| 288 | ¨ã¦ã®ãã¡ã¤ã«ãå«ã¾ãã¦ããã®ã§ãé常ã¯ãããã
|
---|
| 289 | ãã¦ã³ãã¼ãã»ã¤ã³ã¹ãã¼ã«ãããã¨ã§TOPERS/JSPãå©ç¨ã§ããã
|
---|
| 290 | ãä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ãã¯
|
---|
| 291 | http://semicon.sanyo.com/jp/micon/index.php
|
---|
| 292 | ãããã¦ã³ãã¼ãã§ããã
|
---|
| 293 | éçºãã¼ã«ã«å«ã¾ããä¸è¨ã®ããã¥ã¡ã³ããåç
|
---|
| 294 | §ã®ãã¨ã
|
---|
| 295 | ã»TOPPERS/JSPã¦ã¼ã¶ã¼ã®ããã®ãã¡ã¼ã¹ãã¹ãããã¬ã¤ã
|
---|
| 296 | ã»Xstormy16 ããã°ã©ãã¼ãºã¬ã¤ã
|
---|
| 297 |
|
---|
| 298 | 4.2 ãã®å
|
---|
| 299 | ¬å¼å
|
---|
| 300 | ¬éçãå©ç¨ããå ´å
|
---|
| 301 |
|
---|
| 302 | ãã®å
|
---|
| 303 | ¬å¼å
|
---|
| 304 | ¬éçãå©ç¨ããå ´åã以ä¸ã®æé ã§éçºç°å¢ãæ§ç¯ããã
|
---|
| 305 |
|
---|
| 306 | Step1 ä¸æ´ãã¤ã³ã³ éçºãã¼ã«(Xstormy16ã·ãªã¼ãº)ã®ã¤ã³ã¹ãã¼ã«
|
---|
| 307 | [å
|
---|
| 308 | ¥æå
|
---|
| 309 | ]
|
---|
| 310 | http://semicon.sanyo.com/jp/micon/index.php
|
---|
| 311 | [ã¤ã³ã¹ãã¼ã«æé ]
|
---|
| 312 | (1) ã¢ã¼ã«ã¤ãã解åããã¤ã³ã¹ãã¼ã©ãå®è¡ããã
|
---|
| 313 | (2) ã¤ã³ã¹ãã¼ã©ããã®åãåããã«ã¯ãå
|
---|
| 314 | ¨ã¦ããã©ã«ãã§ã¤ã³ã¹ãã¼ã«
|
---|
| 315 | (3) ã¤ã³ã¹ãã¼ã«ãããIDEãèµ·å
|
---|
| 316 | (4) IDEã®ã¡ãã¥ã¼[ãã¼ã«]->[DOSããã³ãã]ãèµ·å
|
---|
| 317 | (5) DOSããã³ããå
|
---|
| 318 | ã§ãã³ãã³ã"Prepare_perl.bat"ãå®è¡(ã¤ã³ã¹ãã¼ã«å¾
|
---|
| 319 | ä¸åº¦ã ãå®è¡ããã°è¯ã)
|
---|
| 320 |
|
---|
| 321 | Step2 TOPPERS/JSPã®å
|
---|
| 322 | ¥æã¨æºå
|
---|
| 323 | [å
|
---|
| 324 | ¥æå
|
---|
| 325 | ]
|
---|
| 326 | http://www.toppers.jp/
|
---|
| 327 | ãããããTOPPERS/JSP Ver1.4.4ã®ã½ã¼ã¹ã³ã¼ã(SJISç)ããã¦ã³ãã¼ãã
|
---|
| 328 | [æé ]
|
---|
| 329 | (1) ã½ã¼ã¹ã¢ã¼ã«ã¤ããä»»æã®ãã£ã¬ã¯ããª(ããã§ã¯C:\jspã¨ãã)ã«è§£å
|
---|
| 330 | (2) Step1ã§ã¤ã³ã¹ãã¼ã«ãããä¸è¨ã®ãã£ã¬ã¯ããªã«ããcfg.exeã¨chk.exe
|
---|
| 331 | ãC:\jsp\cfgã«ã³ãã¼ãã¦ãã
|
---|
| 332 | C:\Program Files\SanyoX16\Gcc\for_toppers\bin
|
---|
| 333 | (3) 解åãããã£ã¬ã¯ããªã®ä¸ã«ä½æ¥ç¨ãã£ã¬ã¯ããªobj(ããã§ã¯C:\jsp\obj)
|
---|
| 334 | ãä½æ
|
---|
| 335 |
|
---|
| 336 | Step3 JSPã«ã¼ãã«ã¨ãµã³ãã«ããã°ã©ã ã®ã³ã³ãã¤ã«
|
---|
| 337 | (1) Step1(4)ã§éããDOSããã³ããã§ãStep2(3)ã§ä½æãããã£ã¬ã¯ããª
|
---|
| 338 | (C:\jsp\obj)ã«ç§»åããã
|
---|
| 339 | (2) 以ä¸ã®ã³ãã³ããå®è¡
|
---|
| 340 | æ£å¸¸ã«å®è¡ãããã°ãC:\jsp\obj\jsp.elf ãä½æããã
|
---|
| 341 | perl ../configure -C xstormy16 -S simulator
|
---|
| 342 | make depend
|
---|
| 343 | make
|
---|
| 344 | (3) DOSããã³ãããéãã
|
---|
| 345 |
|
---|
| 346 | Step4 EVAãããã¬ã¨ãã¥ã¬ã¼ã·ã§ã³ç°å¢ã§ã®å®è¡
|
---|
| 347 | [æé ]
|
---|
| 348 | (1) Windowsã«æ»ããStep3(2)ã§ä½æãããC:\jsp\obj\jsp.elfãããã«ã¯ãª
|
---|
| 349 | ãã¯ãã¦EVAãããã¬ãèµ·åããã
|
---|
| 350 | (2) ãã¨ãã¥ã¬ã¼ã·ã§ã³ã¢ã¼ãã§èµ·åãã¾ããã®åãã«ãã¯ãããã¯ãªãã¯ã§
|
---|
| 351 | EVAãããã¬ãã¨ãã¥ã¬ã¼ã·ã§ã³ã¢ã¼ãã§èµ·å
|
---|
| 352 | (3) F5ãæ¼ãã¦ããã°ã©ã ãéå§ããã¨ãUSERã¦ã£ã³ãã¦ã«ä»¥ä¸ã®è¡¨ç¤ºãåºã
|
---|
| 353 | ã°æ£å¸¸ã«åä½ãã¦ãã
|
---|
| 354 | JSP Kernel Release......
|
---|
| 355 | : ä¸ç¥
|
---|
| 356 | task1 is running (001). |
|
---|
| 357 | task1 is running (002). |
|
---|
| 358 | :
|
---|
| 359 | (4) USERã¦ã£ã³ãã¦ä¸ã®ã³ãã³ãå
|
---|
| 360 | ¥åæ¬ã«ä»¥ä¸ã®ã³ãã³ããå
|
---|
| 361 | ¥å
|
---|
| 362 | < t[Enter] ('<'ã¨'t'ã®éã«ã¹ãã¼ã¹ãå¿
|
---|
| 363 | è¦)
|
---|
| 364 | task1ãter_tskãããtask2ãåãåºãã
|
---|
| 365 | (ãµã³ãã«ããã°ã©ã ã§ä½¿ç¨ã§ãã't'以å¤ã®ã³ãã³ãã«ã¤ãã¦ã¯ãsample1.c
|
---|
| 366 | é ã®ã³ã¡ã³ãåç
|
---|
| 367 | §)
|
---|
| 368 |
|
---|
| 369 | ï¼ï¼ãã®ä»
|
---|
| 370 |
|
---|
| 371 | 5.1 ãã£ã¬ã¯ããªã»ãã¡ã¤ã«æ§æ
|
---|
| 372 |
|
---|
| 373 | Xstormy16 ã¿ã¼ã²ããä¾åé¨ã®åãã¡ã¤ã«ã®æ¦è¦ã¯æ¬¡ã®éãã
|
---|
| 374 |
|
---|
| 375 | config/xstormy16/
|
---|
| 376 | Makefile.config Makefile ã® Xstormy16ä¾åå®ç¾©
|
---|
| 377 | cpu_config.c ããã»ããµä¾åé¨ã®é¢æ°
|
---|
| 378 | cpu_config.h ããã»ããµä¾åé¨ã®æ§æå®ç¾©
|
---|
| 379 | cpu_context.h ã³ã³ããã¹ãæä½
|
---|
| 380 | cpu_defs.h ããã»ããµä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 381 | cpu_insn.h ã¤ã³ã©ã¤ã³ã¢ã»ã³ãã©ã«ã¼ãã³ã®å®ç¾©
|
---|
| 382 | cpu_rename.def ã«ã¼ãã«ã®å
|
---|
| 383 | é¨èå¥åã®ãªãã¼ã å®ç¾©
|
---|
| 384 | cpu_rename.h ã«ã¼ãã«ã®å
|
---|
| 385 | é¨èå¥åã®ãªãã¼ã
|
---|
| 386 | cpu_unrename.h ã«ã¼ãã«ã®å
|
---|
| 387 | é¨èå¥åã®ãªãã¼ã 解é¤
|
---|
| 388 | cpu_sfrs.h ã«ã¼ãã«å
|
---|
| 389 | ã§ä½¿ç¨ããSFRã®å®ç¾©
|
---|
| 390 | cpu_stdio.h æ¨æºå
|
---|
| 391 | ¥åºåãµãã¼ãã®ããã®é¢æ°
|
---|
| 392 | cpu_support.S ããã»ããµä¾åé¨ã®ãµãã«ã¼ãã³
|
---|
| 393 | hw_serial.h SIOãã©ã¤ãã®æ§æå®ç¾©
|
---|
| 394 | hw_serial.c SIOãã©ã¤ãã®é¢æ°
|
---|
| 395 | hw_serial.cfg SIOãã©ã¤ãã®ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«
|
---|
| 396 | hw_timer.h ã¿ã¤ããã©ã¤ãã®æ§æå®ç¾©
|
---|
| 397 | hw_timer.c ã¿ã¤ããã©ã¤ãã®é¢æ°
|
---|
| 398 | offset.h ã¢ã»ã³ãã©ããCæ§é ä½ã¢ã¯ã»ã¹ã®ããã®å®ç¾©
|
---|
| 399 | start.S ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«
|
---|
| 400 | tool_config.h éçºç°å¢ä¾åé¨ã®æ§æå®ç¾©
|
---|
| 401 | tool_defs.h éçºç°å¢ä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 402 | config/xstormy16/simulator/
|
---|
| 403 | Makefile.config Makefile ã® ã·ã¹ãã ä¾åå®ç¾©
|
---|
| 404 | LC88F0099.ld ã¨ãã¥ã¬ã¼ã·ã§ã³ç°å¢ç¨ãªã³ã«ã¼ã¹ã¯ãªãã
|
---|
| 405 | LC88F0099.S EVAãããã¬ã®ããã®æ©ç¨®æ
|
---|
| 406 | å ±
|
---|
| 407 | sys_config.c ã·ã¹ãã ä¾åé¨ã®é¢æ°
|
---|
| 408 | sys_config.h ã·ã¹ãã ä¾åé¨ã®æ§æå®ç¾©
|
---|
| 409 | sys_defs.h ã·ã¹ãã ä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 410 | sys_rename.def ã«ã¼ãã«ã®å
|
---|
| 411 | é¨èå¥åã®ãªãã¼ã å®ç¾©
|
---|
| 412 | sys_rename.h ã«ã¼ãã«ã®å
|
---|
| 413 | é¨èå¥åã®ãªãã¼ã
|
---|
| 414 | sys_unrename.h ã«ã¼ãã«ã®å
|
---|
| 415 | é¨èå¥åã®ãªãã¼ã 解é¤
|
---|
| 416 |
|
---|
| 417 | 以ä¸
|
---|