è€éãªãã¯ã¿ã€
ããã¯ã°ã©ãŠã³ã ...
é»åeInkã®å€æã®ãªããŒã¹ãšã³ãžãã¢ãªã³ã°ã«é¢ããäœæ¥ã®äžç°ãšã㊠ãè峿·±ãåé¡ãçºçããŸãããç¹å®ã®äŒç€ŸïŒSamsung Electro Mechanics / SoluMïŒã¯ãç§ãç¹å®ã§ãããµãŒãããŒãã£ã®ãããïŒMarvell 88MZ100ïŒã®äœ¿çšãããæ¬¡äžä»£ã®å€æã§äœ¿çšãå§ããæ°ãããããã«åãæ¿ããŸããã
ããã¯ããŸãã«ãã®ç®çã®ããã«äŒç€Ÿãéçºããç¬èªã®ãããã®ããã§ããããã®ãããªãã®ã®ãªããŒã¹ãšã³ãžãã¢ãªã³ã°ãåŒãåããããšã¯ãæ»ãã åé¡ã§ããå人ãç§ã«ãã®ãããªãããã§ããã€ãã®å€æããããŸãã-ããããåããŸãããããã¯2ã€ã®ã¿ã€ãã§ããããšã倿ããŸããã1ã€ã¯e-inkã«ã»ã°ã¡ã³ãåããããã£ã¹ãã¬ã€ãåãããã1ã€ã¯e-inkã«åŸæ¥ã®ã°ã©ãã£ãã¯ãã£ã¹ãã¬ã€ãåããŠããŸããäž¡æ¹ã®ã¢ãã«ã®ã¡ã€ã³ãããã¯åãã§ãããããæåã«è¡ã£ãã®ã¯ã»ã°ã¡ã³ãåããããã£ã¹ãã¬ã€ããã€ã¹ã§ãããããã¯ãããã·ã³ãã«ã§ãããã䜿çšããŠæªç¥ã®ã·ã¹ãã ãåŠçããã®ãç°¡åã ããã§ããã©ãããå§ããã°ãããã¯å®å šã«ã¯æç¢ºã§ã¯ãããŸããã§ãããããã¡ããããããã¯åžžã«æãè峿·±ãã¿ã¹ã¯ã§ãã
調æ»
質åãèªãŸãã«ã¯ãã¹ã¯ãŒãããºã«ãè§£ãããšããã®ã¯ã°ãããŠããŸããããã€ã¹ã«é¢ããŠãã§ã«å©çšå¯èœãªãã¹ãŠã®æ å ±ãæåã«åéããã«ãããã€ã¹ããªããŒã¹ãšã³ãžãã¢ãªã³ã°ããã®ãåæ§ã«æãã§ããã§ã¯ãæåã«äœãç¥ã£ãŠããã®ã§ãããããã¯ã€ã€ã¬ã¹ããŒã¿è»¢éãããã³ã«ã¯ããããéåžžãšåãã§ããæ°ãããããã³ã«ã«ç§»è¡ãããã顧客ã®ããã«2ã€ã®ãããã³ã«ãåæã«ãµããŒããããããŠãç§»è¡ããã£ãããšå®è¡ããããšãæãã§ããäŒæ¥ã¯ãªãããã§ããå€ããããã³ã«ã¯2.4GHz ZigBeeã«äŒŒãŠããã®ã§ãæ°ãããããã³ã«ã¯ããããåãã§ãããããäž¡é¢ããã®ããŒãã®åçã§ãã
ã§ã¯ãäœãèŠããŸããïŒãŸããã³ã¹ãæé©åã®ã¯ãŒã«ãªäŸã§ãã圌ãã¯e-inkã¹ã¯ãªãŒã³ãPCBã«çŽæ¥ã©ãããŒãããŸããïŒ PCBãããå Žåã誰ãå°é»æ§ã¬ã©ã¹ã®èé¢ããã«ãå¿ èŠãšããŸããïŒããã³ãããã«ã¯å°é»æ§ãã©ã¹ããã¯è£œã§ããããããããã¯éèŠã§ã¯ãããŸããã
ãµã€ãºãã倿ãããšã2.4GHzã§2ã€ã®ã¢ã³ããã衚瀺ãããŸããäºæ³éããåäžä»£ã®ããã€ã¹ã«ã2ã€ã®2.4GHzã¢ã³ããããããŸããã 2ã€ã®ãããããããŸãã倧å°ã倧ããªãã®ïŒãSEM9010ããšæå®ïŒã«ã¯ãæããã«ãã£ã¹ãã¬ã€ã«æ¥ç¶ããå€ãã®æ¥ç¹ããããã¢ã³ããã«ã¯æ¥ç¶ããŠããŸãããæããã«ãããã¯ãã£ã¹ãã¬ã€ã³ã³ãããŒã©ãŒã§ãã
å°ããªïŒãSEM9110ããšæå®ãããŠããïŒã¯ããã¹ãŠã®æäœãæ åœããè³ã®ããã§ããããã¯ãã¢ã³ãããã¿ã€ãã³ã°ã¯ãªã¹ã¿ã«ãããã³ãã¡ã¯ããªããã°ã©ãã³ã°ã§ããã§æãããªããŒãã€ã³ãã«æ¥ç¶ãããŠããŸãã
ããã«ã¯12åã®ãããããããŸãã1åã¯ããããªãŒã®ãã©ã¹ç«¯åã«æ¥ç¶ããã1åã¯ã¢ãŒã¹ã«æ¥ç¶ãããä»ã®10åã®ç®çã¯è¬ã§ãããªã³ã©ã€ã³ã§ãããã®ååãæ€çŽ¢ããŠãã圹ã«ç«ã€ãã®ã¯äœãèŠã€ãããŸãããééããªã圌ãèªèº«ã®éçºã§ãããããã誰ããã®ãããªåçŽãªã¢ããªã±ãŒã·ã§ã³ã®ããã«ç¬èªã®ããããèšèšããã®ã§ããããïŒãã¶ããã ã®ãªãã©ã³ãïŒå©çšããŠãç§ãã¡ã¯åããŠããŸãïŒ
äžæè°ãªããšã«ãGoogleç»åæ€çŽ¢ãããã§åœ¹ã«ç«ã¡ãŸããããã®ããŒã«ã¯ããªããŒã¹ãšã³ãžãã¢ãªã³ã°ã«åœ¹ç«ã€ããšããããŸãããã®å Žåã圌ã¯ç§ãã¡ããã®ãã²ããã«é£ããŠè¡ã ãŸãã ïŒ åŸäžã®ããã«ããã«ã¢ãŒã«ã€ããããã³ã㌠ïŒãããã¯StackExchangeããã®è³ªåã§ã-ãããã®é»åæ£ã©ãã«ãã©ã®ããã«æ©èœããã®ãçåã«æããŸããããã«æ²èŒãããŠããåçã§ã¯ãããªã³ãåè·¯åºæ¿ã¯ ç§ãã¡ã®ãã®ãšã»ãšãã©åãã«èŠããã®ã§ã質åã¯è峿·±ã ãã®ã§ãããããããŸã£ããåãã§ãããã©ãã«ãç°ãªããŸããããŒãã¯ãSoluMããããã®ãããã®ãã©ã³ã倿Žãéå§ããåã«äœæãããå¯èœæ§ããããŸãã
ç§ããã£ã¹ãã¬ã€ã³ã³ãããŒã©ãŒã§ãããšæ³å®ãããããã«ã¯ããšããã©ãã«ãä»ããŠã
SSD1623L2
ãŸããå®éãããã¯æå€§96ã»ã°ã¡ã³ãããµããŒãããe-inkã»ã°ã¡ã³ããã£ã¹ãã¬ã€ã³ã³ãããŒã©ãŒã§ãããªã³ã©ã€ã³ã§æ€çŽ¢ãããšããã¬ãªãªãŒã¹ããŒãžã§ã³0.1ã®ããŒã¿ã·ãŒããèŠã€ãããŸãã ïŒã¢ãŒã«ã€ããããã³ããŒã¯ ãã¡ãïŒ åŸäžã®ããã«ïŒãããã¯è¯ãã§ãïŒåœŒããããã«å°éããæ¹æ³ãç¥ã£ãŠããã°ã圌ãã¯ãããçè§£ããã³ãŒããæŸãããšãã§ããŸãããããŠç§ãã¡ããã®ã³ãŒããèŠããšããã«ããã¯ãã¹ãŠã§ãïŒ
ã¡ã€ã³ã®ãã€ã¯ãã³ã³ãããŒã©ã¯
ZBS242
ã§ããã¯ããç§ã¯ãã®ãã€ã¯ãã³ã³ãããŒã©ãŒã«ç²ŸéããŠããŸãããããå°ãã€ã³ã¿ãŒããããæ€çŽ¢ããŠã¿ãŸããã-æ€çŽ¢ãããš ãªã³ã¯ã衚瀺ãããŸã ïŒã¢ãŒã«ã€ãã³ããŒã¯ ãã¡ãïŒ åŸäžã®ããã«ïŒãStackExchangeããã®åãçãã«ãèšåããŠããŸãããã®ããŒãžã¯éåœèªã§ããããã®ãããã«ã¯8051ã³ã¢ãšãããªãäºæž¬å¯èœãªåšèŸºæ©åšïŒUARTãSPIãI2CãADCãDACãã³ã³ãã¬ãŒã¿ã枩床ã»ã³ãµãŒã5ãã£ãã«PWMã3ãã£ã³ãã«ãã©ã€ã¢ãã¯ã³ã³ãããŒã©ãŒïŒãæèŒãããŠããããšã瀺ãããŠããŸãã ãIRãã©ã³ã¹ããã¿ãŒãããŒã¹ãã£ã³æ©èœãRF-Wakeæ©èœãã¢ã³ããééãZigBieeäºæã©ãžãªããã³MACãåçã¯ãå éšã«32 kHz RCçºæ¯åšããããåè¿°ã®ããã«ãã¹ãªãŒãã¢ãŒãã§æ¶è²»ããã®ã¯ããã1uAã§ããããšã瀺ããŠããŸãããµã ã¹ã³çšã®ããããäœã£ãã®ã¯ãã®äŒç€Ÿã ã£ããšæããŸããããããã...
åçãèŠãŠãç§ãã¡ãå°æãããSEM9110ã¯ãªã¹ã¿ã«ããã€ã³ããã©ã³ã¯ã§æ®åœ±ãããããšãããã ãŸã ïŒã¢ãŒã«ã€ãã³ã㌠åŸäžã®ããã«ããã«ïŒãZBS243ãšèšèŒãããŠããŸããããã¯ãããã«ãããã®ãã¡ããªãŒå šäœãã€ãŸãZBS24xãããããšãæå³ããŠãããšæããŸããæ¬åœã«é¢çœãã§ãã
ã¹ã¬ããããããŸãïŒ
å¥ã®ã»ã°ã¡ã³ãã¿ã°ãéããåŸãããã¥ãŒã¹ãåãã§ããŸããããã°ã©ãã³ã°ãããã¯ãæç¢ºã§èªã¿ãããéè²ã®æåã§çœ²åãããŠããŸãããããã«ã¯ãSPIãUARTããªã»ãããã³ã黿ºãã°ã©ã³ããããã³ããã¹ãããšåŒã°ãããã³ããããããããå·¥å Žãã¹ãã¢ãŒãã«å ¥ãã®ã«äœ¿çšãããŠããããã§ãããã¹ãŠããã奜å¥å¿ã匷ãã奜å¥å¿ã匷ãã§ãã
æ¶ç©ºã®ZBS24xãã¡ããªã®æãå€ã代衚ããZBS240ããšæå®ãããããšã¯è«ççã§ãããã¶ãããã®ãããªã¯ãšãªã®æ€çŽ¢ã¯ç§ãã¡ã«äœãé¢çœããã®ãäžããã§ããããïŒ ãZBS240ããæ€çŽ¢ããŠã¹ã©ã°ãé€å€ãããšãéåœèªã§å¥ã®è峿·±ãããŒãžãèŠã€ãããŸã ïŒ åŸäžã®ããã«ããã«ã¢ãŒã«ã€ããããã³ã㌠ïŒããã®äŒç€Ÿã¯ã«ã¹ã¿ã ã®ãªã³ããã³ãã°ã«ãŒãããã°ã©ããŒãäœã£ãŠããããã§ãã圌ãã®ãŠã§ããµã€ããèŠãŠåã£ããšãããããã¥ã¢ã«ãèŠã€ãããŸãã ïŒã¢ãŒã«ã€ãã³ããŒã¯ ãã¡ãïŒ åŸäžã®ããã«ïŒåœŒãã®ããã°ã©ãã³ã°ããã€ã¹äžã§ããããŠç§ãã¡ã¯ãã®ãããªããã€ã¹ã§åäœããPCçšã®ãŠãŒãã£ãªãã£ãããŠã³ããŒãããããšããã§ããŸãããã®ãŠãŒãã£ãªãã£ã«ã¯ãããã€ã¹ã®ãã¡ãŒã ãŠã§ã¢ãæŽæ°ããããŒã«ããããŸãããã®æ å ±ããããã€ã¹ã®ããã°ã©ãã³ã°æ¹æ³ãæšæž¬ã§ãããã©ãã調ã¹ãŸãããããã¡ãŒã ãŠã§ã¢ãæå·åãããŠããããšãããããŸãããã©ãããPCåŽã®ãŠãŒãã£ãªãã£ã¯USBã·ãªã¢ã«ããŒããä»ããŠããŒã¿ãéä¿¡ããŠããã ããªã®ã§ãããã«ãæçšãªæ å ±ã¯ãããŸãããæ²ãã...
ããå°ãæ€çŽ¢ãããšãããã«è峿·±ãããŒãžãèŠã€ãã ãŸã ïŒã¢ãŒã«ã€ããããã³ããŒã¯ ãã¡ãïŒ åŸäžã®ããã«ïŒãããã¯äœã§ããïŒã»ãŒã«äžã§ããïŒïŒïŒééããªããããããŸããããïŒå¿µã®ããããã®äŒç€Ÿã«ç³é¹žãæžããŠã¿ãŸãããæ²é»...çµ¶æã®ãžã§ã¹ãã£ãŒãšããŠãç§ã¯éŠæž¯ã®å人ã«ãéåœã®éè¡ããã®ééã®ã¿ãæ¯æããšããŠåãå ¥ãããšãŠã§ããµã€ãã«ç€ºãããŠããã®ã§ããããã®äººã«é£çµ¡ã§ããéåœã®èª°ããç¥ã£ãŠãããã©ããå°ããŸããã圌ãããã¯ããã¯ããŠèšã£ããšããç§ã¯ãã é©ããã確ãã«ã圌ã¯éåœã§èŠã€ãã仲仿¥è ãéããŠç§ã«ãã®ããã€ã¹ãæã«å ¥ããããšãã§ããïŒæ°æ¥åŸãããã€ã¹ã¯DHLã«ãã£ãŠé éãããŸããïŒ
ããªãã¯åœŒã«å°éããããšãã§ããŸãïŒ
圌ã«é£çµ¡ããæ¹æ³
åäœããŸãïŒãããã®èªã¿åããšæžã蟌ã¿ãã§ããŸããããã°ã©ãã³ã°ããŒã«ãç ç©¶ããã®ã«å°ãæéãããããŸãããã©ãããããããã«ã¯64KBã®ãã©ãã·ã¥ã¡ã¢ãªãš1KBã®ãæ å ±ãããã¯ããããããã£ãªãã¬ãŒã·ã§ã³å€ãMACã¢ãã¬ã¹ãªã©ãä¿åããããã«äœ¿çšãããŠãããšæããŸããçŽ æŽãããSaleaeLogicããžãã¯ã¢ãã©ã€ã¶ãŒãè£ åããŠãããã°ã©ããŒããã®ä»äºãããŠããã®ãèŠãŠãããã€ãã®ãã¬ãŒã¹ãååããããšãã§ããŸãã ãç§ã®èª¿æ»çµæã¯ããããããŠã³ããŒãã§ããŸã ããã®ã¢ãŒã«ã€ãã«ã¯ãINFOBLOCKããã³CODEã¹ããŒã¹ã®èªã¿åããæ¶å»ãããã³æžã蟌ã¿ã®çè·¡ããããŸããå®éããããã³ã«ã¯ éåžžã« ã·ã³ãã«ã§ããã¯ããã¯åšæ³¢æ°ã¯ã100 kHzã8MHzã®ç¯å²ã§æå®ã§ããŸãã
ISPãããã³ã«ïŒéªšã®æãã
ããã¯ãã¹ãŠãã©ã€ã³ãç®çã®ç¶æ ïŒSCLKããã ãMOSIããããRESETããããSSãããïŒã«èšå®ããããšããå§ãŸããŸãããã®ç¶æ ã¯20ããªç§éç¶æãããŸããæ¬¡ã«ãRESETã32ããªç§äœäžããŸããæ¬¡ã«ãå°ãªããšã4ã€ã®ããã»ããµã¯ããã¯ã500kHzã§SCKã©ã€ã³ã«éä¿¡ãããŸããæ¬¡ã«ãRESETãããã·ã¥ã¢ããããããŸã§ããã«10ããªç§ã®é å»¶ããããŸããéä¿¡ãéå§ããåã«100ããªç§ã®é å»¶ãèšå®ã§ããããã«ãªããŸããããã®åŸãä»»æã®æ°ã®ãã©ã³ã¶ã¯ã·ã§ã³ãè¡ãããšãã§ããŸããããã€ãã®åºæ¬çãªã«ãŒã«ïŒSSãããŠã³ããŠãããã€ããéä¿¡ãããŸã§ã«å°ãªããšã5usããã€ãã®çµããããSSãã¢ãããããŸã§ã«å°ãªããšã2usãå¿ èŠã§ãããSSãè²»ããããšãã§ããæçæéã¯2.5usã§ãããããã£ãŠãåãã€ãã¯æ¬¡ã®ç¶æ ã§éä¿¡ãããŸããSSãããŠã³ããã€ããSPIã¢ãŒã0ã§éä¿¡ãããSSãã¢ããã§ããã¯ãããã¡ãããSSã¯ãã€ãããšã«å転ããŸãã
ãã¹ãŠã®ãã©ã³ã¶ã¯ã·ã§ã³ã®é·ãã¯3ã4ãã€ãã§ããæåã®ãã€ãã¯ãã©ã³ã¶ã¯ã·ã§ã³ã®ã¿ã€ãã瀺ããæäžäœãããã¯ãã©ã³ã¶ã¯ã·ã§ã³ã®æ¹åãæå®ããŸãããŒãã¯ããã€ã¹ãžã®æžã蟌ã¿ãæå³ãã1ã¯ããã€ã¹ããã®èªã¿åããæå³ããŸãã
0x02
/ ã³ãã³ã
0x03
ã¯ãéä¿¡ã»ãã·ã§ã³ãéå§ããããã«äœ¿çšãããŸããããã°ã©ããŒã¯3ãã€ãã®writeïŒ
02 BA A5
ãéä¿¡ããæ¬¡ã«èªã¿åããæåã«readã³ãã³ããš "address"ïŒã
03 BA
éä¿¡
FF
ãã ãã¹ã¿ãŒã¯ãåä¿¡ããªããéä¿¡ ã
A5
ãŸãããããæ©èœããå Žåãéä¿¡ã確ç«ãããŸãã
ã³ãã³ã
0x12
/
0x13
CPUã®ç¹æ®ç®çã¬ãžã¹ã¿ïŒSFRïŒã®èªã¿åã/æžã蟌ã¿ã«äœ¿çšãããŸãïŒããã¯ããé£ãããšæããŸãããããã®å Žåãé åºã¯ããã»ã©éèŠã§ã¯ãããŸããïŒã INFOBLOCKãéžæããã«ã¯ãSFR
0xD8
ãã«èšå®ããå¿ èŠããã
0x80
ãŸããã¡ã€ã³ãã©ãã·ã¥é åãéžæããã«ã¯ãã«èšå®ããå¿ èŠããããŸã
0x00
ã vvã®å€ãã¬ãžã¹ã¿rrã«æžã蟌ãã«ã¯ãSPIããŒã¿ãå¿ èŠã§ã
12 rr vv
ãå€ãèªã¿åãããããšã確èªããã«ã¯ãæåã«èªã¿åãã³ãã³ããšãã¢ãã¬ã¹ããéä¿¡ããããšã§å€ãèªã¿æ»ãããšãã§ããŸãã
13 rr
ãã®åŸããã¹ã¿ãŒã¯
FF
ãåä¿¡ããªããéä¿¡ ã
vv
ãŸãã
ãã©ãã·ã¥ã¡ã¢ãªã®èªã¿åãã¯ç°¡åã§ãããããè¡ãã«ã¯ãé©çšããŸã
0x09
ã4ãã€ãã®ã³ãã³ããã³ãã³ããã€ãã®åŸãã¢ãã¬ã¹ãéä¿¡ãããŸããæåã«äžäœãã€ããæ¬¡ã«äžäœãã€ãã§ããæ¬¡ã«ããã¹ã¿ãŒã¯ãéä¿¡
FF
ãããã®éã«èªã¿åããããã€ããåä¿¡ããŸããã¯ããããã§ããåãã€ããèªã¿åãã«ã¯ãåå¥ã®ã³ãã³ããå¿ èŠã§ããæžãã®ãç°¡åã§ãããã®ããã«ãã³ãã³ãã䜿çšãã
0x08
ãŸããããã¯4ãã€ãã®ã³ãã³ãã§ããã³ãã³ããã€ãã®åŸãã¢ãã¬ã¹ãéä¿¡ãããŸããæåã«äžäœãã€ããæ¬¡ã«äžäœãã€ããæ¬¡ã«æžã蟌ãŸãããã€ãã§ããåãã€ããæžã蟌ãã«ã¯ãåå¥ã®ã³ãã³ããå¿ èŠã§ããé²é³ããåã«å¿ ãæ¶å»ããŠãã ããã INFOBLOCKãæ¶å»ããã«ã¯ã4ãã€ãã®ã·ãŒã±ã³ã¹ã1ã€ã ãå¿ èŠã§ã
48 00 00 00
ãã¡ã€ã³ãã©ãã·ã¥ã¡ã¢ãªã®æ¶å»ã¯ãã³ãã³ãã䜿çšããŠå®è¡ãã
88 00 00 00
ãŸãã
ããã§ãZBS24xãç°¡åã«ããã°ã©ã ããã®ã«ååãªç¥èãåŸãããŸããã
ä»äºãå§ããïŒ
8051çšãã©ã€ããŒ
ãã§ã«8051ã«ç²ŸéããŠããå Žåã¯ã ãã®ã»ã¯ã·ã§ã³ãã¹ãããããŠãåé¡ãããŸãã ã
8051 ã¯ãå€ãããIntelã«ãã£ãŠèšèšããã å€ããã€ã¯ãã³ã³ãããŒã©ã§ããäœæ¥ããã®ã¯ã²ã©ãæéã§ãããã©ã€ã»ã³ã¹ãå®ãïŒå®éã«ã¯ç¡æïŒãããä»ã§ãããªãé »ç¹ã«äœ¿çšãããŠããŸããäœãåé¡ãªã®ïŒ 8051ã«ã¯ããã€ãã®åå¥ã®ã¡ã¢ãªã¹ããŒã¹ããããŸãã
CODE
ã³ãŒãçšã«äºçŽãããŠããã¡ã¢ãªã®é åã§ããæå€§ãµã€ãºã¯64KBïŒ16ãããã¢ãã¬ã¹ïŒã§ããææ°ã®èšèšã§ã¯ãããã¯ãã©ãã·ã¥ã¡ã¢ãªã§ããã³ãŒãã¯ãç¹å¥ãªåœä»€
movc
ïŒ "MOVe from Code"ïŒã䜿çšããŠããããããã€ããèªã¿åãããšãã§ããŸã ã
XRAM
ãå€éšãã¡ã¢ãªã§ããã€ãŸããã³ã¢ã®å€éšã§ãããããããªãã®ãåçŽã§ããŸããããã以å€ã«ã¯ã»ãšãã©åœ¹ã«ç«ã¡ãŸããããã®ããã«ïŒãã®ã¡ã¢ãªã§å®è¡ã§ããæäœã¯ãæžã蟌ã¿ãšèªã¿åãã®ã¿ã§ããæå€§ãµã€ãºã¯64KBïŒ16ãããã¢ãã¬ã¹ïŒã§ãã 16ãããå¹ ã®ã¢ãã¬ã¹ãæã€8ãããã¢ãã¬ã¹ã®ã¢ãã¬ã¹ã¡ã¢ãªã¯ã©ã®ããã«æ©èœããŸããïŒéåžžã«é ãããšãããããŸãããã³ãã³ã
movx
ïŒ "MOVe to / from eXternal"ïŒã¯ãã®ã¿ã€ãã®ã¡ã¢ãªã«ã¢ã¯ã»ã¹ããŸããã16ãããã¢ãã¬ã¹ãã©ã®ããã«æå®ããŸããïŒãã®ããã«ã
DPTR
ïŒ "Data PoinTeR"ïŒãšåŒã°ããç¹å¥ãªã¬ãžã¹ã¿ ã䜿çšãããåœä»€ãæäœããããã«ã䜿çšãããŸã
movc
ã
DPTR
äžäœã¬ãžã¹ã¿
DPH
ãšäžäœã¬ãžã¹ã¿ã§æ§æãããŸã
DPL
..ããããã£ãŠãããããã«ã¢ãã¬ã¹ã®ååãæžã蟌ãããšã§ãå€éšã¡ã¢ãªãšã³ãŒãã¡ã¢ãªãã¢ãã¬ã¹æå®ã§ããŸãããæ³åã®ãšããããã®ããã»ã¹ã¯ããã«é ãå§ããŸããããšãã°ãã»ã¯ã·ã§ã³ãå€éšã¡ã¢ãªããå€éšã¡ã¢ãªã«ã³ããŒããã«ã¯
DPL
ããšã® éã®å€ãç¹°ãè¿ãã·ã£ããã«ããå¿ èŠããããã
DPH
ã§ãããã®ããã8051ã®ããé«åºŠãªããŒãžã§ã³ã®äžéšã«ã¯å€ãã®ã¬ãžã¹ã¿
DPTR
ããããŸããããã¹ãŠã§ã¯ãªãããã¹ãŠãåãæ¹æ³ã§å®è£ ãããŠããããã§ã¯ãããŸããã
Intelã¯ãå€éšã¡ã¢ãªã®ãµãã»ããã«ã¢ã¯ã»ã¹ããããã®ããé«éãªæ¹æ³ã远å ããŸããããã®å Žåãã¢ã€ãã¢ã¯ã¬ãžã¹ã¿
R0
ãš
R1
ãã€ã³ã¿ã¬ãžã¹ã¿ãšããŠããããããããã¯ãµã€ãºã8ãããã§ãããã¢ãã¬ã¹ã®ä»ã®8ãããã¯ã©ãããæ¥ãŠããã®ã§ããããããããã¯ã¬ãžã¹ã¿
P2
ïŒGPIOãã³ã®ããŒã2ãå¶åŸ¡ããŸãïŒããã®ãã®ã§ããæããã«ããã®æ¹æ³ã¯ãããŒã2ã... GPIOã«äœ¿çšããéã®éªéã«ãªããŸãããã®ç¶æ³ãã¹ã ãŒãºã«ããæ¹æ³ã¯ããã€ããããŸãããä»ã¯ããã«ã€ããŠè©±ããŠããŸããããããã£ãŠã䜿çšå¯èœãªã¡ã¢ãªã®éã¯256ãã€ãã«å¶éãããŸãïŒããŒã2ãåçã«å€æŽããªãéããããããå®è¡ããããªãã§ãããïŒãéåžžããã®ã¡ã¢ãªã¯ãšåŒã°ã
PDATA
ãŸããåæ§ã®ã¡ã¢ãªã¢ã¯ã»ã¹ãåœä»€ã䜿çšããŠè¡ãããŸã
movx
ãæ¬¡ã®è¡ã¯
SFR
-ããªãã§ã©ã«ãæ§æããããã®ããŸããŸãªæ§æã¬ãžã¹ã¿ããã®ã¡ã¢ãªé åã«ã¯çŽæ¥ã¢ã¯ã»ã¹ããããšããã§ããŸããããããç¶æ³ã§ããã¢ãã¬ã¹ã¯åœä»€ã«çŽæ¥ãšã³ã³ãŒãããå¿ èŠãããããã€ã³ã¿ã¬ãžã¹ã¿ãä»ããã¢ã¯ã»ã¹ã¯ãããŸããã 128ãã€ããããŸã
SFR
ãæ¬¡ã®è¡šã¯ã
SFR
8051æšæºã«åŸã£ãŠäœ¿çšå¯èœãªãªã¹ãã瀺ããŠã ãŸããç°è²ã®ããã¯ã¹ã«ã¯
SFR
ããããåäœã®ã³ãã³ãã䜿çšããŠåå¥ã«ã¢ã¯ã»ã¹ã§ããããããå«ãŸã㊠ããŸããããã¯ãããŒããã³ãã¢ãããã¯ã«å²ãåœãŠããšããå²ã蟌ã¿ãœãŒã¹ãã¢ã¯ãã£ãå/éã¢ã¯ãã£ãåãããšãããŸãã¯ããã€ãã®ã¹ããŒã¿ã¹ããã§ãã¯ãããšãã«åœ¹ç«ã¡ãŸãã
8051ã®å éšã¡ã¢ãªã¯å°ã泚æãå¿ èŠã§ããææ°ã®8051ã¯ãã¹ãŠã256ãã€ãã§ããæåŸã®128ãã€ã
0x80-0xff
㯠ãã¬ãžã¹ã¿ ãš ãä»ããŠéæ¥çã« ã®ã¿äœ¿çšã§ããŸã ããå€éšã¡ã¢ãªã®å Žåãšã¯ç°ãªããèªã¿åããšæžã蟌ã¿ã ãã§ãªããçŸåšã䜿çšã§ããŸããå¢å ïŒ rementïŒãæžå°ïŒ rementïŒãå ç®ïŒ ïŒãããã³ãã®ä»ã®äºæ³ãããæäœã®ã»ãšãã©ãå®è¡ã§ããŸããå®éã ãã¹ãŠã® å éšRAMã¯ããããã®ãã€ã³ã¿ã¬ãžã¹ã¿ãä»ããŠéæ¥çã«ã¢ã¯ã»ã¹ãããŸããæäžäœ128ãã€ã
R0
R1
inc
dec
add
0x00-0x7f
çŽæ¥å©çšããããšãã§ããŸãïŒã¢ãã¬ã¹ã¯ãæäœãããšããšåãããã«ãåœä»€èªäœã«çŽæ¥ãšã³ã³ãŒããã
SFR
ãŸããç¯å²å ã®16ãã€ãã®ã¡ã¢ãª
0x20-0x2f
ãããããåŠçåœä»€ã䜿çšããŠãããã¢ãã¬ã¹æå®ã§ããŸããããŒã«å€ã®å€æ°ãæ ŒçŽããã®ã«äŸ¿å©ã§ãããã®éšåãæäžäœ32ãã€ã
0x00-0x1f
ã¯4ã€ã®ãã³ã¯ã¬ãžã¹ã¿ãæ§æã
R0
ãŸã...
R7
ã¹ããŒã¿ã¹ã¬ãžã¹ã¿
PSW
ã«ã¯ãçŸåšäœ¿çšãããŠãããã³ã¯ãéžæã§ãããããããããŸãããå®éã«ã¯ãéåžžãå éšã¡ã¢ãªé åãäžè¶³ããŠãããããã³ãŒãã¯ã»ãšãã©ã®å Žåãã¡ã¢ãªã®1ã€ã®ãã³ã¯ã®ã¿ã䜿çšããŸãã
8051ã¯ãäž»ã«åäžã®ãªãã©ã³ãã§åäœããããã«èšèšããããã·ã³ã§ããã€ãŸããã»ãšãã©ã®æäœã§ãããããªãŒã¯ãœãŒã¹ã®1ã€ãšããŠäœ¿çšãããå Žåã«ãã£ãŠã¯å®å ãšããŠäœ¿çšãããŸããã¬ãžã¹ã¿ã¯ãå€ãã®ïŒãã¹ãŠã§ã¯ãªãïŒæäœã«ã䜿çšã§ããŸãããŸããäžèšã®ããã«ãäžéšã®æäœã§ã¯å éšRAMãžã®éæ¥ã¢ã¯ã»ã¹ãèš±å¯ãããŸããã¹ã¿ãã¯ã¯ç©ºã®ã¢ããã¹ããªãŒã ã§ã¢ãã¬ã¹æå®å¯èœã§ãã
SFR
ãåŒã³åºã
sp
ããŠå éšRAMã«ã®ã¿é 眮ãããæå€§ãµã€ãºã¯256ãã€ãã«å¶éãããŠããŸãããå®éã«ã¯ã¯ããã«å°ãããªã£ãŠããŸãã
8051 ROMã€ã¡ãŒãžã¯ãå®è¡ããåæã³ãŒããžã®ãžã£ã³ããšå²ã蟌ã¿ãã³ãã©ãŒãå«ããã¯ã¿ãŒããŒãã«ã§å§ãŸããŸãã 8051ã§ã¯ãæŽå²çã«ããªã»ãããã¯ãã«ã¯æ¬¡ã®å Žæã«ãããŸãã
0x0000
ãããã³å²ã蟌ã¿ãã³ãã©ã¯ã¢ãã¬ã¹
0x0003
ããå§ãŸãããã®åŸ8ãã€ãããšã«å§ãŸã ãŸãããã®åœä»€
reti
ã¯å²ã蟌ã¿ããã®åŸ©åž°ã«ã®ã¿äœ¿çšããããããç¹å®ã®é¢æ°ãå²ã蟌ã¿ãã³ãã©ã§ãããã©ãããç°¡åã«æ€åºããããã«äœ¿çšã§ããŸãã
Cã³ã³ãã€ã©ãã£ãã«ãããããã¹ãŠã§æºãããŠããããåããŸãããïŒ
ãã®ã¢ãŒããã¯ãã£ã«é©ããCã³ã³ãã€ã©ãååšããŸãïŒKeilã®C51ãããããããã¯å®ãã¯ãããŸããããªãŒãã³ãœãŒã¹ã³ã³ãã€ã©ããããŸãïŒ SDCCããŸããŸãã§ãããç¡æã§ãããã®ãããžã§ã¯ããè¡ã£ãŠãããšãã«ã2ã€ã®å€§ããªãã°ããèŠã€ãããŸããã§ãããããã¯ããã€ãã¹ããããšã«ãã£ãŠã®ã¿å æã§ããŸããããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã«ãšã£ãŠã¯ãŸã£ããæªãããšã§ã¯ãããŸããã
åæãå§ããŸããã
void prvTxBitbang(u8 val)
__naked {
__asm__(
" setb PSW.5 \n"
" jbc _EA, 00004$ \n"
" clr PSW.5 \n"
"00004$: \n"
" clr C \n"
" mov A, DPL \n"
" rlc A \n"
" mov DPL, A \n"
" mov A, #0xff \n"
" rlc A \n"
" mov DPH, A \n"
" mov B, #11 \n"
"00001$: \n"
" mov A, DPH \n"
" rrc A \n"
" mov DPH, A \n"
" mov A, DPL \n"
" rrc A \n"
" mov DPL, A \n"
" jnc 00002$ \n"
" setb _P1_0 \n"
" sjmp 00003$ \n"
"00002$: \n"
" clr _P1_0 \n"
" nop \n"
" nop \n"
"00003$: \n"
" nop \n"
" nop \n"
" nop \n"
" djnz B, 00001$ \n"
" mov C, PSW.5 \n"
" mov _EA, C \n"
" ret \n"
); }
GPIOæ§æããå§ããã®ã¯ç°¡åã§ããååãšããŠãããã€ãã®äžèŽãããããã«åºããããŸãããããã®ãããã¯ãé£ç¶ããè€æ°ã®ã¬ãžã¹ã¿ã§èšå®ãŸãã¯æ¶å»ãããŸããããã¯è«ççã§ããã¢ã¯ãã£ãåãŸãã¯éã¢ã¯ãã£ãåãããšãã¯ãéåžžããã³ãïŒGPIOããã®ïŒé¢æ°ãšããŠäœ¿çšããå ¥åãŸãã¯åºåãšããŠèšå®ãããã®å€ãèšå®ãŸãã¯èªã¿åãå¿ èŠãããããã§ããäœæ¥ã®æåã«ããã®çš®ã®ã³ãŒãã«åºãããå¿ èŠããããŸããããã«äœããããèŠãŠã¿ãŸããã...æšæºã¬ãžã¹ã¿
P0
ã
P1
ããã
P2
å®éã«ãã®ããã«äœ¿çšãããŠããããšãããããŸããã¬ãžã¹ã¿GPIOã®åŠçæ¹æ³ã§ããã©ã®ã¬ãžã¹ã¿ããããã®åšãã«æžã蟌ãŸããæ¬¡ã«ãããã®ãããã«äœãèµ·ãããïŒããããèªã¿åãïŒå ¥åïŒãŸãã¯æžã蟌ã¿ïŒåºåïŒã®ã©ã¡ãã§ãããïŒã調ã¹ãããšã«ãããã¬ãžã¹ã¿ã
AD
ã
AE
ã
AF
ãæ©èœãããããã«èšèšãããŠã-ãããŠå¯Ÿå¿ããããããèšå®ãããŠããGPIOã¯ãGPIOãšããŠäœ¿çšãããŠããªãããããŠå®éã«GPIOãšããŠäœ¿çšããããã¹ãŠã®GPIOã¯ããããã®ã¬ãžã¹ã¿ã®ãã¡ã®1ã€ã«ã®ã¿å¯Ÿå¿ãããããã®åŸã«ããäœæ¥ãéå§ããããšã衚瀺ãããŸãã¯ãªã¢ãããŸããç§ã¯ãããã«ååãä»ããŸããã
PxFUNC
ããã§ãxã¯ããŒãçªå·ã§ãããã®åŸãæã ã¯ãããçµè«ä»ããããšãã§ã
B9
ã
BA
ã
BB
æ¹åãå¶åŸ¡ããŸãããããã®1ã€ã«ããããèšå®ãããŠããå Žåã¯åžžã«ã察å¿ããGPIOã¯èªã¿åãã®ã¿ã§ãããããããã¯ãªã¢ããããšã察å¿ããGPIOã¯æžã蟌ã¿å°çšã«ãªããŸãããããã£ãŠããããã®ã¬ãžã¹ã¿ãGPIOã®æ¹åãå¶åŸ¡ããããšãçè§£ããŠããŸããååãä»ããŸãã
PxDIR
ããã§ãxã¯ããŒãçªå·ã§ããã ããä»ãçè«çã«ã¯ãç§ã¯GPIOãå¶åŸ¡ããããšãã§ããŸããããããã®ã©ããäœ
ãããããç¥ã£ãŠããã°... ããã°ã©ãã³ã°ãããã®ããã¹ããããããå¶åŸ¡ãããã®ããŸãã¯ããããURXããããšUTXããããèŠã€ãããŸã§ãããããã¹ãŠãç¶ããŠè©Šãããšã«ããŸããããšã«ãããå®éã«ã¯...ããŒã1ã®ãã³0ïŒ
P1.0
ïŒããTESTãã
P0.6
ããããUTXãã
P0.7
ããããURXãã§ããããšãããããŸãããå¶åŸ¡ãããGPIOã䜿çšãããšãçæŽ»ãç°¡çŽ åã§ããŸãããç°ãªãGPIOãåãæ¿ããŠãããã°ãåŠçã§ããå Žåã«éãã飜ãããŸã§ã§ãããããç·Žç¿ããæéããããŸããïŒ
printfããããŸãïŒ
ãã®é¢æ°ã䜿çšããŠãããããã³æ¹åŒã䜿çšããŠãTESTãããããéåžžã®8n1ã·ãªã¢ã«ããŒãã«å€æããããžãã¯ã¢ãã©ã€ã¶ãŒã䜿çšããŠåºåãåéããŸããã USB-ã·ãªã¢ã«ã¢ããã¿ã±ãŒãã«ãåŠçã§ããããŒã¬ãŒããåŸããããŸã§ããããããããŸãããç§ã¯ãã§ã«ã¢ã»ã³ãã©ãŒã§printfã®8051å®è£ ãæã£ãŠããŸããã1æéããã®å³åžã®ã·ãªã¢ã«ããŒãããè€éãªãããã°è¡ãåºåããç·Žç¿ãããŸãããæªãã¹ã¿ãŒãã§ã¯ãããŸãããééããªããããã¯ããªãã广çã«åé²ããããã«è¡åããå¿ èŠãããå¯äžã®æ¹æ³ã§ãïŒ
ãã®æç¹ã§ãç§ã¯ãŠã£ã³ããŠã«ãã¹ãŠã®å€ã衚瀺ããŸãã
SFR
ãå°ãªããšããããã®å€ãäœã§ããããããã²ãŒãããŸãããããªãç ç©¶ã«ã¯ãŸã ããã€ãã®åé¡ããããŸãããããããããŠã©ããããã°ã¿ã€ããŒïŒWDTïŒã¯ããã©ã«ãã§ããèšå®ãããŠããããå®è¡ã®1ç§åŸã«ãããããªã»ããããããã«èŠããã®ã§ããã¹ãŠã®å®éšã¯1ç§ä»¥å ã«åãŸããªããã°ãªããŸããã§ãããWDTã®æäœæ¹æ³ããŸã ããããªãã£ãã®ã§ããã°ãããã®å¶éã«ææ ¢ããŸããããšã¯ããã1ç§ã¯å€ãã®ãµã€ã¯ã«ã§ãïŒ
ã¢ã¯ã»ã¹ã®æ¡å€§
ã³ãŒãã確å®ã«å®è¡ããŠçµæãåºåã§ããã®ã§ããã£ãã¯ã³ã³ãããŒã«ãã©ãã«ããããææ¡ããããšã«ããŸãããã»ãšãã©ãã¹ãŠã®ã¬ãžã¹ã¿ã«ã¯ãç°ãªãé床ïŒå°ãªããšãCPUã®é床ïŒãå¶åŸ¡ããå°ãªããšã1ã€ã®ã¬ãžã¹ã¿ãšãããŸããŸãªã¢ãžã¥ãŒã«ã®ã¯ããã¯ã¬ãŒãïŒãŸãã¯ãªã»ããïŒãå¶åŸ¡ããå¥ã®ã¬ãžã¹ã¿ããããŸãããããã¯éåžžãæ¬¡ã®ããã«æ€åºãããŸããæåã®ã¬ã³ãŒãã¯éåžž ãåæããŒãã®éåžžã«æ©ã段éã§èšé²ãã ããã®åŸã¯ã»ãšãã©è§ŠããããŸããïŒãããšããŠãïŒã 2ã€ç®ã¯éåžžãããªãã§ã©ã«ã®æ§æãéå§ããåã«ãããã»ããïŒã¯ããã¯ãµã€ã¯ã«ïŒãŸãã¯ãããã¯ãªã¢ããããŸããããŸããŸãªåšèŸºæ©åšãã©ãã«æ§æãããŠãããã¯ããããŸããããéåžžã¯ã»ããã§ã
SFR
åæ§ã®çªå·ã®ã¯åšèŸºæ©åšã«å¯Ÿå¿ããŸããã§ã¯ãèŠãŠã¿ãŸãããã確ãã«ã±ãŒã¹ããããŸãããã®èª¬æã«é©åããŠãã ããïŒ
B7
ã
SFR
åããããªçªå·ã®ããã€ããæžã蟌ãŸããåã«ãäžåºŠã«1ããããã€èšå®ããã
SFR
åããããªçªå·ã®ããã€ãã®åŒã³åºãã忢ããåŸããã®äžã®ããããã¯ãªã¢ããã ããšãããã ãŸãããŸã
0x2F
ãæåã¯ãšããŠèšé²ãããŠãã ã®ã§ãããã§ã¯äºåã«å«ãŸããŠããåšèŸºæ©åšãæ±ã£ãŠããŸãã åšèŸºæ©åšã®åæåãšèŠãªãåã«ããããèšå®ãããŠããããã«èŠããã®ã§ã ãã®ã¬ãžã¹ã¿ãåŒã³åºããŸãã
CLKEN
..ããã®ã¬ãžã¹ã¿ã®ãããã倿ŽããŠã¿ãŸããããã¯ãªã¢ããŠãäœãèµ·ãããªãã£ãããã§ããç§ã¯åšèŸºæ©åšã䜿çšããªãã®ã§ãååãšããŠããã¯è«ççã§ãã
è¿ãã«æžã蟌ãŸããå¥ã®ã¬ãžã¹ã¿ïŒéåžžãæåã³ãŒãã¯ãã¹ãŠã®ã¯ããã¯æäœãäžç·ã«åæåããŸãïŒã¯ããã®åŸæžãæããããŸãããããã
8E
ã§ãã圌ã¯ã«æžã蟌ã¿ãŸã
0x21
ãç§ã¯ãããé床ã«é¢ä¿ããŠãããããããªããšææ¡ããŸãããç§ã¯å®éšããŸãããã©ããããæäžäœ4ãããã¯ä»äºã§ãŸã£ããåæ ãããŠããªãã®ã§ããªãããããèšå®ãããŠããã®ãããããŸãã
0b0001
ãããããæ¬¡ã®3ãããã¯ãããããCPUé床ãããªãå€§å¹ ã«å€æŽããŸãïŒããªããã®åœ±é¿ãåããUARTã®é床ãã倿ã§ããéãïŒãæäžäœãããã¯åšæ³¢æ°ãå°ãå€ããŠããããã«èŠããã®ã§ãå éšRCåè·¯ãšå€éšæ°Žæ¶ã®åãæ¿ããæ åœããŠãããšæããŸãããç§ãååšåšãšããŠæ©èœãããšä»®å®ãã3ãããã¯ãã¯ããã¯é床ãçããèŠããããã«èšå®ããŸãã
16M / (1 + )
ããã®ã¬ãžã¹ã¿ã«ååãä»ããŸãã
CLKSPEED
ããã®çµæãæé«é床ã¯å€
0x01
ã§éæãããæäœé床ã¯ã§éæãããŸã ã
0xf1
ã¿ã€ããŒãæ©èœããã
å€ãã®ã¡ãŒã«ãŒã¯8051ã§ããããçš®é¡ã®ãã®ãæ§ç¯ããŠãããããããã§ã¯æšæºåãã»ãšãã©ãããŸããããã ããã»ãšãã©ã®å Žåãã¿ã€ããŒ0ãã¿ã€ããŒ1ãªã©ã®8051ã®éåžžã®æ©åšã«ã¯è§ŠããŸãããæ³šæïŒããã¯çµéšåã§ã¯ãããŸãããããšãã°ãTIã¯CCã·ãªãŒãºãããã®ã¿ã€ããŒãå€§å¹ ã«å€æŽããŸãããã®ãããã§ã¯ãéåžžã¯æšæºã®8051ã¿ã€ããŒãæ§æããããšã«ãªã£ãŠããã¬ãžã¹ã¿ãè¿ãã§çºçããŠããããã«èŠããå²ã蟌ã¿ãã³ãã©ïŒ1ããããã«åœ±é¿ãäžããŠããããã«èŠããããšã«æ°ä»ããŸãããã§ããŸããïŒæšæºã¿ã€ããŒïŒç§ã¯ããã詊ããŸãã...ããã¯ããŸããããŸãããå®å šã«æšæºã§ãå ã®ä»æ§ãšãŸã£ããåãããã«èŠããŸããã¬ãžã¹ã¿ããã§ãã¯ãã
CLKEN
ãšãããããã0ïŒãã¹ã¯
0x01
ïŒã¿ã€ããŒãæ©èœããããæšæºã¬ãžã¹ã¿
IEN0
ãæåŸ ã©ããã«åäœããçªå·1ãš3ãå®éã«ã¿ã€ããŒ0ãšã¿ã€ããŒ1ã®å²ã蟌ã¿ãé§åããããšã確èªããŸãã ãã¿ã€ããŒã¯ã16MHzã§åäœããæšæºã®8051ã§äºæ³ããããšããã16MHzã®ã¡ããã©1/12ã§åäœããŠããããã«èŠããŸãããããŸã§ã®ãšããããã®åšæ³¢æ°ã倿Žããæ¹æ³ã¯èŠã€ãããŸããã§ãããç§ãã¡ãç¥ã£ãŠããããšã¯ãä»ã®ã¬ãžã¹ã¿ãæããã«ã
TL0
ã
TH0
ã
TL1
ã
TH1
ã
TMOD
ã
TCON
ïŒããã§ãé«ç²ŸåºŠã¿ã€ããŒãæ©èœããããã«ãªããŸããã
ã¿ã€ããŒ2ãå®éã«æšæº8052ïŒ8051ã®ç¶ç·šïŒã«å®è£ ãããŠãããã©ããã確èªããã®ã¯é¢åã§ã¯ãããŸããã§ãããããããããã§ã¯ãããŸããã
ãããšãUARTïŒ
void uartInit(void) {
//
CLKEN |= 0x20;
//
P0FUNC |= (1 << 6) | (1 << 7);
P0DIR &=~ (1 << 6);
P0DIR |= (1 << 7);
//
UARTBRGH = 0x00;
UARTBRGL = 0x89;
UARTSTA = 0x12;
}
void uartTx(u8 ch) {
while (UARTSTA_1));
UARTSTA_1 = 0;
UARTBUF = ch;
}
OTAã¢ãžã¥ãŒã«ã«ã¯ããã€ãã®è¡ããããŸããã圌ããäœãã«é¢ä¿ããŠããã®ã¯çã«ããªã£ãŠããŸãããïŒå€åãããã°ã·ãªã¢ã«ããŒãïŒããã¯ããUTXãããã³ãURXãããŒãã€ã³ããæã€ããŒãã«é©ããŠããŸãããã®ã³ãŒãã¯å°ãè€éã§ããããããçš®ã®ãããã¡ã«ãã€ããæ ŒçŽããŠããããã«èŠããŸãããã³ãŒãã¯ééããªãæšæºã®ãªã³ã°ãããã¡ã®ããã«èŠããŸããããã®ãããã¡ãèªã¿åãããŠããå Žæã調ã¹ãŸãããå²ã蟌ã¿ïŒ0ã®ãã³ãã©ãŒã«ããããšã倿ããŸããããããé¢çœãã UARTå²ã蟌ã¿ãã³ãã©ãŒã§ããããïŒã³ãŒãã¯ãã¹ããŒã¿ã¹ã¬ãžã¹ã¿ïŒã¬ãžã¹ã¿
98
ïŒã«äŒŒãé åã®ãããïŒ1ããã§ãã¯ããŠãã ããã§ãèšå®ãããŠããå Žåã¯ããªã³ã°ãããã¡ãããã€ããèªã¿åããã¬ãžã¹ã¿ã«æžã蟌ã¿ãŸããã
99
..ãåè¿°ã®ã¹ããŒã¿ã¹ã¬ãžã¹ã¿ã«å¥ã®ãããïŒïŒ0ïŒãèšå®ãããŠããå Žåã¯ãã¬ãžã¹ã¿
99
ãèªã¿åãã ãã®çµæã...å¥ã®åŸªç°ãããã¡ã«æ¿å ¥ããŸãããŸããããã¯ç§ãUARTå²ã蟌ã¿ãã³ãã©ãŒã«æåŸ ãããã®ãšããªãäžèŽããŠããŸãïŒæ¬¡ã¯äœãããã®ïŒ
å埪ç°ãããã¡ã«ã¯ãèªã¿åãçšãšæžã蟌ã¿çšã®2ã€ã®ãã€ã³ã¿ããããŸãããããã¡ãäœãã«äœ¿çšãããåã«ãããããåæåããå¿ èŠãããããšã¯çã«ããªã£ãŠããŸãããããã£ãŠããããã®ã€ã³ããã¯ã¹ãåæåãããå Žæããããã°ãUARTãã€ã³ã¹ããŒã«ãããŠããå ŽæãèŠã€ããã§ããããééããªããã®ããã«èŠããŸãã UARTãåæåããæ©èœã§ã¯ãæã ã¯GPIOããšã確èª
P0.6
ãã
P0.7
æ©èœã¢ãŒãã«èšå®ãã
P0.7
ã¯å ¥åã«ã
P0.6
-ã¯åºåã«é 眮ã ããŸããããã«2ã€ã®ã¬ãžã¹ã¿ïŒ
9A
ãš
9B
ã¯
0x00
ã
0x89
ãããããšã§ æžã蟌ãŸã ãŸããç§ã®ããŒãžã§ã³ã«ããã°ãç¶æ ã§åäœããã¬ãžã¹ã¿ïŒã¬ãžã¹ã¿
98
ïŒã¯ãšããŠæžã蟌ãŸã
0x10
ããã®äžã®ããã0ãš1ãã¯ãªã¢ãããŸããæ¬¡ã«ã
CLKEN
ããã5ãã«èšå®ãã ã
IEN0
ããã0ãã«èšå®ãã ãŸããååãšããŠãå¿ èŠãªã®ã¯ããã ãã§ãã
ãããã£ãŠãã¬ãžã¹ã¿ã«ååãä»ãã ãšãã¬ãžã¹ã¿ã¯ã« ãªã ãŸããç§éã¯ããšãç¥ã£ãŠããŸã
99
UARTBUF
98
UARTSTA
UARTSTA
ãã®ãããã¯ãæ©èœãããã«ã¯ã0x10ã«èšå®ããå¿ èŠããããŸããããã0ã¯ãUARTã®TX FIFOãã¥ãŒã«ç©ºããã€ããããããšãæå³ããããã1ã¯ãUARTã®RXFIFOãã¥ãŒã«ãã€ããããããšãæå³ããŸãã
CLKEN
ããã5ãUARTã®ã¯ããã¯ãæå¹ã«ããå²ã蟌ã¿çªå·0ãUARTå²ã蟌ã¿ãã³ãã©ãŒã«å¯Ÿå¿ããããšãããã£ãŠã ãŸããããã¯åãªãæ å ±ã®å®åº«ã§ãããããç¥ã£ãŠãã³ãŒãã§åäœããUARTãã©ã€ããŒãäœæããç®çã®ãUTXããã³ã«éä¿¡ã¡ãã»ãŒãžãéä¿¡ããããšãã§ããŸããããã®ãã³ã¯ãçŸåšããã£ãŠããããã«ãããŒã0ã®ãã³6ïŒ
P0.6
ïŒã«ãããŸãããŸãããURXãããŒãã€ã³ããã«æ¥ç¶ãããŠ
P0.7
ããããããUARTã®RXã©ã€ã³ã§ããããšãåŠã³ ãŸããã UARTã¯115,200bpsã8n1ã§ããŒã¿ãéä¿¡ããŠãããã¬ãžã¹ã¿ã®åœ±é¿ãåããŸããã§ããã
CLKSPEED
..ãã§ã¯ããããã®éæ³ã®æå³ãäžããããã2ã€ã®ä»ã®äžæè°ãªã¬ãžã¹ã¿ãŒã¯äœã§ããïŒ
ç§ã¯æ®ãã®2ã€ã®ã¬ãžã¹ã¿ãããããåãããšã詊ã¿ãã
9A
ãš
9B
ã圌ããäœã®ããã«ããã®ããããã«æããã«ãªããŸããããããã¯ååšåšã§ããããŒã¬ãŒãã«ã©ã®ããã«åœ±é¿ãããã確èªããããã«ãããã€ãã®å€ããã©ã°ã€ã³ããŸãããããã¯åçŽã§ããããšã倿ããŸããã
9A
ïŒä»¥äžã
UARTBRGL
ïŒã¯äžäœãã€ãã
9B
ïŒä»¥äž
UARTBRGH
ïŒã¯äžäœãã€ãïŒäžäœ4ãããã¯ç¡èŠãããŠããããã§ãïŒãããŒã¬ãŒãã¯åçŽã«ãšããŠèšç®ãã
16M / (UARTBRGH:UARTBRGL + 1)
ãŸããããã¯ãéæ³ã®ããã«èŠããå€ãå®å šã«èª¬æããŠããŸã-ãããã¯115,200ããŒã«å¯Ÿå¿ããŸãã
æããã«ãå°ããªãã°ã¯ãFIFOã«åœ±é¿ãäžããããšãªãããã°ã©ã ã§ã¹ããŒã¿ã¹ããããã¯ãªã¢ã§ãããšããäºå®ã«é¢é£ããŠããããã誀ã£ãŠãTX FIFOã«ç©ºãé åããããïŒ
UARTSTA
.1ïŒãæå³ããããããã¯ãªã¢ãããš ãå²ã蟌ã¿ãçºçããŸããçºçããããšã¯ãªãããããã¯ããŒã®ãŸãŸã«ãªããŸãã
äžæè°ãªããšã«ããããã®å Žæã¯ã8051ã·ãªã¢ã«ããŒãã¬ãžã¹ã¿ã§ãã
SCON
ãšã® æ£ãã8051ã¢ãã¬ã¹ãšäžèŽããŸã
SBUF
ãããã0ã1ãããã³2ã¯ã8051
UARTSTA
ã®èª¬æã« å®éã«é©åããŸã
SCON
ããããã§é¡äŒŒæ§ã¯çµããã§ãã 8051ã®UARTã§ã¯ãããã7ãš6ãèšå®ããå¿ èŠããããŸã
SCON
0ãš1ã§ã¯ããã®æ¹æ³ã§ã®ã¿éåžžã®UARTã«ãªããŸãããã®å Žåããã®ãããã«ã¯0ãš0ãå¿ èŠã§ããããã«ã8051 UARTã«ã¯éåžžãããŒååšåšããªãã代ããã«ã¿ã€ããŒ1ã䜿çšãããŸãã
ãŠã©ããããã°ã¿ã€ããŒãšãèŠãŠïŒã
ãã®æç¹ã§ãããã©ã«ãã®ãŠã©ããããã°æ§æã«ãã£ãŠä¿èšŒããã1ç§ã®å®è¡å¶éãç§ãæ©ãŸãå§ããŠããŸããããŠã©ããããã°ãã©ãã§ã©ã®ããã«æ§æãããŠãããã調ã¹ãããšã«ããŸãããéåžžããŠã©ããããã°ã¿ã€ããŒã¯ç¬èªã®æ©èœã®äžéšãšããŠæ§æãããŠãããå°ããã§ãããã¡ããããããåžžã«èµ·ãããšã¯èšããŸããããã»ãšãã©ã®å Žåããã®ããã«èŠããŸããç§ã«ã¯ããã€ãã®åè£ããããããããããé çªã«ã¬ãžã¹ã¿ã®æžã蟌ã¿ããã¹ãããã°ã©ã ã«ã³ããŒããããšããŸãããããŠã©ããããã°ã¯éãè²ããŸããã§ãããæ¯ç§ããããæ£ãããªã»ããããå¿ èŠããããŸããã
ãããããŠãããšããšãŠãå¥åŠãªæ©èœã«æ°ã¥ããŸãããã©ãããã圌女ã¯çªå·ã®äžã®ã¬ãžã¹ã¿ãŒãèªã¿ã
FF
ããã«äœããæžãããããŠãªã»ãããã
P1DIR
ãä»ã®ã¬ãžã¹ã¿ã«æžã蟌ãã åŸãã¬ãžã¹ã¿ã®å ã®å€ã埩å ããŸãã
FF
ãå¥åŠãªããšã« ãããŒã1ã®ãã¹ãŠã®ãã³ããã³ã«èšå®ãããŠããŸãã ãããã¯ãã³ã»ã³ã¹ã§ããä»ã®ã¢ãã«ã§ã¯ãããŒã1ã«è€æ°ã®ãã³ãå ¥åãšããŠæ§æãããŠããŸããããã«ããã®ãããªã¬ãžã¹ã¿ã¯éåžžãåœä»€
anl
ïŒè«çç©ïŒããã³
orl
ïŒè«çç©ïŒ ã䜿çšããŠãããããšã«æäœãããŸã ãã¬ãžã¹ã¿ãŒå šäœãžã®ãã®ãããªå€§ãŸããªæžã蟌ã¿ã¯ãäžåºŠã«åçºçã«èŠããŸããã
FF
ããã¯ã¢ãããšåŸ©å ãå¿ èŠãªã¬ãžã¹ã¿ã«ã€ããŠã¯ã©ã ã§ããïŒãšãŠãå¥åŠã«èŠããŸããïŒ
調æ»ããããšã«ããŸãããã¬ãžã¹ã¿å€ãã³ã³ãœãŒã«ã«ãã³ãããå Žå
FF
ãããã¯ãŒãã§ããããšã倿ããŸãããããã¡ãããããã¯ç§ã«ã¯åããŸããã§ããããã¡ãŒã ãŠã§ã¢å šäœãæ€çŽ¢ãããšãããã»ãšãã©ãã¹ãŠã®å Žæã«èšé²ããããæ¬¡ã«ããã¯ã¢ãããããããã®åŸå ã®å€ã埩å ãããŠããããšãããããŸãããç§ã¯ãŸããæžãããšã¯ã»ãšãã©åžžã«å€ã§èµ·ãã
0x04
ããã£ãã«èµ·ãããªãããšã«æ°ã¥ã ãŸãã
0x00
..ããã®ã¬ãžã¹ã¿ã¯ãããã«åŸ©å ããããã«ããã¯ã¢ããäžã«ã®ã¿èªã¿åãããŸããããã®å€ã«å¯ŸããŠä»ã®ã¢ã¯ã·ã§ã³ã¯å®è¡ãããŸããã§ãããããã¯ã©ã®ãããªæ©èœã瀺ããŠããŸããïŒåºæ¬çã«ãããã¯ã¡ã¢ãªãã³ãã³ã°ã³ã³ãããŒã«ãéåžžã©ã®ããã«æ©èœãããã§ãïŒã¢ãã¬ã¹ç©ºéã«åãŸããªãã»ã©å€ãã®æ å ±ãããå Žåã¯ãåãæ¿ããå¿ èŠããããŸãããã®ã¢ã¯ã»ã¹ãã¿ãŒã³ïŒå€æŽåã®ããã¯ã¢ãããšãã®åŸã®åŸ©å ïŒã¯ããã®ãããªå®éçãªç¶æ³ã§ã¯äžè¬çã§ãããããã圌ãã¯äœãä¿åã§ããŸããïŒããã§ããã®ïŒãããã®ç人ã¯ã¡ã¢ãªã¹ããŒã¹èªäœãéè² è·ã«ããŠããŸã
SFR
ãïŒïŒ
ç§ã¯ãã¹ãŠ
SFR
ããã¹ãŠ128ã®å€ã衚瀺ã§ããããã°ã©ã ãæžããŸããã ããããç§ã¯ããã
0x04
ãã«å€ã ãŸãã
FF
SFR
ãããŠåã³ãã¹ãŠã®ã¹ããŒã¹ãåãåºããŸãã
SFR
ãæ¬¡ã«ãããã°ã©ã ã¯ãã®ããããã©ããããã¯ãããã¹ãŠã®å€ãå床衚瀺ããŸãããå šèœã®ç¥ïŒããã«ã¯ïŒã¬ãžã¹ã¿ã®ããã2ã¯ã
FF
å®éã«ã¹ããŒã¹ãç¯çŽããŸã
SFR
ããã®ããããèšå®ããããšã衚瀺ãããå€ãå€åããããšã¯ééããããŸãããã©ããããããã¯ãã¹ãŠã®ã¢ãã¬ã¹
SFR
ã«åœ±é¿ãäžããããã§ã¯ãããŸããããå€ãã®ã¢ãã¬ã¹ã«åœ±é¿ãäžããŸãã ããã®ã¬ãžã¹ã¿ã«ååãä»ããŸãã
CFGPAGE
ã
ä»ããšã
CFGPAGE
ç§ãæŽçããããšæã£ããç§ã¯ãŒãã«ç§ã®ç¥ç§çãªæ©èœãã«æ»ããŸãã
P1DIR
ããã®å Žåã¯ãŒãã«ãªã»ãããããªã ããšããã§ã«ç¥ã£ãŠããŸã
P1DIR
ããå¥ã®ããŒãžã«ãã圌ã®å¥åŠãªããšã
SFR
ããã®ã³ãŒããããã°ã©ã ã«ã³ããŒããããšããŸãããä¿¡ããããªããããããŸããããWDTãç¡å¹ã«ããã³ãŒãã«å¶ç¶åºããããŸãã!!!
éåžžããã€ããªå ã®é¢é£ãã颿°ã¯äºãã«é£æ¥ããŠããããããã®é¢æ°ãåãå·»ãã³ãŒãã調æ»ããŸããã確ãã«
CFGPAGE
ã飿¥ããã¢ãã¬ã¹ã«ãã¢ã¯ã»ã¹ããŠã¢ã¯ã»ã¹ãã ããã€ãã®æ©èœãè¿ãã«ãããŸãã
P1DIR
ãæ°æéã®è©Šè¡é¯èª€ã®æ«ããŠã©ããããã°ã®ä»çµã¿ã®è©³çްãå®å šã«çè§£ããŸãããèšå®ã®4ããŒãžç®ã«ã¯ãã¢ãã¬ã¹
BF
ããŠã©ããããã°ã¿ã€ããŒã®æå¹åãšãªã»ãããå¶åŸ¡ããŠããããã«èŠããŸãããã®ã¬ãžã¹ã¿ã®æäžäœãããã¯ããŠã©ããããã°ã¿ã€ããŒã®ããããªã»ããæ©èœãæå¹ãŸãã¯ç¡å¹ã«ããŸããååãä»ããŸãã
WDTCONF
ãäœæ
BA
ïŒ
P1DIR
èšå®ããŒãž0ã«ãããŸãïŒã¯ãŠã©ããããã°ã€ããŒãã«ã¬ãžã¹ã¿ã§ããããã§ã®ããã0ã¯ããŠã©ããããã°ã¿ã€ããŒèªäœãæå¹ãŸãã¯ç¡å¹ã«ããŸããååãä»ããŸãã
WDTENA
ã
ãã®æç¹ãŸã§ãç§ã¯ãŸã ãŠã©ããããã°ã¿ã€ããŒã飌ããªããæ¹æ³ãèããŠããŸãããå°ãæéãããããŸããããçµå±ããããŸãããã¬ãžã¹ã¿
BB
ïŒçŸåšã®åå
WDTPET
ïŒããŒãã«æžã蟌ãã§ããŠã©ããããã°ã¿ã€ããŒã調æŽã§ããŸããéã®ã¢ãã¬ã¹ç©ºéã«ç©Žãæç¢ºã«ãã£ãã®ã§ãããã¯ããŠã©ããããã°ã¿ã€ãã®é å»¶ãèšå®ããæ¹æ³ãèŠã€ãåºãããã«ç§ã«ã¯æ°å以äžããããŸãã
BB
ãã
BF
..ãã«ãŠã³ã¿ãŒã¯24ãããé·ã§ã飌ããªãããããšéè² è·ã«ãªããŸããèªããŸãããä¿åããããªããŒãå€
WDTRSTVALH
ïŒ
WDTRSTVALM
ïŒ
WDTRSTVALL
ãäœçœ®
BE
ã
BD
ã
BC
ããããã¯ãæ§æ4ããŒãžã«ãŠã³ã¿ãã«ãŠã³ã UP çŽ62ãããã«ãã®åšæ³¢æ°ã§ããªãŒããŒãããŒãããªã¬ãããŸãããããã£ãŠãé å»¶ã倧ããããã«ã¯ããããã®ãªã»ããã¬ãžã¹ã¿ã«æžã蟌ãå€ãå°ããããå¿ èŠããããŸãã
ãã埮åŠãªå¯èœæ§
ãã©ãã·ã¥ã¡ã¢ãªããã°ã©ãã³ã°
// irqs
voif flashDo(void) {
TRIGGER |= 8;
while (!(TCON2 & 0x08));
TCON2 &=~ 0x48;
SETTINGS &=~ 0x10;
}
void flashWrite(u8 pgNo, u16 ofst,
void *src, u16 len) {
u8 cfgPg, speed;
speed = CLKSPEED;
CLKSPEED = 0x21;
cfgPg = CFGPAGE;
CFGPAGE = 4;
SETTINGS = 0x18;
FWRTHREE = 3;
FPGNO = pgNo;
FWRDSTL = ofst;
FWRDSTH = ofst >> 8;
FWRLENL = len - 1;
FWRLENH = (len - 1) >> 8;
FWRSRCL = (u8)src;
FWRSRCH = ((u16)src) >> 8;
flashDo();
CFGPAGE = cfgPg;
CLKSPEED = speed;
}
void flashRead(u8 pgNo, u16 ofst,
void __xdata *dst, u16 len) {
u8 pgNo, cfgPg, speed;
speed = CLKSPEED;
CLKSPEED = 0x21;
cfgPg = CFGPAGE;
CFGPAGE = 4;
SETTINGS = 0x8;
FWRTHREE = 3;
FPGNO = pgNo;
FWRDSTL = (u8)dst;
FWRDSTH = ((u16)dst) >> 8;
FWRSRCL = ofst;
FWRSRCH = ofst >> 8;
FWRLENL = len - 1;
FWRLENH = (len - 1) >> 8;
flashDo();
CFGPAGE = cfgPg;
CLKSPEED = speed;
}
void flashErase(u8 pgNo) {
u8 __xdata dummy = 0xff;
u8 cfgPg, speed;
speed = CLKSPEED;
CLKSPEED = 0x21;
cfgPg = CFGPAGE;
CFGPAGE = 4;
SETTINGS |= 0x38;
FWRTHREE = 3;
FPGNO = pgNo;
FWRDSTL = 0;
FWRDSTH = 0;
FWRLENL = 0;
FWRLENH = 0;
FWRSRCL = (u8)&dummy;
FWRSRCH = ((u16)&dummy) >> 8;
flashDo();
CFGPAGE = cfgPg;
CLKSPEED = speed;
}
OTAã€ã¡ãŒãžã¯ã¡ã€ã³ãã¡ãŒã ãŠã§ã¢ãããå°ãããããçŠç¹ãåœãŠãŸããã OTAã€ã¡ãŒãžã§çµ¶å¯Ÿã«å¿ èŠãªè©³çްã®1ã€ã¯ããã©ãã·ã¥ã¡ã¢ãªã«æžãèŸŒãæ©èœã§ããããã¯ã©ã®ããã«èŠããŸããïŒãã©ãã·ã¥ã¯ãããã¯åäœã§æ¶å»ãããããããã©ãã·ã¥ãæ¶å»ããäœããã®æ©èœãå¿ èŠã§ãããšæ³å®ãããŸãããŸãã1ããŒãžä»¥äžã®ããŒã¿ãæžã蟌ãããšãã§ããæžã蟌ã¿é¢æ°ãå¿ èŠã§ããèšé²ãããããŒã¿ã®äœããã®æ€èšŒãå¿ èŠã§ããå®è£ ã§ç°ãªãå¯äžã®è©³çްã¯ããã©ãã·ã¥ã³ã³ãããŒã©ãŒãžã®æžã蟌ã¿ãç®çãšããããŒã¿ãã©ã®ããã«äŸçµŠãããã§ããç§ã¯ãããã©ã®ããã«èŠããã¹ããããããŸããã§ãã ããæ®ãã¯èŠã€ããã®ã«ååç°¡åã§ãããæ€èšŒã¯ããããé»è©±ããã ãã«èŠçŽãããŸã
memcmp
ãŸãã¯ãµã€ã¯ã«ããã©ãã·ã¥æ¶å»æäœã¯ãã©ãã·ã¥ã¡ã¢ãªãæ¶èããããããæ¶å»ããåã«ããŒãžã確èªããŠããæäœãå®è¡ããå¿ èŠããããŸãã
æ¶å»åã®ãã§ãã¯ãæ¢ããŠãããšããã
0x400
ãã€ããã
XRAM
ãã«ãŸã§ ã®ãã€ãé å ãäœæãã颿°ãããã«èŠã€ããŸãã
0xFF
ãæ¬¡ã«ãã¡ã¢ãªé åã
CODE
ãã®ãããã¡ãšæ¯èŒãããçãããªãå Žåã¯ãå²ã蟌ã¿ãç¡å¹ã«ãªã
SFR
ãèšå®ããŒãž4ã§äžéšãã¿ããã ããŸãããã©ãã·ã¥ã¡ã¢ãªã®ããŒãžãµã€ãºã¯æããã«1024ãã€ãã§ããä»ã®ã©ã®å Žæãåã圱é¿ãåããŠãããã確èªãã
SFR
ãæ®ãã®ãã©ãã·ã¥ã³ãŒããèŠã€ããŸãããããã®ã¬ãžã¹ã¿ãäœãã©ã®ããã«è¡ããã¯ãã³ã³ããã¹ãããæããã§ãããã®å ŽåãããŒã¿ããã©ãã·ã¥ã¡ã¢ãªå¶åŸ¡ãŠãããã«ã©ã®ããã«äŸçµŠãããããè峿·±ãã§ãããã®å¶åŸ¡ãããã¯ã«ã¯ãæããã«DMAãããã¯ãå«ãŸããŠããŸããã¢ãã¬ã¹ã¯ãã©ãã·ã¥ã¡ã¢ãªå¶åŸ¡ãŠãããã«äŸçµŠããã
XDATA
ããŒã¿ã¯ããããçŽæ¥åžåãããŸãããªããŠãã£ãããïŒ
ãã®æãŸã§ã«ãINFOBLOCKã®èªã¿æ¹ããŸã ããããŸããã§ãããã©ããããOTAã³ãŒãã¯åœŒã«é¢ä¿ããªãã£ãããã§ãããã©ããããããã èªãŸãªããã°ãªããŸãã-çµå±ã®ãšãããããã«ã¯ããŒã¿ããããŸããã¡ã€ã³ç»åã確èªãããšãããåãç»åã«åœ±é¿ãäžããã³ãŒãã¹ããããã«æ°ã¥ããŸãã
SFR
ãã©ãã·ã¥ã¡ã¢ãªããã§ãããå¥ã®æ¹æ³ã§ãããã«åæãè¡ãããšã§ãINFOBLOCKã®æ£ããèªã¿åãå€ãåçŸããããšãã§ããŸãããåãæ¹æ³ã䜿çšããŠãã©ãã·ã¥ã¡ã¢ãªã®ä»ã®ãããã¯ãèªã¿åãããšãã§ããã®ã¯äžæè°ã§ããããã©ãã·ã¥ã¡ã¢ãªãèªã¿åãããã«å¿ èŠãªã®ã¯ã¡ã¢ãªé åãèªã¿åãããšã ããªã®ã§ããããè¡ãå¿ èŠã¯ãããŸãã
CODE
ã INFOBLOCKã«ã¯ããã©ãã·ã¥ã¡ã¢ãªã³ã³ãããŒã«ãŠããããä»ããŠã®ã¿ã¢ã¯ã»ã¹ã§ããŸãããã©ãã·ã¥ã¡ã¢ãªããã®æžã蟌ã¿ãšèªã¿åãã®äž¡æ¹ã§ãå¶åŸ¡ãããã¯ã¯ãã€ã¬ã¯ãã¡ã¢ãªã¢ã¯ã»ã¹ïŒDMAïŒã䜿çšããŠ
XDATA
ãã«æžã蟌ã¿ãŸã ã
ããã¬ãžã¹ã¿ãŒ
DF
ïŒ
FWRTHREE
ïŒã¯ãããã説æããããšãã詊ã¿ã«éãããŸãããããã¯åžžã«äŸ¡å€ã®ããèšé²ãæã£ãŠããŸãã
0x03
ã ã©ãããŠãåãããŸãããç§ã®ãã©ãã·ã¥ã¢ã¯ã»ã¹ã³ãŒããåãã§ããã¬ãžã¹ã¿
D8
ïŒ
FPGNO
ïŒã«ã¯ãã©ãã·ã¥ããŒãžçªå·ãæžã蟌ãŸããŸãããã©ãã·ã¥ã¡ã¢ãªã®ã¡ã€ã³ããŒãžã¯INFOBLOCKçªå·128ãæããã0ãã63ãŸã§çªå·ä»ããããŠãã
DA
ïŒ
D9
ïŒ
FWRSRCH
:)
FWRSRCL
ãã©ãã·ã¥ã¡ã¢ãªå¶åŸ¡ãããã¯å ã®DMAãããã¯ã®æºã§ãããã©ãã·ã¥
XDATA
ãžã®æžã蟌ã¿ã®å Žåãæžã蟌ãããŒã¿ãèŠã€ãã£ãã¢ãã¬ã¹ãå«ãŸããŠããŸã ããã©ãã·ã¥ãèªã¿åãããã«ãå ã®ããŒãžã®ãã€ããªãã»ãããæ€çŽ¢ããããã®ãªãã»ããããèªã¿åããéå§ãããŸãã
DC
ïŒ
DB
ïŒ
FWRDSTH
ïŒ
FWRDSTL
ïŒãã©ãã·ã¥ã¡ã¢ãªç®¡çãããã¯ã§ã®DMAã®å²ãåœãŠã§ãããã©ãã·ã¥ãžã®æžã蟌ã¿ã®å Žåãå®å ããŒãžã®ãã€ããªãã»ãããå«ãŸãããã®æç¹ããæžã蟌ã¿ãéå§ãããŸãããã©ãã·ã¥ãèªã¿åãã«ã¯
XDATA
ãèªã¿åãäžã«åä¿¡ããããŒã¿ãæžã蟌ãŸããã¢ãã¬ã¹ã䜿çšã ããŸãã
DE
ïŒ
DD
ïŒ
FWRLENH
:)
FWRLENL
DMAãããã¯ã転éããå¿ èŠãããããšãããŒã¿ããã€ãã¹1ã®é·ãã§ãã
ãã©ãã·ã¥ã¡ã¢ãªãžã®æžã蟌ã¿ã¯ããã1ã€ããããèšå®ããããšã«ãã£ãŠããªã¬ãŒãããŸã
SFR
ããã®äžã®ããŸããŸãªããããä»ã®ã³ãŒããå¶åŸ¡ããããã«èšå®ãããŠãããæããã«ãã©ãã·ã¥ã¡ã¢ãªãšã¯é¢ä¿ããªãã®ã§ããã®ã¬ãžã¹ã¿ã¯ããããããŸããŸãªã¢ã¯ã·ã§ã³ãéå§ãããšçµè«ä»ããŸããããã®ã¬ãžã¹ã¿ã«ååãä»ããŸãã
D7
æ§æããŒãž4
TRIGGER
ãå®äºã¹ããŒã¿ã¹ã¯ãä»ã®ã³ãŒãã§ãå ±æãããŠããããã«èŠããã¬ãžã¹ã¿ã§ããã§ãã¯ãããŸããèšå®ããŒãž4ãããã®ã¬ãžã¹ã¿
CF
ã«ååãä»ããŸããã
TCON2
ããªãã§ããïŒã«ã¬ãžã¹ã¿ããã
C7
ããããä»ã®ã³ãŒããšçµã¿åãããŠäœ¿çšãã ãå®è¡ããæäœãæ§æããŠããããã§ããååãä»ããŸãã
SETTINGS
ã
0x30
æ¶å»+æžã蟌ã¿ã
0x18
ãã©ãã·ã¥ã®æžã蟌ã¿ããã©ãã·ã¥ã®
0x08
èªã¿åããè¡ãè«çORã䜿çšããŠæžã蟌ãŸããŸãã ããã®ããã
0x08
ã¯ãããŒã¿è»¢éä¿çäžã
0x10
ã¯ããã©ãã·ã¥äžãã æå³ãã
0x20
ãæ¶å»ããããã¯ãç§ãã¡ãèŠãå€ãšããã§å®è¡ãããæäœãèæ ®ãããšçã«ããªã£ãŠããŸãã
ãã©ãã·ã¥ã®èªã¿åããšæžã蟌ã¿ã¯ããŸãæ©èœããŸããããæ¶å»ã¯æããã«æ©èœããŸããã§ãããæå®ãããã³ãŒãã§ããŒãžãæ¶å»ãã代ããã«ãäœããã®çç±ã§ãæ¶å»ãèŠæ±ããã³ãŒããé 眮ãããŠããããŒãžãåžžã«æ¶å»ãããŠããŸãããæããã«ããã®åé¡ã¯ãã®ããã€ã¹ã«å«ãŸããŠããã³ãŒãã«ã¯ãªããç§ã¯äœãééã£ãããšãããŠããŸãããç§ã®ã³ãŒããå·¥å Žåºè·æã®ã³ãŒããšäžèŽããããšã確èªããããã«ããã§ãã¯ããã§ãã¯ãããã³åãã§ãã¯ãè¡ããŸãããäžèŽããŸãããã©ãããŸãããïŒãã¡ã¯ããªã³ãŒãã4MHzã§åäœãã16MHzã§åäœããããšã«æ°ä»ããŸã§ãç§ã¯æ°æ¥éåããŸãããããããã€ã³ãã§ããããïŒãŸãã«ãã®éãã§ããïŒçŸåšã®ååšåšãç¶æããããã«ãã©ãã·ã¥æ¶å»ã³ãŒãã倿Žãããã©ãã·ã¥æ¶å»ã®éãã¯ããã¯ã4MHzã«æžéããŸããããã®ã³ãŒãã¯ãã§ã«å²ã蟌ã¿ãç¡å¹ã«ããŠå®è¡ãããŠãããããåé¡ãããŸããã§ããã
ãã®ãã©ãã·ã¥ã¡ã¢ãªå¶åŸ¡ãŠãããã®ãã1ã€ã®åŸ®åŠãªç¹ã¯ãåçŽãªãæ¶å»ãæäœãæäŸããŠããªãããã«èŠããããšã§ããã¬ãžã¹ã¿
SETTINGS
ã«é©åãªifããããå²ãåœãŠãããšãèãããšããã
0x20
ãŸã㯠ã«èšå®
0x30
ãããšåçŽãªæ¶å»ãçºçããã®ã¯è«ççã§ããããã«æãããŸãã ããããæ¶å»ããå¯äžã®æ¹æ³ã¯ãå°ãªããšã1ãã€ããæžãèŸŒãæ¶å»+æžãèŸŒã¿æäœãå®è¡ããããšã§ãïŒ
FWRLENH
ïŒã§
FWRLENL
é·ããŒããè¡šãæ¹æ³ããªãããã åçŽãªæ¶å»ãå®è¡ããã«ã¯ãåã«1ãã€ããæžã蟌ãããã«èŠæ±ããŸã
0xFF
ãã§ããŸã
SPI
åºæ¬çã«ããã¹ãŠã®SPIãã©ã€ããŒã¯åãã§ããå ¥åã§ãã€ããåä¿¡ãããåºåã§ãã€ããè¿ãããŸãããã¡ãããDMAãåããŠãããã®ãããã°ãå²ã蟌ã¿é§ååã®ãã®ããããŸãããå°èŠæš¡ãªã·ã¹ãã ã§ã¯99ïŒ ããœãããŠã§ã¢ã§å¶åŸ¡ãããŠãããã©ããã«åçŽãªæ©èœããããŸã
u8 spiByte(u8 byte);
ã
SPIãããã«èª¿æ»ããããšã¯è«ççã§ããã
SSD1623L2
SPIãšéä¿¡ããããš ãããã³ãã®ãããªéä¿¡ã®ç·šæã®è©³çްãããã£ãŠããã®ã§ãã³ãŒãã調ã¹ãŠãã³ãŒãã®ã©ã®éšåã§ãã®æäœãå®è¡ããå¿ èŠããããã確èªããå¿ èŠããããŸããæ°ç¬ãšåãããã«ãç§ãã¡ããã§ã«ç¥ã£ãŠããããšãèãããšããã®æ€çŽ¢ã¯é£ãããããŸãããããŒã¿ã·ãŒããèŠã
SSD1623L2
æåã«éä¿¡ããããã€ãã®ã¬ãžã¹ã¿çªå·ãããã1..6ã«æžã蟌ãŸãããæžã蟌ã¿ãããããäœçœ®ïŒ7ã«ããããšãããããŸãããã¹ãŠã®ã¬ãžã¹ã¿ã¯24ãããé·ã§ããããã°ã©ããŒãã¬ãžã¹ã¿ãŒçªå·ããã©ã¡ãŒã¿ãŒãšããŠåãåãã
0x80
æžã蟌ã¿ãèŠæ±ãããå Žåã¯è«çåãŸãã¯è«çåã§1ã€å·Šã«ã·ããããŠããã3ãã€ãã転éããã³ãŒããäœæããããšã¯è«ççã§ã ããã¹ãŠã®ããã°ã©ããŒãè«ççã«è¡åããããã§ã¯ãããŸãããããã®ä»®å®ã¯ãªããŒã¹ãšã³ãžãã¢ãªã³ã°ã§èšãç¥ããªãã»ã©åœ¹ç«ã¡ãŸããã³ãŒããèŠããšããŸãã«ãã®ããã«èŠãã颿°ãç°¡åã«ç¢ºèªã§ããŸãã远å ãããã®ãããã°ã远å
0x80
ããªããã®ããããŸãããããã¯ãã¹ãŠããã¹ãŠã®ãã€ãã«å¯ŸããŠåãäžæè°ãªé¢æ°ãåŒã³åºããŸãããããã£ãŠãç»é¢ã«ããã¹ãã衚瀺ãããã®ãšãèªããã®ããããšæ³å®ããŸããäžæè°ãªæ©èœãã®ãã®ã«åãçµã¿ãŸãããã
å®éãããã§ã¯æ¢šãç ²æããã®ãšåããããç°¡åã§ããããã¯ãã¹ã€ãã
CFGPAGE
æ¬¡ã«æžã蟌ã¿ã4ãŸã§
ED
ã®å€ã ã¬ãžã¹ã¿
0x81
ã«éä¿¡ãããã€ããæžã蟌ã¿
EE
ãæžã蟌ã¿
0xA0
ã«
EC
ã12ãã€ã¯ãç§ã®é å»¶ãè¡ããã»ããã«3ããã
EB
ããåä¿¡ãã€ããèªã¿åºã
EF
ãèšæ¶
0x80
ããŸã
ED
ãããã§å šéšã§ããããããã¹ãŠãçè§£ããæ¹æ³ã¯ïŒä»¥åã®ããã«ããã§ã«ç¥ãããŠããããšã«äŸåããŸãã
0x80
ãããŠ
0x81
éãã¯1ãããã ãã§ãSPIåäœãéå§ããåã«èšå®ããäœæ¥ã®çµäºåŸã«ãªã»ããããã®ã§ãããã¯æããã«ãããçš®ã®ãã¢ã¯ãã£ãåããããã§ããäžæ¹ããã®æå³ã¯
0xA0
æåéã ããçš®ã®æ§æã®ããã«èãããŸããã¬ãžã¹ã¿ãŒ
EB
ã¯ãŸã è¬ã§ãããããããã®ã³ãŒããæžã蟌ãŸãã«è€è£œãããšããã¹ãŠãæ©èœããã®ã§ããã®ã¬ãžã¹ã¿ã«ããŸãäŸåããªããšçµè«ä»ããŸããééããªã
EE
ãã
SPITX
ãš
EF
ãã
SPIRX
ãç§ã¯
ED
-
SPIENA
ãš
EC
- ãšåŒãã
SPICFG
ã
ããŒããäœãããããç¹åŸŽã¥ããããšã¯æ®ã£ãŠããŸã
SPICFG
..ãããžãã¯ã¢ãã©ã€ã¶ãŒãè£ åããŠãå°ã詊è¡é¯èª€ããŸãããããã7ãã»ããããããã6ãã¯ãªã¢ããå¿ èŠããããŸããããã5ã¯ãSPIãã€ãã®éä¿¡ãéå§ããçµäºãããšèªèº«ãã¯ãªã¢ããŸããããã3ãš4ã¯ã¯ããã¯åšæ³¢æ°ãèšå®ãã500KHzã1MHzã2MHzã4MHzã®å€ããéžæã§ããŸãã 2ã¯
CPHA
SPIã®æšæºæ§æããã ãããã1ã¯
CPOL
ã§ããããã0ã¯RXã«éåããŠããããã§ãã圌ã¯ãããã¯ãåäºéïŒã€ã³ã©ã€ã³
MOSI
ïŒã«æ§æã§ãããšæããŸã ãäžè¬çã«ãããã¯ããã»ã©é£ããããšã§ã¯ãããŸããã
ãã³ããšã«ãGPIOæ§æããã°ããèŠã€ããŠã
P0.0
ããã äœã§ããã
SCLK
ã
P0.1
ãã
MOSI
ãš
P0.2
ããã確èªããŸã
MISO
..ããããã®GPIOãæ§æãããŠããå Žæãæ¢ãããšã§ã
CLKEN
SPIããããã©ã®ããã«å¿ èŠã§ããããããããŸãããã㯠ããã3ã§ãããã°ããã-ããã§SPIãæ©èœããããã«ãªããŸããã
æž©åºŠãæ±ºå®ãã
volatile u8 __xdata mTempRet[2];
void TEMP_ISR(void) __interrupt (10)
{
uint8_t i;
i = CFGPAGE;
CFGPAGE = 4;
mTempRet[0] = TEMPRETH;
mTempRet[1] = TEMPRETL;
CFGPAGE = i;
IEN1 &=~ 0x10;
}
int16_t tempGet(void)
{
u16 temp, sum = 0;
u8 i;
CLKEN |= 0x80;
i = CFGPAGE;
CFGPAGE = 4;
TEMPCFG = 0x81;
TEMPCAL2 = 0x22;
TEMPCAL1 = 0x55;
TEMPCAL4 = 0;
TEMPCAL3 = 0;
TEMPCAL6 = 3;
TEMPCAL5 = 0xff;
TEMPCFG &=~ 0x08;
CFGPAGE = i;
IEN1 &=~ 0x10;
for (i = 0; i < 9; i++) {
//
IEN1 |= 0x10;
//
while (IEN1 & 0x10);
if (i) { //
sum += u8Bitswap(mTempRet[0]) << 2;
if (mTempRet[1] & 1)
sum += 2;
if (mTempRet[1] & 2)
sum += 1;
}
timerDelay(TICKS_PER_S / 1000);
}
//
CLKEN &=~ 0x80;
return sum / 8;
}
E-Inkãã£ã¹ãã¬ã€ã¯çŸåšã®æž©åºŠã«åºã¥ããŠç°ãªãæ¹æ³ã§æŽæ°ããããããæ£ããæŽæ°ããã«ã¯åšå²æž©åºŠãç¥ãããšãéèŠã§ããæž©åºŠã«å¿ããŠæ£ããæ³¢åœ¢ãéžæãããŸããããã§ã¯ãå€éšããã®ç¥èã圹ã«ç«ã¡ãŸãããããã£ãŠã波圢ããã£ã¹ãã¬ã€ã³ã³ãããŒã©ã«ããŒããããŠããå ŽæãèŠã€ããããšãã§ããã°ãéžæãè¡ãããŠããå ŽæãèŠã€ããããšãã§ããŸãããã®å Žæãããæž©åºŠã枬å®ãããå ŽæãŸã§çŽæ¥æ©ãããšãã§ããŸãããïŒãããè¡ã£ãåŸãæ£ç¢ºã«1ã€ã®é¢æ°ã«ç§»åãããã®åºåã«ãã£ãŠäœ¿çšãããæ³¢åœ¢ã決ãŸããŸããããã¯ããã§ããã«éããããŸããïŒã¡ãªã¿ã«ãéåžžãæž©åºŠã»ã³ãµãŒã¯ADCã«æ¥ç¶ãããŠããŸã-å¥ã®ããŒãžã§ã³ã§ããããäœæãã人ã¯ã»ãšãã©ããŸãããããããããã¯[ãŸã ]åé¡ã§ã¯ãããŸããã
ããã¯ãã¹ãŠãããã7ãã«èšå®ããããšããå§ãŸããŸã
CLKEN
ãªã»ããã§çµäºããã®ã§ãå°ãªããšããããæž©åºŠã»ã³ãµãŒïŒãŸãã¯ADCïŒã®ãªã³ãšãªããåãæ¿ããæ¹æ³ã§ããããšãããããŸãã颿°
CFGPAGE
ã¯4ã«åãæ¿ãã ãäžé£ã®å€ãäžé£ã®ã¬ãžã¹ã¿ã«æžã蟌ã¿ãŸãããã¹ãŠã®å€ã¯äžå®ã§ãã
0x81
->ç»é²
F7
ã
0x22
->ç»é²
E7
ã
0x55
->ç»é²
E6
ã
0x00
->ç»é²
FC
ã
0x00
->ç»é²
FB
ã
0x03
->ç»é²
FE
ã
0xFF
->ç»é²
FD
ãæ¬¡ã«ãããã¯ã«
0x81
ãã©ãã·ã¥ãã
F7
ãŸãããã®åŸ
CFGPAGE
ã¬ãžã¹ã¿ã®ããã4ãå埩ããŠã¯ãªã¢ããŸã
A1
ãããã¯åæèšå®ã®ããã§ããç¹å®ã®æé ã5åçºçããåŸãæåã®æé ãé€ããã¹ãŠã®æäœã®çµæãå¹³ååãããŸãããã®åŸãç¹ã«INFOBLOCKããã®å€ã䜿çšããŠããã®æ¹æ³ã§ååŸãããå¹³åã§å€ãã®èšç®ãè¡ãããŸã-ãããããããã¯ãã£ãªãã¬ãŒã·ã§ã³å€ã§ãããã®åŸãçµæãè¿ãããŸãã詳现ã詳ããèŠãŠã¿ãŸãããã
ãã®éçšã§ãã¬ãžã¹ã¿ã®ããã4ãåçŽã«èšå®ãããŸããã
A1
ãã°ããŒãã«ããããèšå®ãããåŸãã¢ã¯ãã£ãã¹ã¿ã³ãã€ã¢ãŒãã§ããããã¯ãªã¢ããããŸã§æéãè²»ãããŸããç¹å®ã®å¹³åå€ã¯ãæããã«ãããã€ãã®ã°ããŒãã«ãªå€ããååŸãããŸããããã¯å¥åŠã§ã...ç§ã¯ãããæžãããŠããå Žæãæ¢ããå²ã蟌ã¿ïŒ10ãã³ãã©ãŒã§ãããèŠã€ããŸãããã©ããããããã¯ã¬ãžã¹ã¿ã®ããã4ãã¯ãªã¢ããããã ã£ã
A1
ããã®åŸãèšå®ããŒãžãžã®åãæ¿ãã4äœãåã£ããå€ãã¬ãžã¹ã¿ããèªã¿åããã
F8
ãš
F9
ããããçšããŠè¡ã£ãããšããã€ãã®å¥åŠãªããããŠãã®åŸããã®ã°ããŒãã«å€ãæžãããŠããŸããããããããããã®å€ã§äœãè¡ãããã®ã§ããããïŒ
ç§ã¯ã¡ããã©ç®ã«ãã£ãåºã宿°
0x55
ã
0xAA
ã
0xCC
ãš
0x33
..ãããã¯å¯èœã§ããïŒèª°ãããããªã«éãã®ã§ãããã...ãŸããã¯ãããããã¯ããã€ãå ã®ãããã®é åºãéã«ããå·§åŠãªæ¹æ³ã®ããã®å®æ°ã§ããããªãããŒã§ãããããé«åºŠãªããã»ããµã§ã®ã¿äœ¿çšã§ããŸãã 8051ã§ã¯ããã®ã¢ãããŒãã¯éåžžã«å¹æçã§ã¯ãããŸããããããããªãïŒæž©åºŠã枬å®ããããã«ã©ã€ã»ã³ã¹ãããŠããIPïŒã³ãã³ããã€ã³ã¿ïŒãäœã§ããããããã®é åºãéã«ãªãçµæãçæãããããã§ãããªããã®åé¡ããããã©ã€ãšã¿ãªãããã®ãœãããŠã§ã¢ã¬ãã«ã§è§£æ±ºããå¿ èŠãããã®ãââã¯å€§ããªåé¡ã§ããçµå±ã®ãšãããããŒããŠã§ã¢ã®ãããã®é åºãéã«ããããšã¯ãããã€ãã®ã¯ã€ã€ãŒãäžŠã¹æ¿ãããããé£ããããšã§ã¯ãããŸãã...ããã¯äœãããŸããïŒç§ã¯ç¥ããªããå®éãç§ã¯ãããæ±ºããŠæã«å ¥ããŸããã§ããã
枩床ã»ã³ãµãŒå°çšã®ã³ãã³ãã«ãŠã³ã¿ãŒãèšèšãã人ã¯ã»ãšãã©ããŸãããããã¯ADCã«æ¥ç¶ããã ãã§ãããã®ã³ãŒããåå®è£ ãããããéåžžã«ããŸãæ©èœããããšã確èªã§ããããããããã¹ãŠã®ã¬ãžã¹ã¿ãŒã倿ŽããããšããŸããããããã®ã»ãšãã©ã¯æž©åºŠã»ã³ãµãŒã®ã²ã€ã³ã«åœ±é¿ãäžããŸãããã广ããªãã£ããã®ããããŸããããããéåžžã®ADCã§ããå Žåãããã€ãã®ãããããããå¥ã®çš®é¡ã®å ¥åã«åãæ¿ããŠãå®å šã«ç°ãªãå€ãäžããããšãæåŸ ãããŸããæ®å¿µãªãããããã¯èµ·ãããŸããã§ãããããã¯æ¬åœã«éåžžã®æž©åºŠã»ã³ãµãŒã®ããã«èŠããŸããããããã®ã¬ãžã¹ã¿ã¯ä»ã®ã©ãã«ãè§ŠããããŠããªããããããã確èªãããŠããŸããå°çã®ããã«å¥åŠã§ããã倧äžå€«ã§ã...
ãããã®ã¬ãžã¹ã¿ã®ã»ãšãã©ã¯äžåºŠããæžã蟌ãŸããããããã®å€ã§ããããããã倿Žãããšæž¬å®å€ã«åœ±é¿ãããããåã«ãã¹ãŠã®æž©åºŠæ ¡æ£å€ãšåŒã¶ããšã«ããŸããããããã£ãŠã
TEMPCAL1
ïŒregã
E6
ïŒã
TEMPCAL2
ïŒRegã
E7
ïŒã
TEMPCAL3
ïŒRegã
FB
ïŒã
TEMPCAL4
ïŒRegã
FC
ïŒã
TEMPCAL5
ïŒRegã
FD
ïŒãããã³
TEMPCAL6
ïŒregã
FE
ïŒã«ã€ããŠç¥ãããšãã§ã ãŸããäœåºŠã䜿çšãããŠãããå®éã«æ ¡æ£å€ã®èªã¿èŸŒã¿ã管çããŠããããã§ãã®ã§ãååãä»ããŸã ããçµæã¯ ïŒregã
F7
TEMPCFG
TEMPRETH
F8
ïŒããã³
TEMPRETL
ïŒregã
F9
ïŒãçµæã¯10ãããã®é·ãã§ã16ãããã®çµæã¬ãžã¹ã¿ã®äžç«¯ã«æãããããããé åºãéã«ãªããŸãã
ãŸã
TEMPCFG
ããµã³ãã«ã®äœæãå®äºãããšãããã3ãèšå®ãããŠããããšã«æ°ä»ã ãŸãããäžæè°ãªããšã«ããã¡ã¯ããªã³ãŒãã¯ããããã§ãã¯ããã代ããã«å²ã蟌ã¿ã«äŸåããŠããŸããããããå®éã« ã¯ãã¬ãžã¹ã¿ã®ç®çããã³ãŒãããã®ã«åœ¹ç«ã¡ãŸãã
A1
ãã芧ã®ãšãããã¬ãžã¹ã¿ã«8ãããããããããã¯ã©ã·ãã¯8051ã¯7ã€ã®å²ã蟌ã¿ãœãŒã¹ã«å¶éãããŠããŸãã
IEN
ããã7ã¯ãã°ããŒãã«å²ã蟌ã¿ãã¢ã¯ãã£ãã«ããããã«äºçŽãããŠããŸããã§ã¯ã7çªä»¥äžã®å²ã蟌ã¿ãã©ã®ããã«ç®¡çããŸããïŒå®éãããã¯è¥¿éšéææä»£ã®ããã§ããããªããæãã®ã¯ããªããããããšã§ããããããããã«ã¯å²ã蟌ã¿çªå·10ãããªã¬ãŒããããŒããŠã§ã¢ãããããããã䜿çšããŠãããããã€è¡ãããããç¥ãããšãã§ããŸããããã¯å®éšã«æé©ã§ããããã§ã¯ã7ãè¶ ããå²ã蟌ã¿ãã©ã®ããã«ã¢ã¯ãã£ãåããã³éã¢ã¯ãã£ãåãããããç¥ãããã®ã§ãå²ã蟌ã¿ãåãé€ããŸã§ãã®ã³ãŒããããããåãå¿ èŠããããŸãããããµã³ãã«ã äœæãããŸãããæ€çŽ¢ã¯é·ãã¯ããããŸããã§ãããããã§ãªããã°ãªããŸãã
A1
ïŒç§ã¯åœŒã«ååãä»ããŸãã
IEN1
..ãããã§ããã0ã®æ©èœãäœã§ãããã¯ããããŸããããããã1以äžã¯ãå²ã蟌ã¿çªå·7以äžã®ã¢ã¯ãã£ãåãå¶åŸ¡ããŸããããã¯åŸã§ç¢ºèªã§ããŸãããããŠãå®äºããŸãã-ããã«å¥ã®åšèŸºæ©åšãææžåããã®ã§ãããã«å€ãã®å¥åŠãªããšãçºèŠãããŸãã...
I2C
ãã®æ®µéã§ãåãããããæèŒãããã倧ããªé»åã€ã³ã¯ã®å€æãéããŸããã e-inkã°ã©ãã£ãã¯ãã£ã¹ãã¬ã€ãšNFCãæèŒãã2.9ã€ã³ãã¢ãã«ã§ãã!!!ããã§ãããµãŒãããŒãã£ã®ç¥èã圹ç«ã¡ãŸããã»ãšãã©ã®NFCããã€ã¹ã¯ãäžå¯§ã«è³ªåããã°ãããããäœã§ããããæ£ç¢ºã«æããŠãããŸããããŒãäžã®NFCããããå°ããããŠé©åã«ã©ãã«ä»ãã§ããªããããããã¯è¯ãããšã§ãã NFCã䜿çšããŠã¹ãã£ã³ããããã€ã¹IDã確èªãããšãããNXP NT3H1101ïŒ åŸäžã®ããã«ããã«ã¢ãŒã«ã€ããããã³ã㌠ïŒã§ããããšãããããŸãã ããã®éåžžã«äŸ¿å©ãªããŒãžãããããŒã¿ã·ãŒããããŠã³ããŒãã§ããŸãã -ãããŠããã®ããããšã®éä¿¡ãã©ã®ããã«é²ããããã¹ãããããã«æããã«ãªããŸãã圹ç«ã€æ å ±ïŒ ïŒãã¹ãŠã®æ å ±ã¯ããã§åœ¹ç«ã¡ãŸãïŒãå¯äžã®åä»ãªããšã¯ããã®ããã€ã¹ã®I2Cã¢ãã¬ã¹ãåºå®ãããŠããªãããšã§ãããä»»æã®å€ã«èšå®ã§ããŸãããã ããããã©ã«ãå€ãæäŸãããŠããŸãããªããŒã¹ãšã³ãžãã¢ãªã³ã°ã®ã¢ã«ãã¡ãããïŒ99.9ïŒ ã®å Žåãããã©ã«ãå€ã¯å€æŽãããŸãããããã©ã«ãã®I2Cã¢ãã¬ã¹ã倿ŽãããŠããªãã«éããããŸããã
ã®ãã€ããªã¢ããã°ãèŠã€ããã®ã¯
0x55
éåžžã«ç°¡åã§ã-ãã®å€ã¯ããã»ã©äžè¬çã§ã¯ãããŸãããã©ãããããããã¯ãã¹ãŠã2ã€ã®é¢æ°ã®ãããããåŒã³åºãåã«äœæãããŸããããããI2Cã«æ¥ç¶ããå¿ èŠãããããšã¯çã«ããªã£ãŠããŸããããã«ããã¹ãŠã®å Žåã«ãããŠããããã®åŒã³åºãã®åã«ãããã4ã
CLKEN
ãã®åŸãç Žæ£ãããŸããããã§ããã®ããããä»ããŠI2Cãã¢ã¯ãã£ãåãããããšãããããŸããããããã®é¢æ°ãäœãããã®ãèŠãŠã¿ãŸããããæåã«æäŸããããã©ã¡ãŒã¿ãŒããããŒã¿ãã³ããŒãããã®ãããã°ãæåŸã«ã³ããŒãããã®ããããŸããéäžã§ããããã¯ãã¹ãŠããã€ãã®ã°ããŒãã«ãªãã®ãæžã蟌ã¿ãã°ããŒãã«ããããèšå®ããããã4ãã¯ãªã¢ããã¬ãžã¹ã¿ã«ããã5ãèšå®ããŠãã¯ãªã¢ãããã®
95
ãåŸ ã¡ãŸããããŒããæž©åºŠã»ã³ãµãŒã®ããã«æ©èœããŸããã©ããã
IEN1
å²ã蟌ã¿ã®ããã2ã ã¢ã¯ãã£ãã«ãªããŸãã
ãããã®ã°ããŒãã«å€ã«åœ±é¿ãäžããå²ã蟌ã¿ãã³ãã©ãŒãã©ãã«ããããèŠãŠã¿ãŸãããã確ãã«ããã®å²ã蟌ã¿çªå·ã¯äºæ³éã8ã§ãã
CFGPAGE
0ã«èšå®ã㊠ãããã¬ãžã¹ã¿ãèªã¿åããŸã
91
..ãæäžäœã®3ãããã¯ç¡èŠãããæ®ãã®ãããã¯ã¹ã€ããã±ãŒã¹ã§äœãããããæ±ºå®ããããã«äœ¿çšãããŸãããã®ã³ãŒãã¯å°ãçŽããããããšãããã£ãã®ã§ãå®éšããããšã«ããŸãããããžãã¯ã¢ãã©ã€ã¶ãŒãNFCãããã«æ¥ç¶ããåç·ã«æ¥ç¶ããã©ã
SDA
ã§ã©ãã«ããã ããã°ããèŠã€ããŸãã
SCL
ããã®ãããã®ããŒã¿ã·ãŒããããã®ã§ç°¡åã§ããã
ã¬ãžã¹ã¿ã®ããã4ãã¯ãªã¢ããŠ
95
ãäœã®åœ±é¿ãåãŒããªãããã§ã ããããã5ãèšå®ãããšããã¹ã®STARTæ¡ä»¶ãçã«ãªããŸããå²ã蟌ã¿ãããªã¬ãŒãããŸããçµã¿èŸŒã¿ãã³ãã©ãŒã䜿çšããŠåãããšãè¡ããã¬ãžã¹ã¿ãŒã®æäžäœ5ããããèªã¿åããšã
91
ãããã«å€ãããããšãããããŸãã
0x08
..ãæ¬¡ã«ãã¢ãã¬ã¹ãã€ãã¯ã¬ãžã¹ã¿ã®R / WïŒèªã¿åã/æžã蟌ã¿ïŒ
94
ããããšãšãã«æ ŒçŽãããã¬ãžã¹ã¿ã® ããã3ã¯ã¯ãªã¢ãã
95
ãŸãããã®å²ã蟌ã¿ãã³ãã©ãéããã¹ãŠã®ãã¹ã«ãããã¬ãžã¹ã¿ã®ããã3ãã¯ãªã¢ã ããããšã«ã泚æããŠãã ãã
95
ãããããäžæããå¿ èŠã®ããããããã ãšæããŸããç§ã¯ãŸã ãããçè§£ããŠããŸãããããã§ã«ããã€ãã®ã¬ãžã¹ã¿ã«ååãä»ããããšãã§ããŸãããã¹ãŠã®I2Cã¬ãžã¹ã¿ãèšå®ããŒãž0
ã«ããããã§ããå«ãŸããŠããã®ã¯I2Cã§ãããä»ã®çç±ã§èªã¿åãããããšã¯ãªããããåŒã³åºããŸã ãæäžäœã®3ãããã倿Žãããããäœããã®æ¹æ³ã§äœ¿çšããããããã®ãèŠãããšããããŸããã -ã ããç§ã¯é»è©±ããŸã
91
I2CSTATE
I2CBUF
94
ãããŒã¿ã¯ã³ã³ãã€ãŒã«æ²¿ã£ãŠãã³ãã§éããããã
95
ãå°æ¥çã«ã¯ååãä»ããããŸããããã¯
I2CCTL
ãç©äºãè¡ãããã«ãäœããæžã蟌ãå¿ èŠãããããã§ãã
ããã«æãäžããŠã¿ããšãã¢ãã¬ã¹ãã€ããéä¿¡ããããšã4ã€ã®ã¹ããŒã¿ã¹å€ã®ãããããååŸã§ããããšãããããŸããéä¿¡ããã¢ãã¬ã¹ãã€ãã«æžã蟌ã¿ã¢ã¯ã»ã¹ãå¿ èŠãª
0x18
å Žåãç¶æ ã¯ç¢ºèªæžã¿ïŒACKïŒã§ãã
0x20
ãã©ãããããã§ãªãå Žå ã¯ç¶æ ã«ãªããŸã ãéä¿¡ããã¢ãã¬ã¹ãã€ãã«èªã¿åãã¢ã¯ã»ã¹ãå¿ èŠãª
0x40
å Žåãç¶æ ã¯ç¢ºèªæžã¿ïŒACKïŒã§ãã
0x48
ãã©ãããããã§ãªãå Žå ã¯ç¶æ ã«ãªããŸã ã NAKïŒæªç¢ºèªãã€ãïŒã®åŠçã¯éåžžã«ç°¡åã§ããããã5ãã«èšå®ãããŠããå Žå
I2CCTL
ãã¹ã®STOPæ¡ä»¶ã¯çã§ãã
æžã蟌ã¿ã¢ãŒãã§ã®ããŒã¿éä¿¡ã¯ç°¡åã§ãããã€ãã¯åã«ã«æžã蟌ãŸã
I2CBUF
ãŸããéä¿¡ããããã€ãã確èªå¿çïŒACKïŒããããšãç¶æ ã¯ã«ãªãã
0x28
ããã§ãªãå Žåã¯ã«ãªã
0x30
ãŸããåèµ·åãèªçºããã«ã¯ãããã4ã
I2CCTL
-ã«èšå®ããŸã ãããã¯æ©èœããŸãããã¹äžã§ã®RESTARTã³ãã³ãã®å®è¡ãå®äºãããšãç¶æ ã¯ã«ãªã
0x10
ãŸãã
æ å ±ãèªã¿åãããå Žåã¯ãèªã¿åãã¢ãŒãã§ãªã¹ã¿ãŒãããããšã¢ãã¬ã¹ãã€ããéä¿¡ããåŸãã¹ããŒã¿ã¹ã確èªãããšããã«ã
0x40
åä¿¡ããæ¬¡ã®ãã€ãïŒACKãŸãã¯NAKïŒãžã®å¿çæ¹æ³ã決å®ã§ããŸãã確èªå¿çïŒACKïŒããã«ã¯ãããã2ãæ¬¡ã®ããã«èšå®ããŸãã
I2CCTL
ãããã³ç¢ºèªããªãããã«ïŒNAKïŒ-ãã®ããããã¯ãªã¢ããŸãããã³ãã©ãŒãè¿ããããšããã€ããåä¿¡ãããŸãããããè¡ããããš
0x50
ããã€ãã確èªããã
0x58
ãã©ããããã㳠確èªãããªãã£ããã©ããã®ã¹ããŒã¿ã¹ã衚瀺 ãããŸãããããã«ããã
I2CBUF
åä¿¡ãããã€ãã¯ã«å«ãŸããŸãã
åæåã³ãŒãã確èªããã³ããŒãããããåããåŸ
I2CCTL
ãåšèŸºæ©åšãå²ã蟌ã¿ãããªã¬ãŒãããã©ãããå¶åŸ¡ããããã7ãèŠã€ãããŸãã ãããã§ãªãå Žåããã®ã¬ãžã¹ã¿ã¯æ¬¡ã®ããã«åæåãããŸãã
0x43
..ããããããããã¯ããã¹ã¿ãŒã¢ãŒãã§åäœããããã«æ§æãããŠããæ¹æ³ã ãšæããŸããã¹ã¬ãŒãã¢ãŒãã®ãµã³ãã«ã³ãŒãããªãã®ã§ããã®è³ªåã«ã€ããŠã¯ãã以äžèª¿ã¹ãŸããã§ããããã¹ã¬ãŒãã¢ãŒãã¯ãµããŒããããŠãããšç¢ºä¿¡ããŠããŸããããã¯ã§ããŸãããç§ã¯æ ãè ã§ã:)ã
ã¬ãžã¹ã¿
96
ã¯åæåæéã«ãæ å ±ãèšé²ãããã®åŸã¯å€æŽãããªããªããŸãããããã¯ããŸã äžè¶³ããŠãã1ãããã®æ å ±ãšããçžé¢ããŠããŸããããã¯ãã¯ããã¯é床ãã©ã®ããã«èšå®ãããŠãããã瀺ããŠããŸãããã®ã¬ãžã¹ã¿ïŒçŸåšã¯ãšåŒã°ããŠããŸã
I2CSPEED
ïŒã詊ããŠã¿ããš ãã¯ããã¯åšæ³¢æ°ãšè€éãªçžäºäŸåé¢ä¿ãããããšãããããŸãããæ°åå詊è¡ããåŸã次ã®ããã«ãªããŸããã
rate = 16MHz / ((dividerB ? 10 * (1 + dividerB) : 12) << dividerA)
ããã§ãdividerAã¯æäžäœ3ãããã§ãã
I2CSPEED
次ã®4ã¯dividerBã§ããæäžäœãããã¯æããã«äœ¿çšãããŠããŸããã
åæGPIOèšå®ã¯åšèŸºæ©åšã®åæåãã€ã³ãä»è¿ã§çºçãããšããäºå®ã¯ããã®ãã³ãæç€ºããŠããããã
P1.4
ãã ãã®å Žåã«ãããŠéèŠã§ã
P1.5
ã
ãã¹ãŠãããŸããããŸãããã1ã€ã®ç§å¯ããããŸããããã®ãããã¯ã®å²ã蟌ã¿ãã¢ã¯ãã£ãã«ãªããšïŒc
IEN1
ïŒãããã2ãã¬ãžã¹ã¿ã«ã»ãããããŸãã
A2
ã
IEN1
ã¢ãã¬ã¹
A1
ã«ãã ã®ã§ ãå²ã蟌ã¿ãšé¢ä¿ãããã®ã§ã¯ãªãããšæããŸããç§ã¯ãŸã ãããäœãããã®ãæ£ç¢ºã«çè§£ããŠããããæåã®I2Cã»ããã¢ããã³ãŒã以å€ã®ã³ãŒãã¯ããã䜿çšããŠããŸããã以åã«ååãä»ããŸãã
I2CUNKNOWN
I2Cé¢é£ãããå²ã蟌ã¿é¢é£ã§ããå¯èœæ§ãé«ãã§ããããšã«ãããç§ã®ã³ãŒãã¯ãã¹ã¿ãŒãšããŠI2Cãã©ã³ã¶ã¯ã·ã§ã³ãå®è¡ã§ããããã«ãªããŸããïŒ
ãã³ãã§ã³ãžæ€åº
倿ãã¡ãŒã ãŠã§ã¢ã¯ãNFC察å¿ããã€ã¹ã«ãã£ãŠã¹ãã£ã³ããããšãã«èµ·åãããŸããããªã³ããŒãNFCãããã«ã¯ãã¡ã€ã³ãã€ã¯ãã³ã³ãããŒã©ãŒã«æ¥ç¶ãããããã£ãŒã«ãæ€åºããã³ããããŸããäžèŽïŒ ãªãèããŠïŒãã³ã®å€åãæ€åºããæ¹æ³ãå¿ èŠã§ããããããã¹ãªãŒãã¢ãŒããããŠã§ã€ã¯ã¢ããããŸãïŒçé»åïŒãããã«ãé»åã€ã³ã¯ã§æç»ããã«ã¯æéããããããã®åŸ æ©äžããããã¯ããããã¹ãªãŒãç¶æ ãç¶ç¶ããã¯ãã§ãããã£ã¹ãã¬ã€ã¯ããBUSYãä¿¡å·ã倿Žããããšã«ãããæç»ã®çµäºãéç¥ããŸããã€ãŸã... CPUããã³ã®å€æŽãæ€åºããå¿ èŠããã2ã€ã®ã±ãŒã¹ããããã»ãšãã©ã®å Žåãã¢ã¯ãã£ããªåŸ æ©ãµã€ã¯ã«ã«ã€ããŠè©±ããŠããŸãããæåã«èª¬æããã±ãŒã¹ãèŠã€ããã®ã¯é£ããã§ããã-ç§ã¯ãŸã ãã®äŒæ¢ç¶æ ã³ãŒããã©ãã«ããã®ãæ£ç¢ºã«ã¯ç¥ããŸããã§ãããããã©ãããã2çªç®ã®ã±ãŒã¹ã¯éåžžã«ç°¡åã«èŠã€ããããšãã§ããŸãããã€ãŸããç»é¢ã«æç»ããããã®ã³ãŒããèŠã€ããã®ã¯ç°¡åã§ãããããã§ããæ¢åã®ç¥èã«åºã¥ããŠæ§ç¯ããããšã圹ç«ã¡ãŸããç§ã¯ç¥ã£ãŠããŸãããã©ã®ããŒã ããååšããäºå®äžãã¹ãŠã®é»åã€ã³ã¯ãã£ã¹ãã¬ã€ãããã®ãç»é¢ãæŽæ°ããã責任ããããŸããç§ã¯ã¡ããã©ããã«å ¥ã£ãŠãäœãèµ·ããããèŠãŸãããããããã®ã³ãŒãããããå€ããè§ŠããããŸãã
SFR
..ãç§ã¯ç§ãèŠãããã€ãã§å®éšãå§ããŸãããããã€ãã®ç¥èã«åºã¥ããæšæž¬ãè¡ããŸããïŒãã¹ãŠã®ãã³ãå€åæ€åºãããªã¬ãŒã§ããå¿ èŠããããŸããããã¯åžžã«åœãŠã¯ãŸãããã§ã¯ãããŸããããéåžžã¯ç¥èã«åºã¥ããæšæž¬ãè¡ãããŸããç§ãã¡ã話ããŠããæ§æã¬ãžã¹ã¿ãäœã§ããããããã¯ã·ãŒã±ã³ã·ã£ã«ã§ããã3ã€ã®ããŒãã§åäœãããšä»®å®ããŸããããŸãããã³ã倿Žãããšãããã€ã¹ããŠã§ã€ã¯ã¢ããããã ãã§ãªããå²ã蟌ã¿ãçºçããã¯ãã ãšæããŸãããæ§æã¬ãžã¹ã¿ã®æ°ãããªãäºæž¬å¯èœã§ããããšã¯çã«ããªã£ãŠããŸãããã³ããšã«ãENABLEãSTATUSããããŠããããDIRECTIONãå¿ èŠã§ããããã«ãGPIO倿޿€åºã«é¢é£ããã¬ãžã¹ã¿ã¯ãä»ã®GPIOæ§æã¬ãžã¹ã¿ã®è¿ãã«ããå¯èœæ§ããããŸãã
ããã«åºã¥ããŠãå°ãªããšãããã€ãã®ãã³ãç°¡åã«åãæ¿ããããšãã§ããã®ã§ãããã€ãã®å®éšãè¡ããŸããïŒããšãã°ãTESTïŒããŸããçŸåšã®ããããã©ã®ããã«éçºãããŠãããã確èªããã®ã«ãå°ãæéãããããŸãã
SFR
ãç§ã¯ãã¬ãžã¹ã¿ãèŠãŠå¿ããŠããªã
BC
ã
BD
ãš
BE
èšå®ããŒãžã«0.ããã€ãã®å®éšã§ã¯ã圌ããåãã³ã®ãã«ã¢ãããå¶åŸ¡ããããšã瀺ãããŠããŸãã確ãã«ãããã³ãåŒãäžãããããšãå¯èœã«ããæ§æãèŠãããšããããŸãããç§ã¯ãããã«ååãä»ããŸãã
PxPULL
ã
ããã€ãã®å®éšã®çµæãããŒãããšã«3ã€ã®ã¬ãžã¹ã¿ãããããã³ã倿Žããããšãã«å²ã蟌ã¿ãå¶åŸ¡ããããšãæããã«ãªããŸããã
PxLVLSEL
ïŒ
A3
ã
A4
ã
A4
ïŒç®çã®ã¬ãã«ãéžæããŸãïŒ0 =é«ã1 =äœïŒã
PxINTEN
ïŒ
A6
ã
A7
ã
A9
ïŒããŒããŠã§ã¢ã¬ãã«ã§å€æŽè¿œè·¡ãã³ãæäŸããŸãã
PxCHSTA
ïŒ
AA
ã
AB
ã
AC
ïŒãæ ŒçŽæ€åºã¹ããŒã¿ã¹ïŒãããã»ãã=äœãã倿ŽãããŸããïŒãä»ã®å®éšã§ã¯ããã³ã倿Žãããšãã®å²ã蟌ã¿çªå·ã¯11ã§ããããšã瀺ãããŸãããããŸãæ©èœããçé»åã¢ãŒããããããããŠã§ã€ã¯ã¢ããããããšãã§ããŸããïŒããã«ã€ããŠã¯ä»¥äžã§è©³ãã説æããŸãïŒã
2çªç®ã®DPTR
ã¬ãžã¹ã¿ãŒ
84
ãš
85
äžæè°ãªããšã«ãã¹ãŠã®ã¹ã¯ãããã©ã³ã¶ã¯ã·ã§ã³ã®äžã§ç¯çŽã
CFGPAGE
ã8ããããã¹ãŠããããã«ä¿åããŸãã 8051ã®å€ãã®ããªãšãŒã·ã§ã³ã§ã¯ãããã¯2çªç®ã®ã¬ãžã¹ã¿ãããã¹ãå Žæ
DPTR
ã§ãããããããããããªããã©ã®ããã«ããã« åãæ¿ã ãŸããïŒèª°ãããããç°ãªã£ãŠè¡ããŸãããã£ãŠã¿ãããšã«ããŸãããã¢ã»ã³ãã©ã§ããã°ã©ã ãäœæããŠãåã¬ãžã¹ã¿ã®åããããé çªã«å転ããæŽæ°ã®æžã蟌ã¿
DPTR
ïŒç¹å¥ãªåœä»€ïŒãåŸç¶ã®èªã¿åã
DPL
ããã³
DPH
ïŒãžã®éåžžã®ã¢ã¯ã»ã¹ïŒãš äžèŽãããã©ããã確èªã ãŸãã
SFR
ïŒããããã®å€ãã¯ãããã°ã©ã ãã¯ã©ãã·ã¥ãããã«ç°¡åã«åãæ¿ããããšãã§ããªããšäºæž¬ã§ããŸããããããã©ã¡ããäžæ¹ãæ éã«ã¹ãããããç·Žç¿ãããã®ã§ãã®ããã0ãåé¢ããŸãã
92
ããããããã§ã...ããã圌ãããŠããããšã§ããå€ãã®8051ãšåæ§ã«ããã®ã¬ãžã¹ã¿
DPS
ã«ãããŒã¿ãã€ã³ã¿ã®éžæããæå³ããååãä»ããŸãã ãã¬ãžã¹ã¿ãŒ
84
ãš
85
ç§ã¯åœç¶ã
DPL1
ãš ååãä»ããŸãã
DPH1
ã
ãã®ä»ã®å®éšã
ããã€ãã®å®éšã§ã¯
PCON
ã8051ã®ã¹ãªãŒãã¢ãŒãã§ïŒã¹ã¿ã³ãã€ãšã¹ãªãŒãïŒã®æäžäœ2ãããã æåŸ ã©ããã«æ©èœããããšã瀺ãããŠããŸãïŒãã ããçãšãã¢ãŒãã§ã®ã¹ãªãŒããæ§æã§ããŸãïŒããŸããããã4ã®èšå®ãç¡å¹ã«ãªã£ãŠããããšã«ã泚æããŸãã
XRAM
ãããã«ãããã¹ãªãŒãã¢ãŒãã§ã®ãšãã«ã®ãŒãããã«ç¯çŽãããŸãã
ç¯å²å ã®ã¬ãžã¹ã¿ãŒ
B2
㯠è峿·±ã
B6
ã§ãããããã¯ããã®å Žæã§åŸãæç€ºã«ãã£ãŠç°ãªãããã«èŠããŸãããã¹ãŠãæ³šææ·±ãæ€èšããçµæãç§ã¯æ°ã¥ããŸãã
B4
ïŒ
B5
ããã¯åžžã«ææ°
PC
ã§ã!!!ãªã誰ãããããå¿ èŠãšãããããããªã-ç§ã¯ç¥ããŸããããããã«ååãä»ã
PCH
ã
PCL
..ããããã¯èªã¿åãå°çšã§ãããããããã®ç¯å²ã®ä»ã®ã¬ãžã¹ã¿ã¯ã©ãã§ããïŒ
B2
ãããŠ
B3
æ¡ä»¶ãžã£ã³ãã«é¢é£ä»ããããŠããããã«èŠããŸããïŒå®è¡ããŠããå ŽåäŸãã°ãèµ°ãå¹ è·³ã³ã§
ljmp
ã
lcall
ãŸãã¯
ret
ïŒã圌ãã¯ãžã£ã³ãã®å ãä¿åããããã«èŠããŸããçãé·ç§»ïŒãªã©
sjmp
ïŒã§ã¯
B2
ãå€äœãææ¡ããŠããããã§ããå¥åŠãªããšã§ããã圹ã«ç«ããªãã®ã§ããã以äžã¯èª¬æããŸããã§ãããæ®ãã®ã¬ãžã¹ã¿ã«ååãä»ããŸãã
PERFMONx
ã
çãšãã¢ãŒãã§å¯ã
人ã¯äººã§ããã人éã¯åœŒãã«ãšã£ãŠç°è³ªãªãã®ã§ã¯ãããŸããã人ã ã¯ã©ãŠã³ãæ°ã倧奜ãã§ããæ£ç¢ºãã¯å¿ èŠãªããŠã奜ãã§ããããã¯ããªããŒã¹ãšã³ãžãã¢ãªã³ã°ã«å€§ãã«åœ¹ç«ã¡ãŸããããšãã°ã宿°ã«ã©ã®ããã«å¿çã
0x380000
ãŸããïŒç¡ãïŒãããããã©ã
0x36EE80
ã§ããïŒç®ã¯ãã§ã«åœŒå¥³ã«ããã¿ã€ããŠããŸããããã¯ã©ãããæå³ã§ããïŒå°æ°ã®ã·ã¹ãã ã«ããã翻蚳ããããªãã¯ä»¥äžãåç §ããŠãã ããã3,600,000 ãŸããããã¯ããªç§åäœã§è¡šããæéãã§ãããã®å€ã¯ããããããçãšãã¢ãŒãã§ã®é·æéã®ç¡ç ã®å Žåã«ã®ã¿åœ¹ç«ã€å¯èœæ§ããããŸãã倢ãå®çŸããå Žæã«å ãåœãŠããã®çš®ã®å®æ°ã«äŸåããããšã§ãããªããŒã¹ãšã³ãžãã¢ãªã³ã°ããããã®ã®æ°ãæ°ããã®ã«ããããããŠããŸãã
ãã®ããã€ã¹ã®å®æ°ã¯ãç§ãé¢å¿ã®ãã颿°ã«æž¡ãããŸããïŒ1 5000 2 000 5 000 10 000 3 600 000 1 800 0000xffffffffããããããªç§åäœã®æéã瀺ããŠããããšã¯éåžžã«çè§£ã§ããŸããåŸè ã¯ãããããæ°žé ã«ãŸãã¯ã»ãŒæ°žé ã«ãã®ã¹ã¿ãã§ãã
ã»ãšãã©ã®ã¬ãžã¹ã¿ã¯ã¹ãªãŒãã¢ãŒãã§ã»ãŒæä»çã«ã³ãŒãã«ãã£ãŠäœ¿çšããããããããã§ã»ãšãã©ã®ã¬ãžã¹ã¿ãäœãããŠããã®ããçè§£ããæ©äŒã¯ã»ãšãã©ãããŸããã§ãããããã€ãã¯äžã«
SFR
ãããããã€ãã¯å®å®ã«ãããŸãã
MMIO
..ãã³ãŒããã³ããŒããŠåçŸããããšãã§ããŸãããç¹ã«ãã¹ãªãŒãã¿ã€ããŒã32KHzãš1Hzã®2ã€ã®é床ã§åäœããããšã«èå³ããããŸãããããã¯24ãããã®ã¿ã€ããŒã§ãæçã®ã¹ãªãŒãã¯çŽ30ããªç§ç¶ããæé·ã®ã¹ãªãŒãã¯çŽ194æ¥éç¶ããŸãã詳现ã«ã€ããŠã¯ãSDKãã芧ãã ããã
ç¡ç·
ã©ãžãªã¯éåžžãå€§èŠæš¡ãªæ§æãå¿ èŠãšãããããå¯éããã¹ããŒã¹
SFR
ã§ã¯æ··éããããŸã ãç¡ç·æ©ãæèŒããã»ãšãã©ã®8051ã¯ããã®åé¡ã解決ããããã«äœ¿çšãããŸã
MMIO
ã8051ã®ã¡ã¢ãªããããI / Oã¯éåžžãã¢ãã¬ã¹ç©ºéã«ããããããŸã
XRAM
ãã³ãŒããæãã«èŠããšããã®ãããã®ç¡ç·æ©ãã«ããããšãããããŸãã
MMIO:df00 â MMIO:dfff
ã
RXãã¹
ç¹°ãè¿ãã«ãªããŸãããOTAã€ã¡ãŒãžããå§ããããšã«ããŸãããåæãç°¡çŽ åããã®ã«ååå°ããã§ãã OTAã€ã¡ãŒãžã¯ç¡ç·ãã±ãããéä¿¡ãããåä¿¡ããã ãã§ããããšãããã«æããã«ãªããŸããïŒç¢ºèªå¿çã¯ããŒããŠã§ã¢ã¬ãã«ã§èªåçã«éä¿¡ãããŸããããã¯ã»ãšãã©ã®ZigBeeãããã§äžè¬çã§ãïŒãããããããã¯è¯ãããšã§ãïŒãã®ãããã§ããã©ã€ããŒã®ååã ããåæããã ãã§ååã§ããã€ãŸããã¿ã¹ã¯ã¯å¯èœãªéã2åç°¡åã§ãã
OTAã³ãŒããããŒã¿ãååŸããå Žæãæ¢ãå§ãããšãããããã¡ãã¥ãŒããã£ãããã«èŠããŸãããå 容ïŒããã¯ãåã ã®ãã€ããå«ããã¥ãŒã§ãããåãã€ãã¯ãããã¡ãŒã®ãªã¹ããžã®ãã€ã³ã¿ãŒã§ãããã±ãããåä¿¡ããåä¿¡ãããã±ãããåŠçããŠããããã«èŠããã³ãŒãã¯ããã¥ãŒãããããã¡ãååŸããŠåŠçããå¥ã®ãã¥ãŒã«å ¥ããŸãããéåžžã«åçŽãªã¹ããŒã ã 1ã€ã®ãã¥ãŒã¯åä¿¡ããŒã¿ã§ãã£ã±ãã®ãããã¡ãæ ŒçŽããå¥ã®ãã¥ãŒã¯æ°ããåä¿¡ããŒã¿ãåä¿¡ããæºåãã§ããŠãã空ã®ãããã¡ãæ ŒçŽããŸããååã«ã¯ãªã¢ã
å°ãèŠãŠã¿ããšããã¥ãŒãå¥ã®æ¹æ³ã§ã¢ã¯ã»ã¹ãããŠããå Žæãããã«ããããŸããã空ã®ããã¥ãŒãããããã¡ãåé€ããå®å šãªãã¥ãŒããã¥ãŒã«å ¥ããŸããããã¯å²ã蟌ã¿ïŒ5ã®ãã³ãã©ãŒã§ãïŒå²ã蟌ã¿ãã³ãã©ãŒèªäœã¯éåžžã«åçŽã§ããããã ããããããèšå®ãã
TCON2.2
ãã«ä¿å ããããããã¡ãŒãããã¥ãŒã
0xC6
ã
MMIO:df48
ããã€ããã³ããŒãããŠå¥ã®ãã¥ãŒã«å ¥ããããå Žåã«éã ãŸãããããã圌ã¯ã©ããããã€ããã³ããŒããã®ã§ããããïŒã³ããŒã®é·ãã¯ã©ãã§å ¥æããŸãããïŒäž¡æ¹ãšã
XRAM
åœŒãæžããŠããªãã£ããããã¡ããåãããŸãã ïŒç§ã¯ãã®è¬ãè§£ãæããããšãã§ããããšããããŸããã
æ€çŽ¢ã¯ããã§çµãããŸããã§ãããå²ã蟌ã¿4ãéèŠãªåœ¹å²ãæããããã®ãã³ãã©ãŒã¯ããã«åçŽã§ããããšã倿ããŸããã圌ã¯ããã5ããã¹ãããŸãã
MMIO:dfad
ïŒç§ã¯ãããåŒã³ãŸã
RADIO_IRQ4_pending
ãŸããèšå®ãããŠããå Žåã¯ãä»ã®å Žæã§ã¯åŒã³åºãããªãããã·ãŒãžã£ãåŒã³åºããŸãããã®ããã·ãŒãžã£ã¯ãèªã¿åã ããã®äžã®å€ã128以äžã§ããããšã確èªããèªã¿åã ã1å¢å ãããšãåã®å€ãšçãããªãããšã確èªããŸãããäžèšã®ãããããæºããããªãå Žåã¯ãã«ä¿åã ããŸãããã以å€ã®å Žåã¯ ãæ§æããŒãž4ãéžæãããæåã®èªã¿åãå€ãã°ããŒãã«å€æ°ã«æ ŒçŽãããããã«é·ãã瀺ãããŸãããã®å€ãã1ãåŒããå€ãæç¶ã ãïŒã« æ ŒçŽãããŠããããŒã¿ãåŸã§ã³ããŒãããããã¡ãžã®ãã€ã³ã¿ ãæ¬¡ã«ãããã2ãã«èšå®ãããŸãã ã
SFR
FA
MMIO:df98
0xC6
MMIO:df48
D5
D4
D3
TRIGGER
ããã§ããã³ã³ããã¹ããç¥ãããšã圹ç«ã¡ãŸãã 127ã¯ãæå¹ãª802.15.4ãã±ãããæã€ããšãã§ããæå€§å€ã§ããããã®é·ãã«ã¯2ãã€ãã®å·¡ååé·æ€æ»ïŒCRCïŒãå«ãŸããŸããããã€ãèªäœã®é·ãã¯å«ãŸããŸããããããã£ãŠã
FA
ãããçµæã®é·ãã§ãããšæšæž¬ ããŸãïŒãã€ãé·ãšCRCãèæ ®ã«å ¥ããŠïŒãååãä»ããŸãã
RADIO_GOTLEN
ããã®ãããªå Žåã
MMIO:df48
ïŒçŸåšã®åå
RADIO_rxFirstByte
ïŒãæåã«åä¿¡ãããã€ãïŒé·ããã€ãïŒã§ããå¯èœæ§ãããããšã¯çã«ããªã£ãŠã ãŸããæ®ãã®ãã¹ãŠã®ã¬ãžã¹ã¿ãæç¢ºã§ããïŒ
D5
ããã¯RX DMAã®DMAã®é·ãïŒçŸåšã¯åŒã°ããŠãã
RADIO_RXLEN
ïŒ
D4
ïŒ
D3
å®å RX DMAãžã®ããŒããã€ã³ã¿ã«åè§£ãããŸãïŒ
RADIO_RXPTRH
ããã³
RADIO_RXPTRL
ããããïŒã
ãã®åŸããã¹ãŠããŸããããŸãããå²ã蟌ã¿çªå·4ã¯ãç¡ç·ãå éšãããã¡ã«ãã±ãããåä¿¡ãããšããã«ããªã¬ãŒãããŸããããã5ã
RADIO_IRQ4_pending
ïŒããã¯çŸåšåŒã°ããŠããŸã
RADIO_IRQ4_pending
ïŒã«èšå®ãã ãš ããããçºçããããšãããããŸãããã±ããã®åææ€æ»ã«é²ã¿ïŒãã±ããã®é·ãã劥åœãªå¶éå ã«ããããšã確èªããŸãïŒã次ã«
XRAM
ããã¹ãŠãæ£åžžã§ããã°ãå éšãããã¡ãŒããã«DMAãå®è¡ã ãŸããããã§ãªããã°ãæã ã¯æžã
0xC6
ã§
MMIO:df48
ãè«ççã«ã¯ãããã¯ãRX FIFOã空ã«ããããšæ¯èŒã§ããããããã®ã¬ãžã¹ã¿ã¯çŸåšããšåŒã°ããŠã
RADIO_command
ãŸãããã±ããã§ãã¹ãŠãæ£åžžã§ãDMAæäœãå®äºããå Žåãããã2ãèšå®ãããŸãã
TCON2
ãããã³å²ã蟌ã¿5ãããªã¬ãŒãããŸããããã§ããã空ã®RXFââIFOããã«æžã蟌ã¿
RADIO_command
ãŸããããã¯ãDMAã¡ãœããã䜿çšããŠããŒã¿ãæ¢ã«ãã«ããŠããã®ã§äŸ¿å©ã§ããæ¬¡ã«ãããŒã¿ãã³ããŒããããžã§ããå®äºããŸãã
ã»ãšãã©ã®ç¡ç·ã§ã¯ãåä¿¡ããå·¡ååé·ã³ãŒãã¯äžäœå±€ã§æäŸãããŸãããåã«ãã§ãã¯ãããyesãŸãã¯noã®å€ãæã€åäžã®ã¹ããŒã¿ã¹ãããã§è¿ãããŸãããã€ãã®ããã«ããã¹ãŠããæ£åžžã«ãæ©èœããŠãããšæ³å®ããããšããå§ãããŸããããªãããã§ãã¯ããŸã-ããã¯æ¬åœã«å®æçã§ããã»ãšãã©ã®ZigBeeç¡ç·ã¯ã代ããã«ãããã®2ãã€ãã§ãCRCã§ã¯ãªãLQIïŒç¡ç·ãªã³ã¯å質ã€ã³ãžã±ãŒã¿ïŒãšRSSIïŒåä¿¡ä¿¡å·åŒ·åºŠã€ã³ãžã±ãŒã¿ïŒãå ±åããŸãããã®ã¢ãã«ã§ã¯ãã©ãžãªã¯ã»ãšãã©åãããã«æ©èœããŸããã»ãšãã©ãã©ãããæåã®ãã€ãã¯åžžã«
0xD0
ãããã2çªç®ã¯å®éã«ã¯LQIïŒæäžäœ7ãããïŒãšCRCã¹ããŒã¿ã¹ïŒããã7ïŒãå«ãã§ããããã§ããå®éãChipconç¡ç·ã®åäœãšæ©èœçã«éåžžã«äŒŒãŠããŸãããã®ã³ãã³ã
0xC6
ã¯ããããã³ã³ç¡ç·ïŒçŸåšã¯TIïŒã®ã空ã®RXFââIFOããæå³ããŸããä»ã®å€ãã®ãã®ã¯åãã§ã¯ãããŸããããã³ãã³ã㯠å察ã§ããããã®ç¡ç·ã¹ã¿ãã¯ã®ä»ã®èŠçŽ ãããã²ãŒãããã®ã«åœ¹ç«ã¡ãŸããïŒ
ã©ãžãªã®è©³çް
OTAã³ãŒããã©ã®ããã«ç¡ç·ãéå§ããããèãããšãå€ãã®ã¬ãžã¹ã¿ãäžåºŠã ã圱é¿ãåããããã€ãã®å€ããããã«æžã蟌ãŸããŠããããšãããã ãŸããããã¯å®å šã«ã©ã³ãã ã«èŠããŸããã»ãšãã©ã®å Žåããããã®å€ãã¯ã²ãŒãžã§ãã 1åïŒãŸãã¯ç¹°ãè¿ããåãå€ãå ¥åãããïŒã«æžã蟌ãŸããã¬ãžã¹ã¿ã¯ããã£ãªãã¬ãŒã·ã§ã³ã¬ãžã¹ã¿ã§ããé¢é£ããã¬ãžã¹ã¿ã®éå±ãªè©³çްã¯ã¹ãããããŸãããSDKã«å«ãŸããŠããäœæ¥éå§ã³ãŒãã«ã€ããŠèª¬æããŸãã
ããã§ããã¬ãžã¹ã¿ã«æžã蟌ãŸããå€ã®æ°ã芳å¯ããŸã
RADIO_command
..ãèšé²ãããå€ã¯ãchipconã³ãã³ãã®å€ã䜿çšããå Žåã«äºæ³ãããå€ãšäžèŽããŸãããchipconç¡ç·ã¢ãžã¥ãŒã«ã«ã¯ãªãå€ãããã€ã衚瀺ãããŸãããããã£ãŠããã®ã©ãžãªã¯çãããããã³ã³ã®ééã§ããããäž¡æ¹ãšãå ±éã®ç¥å ã®åå«ã§ãããããã«ããããã®ç¶æ³ã¯ã圌ãã«ãã£ãŠçºè¡ãããããã€ãã®ã³ãã³ããçè§£ããã®ã«åœ¹ç«ã¡ãŸãã
éå§ã³ãŒããåçŸãããããã«çµã¿èŸŒãŸããŠãããããªå²ã蟌ã¿ãã³ãã©ãŒãäœæããããšã§ãåä¿¡ã«äœ¿çšã§ããå®éšã«åœ¹ç«ã€åäœäžã®ãã€ããªãåŸãããŸããã¡ã€ã³ãã¡ãŒã ãŠã§ã¢ãæžã蟌ãã¬ãžã¹ã¿ãããã«ããã€ãããããšã«æ°ã¥ãã
MMIO:df88 â MMIO:df8f
ããããç§ã®é·ãMACã¢ãã¬ã¹ãã§ãããšããã«å€æããŸããã ããã¯ãããŒããŠã§ã¢ã¬ãã«ã§çä¿¡ãã±ããããã£ã«ã¿ãªã³ã°ããããã«äœ¿çšãããŸããåæ§ã«ã
MMIO:df90 â MMIO:df91
RXãã£ã«ã¿ãŒã®ãç¬èªã®PANIDããèšå®ããŸãã A
MMIO:df92 â MMIO:df93
ã¯ãèªåã®çãã¢ãã¬ã¹ããèšå®ããŸãããã®æ©åšã¯ããããŒããã£ã¹ãã¢ãã¬ã¹ã«éä¿¡ããããã¹ãŠã®ãã±ãããåãå ¥ããŠç¢ºèªïŒACKïŒããŸãã
MMIO:dfc0
æšæºã®802.15.4ïŒ11..26ïŒçªå·ã§ç¡ç·ãã£ãã«ãèšå®ããŸãã
ç¡ç·æ©ããã±ããã確èªããã®ã§ãèª¿æŽæã«
MMIO:dfc9
é信匷床ã調æŽãããŠããããšãããããŸãã ã TXãã¯ãŒãèšå®ããã¬ãžã¹ã¿ãŒã«ã€ããŠã ãšæããŸãããŸããå·¥å Žåºè·æã®ã¡ã€ã³ãã¡ãŒã ãŠã§ã¢ã§ãã£ãã«ãèšå®ãããšããã£ãã«ããšã®å€ã§ããã«2ã€ã®ã¬ãžã¹ã¿ãæžã蟌ãŸããããšã«æ°ä»ããŸããã OTAãã¡ãŒã ãŠã§ã¢ã«ã¯ãã®ãããªã¬ãžã¹ã¿ã1ã€ã ããããŸãã RXã«é¢é£ãããã®ã¯ãšåŒã°ã
MMIO:dfcb
ãTXã«é¢é£ãããã®ã¯ ãšåŒã°ããŸã
MMIO:dffd
..ãè€è£œããŠçè§£ããã®ã«ååç°¡åã§ããæ¬¡ã«ãTXãçè§£ããæãæ¥ãŸããïŒ
ããã€ãã®ãã€ããéã£ãŠã¿ãŸãããïŒ
ããŒã¿ãã¹ã埩å·åããåŸã颿°ãšã¬ãžã¹ã¿ã®ååãåè§£ãããã¹ã¿ãŒã€ã¡ãŒãžã«è»¢éããŸããããŸã ããŒã¯ãããŠããªããã®ãèŠããšãTXã®ãã¹ãã©ãã«ããããããããŸããå®éãããã«ã¯ããã«2ã€ã®ãããã¡ãã¥ãŒããããŸãã1ã€ã¯ããã«äœ¿çšã§ãã空ã®TXãããã¡ã§ãã£ã±ãã§ããã1ã€ã¯éä¿¡ããæºåãã§ããŠããã䜿ãæãããããTXãããã¡ã§ãã£ã±ãã§ããäŒé颿°ãããã«èŠã€ããŸããã
802.15.4ã§ã¯ãéä¿¡ããåã«ç¡ç·ãã£ãã«ãèãã®ãéäŸã§ãããã®æäœã¯CCAïŒãã£ãã«ã¢ã€ãã«è©äŸ¡ïŒãšåŒã°ããŸããéä¿¡ããããšããŠããããŒã¿ãåŠçããåã«ã次ã®ãããªã«ãŒãã«ã€ããŠèããŠã¿ãŸãããã
MMIO:df98
ããã0ããã§ãã¯ããŸããèšå®ãããŠããå Žåã颿°ã¯å€±æããã¿ã€ããŒã¯å詊è¡ããããã«èšå®ãããŸãããããCCAãã¹ã ãšæããŸãããã®ãããã«128åãŒãã衚瀺ãããå Žåããã£ãã«ã¯ç©ºããŠãããšèŠãªãããŸãã
äŒé颿°èªäœã¯æ°ã®ãããããã«åçŽã§ããããšã倿ããŸãããæ§æããŒãž4ãéžæããç®çã®é·ãïŒé·ããã€ããŸãã¯CRCãå«ãŸãªãïŒãéžæãããšããã¹ãŠãã«æžã蟌ãŸã
CD
ãŸããã§
XRAM
æžãã ããããã¡ãžã®ãã€ã³ã¿
CA
ïŒ
C9
ããããã¡ã¯é·ããã€ãã§å§ãŸããŸãã
RADIO_command
å€ãããŒããããŸã
0xCB
ããããã³ã³ç¡ç·æ©ã«ã¯ãã®ãããªã³ãã³ãã¯ãããŸãããããTXFIFOã®ããŒãããæå³ããŠãããšæããŸããæ¬¡ã«ãããã1ãèšå®ãããŸã
TRIGGER
..ãããããå éšTXFIFOç¡ç·ãã¥ãŒãžã®DMAã¢ã¯ã»ã¹ãéå§ãããæ¹æ³ã ãšæããŸããæ¬¡ã«ãã«
MMIO:dfc8
èšå®ãããš
0xFF
ãTXãçµäºããã® ã255ååŸ æ©ãã
MMIO:df9b
ïŒçŸåšã¯
RADIO_curRfState
ïŒã®ããã7ãèšå®ãããŠããããšã確èªããŸã ãæ¬¡ã«ãå°ãé ããŠãã«
MMIO:dfc8
èšå®ãã
0x7F
ãŸããäžæè°ãªããšã«ããªããããèšé²ãããŠããã®ãåãããŸãã
MMIO:dfc8
ãç§ã®ã³ãŒãã§ã¯ããããªãã§ããããšããŸãããããã¹ãŠããŸããããŸããã
ãã£ãœ
å°ãå®éšããåŸãç§ã¯ãã¡ã¯ããªãŒãã¡ãŒã ãŠã§ã¢ãã§ããªãããã€ãã®ããªãã¯ãçºèŠããŸãããããã6ã¯
RADIO_IRQ4_pending
ããã±ããããTXããã確èªå¿çé å»¶ïŒACKïŒãæéåãã«ãªã£ãåŸã«èšå®ãããŸããå®éã«ACKãåä¿¡ãããšãããã4ãèšå®ããããããïŒ1ïŒå®éã«ãã±ãããéä¿¡ããã®ã¯ãã€ããïŒ2ïŒACKãåä¿¡ãããã©ãããç°¡åã«å€æã§ããŸããæ¶ŒããïŒ
ãŸããããã4 in
RADIO_IRQ4_pending
ãèšå®ãããŠããŠãããã5 inã
RADIO_curRfState
å æãã㊠ããªãå Žåãããã¯ãã±ããã®åä¿¡åŠçäžã§ããããšãæå³ããŸãã RSSIãæåã§éžæããå¿ èŠããããŸããããã«ã€ããŠã¯
MMIO:df84
ïŒä»
RADIO_currentRSSI
ïŒèªãã§ããŸã ããªãã»ããã¯çŽ56dBmã§ãã
ãŸããããã1ã«æ°ã¥ããŸãã
TCON2
TX DMAã®å®äºæã«èšå®ãããŸãïŒãã ããå¿ ãããTXããã»ã¹èªäœã§ããå¿ èŠã¯ãããŸããïŒã
TCON2
ç¡ç·ã®åæåãçµäºãããšãããã0ã èšå®ãããŸãã
æªè§£æ±ºãã¹ããªãŒ
ADC /ããããªãŒæž¬å®ããã³AESæå·åãšã³ãžã³
ããããªãŒé»å§ã枬å®ããæ¹æ³ãããã¯ãã§ãããåæ§ã®ã³ãŒãã®çè·¡ã¯èŠã€ãããŸããã§ããããã®ããã«ADCã䜿çšããã³ãŒãããªããã°ããã®æ¶å€±ããæ¹æ³ãèŠã€ããå¯èœæ§ã¯ãããã§ããAESãããã¯ã¯ãååãšããŠADCãšåãã§ãããããã«AESã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãããã¯ãããããšãç¥ã£ãŠããŸãïŒZigBeeã«å¿ èŠïŒãããããå®éã®ã³ãŒãã¯ããã䜿çšããŠããªãã®ã§ããããèŠã€ããæ¹æ³ãããããŸããã
ãã®ä»
ãã®ããããè³Œå ¥ã§ããªããããèŠã€ããããšã¯ã§ããŸããããããŸãæ°ã«ããªããã®ïŒIR LEDã³ã³ãããŒã©ãŒãPWMãŠããããDACããããã®ããšã¯ãèªè ãèªåã§ç·Žç¿ã§ããããã«ããŠãããŸãã
ZBS242 / 3ãã³é çœ®ãæ©èœãSFRãããŠã³ããŒã
ZBS24xSDKãããŠã³ããŒãã ãŸãã
- 圱ä»ãã®ã»ã«ã¯ããããåäœã§ã¢ãã¬ã¹æå®å¯èœãªã¬ãžã¹ã¿ã瀺ããŸã
- éè¡ã«åšåº«ããªãæãã«é°åœ±ãä»ããããã¬ãžã¹ã¿ãŒ
CFGPAGE
- æããã«ãã©ã®ããŒãžã«ããŸã£ãã衚瀺ãããªãåçŽã®åœ±ä»ãã¬ãžã¹ã¿ã
- 空ã®ã»ã«ã¯äžæãªã¬ãžã¹ã¿ã§ã
- RADIOã¬ãžã¹ã¿ã®ååã¯æåãrãã§å§ãŸããŸã
åå¿è ã®ãªããŒã¹ãšã³ãžãã¢ã®ããã®ã¬ãã¹ã³
- äœæ¥ãéå§ããåã«ãå°ãªããšãæ°æéãŸãã¯æ°æ¥éè³æãèªãã§ãã ããã
- - . -, .
- . SPI , I2C , . .
- , â ( ).
- : , . , , .
- , , .
- . - , - . , .
- - . , , .
- , , . , , .
- - . .
- - , , - .
Macleodã®ã¯ã©ãŠã ãµãŒããŒã¯ããŠã§ããµã€ãã®ãã¹ãã£ã³ã°ã«æé©ã§ãã
äžèšã®ãªã³ã¯ã䜿çšãããããããŒãã¯ãªãã¯ããŠç»é²ãããšãä»»æã®æ§æã®ãµãŒããŒãã¬ã³ã¿ã«ããæåã®æã10ïŒ å²åŒã«ãªããŸãã