????????????????
1??????????????????裨???裩???????????????????????????????????3~10mA????????????????????????1.7
V?????? R=??5-1.7??/3~10 ??k??
2???????TTL??? ??????+5V????????0V??
RS232?????? ????????12V ????????+12V?? ???????MAX232??????о??????????????
3??????????I\O?????????????????????????????
4???????????????????B??E???????????E??C???????
5??????????
1?? ??????????????????????????????????
2?????????????????????????????????????????·?в????????
3????????????????????????????
4??????????????????????????硣
5?????????????????????????????
??????????????void beep()
{ fmq=0;
delay 500us();
fmq=1;
delay 500us();
}
6?????????????????
????????us?? = 12 / ????????Mhz??
???12M????????????????1us
7??89C51??о???????24M?????
??????????????????????????????????????????????????????????о?????????????????????????????????????????ú????????????Щ???????飡??
????????????????????,????????????????????????????????????????????????????????γ?,????????????????,??????????????????????????????????????顣???????о??????????????,???????????о???????????ISP??????????????????????????????????????DIY???????????????????????????????
1 ????????????
??,????????????????????????÷???????????????
?? ?÷??????????????,??????????,??????洢???????????????????????,?????????????????????????;?????????????????,?????????????????????,?????????в???????????,??????????????????
?? ????????????????????,????????????????????????????????????,??????о???????????????????,????????????????????????????????????л?,??????????????????????
2 ?????????????о????
?????????????????????????????????????????????????????????????о?????????????,??????????о?????????????????????????????????±??,??????????о?,???????λ????,????????????????á???
?????????????????????8051??е???????????????????,???????????????PC???????????????б???????????????????????????????????PC??????????????;?????????1?MAX232??????о?;?????е?о?????????????????????,???????????????;?????е?о?????????????????????,?????С????????,??о????????????????????
???????,Atmel?????????AT89S8252????????????о?,??????????????????о??????????
?? ??8051????;
?? ???8KB???д1000?ε????洢??,2KB???д????100 000?ε?????洢????256???8λ?????RAM;
?? ?????SPI??????????б??,??8051????
?? ???б??????????д????,????????????????????,??????;
?? ????????,????12V???????
3 AT89S8252???б??
(1) AT89S8252???б????
??о???RST??????????,???г????????洢?????????SPI??????[SCK,MOSI??input??,MISO??output??]????RST??????,??????????????????????????????????????䶮????б??????,о??????????????????????????????????,????о????????λ?????,??????????????????????䶮SPI????SCK??????????????????1/40??
(2) AT89S8252???б?????
?? ??XTAL1??XTAL2??????????3~24MHz?????;??VCC??GND???????????,??RST???,???10ms??
?? ??????б?????????䶮
?? ????д/??/??????????????,?????????λ???,??λ???,??????????????????????
?? ??????????д????,??????2.5ms??
?? ??????????????????
?? ??RST???,о???????С?
(3) AT89S8252???б??????
AT89S8252???б?????????1???С?
??1
(4) AT89S8252???б??????
AT89S8252???б????????1?????
?1
4 ??????
?? ?????????????????SPI??????;
?? ???????????????,???????1?74HC244???????
???????????2???????????????????,???????á???
?2
5 ??VB?????в??????
???????????????0x278??0x378??0x3BC,????????????в鵽???????????,??2?г?????????????????????λ????????
??2
??Windows????????????????????·?VB???,????????????????????VB?????????????????Windows?????,VB???????д??????,????????????????????????????????????д????Internet????????????????????,????????????????????á?????????,??????????Winio v2.0??????????Win9X/NT/2000/XP?? Yariv Kaplan ??,???????????????????????????????,??Winio.sys??Winio.dll??Winio.vxd??Winio.bas????????????????????,??VB?????????Winio.bas??鼴?ɡ????????????????????,???????????
?? Initialize()????????????????????????????????????????????,????????1??,???????0????
?? Shutdown()???????????????????????????????,????????1??,???????0????
?? GetPortVal(ByVal PortAddr As Integer, ByRef Portval As Long, ByVal bSize As Byte) As Boolean???????????,PortAddr ??????, Portval?????,bSize??????????????????????????1??,?????????0????
?? SetPortVal(ByVal PortAddr As Integer, ByVal Portval As Long, ByVal bSize As Byte) As Boolean??д????????PortAddr ??????, Portval??д???,bSize??д??????????д?????????1??,???????0????
?????????Winio.bas????е??????????
Declare Function InitializeWinIo Lib ??WinIo.dll?? () As Boolean
Declare Function ShutdownWinIo Lib ??WinIo.dll?? () As Boolean
Declare Function GetPortVal Lib ??WinIo.dll?? (ByVal PortAddr As Integer, ByRef Portval As Long, ByVal bSize As Byte) As Boolean
Declare Function SetPortVal Lib ??WinIo.dll?? (ByVal PortAddr As Integer, ByVal Portval As Long, ByVal bSize As Byte) As Boolean
6 Intel HEX ??????
????????????????????????д??о??????????Intel HEX??????????Intel HEX?????????????,?????ü??±????????Intel HEX???????г????????,??????????????????????????,????????????????????Intel HEX????????????????????,??????????????????????
??LLAAAATTDD...DDCC
?????????????????????;
LL???????????,????ü???е??????????;
AAAA??????????????????16λ??;
TT???????????,00?????????,01??????????;(????е?????????????????01????????,??????ж????01??????????????????ɡ?)
DD???????????????;
CC????У?????????????????г??????????????????????0,???0???д?????
VB??????????????????粹??棨http://www.dpj.com.cn?????????????????????????,?????????????,??δ?????????????????????????????????????
????
???????????????????????????,??????????,??δ????????????,??????????????????????????????????????ó??? ??????????????????????,???DIY???AVR??PIC???????????????????????????????????????????MCS51/AVR/PIC?????????????????????????????
????AT89S8252????????,?????????г????????,????Atmel???????????AT89C51/52??AT89S51/52?????????????,??????????????????????????AT89S8252????,???????????????????????????????????????????MCS51/AVR/PIC????????????????????AT89S51/52??????
????????
???????AT89C5X??51??52??55????????????????????????????????Щ???鱾??????????????????????Щ???????е???????????????ο????????????????AT89??е???????????????????
AT89C51??????????????????51????????4??P???1???????RAM??б????128Byte??Flash????4K???????????????????????????????????????????????????ɡ?
???????????λ???????
?????????λ????????????????AT89C51???????λ???????????????????????????????????????????????????????????????????????????????????λ?????????ε???????????λ??????????????λ?????????????????ǹ????????????????????????????????????????????????????AT89??е?о??????????У?????????????????????????????????????????????????????????????????????????????????????????????У?????????????????????????????????????????????????????????????????????????????????λ????????????????????
??1????λ??·????????????????????λ??????????????????????????????λ????????????????????????
??2???????????????Щ51о????п??????λ???????At89c55WD?????????????????????????????????????????????????????λ???????????C?????????????????????????????????????????????????????????????λ?????????C???????Ч?????????????д??????????????????????????????????????????????????????????÷???????????????????????????????????λ???????????????????????????????/?????????????????????????????λ???????????????????????е????????????ú???????????????????????????????????????????????????????????????λ????????????????RST????????????λ???????????????λ???????RST???????????????????о????????????????????·????CPU???о???????????????????λ???????????????????λ??????????????????????????????????RST???????е???仯??
???????????51???????????????CPU???о?????X5045???????????????????????Eprom????????????????????????????MAX708??????λо??????????????

????admin ?????????2018-05-08