ڥС
1.0.5

ڳס
ISS³ġDeviceManagerˤDeviceManagerѤ˳ĥ줿
ISSSkyEyeˤˤäƹޥץåߥ졼ĶǤ
SkyEyeˤϰʲγĥƤޤ
ISS֤̿𤹤뵡ǽɲ
Ʊǽɲ
¹ԻΥ󥪥յǽɲ

ڥ饤󥹡
SkyEyeGPL饤
DeviceManagerTOPPERS饤(http://www.toppers.jp/license.html)

ڥǥ쥯ȥ깽¤

ܥѥåΥǥ쥯ȥ깽¤ޤ˰ʲΤ褦ˤʤäƤޤ

./bin/
./skyeye-conf.txt 
	skyeye.confΥޥ˥奢
./skyeye-1.2.4_DevMExGPL饤
	SkyEye
./devicemanagerTOPPERS饤
	DeviceManager

skyeye.exe
	ASP,FMPͥ뤬ưISSSkyEye
	CygwinǼ¹
          DeviceManagerĥС2.0.0

devicemanager.exe
	ISS³ġʥǥХޥ͡
	ɬ׻˼ưŪ˵ưȥ쥤˾
          С2.0.1

devicemanagerps.dll
	devicemanager.exeǻѤ饤֥
          С2.0.1
regist.bat
	ǥХޥ͡Υ󥹥ȡѥХåե


ڽ
SkyEyeμ¹ԤASPFMPΥӥɤˤCygwinΥ󥹥ȡ뤬ɬפǤCygwin
󥹥ȡ餫ʲΥѥå򥤥󥹥ȡ뤷Ʋ

make
gcc
g++
boost
perl

ޤarmѤΥѥ򥤥󥹥ȡ뤹ɬפޤ

http://www.embedded.jp/gnuwing/index.html

SkyEyeΥѥˡ
1:skyeye-1.2.4_DevMEx/makeԤ
2:skyeye-1.2.4_DevMEx/utils/com/makeԤ

skyeye-1.2.4_DevMEx/utils/com/skyeye.exeޤ

줿skyeye.exebin/skyeye.exeˤ⤢ޤ

ڥ󥹥ȡˡ

bin/regist.bat¹ԡʥ֥륯åˤȥǥХޥ͡Υ
ȡԤޤ󥹥ȡϥǥХޥ͡WindowsΥ쥸
ȥϿ뤳ȤǹԤޤȡdevicemanagerps.dll
DllRegisterServerޤפȤåܥåɽ
ޤ󥹥ȡWindowsƵưƲեμ
Ը¤ʤregist.batμ¹Ի˥顼ˤʤΤǡ¹Ը¤դ
ټ¹ԤƲ
ޤskyeye.exeCygwinΥѥ̤Ʋ

ڻˡ

ASPͥΥߥ졼ˡ

ASPͥskyeye.exeǥߥ졼ǽǤߥ졼
ˤARMѤΥХʥեasp.exeˤ¾ˡskyeye.confȤSkyEye
ե뤬ɬפˤʤޤskyeye.confASPͥΥѥå
˴ޤޤƤޤ./asp+tecs/target/at91skyeye_gcc/skyeye.confˡ
ASPͥ桼ץȥ󥯤asp.exeƤ顤
skyeye.confasp.exe֤Ƥǥ쥯ȥ˥ԡƲ
Cygwinasp.exeskyeye.confǥ쥯ȥ˰ư
ʲΥޥɤ¹Ԥȥߥ졼򳫻Ϥޤ

> skyeye.exe -e asp.exe -c skyeye.conf

ߥ졼νλCtrl+CˤԤäƲ

FMPͥΥߥ졼ˡ

FMPͥskyeye.exeǥߥ졼ǽǤߥ졼
ˤARMѤΥХʥեfmp.exeˤ¾ˡSkyEyeե뤬
ץåʬɬפˤʤޤFMPͥΥѥåˤ2ץåѤ
ե뤬ޤޤƤޤ./fmp/target/at91skyeye_gcc/skyeye_pe1.conf
skyeye_pe2.confˡFMPͥ桼ץȥ󥯤fmp.exe
Ƥ顤եfmp.exe֤Ƥǥ쥯ȥ˥ԡ
ƲCygwinfmp.exeskyeye_pe1.confskyeye_pe2.conf
ǥ쥯ȥ˰ưʲΥޥɤ¹ԤƤ

> skyeye.exe -e fmp.exe -c skyeye_pe1.conf

⤦ĤCygwin򳫤fmp.exe֤Ƥ
ǥ쥯ȥ˰ưʲΥޥɤ¹ԤƤ

> skyeye.exe -e fmp.exe -c skyeye_pe2.conf

ߥ졼νλCtrl+CˤԤäƲ

GDBǥХåˡ

 SkyEyeGDBˤǥХåǽǤ2ץåѤFMPͥ
ޤfmp.exeskyeye_pe1.confskyeye_pe2.confǥ쥯ȥ
ǰʲGDBեgdb_pe1.inigdb_pe2.iniˤѰդƤ

#gdb_pe1.ini
target remote localhost:1234
load

#gdb_pe2.ini
target remote localhost:1235
load 

Cygwin򣲤ĳfmp.exeǥ쥯ȥ˰ư塤ʲΥޥɤ
ϤơSkyEyeǥХå⡼ɤǼ¹ԤƤ

>skyeye.exe -c skyeye_pe1.conf -d

⤦Cygwin
>skyeye.exe -c skyeye_pe2.conf -d

Cygwin2ĳfmp.exeǥ쥯ȥ˰ư塤ʲΥޥɤ
ϤơGDB¹ԤƤ

>arm-elf-gdb -x gdb_pe1.ini fmp.exe

⤦Cygwin
>arm-elf-gdb -x gdb_pe2.ini fmp.exe

줾ΥǥХåcontinueˤꥫͥ򥹥ȤƤ

ڥ󥤥󥹥ȡˡ

bin/unregist.bat¹ԡʥ֥륯åˤȥǥХޥ͡Υ
󥤥󥹥ȡԤޤȡdevicemanagerps.dll
DllUnregisterServerޤפȤåܥåɽ
ޤ

ڥǥХޥ͡API

ǥХޥ͡APIϰʲΤ褦ˤʤäƤޤǥޥȤ
SkyEyeΥեȥߥ졼졼֤ȤHDLߥ졼Υ
ɥߥ졼ؤޤ

1. ޥ¦󥿥ե

   Read(unsigned long address,unsigned long size, byte data [])
   Write(unsigned long address,unsigned long size, byte data [])
ޥɹ/׵롥ϰϤaddress 
ޤsize ХȤΰǤ롥ä׵Ŭڤʥ졼֤ˡOnRead/
OnWrite ȤäϤ

   RaiseInterrupt(unsigned long inhno)
ޥֹinhno γ׵롥ä
ŬڤʥޥˡOnInterruptRequest ȤäϤ

   OnInterruptRequest(unsigned long inhno)
ޥ˳ֹinhno γ׵Ϥ

   Map(unsigned long id)
ޥץåID ׵롥

   Unmap(unsigned long id)
ޥץåID Ʋ׵롥

   CreateSharedMemory(unsigned long address, unsigned long size, BSTR lpName)
ޥ鶦ͭ׵롥lpName Ȥ̾size 
Ȥζͭaddress Ϥޤsize ХȤΥɥ쥹ΰ
˥ޥåԥ󥰤롥

   ReleaseSharedMemory(BSTR lpName)
ޥlpName Ȥ̾ζͭβ׵롥

   CreateSharedMemoryAnyName(unsigned long address, unsigned long size, BSTR * lpName)
ޥ鶦ͭ׵롥ͭ̾դsize Х
Ȥζͭaddress Ϥޤsize ХȤΥɥ쥹ΰ
ޥåԥ󥰤롥ˡդ̾lpName ˥ԡ롥

   CreateMutex(unsigned long number, BSTR * lpName)
ޥߥ塼ƥå׵롥number ͭ̾
դƥߥ塼ƥåդ̾lpName ˥ԡ롥

   CloseMutex(unsigned long number)
ޥߥ塼ƥå׵롥


2. 졼¦󥿥ե

   OnRead(long address, long size, byte data [])
   OnWrite(long address, long size, byte data [])
졼֤ɹ/׵Ϥΰ̣Read/Write Ʊ
롥

   RaiseInterrupt(unsigned long inhno)
졼֤׵롥ä׵Ŭڤʥޥˡ
OnInterruptRequest ȤäϤ

   Map(unsigned long address, unsigned long size)
졼֤饢ɥ쥹ޥåԥ׵롥졼ּȤaddress
Ϥޤsize ХȤΥɥ쥹ΰô뤳ȤΤ餻롥

   Unmap(unsigned long address)
졼֤饢ɥ쥹ޥåԥ׵롥졼ּȤ
address ޤॢɥ쥹ΰôλ뤳ȤΤ餻롥

   CreateSharedMemory(unsigned long address, unsigned long size, BSTR lpName)
   ReleaseSharedMemory(BSTR lpName)
   CreateSharedMemoryAnyName(unsigned long address, unsigned long size, BSTR * lpName)
   CreateMutex(unsigned long number, BSTR * lpName)
   CloseMutex(unsigned long number)
ޥ¦Ʊ̾Υ󥿥ե

SkyEyeAT91Ϣλ͡

ߥȥΥ쥸

IVR : 
 ɥ쥹 : 0xfffff100
  : R
 ǽ     : 
   ߼ջɤ߹쥸Υ쥸ɤ߹ळȤˤꡤ
   ISRˤλȯƤ׵ΤǤֹ椬㤤ʪ
   ֹ椬ISRꤵ졤׵᤬ꥢ롥

ISR :
 ɥ쥹 : 0xfffff108
  : R
 ǽ     : 
   IVRɤ߹ǳ׵ΤǤֹ椬㤤ʪֹ
   ɤ߹롥

IPR : 
  ɥ쥹 : 0xfffff10C
   : R
  ǽ     : 
    ǥХγ׵ȯ̵ͭɤ߹ࡥ׵᤬ȯ
    ӥåȤ'1'Ȥʤ롥

IMR : 
  ɥ쥹 : 0xfffff110
   : R
  ǽ     : 
    ߥޥ쥸Ƥɤ߹ߡߤĤƤ
    '1'ߤػߤƤ'0'ɤ߹롥

IECR : 
  ɥ쥹 : 0xfffff120
   : W
  ǽ     : 
    ߵĥ쥸'1'񤭹ӥåȤбߤĤ
    롥
    
IDCR : 
  ɥ쥹 : 0xfffff124
   : W
  ǽ     : 
    ߶ػߥ쥸'1'񤭹ӥåȤбߤػߤ
    롥

ICLEAR :
  ɥ쥹 : 0xfffff128
   : W
  ǽ     : 
    ߥꥢ쥸'1'񤭹ӥåȤб׵
    ꥢ롥
  
ISET
  ɥ쥹 : 0xfffff12C
   : W
  ǽ     : 
    ߥåȥ쥸'1'񤭹ӥåȤб׵
    ȯ롥


ֹ

 0 : FIQȯ
 1 : SoftwareȯѤ˥ꥶ
 2 : UART0
 3 : UART1
 4 : Timer0
 5 : Timer1
 6 : Timer2
 7 : Watch Dog
 8 : PIO

16 : 0
17 : 1
18 : 2

Сֹμ쥸

Сֹϡ4ӥåȤ᥸㡼Сֹ桤8ӥåȤ
ʡСֹ桤4ӥåȤѥå٥ɽͥν
ɬפȤʤ빹ǤϡޥʡСֹä롥ͥν
ɬפǤϤʤʥХʤɤΡ˹Ǥϡѥå٥ֹä롥

SKYEYE_VERSION:
  ɥ쥹: 0xFFFE1000
  : R
  ǽ    : skyeye ΥСֹ롥

DEVM_VERSION:
  ɥ쥹: 0xFFFE1010
  : R
  ǽ    : ǥХޥ͡ΥСֹ롥

ʾ塥
