
HOS-v4(uITRON4.0½àµò)¤òH8¤ËƳÆþ¤·¤Æ¤ß¤¿
2003/SEP/28
¤Á¤Þ¤¿¤Ç²¿¤«¤È±½¤Ë¤Ê¤ëÁȤ߹þ¤ßµ¡´ïÍÑOS¡¢ITRON¤ò¤Á¤í¤Á¤í¤¤¤¸¤Ã¤Æ¤Þ¤¹¡£
¤È¤¤¤Ã¤Æ¤âÀè¿Í¤¬H8¤Ë°Ü¿¢¤µ¤ì¤¿¤Î¤ò¡¢¥Ü¥ó¥«¥ì¡¼¤è¤í¤·¤¯¼ê»ý¤Á¤ÎH8¤ËºÜ¤»¤¿¤é
¥µ¥ó¥×¥ë¤¬¤¢¤Ã¤µ¤êư¤¤¤¿¡¢¤È¤¤¤¦¤ªÏäǤ¹¡£
H8¾å¤Î¥×¥í¥°¥é¥ß¥ó¥°¤Ë¤Ä¤¤¤Æ¤¢¤ëÄøÅÙ¤´Â¸ÃΤǡ¢¤«¤ÄTRON¥×¥í¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¤Ï
Á´¤¯ÃΤé¤ó¡¢´Êñ¤Ë¤¤¤¸¤ì¤ë¤Ê¤é¿¨¤Ã¤Æ¤ß¤Æ¤âÎɤ¤¡¢¤ÊÊý¤òÂоݤ˽ñ¤¤¤Æ¤Þ¤¹¡£
¤È¤¤¤¦watson8¤¬Á´¤¯¤ÎÁǿͤʤó¤Ç¡¢¤à¤·¤íÆÉ¤ó¤Ç¤¯¤À¤µ¤Ã¤Æ¤ë¤¢¤Ê¤¿¤È°ì½ï¤ËÊÙ¶¯¤·¤Æ¤¤¤¤¿¤¤¤Ê¤¡¤È¡£
¤Ç¤¹¤«¤é¤â¤Á¤í¤ó
̵ÊݾڤǤ¹¡£³Æ¼«¤ÎÀÕǤ¤Ë¤ª¤¤¤Æ¤ª´ê¤¤¤·¤Þ¤¹¡£
¤Õ¡¼¤ó¡£¤Ç¥µ¥Ý¡¼¥È¤¹¤ë¥Ç¥Ð¥¤¥¹¤Ï¡©
¤¤¤ä¡¢¤½¤¦¤¤¤¦Êý¸þ¤ÎOS¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó(¥«¡¼¥Í¥ë¤À¤·¤Í)¡£¥·¥¹¥Æ¥à¥³¡¼¥ë¤Î°ìÍ÷¤Ê¤ó¤¾¸«¤ë¤ÈHOS¤¬¤ä¤Ã¤Æ¤¯¤ì¤ë¤Î¤Ï
- Ê£¿ô¥¿¥¹¥¯¤Î¥¹¥¤¥Ã¥Á¥ó¥°¡¢¥¹¥±¥¸¥å¡¼¥ê¥ó¥°(UNIX¤Ç¤¤¤¦fork()/exec()´Þ¤à)
- ¥×¥í¥»¥¹´ÖÄÌ¿®(UNIX¤Ç¤¤¤¦pipe¤äsocket)¡¦¥»¥Þ¥Õ¥©´ÉÍý
- ¥á¥â¥ê´ÉÍý(UNIX¤Ç¤¤¤¦malloc()/free())
¤È¤¤¤¦´¶¤¸¤Ç¤¹¡£HOS¤¬(¥Ç¥Õ¥©¥ë¥È¤Ç)»ÈÍѤ¹¤ëITU0A°Ê³°¤Î¼þÊդϥ桼¥¶¤¬¹¥¤¾¡¼ê¤Ë
ÍøÍѤǤ¤Þ¤¹¡£¸À¤¤Êý¤òÂØ¤¨¤ë¤È¡¢¼þÊÕ¤ò¥æ¡¼¥¶¥ì¥Ù¥ë¤Ç¤¤¤¸¤ë¤Î¤È
¥Ç¥Ð¥¤¥¹¥É¥é¥¤¥Ð¤È¤¤¤¦·Á¤ÇOS¦¤Ç¤¤¤¸¤ë¤Î¤È°ã¤¤¤¬¤Ï¤Ã¤¤ê¤ï¤«¤ê¤Þ¤»¤ó¡£
¤â¤Á¤í¤ó¡¢HOSÍÑ(¤Þ¤¿¤ÏHOS¤ÈÁêÀ¤ÎÎɤ¤)¥Ç¥Ð¥¤¥¹¥É¥é¥¤¥Ð¤ÏÊÌÅÓ¤¢¤ë¤Î¤Ç¤·¤ç¤¦¤±¤É¡£
ÆÃ¤Ë¥³¥Þ¥ó¥É¥·¥§¥ë¤Î¤è¤¦¤Ê¤â¤Î¤Ï¤Ê¤¯(½ñ¤«¤ì¤Æ¤¤¤ëÊý¤¬¤ª¸«¤¨¤Î¤è¤¦¤Êµ¤¤â¤·¤Þ¤¹¤¬)¡¢
¥â¥Ë¥¿¤«¤é":G 220200"¤È¤·¤¿¤é¡Öư¤¤¤¿¤Ã¡¦Æ°¤«¤Í¤§¡Á¡×¤Î¤É¤Á¤é¤«¤Ç¤¹¡£
¤Ç¤ÏÈᤷ¤«¤í¤¦¤È¤¤¤¦¤³¤È¤Ç¡¢¤Ê¤ó¤È¤«½ãÀµ¥â¥Ë¥¿¤Ç¥Ç¥Ð¥Ã¥°¤Ç¤¤Ê¤¤¤«¤È¸À¤¦ÏÃ
¤¬¸å¤í¤ÎÊý¤Ç½Ð¤Æ¤¤Þ¤¹¡£
¤È¤ê¤¢¤¨¤º¤³¤ó¤Ê´¶¤¸¤ÇºÜ¤»¤Þ¤·¤¿
¤È¡¢¤³¤ó¤Ê¤ó¤Ç¥¤¥á¡¼¥¸¤ï¤¤Þ¤¹¡©HOS¥«¡¼¥Í¥ë¤È¸À¤Ã¤Æ¤â´ðËÜŪ¤ËC¤Ç½ñ¤«¤ì¤¿¥µ¥Ö¥ë¡¼¥Á¥ó·²
(¥é¥¤¥Ö¥é¥ê·Á¼°)¤È¤·¤ÆÄ󶡤µ¤ì¤Þ¤¹¡£¤¶¤Ã¤¯¤ê¸À¤¦¤È¡¢main(),task1(),task2()¤òµ½Ò¤·¡¢
¤½¤ÎÄ󶡤µ¤ì¤¿¥é¥¤¥Ö¥é¥ê¤È¥ê¥ó¥¯¤¹¤ë¤³¤È¤Ç¡¢°ìËܤÎMOT·Á¼°¤òºî¤ê¤Þ¤¹¡£¤Ä¤Þ¤ê¡Ö¥â¥Ë¥¿ÇÛ²¼¤Ç
"g 220200"¤Çư¤¯LED¤ò¥Á¥«¥Á¥«¤¹¤ë¥×¥í¥°¥é¥à¡×¤òºî¤ë¤Î¤ÈÁ´¤¯ÊѤï¤ê¤Þ¤»¤ó¡£
task1()¤Ètask2()¤¬Ê¹Ԥ·¤ÆÁö¤Ã¤Æ¤¤¤ë¤è¤¦¤Ë¸«¤¨¤ëÅÀ¤¬¤Á¤ç¤Ã¤È°ã¤¦¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡£
ROMÆâ¤Ë_printf()¤Ê¤É¥µ¥Ý¡¼¥È¥ë¡¼¥Á¥ó¤òÆþ¤ì¤Æ¤¢¤ì¤Ð¡¢¤½¤ì¤â(±¿¤¬¤è¤±¤ì¤Ð)ÍøÍѤǤ¤Þ¤¹¡£
ɬÍפʤâ¤Î
´Êñ¤½¤¦¤Ë¸«¤¨¤Þ¤·¤¿¡©¼ÂºÝ¡Ö¥ª¥¹¥¹¥á´Ä¶¡×¤Ç¥µ¥ó¥×¥ë¤òư¤«¤¹¤¯¤é¤¤¤Ê¤é¤¢¤Ã¤È¤¤¤¦´Ö
¤Ç¡¢watson8¤Ç¤âÁ´¤¯¿¿¤ÃÇò¤Ê¾õÂÖ¤«¤é¡¢»î¹Ôºø¸í¤ÎËö¤È¤ê¤¢¤¨¤ºÆ°¤½Ð¤¹¤Þ¤Ç¤ï¤º¤«¿ô»þ´Ö¡£
¤½¤ì¤â¤Û¤È¤ó¤É¥È¥éµ»C¤Çư¤«¤½¤¦¤È¤·¤Æ¥Ð¥¿¥Ð¥¿¤·¤Æ¤¿¤ï¤±¤Ç¡¢gcc¤Ë°Ü¹Ô¤·¤Æ¤«¤é¤Ï¤Û¤ó¤È¤Ë¤¢¤Ã¤È¤¤¤¦´Ö¤Ç
Àè¿Í¤Ë´¶¼Õ´¶¼Õ¡£
- ½ãÀµ¥â¥Ë¥¿¾Æ¤¹þ¤ßºÑH8¥Ü¡¼¥É¡ÄRAM8KB¤¢¤ì¤Ð¥®¥ê¥®¥ê¤¤¤±¤½¤¦¡Ä¤«¤Ê¡©
RAM4KBµ¡¤À¤È¡¢HOS¥«¡¼¥Í¥ë¤òROM²½¤¹¤ëɬÍפ¬¤¢¤ê¡¢¤Á¤È¥¥Ó¥·¥¤¤È»×¤¤¤Þ¤¹¡£
- C¥³¥ó¥Ñ¥¤¥é¡Ägcc¤¬¥ª¥¹¥¹¥á¤«¤Ê¤¡¡£¥È¥éµ»¡¦½©·îC¤Ç¤âư¤¤Þ¤¹¤¬¡Ä
HEW/HEW2¤ÊÊý¤Ïhamayan¤µ¤ó¤Î¤È¤³¤í¤ò»²¹Í¤Ë¡£
- ¥«¡¼¥Í¥ë°ì¼°¡Ä¤Ï
HOS¤Î¤ª¤ª¤â¤È
¤«¤é"HOS-V4 Ver1.01 LZH"¤Ã¤Æ¤ä¤Ä¤ò¡£600MB¤Û¤É¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¥À¥¤¥¢¥ë¥¢¥Ã¥×¤ÎÊý¤Ïµ¤¹ç¤òÆþ¤ì¤Æ¡£
¡Ä¤È¤¤¤¦¤Î¤Ï¥ª¥ª¥¦¥½¤Ç¤ï¤º¤«480KB¤À¤«¤Ç¤¹¡£
- ¥é¥¤¥Ö¥é¥ê¥¢¥ó¡Ä¥È¥éµ»¡¦½©·îC¤Ç¤¬¤à¤Ð¤ëÊý¤Î¤ß¡£¢¬¤Ë¤¢¤ë"blibg032.lzh"¤Ç¤¹¡£
Ê£¿ô¤Îfile.obj¤ò¤Þ¤È¤á¤ÆfileLIB.LIB¤òºî¤ë¤â¤Î¤Ç¡¢Â¾¤Ë¤â»È¤¤Æ»¤¬¤¤¤Ã¤Ñ¤¤¡ª¡©
- C¥×¥ê¥×¥í¥»¥µ¡Ä¥È¥éµ»¡¦½©·îC¤Ç¤¬¤à¤Ð¤ëÊý¤ÏBorlandC++
(
¥³¥³¤Ë¤Æ¥Õ¥ê¡¼ÇÛÉÛ)źÉÕ¤ÎÅÛ¤«²¿¤«¤ò¡£
gcc¤«¡©¥È¥éµ»/½©·îC¤«¡©
ITRON4.0¤é¤·¤¯¤ä¤í¤¦¤È¤¹¤ë¤È¢¬¤Î¤è¤¦¤Ê¼ê½ç¤Ë¤Ê¤ë¤½¤¦¤Ç¡¢¤É¤Ã¤Á¤Ç¹Ô¤¯¤«¤è¤©¤¯¹Í¤¨¤Æ²¼¤µ¤¤¡£
¤â¤Á¤í¤ó¤É¤Ã¤Á¤«¤Ç¤Ç¤¤ì¤Ð¡¢¤â¤¦°ìÊý¤Ø¤Î°ú±Û¤·¤Ï¤ï¤ê¤ÈÍÆ°×¤«¤È»×¤¤¤Þ¤¹¡£
¤Ã¤Ä¤¦¤«system.cfg¤Ã¤Æ²¿¼Ô¡©
UNIX¤ÇÎ㤨¤ë¤È¡¢/dev/FIFO¤ò»È¤¤¤¿¤¤¾ì¹ç¡¢main()¤ÎƬ¤Çopen()¤·¤Þ¤¹¤è¤Í¡£¤½¤Î¾
ɬÍפʥǥХ¤¥¹¤ä¥Õ¥¡¥¤¥ë¤òopen()¤·¤¿¤ê¡¢¥á¥â¥ê¤¬Íߤ·¤±¤ì¤Ðmalloc()¤ò¸Æ¤Ö¤ï¤±¤Ç¤¹¡£
¤Ç¡Ö¤Ü¤¯¤Ï/dev/FIFO»È¤¤¤¿¤¤¤ó¤Ç¤è¤í¤·¤¯¤Ã¡×¤Èsystem.cfg¤Ë½ñ¤¤¤È¤¯¤È
¥æ¡¼¥¶¥×¥í¥°¥é¥à¤ËÈô¤ó¤Ç¤¤¿¤È¤¤Ë¤Ï¡¢¤¹¤Ç¤Ëopen()ºÑ¤ß¤Ë¤Ê¤Ã¤Æ¤ë¡Ä¤Ê´¶¤¸¤Î»ÅÁȤߤǤ¹¡£
¥ª¥Ö¥¸¥§¥¯¥Æ¥£¥Ö¤Ê½èÍý·Ï¤À¤È¤¢¤ê¤¬¤Á¤Êµ¡Ç½¤Ç¤¹¤Í¡£
¥«¡¼¥Í¥ë¤ò¥Ó¥ë¥É¤·¤è¤¦(gccÊÔ)
- ¥·¥§¥ë¤Çhos-v4/lib/h83/gcc/¤Ø¹Ô¤Ã¤Æbash>make -f h4h83.mak¤ò¼Â¹Ô¤·
libh4h83.a¤¬½ÐÍè¤ì¤Ð½ªÎ»¤Ç¤¹¡£¥¦¥Á¤Ç¤Ï²¿¤â¤¤¤¸¤é¤º¤Ç¤¤Æ¤·¤Þ¤¤¤Þ¤·¤¿¡£
- ¤Ä¤¤¤Ç¤Ë¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥¿¤âºî¤Ã¤Æ¤ª¤¤Þ¤¹¡£Æ±¤¸¤¯hos-v4/config¤Ë¤¤¤Ã¤Æ
bash>make -f gcc.mak¤Çhos4cfg.exe¤¬½ÐÍè¤ì¤ÐOK¡£¥¦¥Á¤Ç¤Ï
UINT¤ÈINT¤òÈæ³Ó¤·¤Æ¤ë¤È¤«¡¢¥Ý¥¤¥ó¥¿¤Ø¤ÎÂåÆþ¤¬±¾¡¹¤È¤¤¤¯¤Ä¤«¥¦¥©¡¼¥Ë¥ó¥°¤¬¤¿¤Á¤Þ¤·¤¿¤¬
µ¤¤Ë¤·¤Æ¤Þ¤»¤ó(^^;)¡£
[ÄɲÃ.03/NOV/28]
¤½¤¦¤¤¤¦¤³¤È¤«¤¡¡£ÅºÉÕ¤µ¤ì¤Æ¤¤¤ëDOSÈǥХ¤¥Ê¥ê¤Ïcygwin¤Îbash¤«¤éľÀܸƤ٤ޤ¹¡£
gcc¤ÇgccÀìÍÑÈǤò¥Ó¥ë¥É¤¹¤ëɬÍפÏ̵¤¤¤ó¤Ç¤¹¤Í¡£¼ºÎ餷¤Þ¤·¤¿¡£
- ¤Ê¤ª¥«¡¼¥Í¥ë¼«ÂΤϥ¢¥É¥Ð¥ó¥¹¥È(3048F/3052F/306xF¤Ê¤É)ÍѤȥΡ¼¥Þ¥ë(3664F)ÍѤΣ²¼ïÎà
¤¢¤ë¤À¤±¤Ç¡¢¥Ï¡¼¥É¥¦¥§¥¢°Í¸À¤Ï¤¤ï¤á¤ÆÄ㤤¤Ç¤¹¡£
¥«¡¼¥Í¥ë¤ò¥Ó¥ë¥É¤·¤è¤¦(¥È¥éµ»C¡¦½©·îCÊÔ)
- DOSÁë¤Çhos-v4\lib\h83\akih8¤Ø¹Ô¤Ã¤ÆDOS>make -f akih8.mak¤ò¼Â¹Ô¤·¤Æ
h4h83aki.lib¤òºî¤ê¤Þ¤¹¡£É¬Íפʥġ¼¥ë·²¤Ï¢¬¤ò»²¹Í¤Ë¤·¤Æ¤½¤í¤¨¤Æ²¼¤µ¤¤¡£
¥¦¥Á¤Î¼ê»ý¤Á¤ÎDOSÈÇmake.exe¤Ë¤Ï¥Þ¥¯¥íÄêµÁ(¤«¤Ê¤ó¤«)¤¬Â¿¤¹¤®¤¿¤ê¤·¤Æ
·ë¹½Ìñ²ð¤Ç¤·¤¿¡£
- ÅöÌÌgcc¤Ç¤¤¤¤Þ¤¹¤Î¤Ç¡¢¥È¥éµ»C¡¦½©·îC¤Ç¹Ô¤³¤¦¤È¤¤¤¦Êý¤Ï¤¬¤ó¤Ð¤Ã¤Æ¤¯¤À¤µ¤¤¡£
- ¢Í¥È¥éµ»C¤Ç¤¬¤ó¤Ð¤Ã¤Æ¤ß¤Þ¤·¤¿¡£Á°½Ð¤Îblibg.exe(DOSÈÇ)¤Ø¤Î°ú¿ô¤¬Ä¹¤¹¤®¤ÆDOSÁë
¤¬¸Ç¤Þ¤ê¤Þ¤¹¡£DOSÈÇH8¥ê¥ó¥«É÷¤Î¥µ¥Ö¥³¥Þ¥ó¥É¥Õ¥¡¥¤¥ë(input file1.obj¤È¤«)¤ò
¼õ¤±ÉÕ¤±¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é·Á¼°¤ËÊѹ¹¤·¤Þ¤·¤¿¡£
- ¤¢¤Èmake.exe¤âBoralnadC++źÉÕ¤ÎÅۤ˺¹Âؤ¨¤¿¡Ä¤¯¤é¤¤¤À¤Ã¤¿¤«¤Ê¤¡
[ÄɲÃ.03/NOV/28]
¥«¡¼¥Í¥ë¤ò¥Ó¥ë¥É¤·¤è¤¦(SH-2/7045F¡¦½©·îgccÊÔ)
½©·î¤µ¤ó¤ÎSH-2/7045F+źÉÕgcc(Ver3·Ï¤Ç¤¹)¤Ç¤âÁ´¤¯Æ±¤¸¤è¤¦¤ËHOS¤¬Æ°¤¤Þ¤¹¡£
¤Ê¤ó¤Èmon4.c¤È½ãÀµ¥â¥Ë¥¿¤Ë¤è¤ëȾ¥ê¥¢¥ë¥¿¥¤¥à¡¦¥·¥ó¥Ü¥ê¥Ã¥¯¥Ç¥Ð¥Ã¥°¤â²Äǽ¤Ë¡ª¡©
¤È¤ê¤¢¤¨¤ºmon4.c(SH-2ÈÇ)¤Ï¤³¤Á¤é¤Ë¤Æ¥Ð¥¤¥Ê¥ê²¾ÇÛÉÛ³«»Ï¤·¤Þ¤·¤¿¡£
¥µ¥ó¥×¥ë¤òư¤«¤·¤Æ¤ß¤ë(gccÊÔ)
¥·¥§¥ë¤Çhos-v4/sample/h83/¤Ø¹Ô¤Ã¤Æbash>make -f gcc.mak¤ò¼Â¹Ô¤·¤Æ
sample.mot¤Þ¤Ç¤¤¤±¤Ð¤¤¤¤´¶¤¸¤Ç¤¹¡£3052F@25MHz+SRAM128KB¤Çư¤«¤·¤Þ¤·¤¿¤Î¤Ç
¤½¤ó¤¯¤é¤¤¤¤¤¸¤¯¤Ã¤Æsample.mot¤¬make¤Ç¤¤¿¤é½ãÀµ¥â¥Ë¥¿¤«¤é":L sample.mot"¤Ç ":G 220200"¤Ç¤¹¡£Æ°¤¤Þ¤·¤¿¡©
¥µ¥ó¥×¥ë¤òư¤«¤·¤Æ¤ß¤ë(¥È¥éµ»C¡¦½©·îCÊÔ)
ËܼÁŪ¤Ë¤ÏgccÈÇ¤ÈÆ±¤¸¤Ç¤¹¡£¥ê¥ó¥«¥¹¥¯¥ê¥×¥È¤Ï¤³¤ó¤Ê´¶¤¸¡£
INPUT crt0,vector,sample,ostimer,h8_sci,kernel_cfg
input $(LIBDIR)\3052F\spromsym.OBJ
LIBRARY $(LIBDIR)\C38HA
LIBRARY ..\..\lib\h83\mylib\h4h83aki
DEFINE MYSTACK(240000)
PRINT sample.map
OUTPUT sample.abs
ROM (D,X)
START VECT(0220000),P,C,D,X,B(220200)
EXIT
- ROM (D,X)¤ÏD¥»¥¯¥·¥ç¥ó¤ÈƱ¤¸¥µ¥¤¥º¤ÇX¥»¥¯¥·¥ç¥ó¤òÍѰդ¹¤ë¥ª¥×¥·¥ç¥ó¤Ç¡¢
ÉáÄ̤ÏD¥»¥¯¥·¥ç¥ó¤òROM¤Ë¡¢X¥»¥¯¥·¥ç¥ó¤òRAM¤Ë³ä¤êÉÕ¤±¤Þ¤¹¡£int n=1234;¤Î1234¤ÏD¥»¥¯¥·¥ç¥ó¤Ë¾Æ¤«¤ì
n¤ÏX¥»¥¯¥·¥ç¥ó¤Ë¼è¤é¤ì¤Þ¤¹¡£¥¹¥¿¡¼¥È¥¢¥Ã¥×Åù¤ÇD¢ÍX¤Î¥³¥Ô¡¼¤ò¹Ô¤¤¤Þ¤¹¡£ÅºÉÕcrt0.src¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
º£²ó¤Ï¤É¤Ã¤Á¤Ë¤·¤íRAM¤Ê¤Î¤ÇϢ³¤·¤Æ³ä¤êÉÕ¤±¤Æ¤¤¤Þ¤¹¡£
- spromsym.obj¤È¤¤¤¦¤Î¤ÏROMÆâ¥µ¥Ý¡¼¥È¥ë¡¼¥Á¥ó¤Ø¤Î¥¢¥É¥ì¥¹¾ðÊó¤òÊú¤¤¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Ç¡¢
HOS¤ÈľÀÜ´Ø·¸¤¢¤ê¤Þ¤»¤ó¡£
- crt0.src¤Ç»ÈÍѤ·¤Æ¤¤¤ëSTACK¤È¤¤¤¦¥é¥Ù¥ë¤¬¥â¥Ë¥¿¤Ç»ÈÍѤ·¤Æ¤¤¤ëSTACK¤È¾×ÆÍ¤·¤Þ¤·¤¿¤Î¤Ç¡¢
crt0.src¦¤òMYSTACK¤Ëƨ¤²¤Æ¤¤¤Þ¤¹¡£
- ¾¤Ë¤â²¿¤«¤¤¤¸¤¯¤Ã¤¿¤è¤¦¤Ê¡£¤½¤¦¤Ç¤â¤Ê¤¤¤è¤¦¤Ê¡£
¤â¤¦¤Á¤ç¤¤Æù¤Ä¤±¤Æ¤ß¤ë(LED¤Á¤«¤Á¤«ÊÔ)
¤â¤¦°ì¸Ä¡¢LED¤ò¥Á¥«¥Á¥«¤¹¤ë¥¿¥¹¥¯¤òʹԤ·¤ÆÎ®¤·¤Æ¤ß¤Þ¤¹¡£
void
Task2(VP_INT exinf)
{
for(;;) {
PBDR |= 0x01; /*PB0¤Ë¤Ä¤Ê¤¬¤Ã¤¿LED¤Î¾ÃÅô*/
dly_tsk(500); /* 500msÂԤΥ·¥¹¥Æ¥à¥³¡¼¥ë*/
PBDR &= 0xfe; /*PB0¤Ë¤Ä¤Ê¤¬¤Ã¤¿LED¤ÎÅÀÅô*/
dly_tsk(500);
}
}
¤³¤ó¤Ê¤ó¤òsample.c¤ËÄɲä·¤Þ¤¹¡£Task1()¤ËÂФ·¤Æ¤ä¤Ã¤Æ¤ë¤³¤È¤ò»²¹Í¤Ë¤·¤Ê¤¬¤é
- system.cfg¤ËCRE_TSK(TSKID_SAMPLE2, {TA_HLNG, 1, Task2, 1, 256, NULL});¤òÄɲÃ
- sample.c¤Ë act_tsk(TSKID_SAMPLE2); ¤òÄɲÃ
- sample.h¤Ëvoid Task2(VP_INT exinf); ¤òÄɲÃ
¤°¤é¤¤¤Ç¤¨¤¤¤ä¤Ã¤Èmake¤¹¤ë¤È¡Ä¸µ¤Îưºî¤Ë²Ã¤¨¤ÆLED¤¬¥Á¥«¥Á¥«¤¹¤ë¤«¤Ê¤È¡£
¡ûÅöÌ̤ɤ¦¤Ç¤â¤¤¤¤¤Î¤Ç¤¹¤¬¡¢¤Þ¤¡½ñ¤¤¤Æ¤ª¤¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¥¿¥¹¥¯¤Ï¡¢¼Â¹Ô»þ¤Ë¤âÀ¸À®¡¦ºï½ü¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹(UNIX¤Ç¤¤¤¦fork();exec()¡¦kill())¡£
¤·¤«¤·¼Â¹Ô»þ¤ËÀ¸À®¡¦ºï½ü¤ò·«¤êÊÖ¤¹¤È¥ê¥½¡¼¥¹(¼ç¤Ë¥á¥â¥ê¤Ç¤¹¤¬)¤Ë¥¬¥Ù¥Ã¥¸¤¬¤¿¤Þ¤ë²ÄǽÀ¤¬
¤¢¤ë¤¿¤á¡¢ÁȹþÍÑÅӤǤϡÖΩ¤Á¾å¤²»þ¤Ë¤É¤«¤Ã¤ÈÀ¸À®¤·¤ÆÅŸ»ÃǤޤǺï½ü¤·¤Ê¤¤¡×¥¹¥¿¥¤¥ë¤¬
¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¼Â¹Ô»þ¤Î¥¿¥¹¥¯À¸À®¤Ïcre_tsk()¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ç¤¹¤¬¡¢
system.cfg¤ËCRE_TSK()¤ò»ØÄꤷ¤Æ¤ª¤¯¤È¡¢Î©¤Á¾å¤²»þ¤Ëcre_tsk()¤ò¸Æ¤Ö¥³¡¼¥É¤ò
¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥¿¤¬¼«Æ°Åª¤ËÀ¸À®¤·¤Æ¤¯¤ì¤Þ¤¹¡£
¤³¤Î¾ì¹ç¡¢¥æ¡¼¥¶¥×¥í¥°¥é¥à¤ËÅϤä¿»þ¤Ë¤Ïcre_tsk()¤Ï¥³¡¼¥ëºÑ¤Ç¤¹¡£¤³¤ì¤òÀÅŪÀ¸À®¤È¸À¤¦
¤½¤¦¤Ç¤¹¡£
¥¿¥¹¥¯¤Î¾¡¢¥»¥Þ¥Õ¥©¤ä¥á¡¼¥ë¥Ü¥Ã¥¯¥¹Åù¤âƱ¤¸¤è¤¦¤Ë¾®Ê¸»ú¤Ç¥·¥¹¥Æ¥à¥³¡¼¥ë¡¢
Âçʸ»ú¤ÇÀÅŪÀ¸À®¤¬²Äǽ¤Ç¤¹¡£
¤â¤¦¤Á¤ç¤Ã¤ÈÆùÉÕ¤±¤·¤Æ¤ß¤ë(¥Ç¡¼¥¿¥¥å¡¼ÊÔ)
¥·¥ó¥×¥ë¤Ê¥Ç¡¼¥¿¥¥å¡¼¤ò»È¤Ã¤Æ¥¿¥¹¥¯´ÖÄÌ¿®¤ò¤ä¤Ã¤Æ¤ß¤Þ¤¹¡£UNIX¤Çsocket¤ò°·¤¨¤ëÊý¤Ê¤é´Êñ¤Ç¤·¤ç¤¦¡£
¥Ç¡¼¥¿¥¥å¡¼¤Ç¤ÏVP_INT·¿(4¥Ð¥¤¥ÈĹ)¤Î¥Ç¡¼¥¿¤Î¤ß°·¤¨¤Þ¤¹¡£
-
system.cfg¤ËCRE_DTQ(DTQID_SAMPLE1,{TA_TFIFO, 8, NULL});¤òÄɲä·¤Þ¤¹¡£
TA_TFIFO¤Ï¡ÖÍ¥Àè½ç°Ì¤Ê¤·¤ËÀè¤ËÍ褿¥Ç¡¼¥¿¤òÀè¤ËÅϤ¹¡×¤½¤Î¤Þ¤ó¤Þ¤Ç¤¹¡£8¤Ï8¤Äʬ¡£
°Ê¸åDTQID_SAMPLE1¤È¤¤¤¦ID¤òÃΤäƤ¤¤ë¥¿¥¹¥¯¤«¤é¼«Í³¤ËÆÉ¤ß½ñ¤¤Ç¤¤Þ¤¹¡£
- ¤¿¤È¤¨¤ÐÁ°½Ð¤ÎTask2()¤Ç1ÉÃËè¤Ësnd_dtq(DTQID_SAMPLE1,(VP_INT )n);¤ò
¸Æ¤ó¤Ç¤ß¤Þ¤¹¡£
- Task3()¤òή¤·¤Þ¤¹¡£printf()¤ò»ÈÍѤ¹¤ë¤Ê¤éCRE_TSK()¤Î256(¥¹¥¿¥Ã¥¯¥µ¥¤¥º)¤Ï1024ÄøÅÙ¤ËÊѹ¹ÍפǤ¹¡£
void
Task3(VP_INT exinf)
{
VP_INT v;
for(;;) {
LED(GREEN,OFF);
rcv_dtq(DTQID_SAMPLE1,&v);
//printf("I got a data %ld\n",(long )v);
LED(GREEN,ON);
}
}
¤Ç¡¢Á÷¤ê¦¥¿¥¹¥¯¤În¤¬¼õ¤±Â¦¥¿¥¹¥¯v¤ËÅϤë¤Ï¤º¤Ç¤¹¡£
- ¥Ç¡¼¥¿¥¥å¡¼¤¬¥Õ¥ë¤Ê¤Î¤Ë¤µ¤é¤Ë½ñ¤¹þ¤â¤¦¤È¤·¤¿¾ì¹ç
- ½ñ¤¹þ¤á¤ë¤Þ¤Ç¥Ö¥í¥Ã¥¯¤µ¤ì¤ësnd_dtq() (UNIXÉ÷)
- ¥Ö¥í¥Ã¥¯¤µ¤ì¤ë¤¬¥¿¥¤¥à¥¢¥¦¥È¤¹¤ë¤È¥¨¥é¡¼¥³¡¼¥É¤ÇÊ֤äÆÍè¤ëtsnd_dtq()
- ¨¥¨¥é¡¼¥³¡¼¥É¤ÇÊ֤äÆÍè¤ëpsnd_dtq()
¤Î£³¼ïÎढ¤ê¤Þ¤¹¡£(ưºî¤Ï̤³Îǧ)
- ¥Ç¡¼¥¿¥¥å¡¼¤¬¶õ¤Ê¤Î¤ËÆÉ¤ß½Ð¤½¤¦¤È¤·¤¿¾ì¹ç¤â¥Ö¥í¥Ã¥¯¤Î»ÅÊý¤Ë¤è¤ê£³¼ïÎढ¤ê¤Þ¤¹¡£
¤¸¤ï¤¸¤ï¤¤¤¸¤¯¤Ã¤Æ¤ß¤ë(¤½¤Î¤¤¤Á)
¼¡¤Ï¡©
¤Þ¤¡¤ª¤¤¤ª¤¤Äɲ䷤Ƥ¤¤¤Þ¤¹(^^;)¡£
»ñÎÁÊÔ
-
ttp://www.mispo.co.jp/document/no4guid.pdf¡¡(¤Á¤Èµ¤¤¬¤Ò¤±¤ë¤Î¤ÇhÈ´¤¤Ç)
³ô¼°²ñ¼Ò¥ß¥¹¥Ý(¥ß¥º¥Û¤Ç¤Ï¤Ê¤¤^^)¤µ¤ó¤Î¾¦ÍÑiTRON4½àµòOS¤Î¥Þ¥Ë¥å¥¢¥ë¤Ç¤¹¡£
iTRON³µÎ¬¤¬¥³¥ó¥Ñ¥¯¥È¤Ë¤Þ¤È¤Þ¤Ã¤Æ¤¤¤ë¾å¡¢¥·¥¹¥Æ¥à¥³¡¼¥ë¤Îư¤¤Ë¤Ä¤¤¤Æ
¾Ü¤·¤¯½Ò¤Ù¤é¤ì¤Æ¤¤¤Æ¤¹¤´¤¯ÊØÍø¡£
- Îã¤Ë¤è¤Ã¤Æ¤ªÀ¤Ïäˤʤê¤Ã¤Ñ¤Ê¤·¤Î
hamayan¤µ¤ó¤Î¥µ¥¤¥È
¡£¤³¤Î¥Ú¡¼¥¸¤¬¤Ê¤±¤ì¤ÐHOS¤Ê¤ó¤Æ¤¤¤¸¤Ã¤Æ¤Ê¤«¤Ã¤¿¤È»×¤¤¤Þ¤¹¡£
º£¸å»È¤¤¹þ¤ó¤Ç¤¤¤±¤Ð¤Þ¤À¤Þ¤À¤ªÀ¤Ïäˤʤë¤È»×¤¤¤Þ¤¹¡£(¤Ú¤³¤ê)
-
Ryuz¤µ¤ó¤Î¥Ú¡¼¥¸¡£³«È¯¼Ô¤µ¤ó¤Ç¤¹¤«¤é¤à¤Ä¤«¤·¤¤ÏäФ«¤ê¤«¤È»×¤¦¤È¤Á¤ã¤ó¤È
½é¿´¼Ô¸þ¤±²òÀâ¤â¤¢¤ê¡¢¤«¤Ê¤ê¤«¤Ö¤Ã¤Æ¤·¤Þ¤¤¤Þ¤·¤¿¡£Àè¤ËÆÉ¤á¤Ð¤è¤«¤Ã¤¿¡Ä
- ¤â¤¦¤¤¤Ã¤Ú¤óHOS¤Î¤ª¤ª¤â¤È¡£
¤Þ¤À¤Þ¤ÀÉßµï¤Ï¹â¤¤¤Ç¤¹¤¬(^o^)¡£
̵ÊݾڤǤ¹¡£³Æ¼«¤ÎÀÕǤ¤Ë¤ª¤¤¤Æ¤ª´ê¤¤¤·¤Þ¤¹¡£
watson8¤ËÌ䤤¹ç¤ï¤»¤ë¤è¤¦¤Ê¤³¤È¤Ï¡Ä¤ªµ¤·Ú¤Ë¤É¤¦¤¾¡£
´¶ÁۤʤɤÏ
¤Þ¤¿¤Ï¤³¤Á¤é¤Î
¤«¤é¤É¤¦¤¾¡£
¤Ä¤Ã¤³¤ß¤â¤ä¤ó¤ï¤ê¤È¤Ê¤é´¿·Þ¤·¤Þ¤¹¡£
¤Ø¤â¤É¤ë