AVRC^vO TIPS

  ̃t@Cɂ AVRC^ʂēꂽmEnE⒍ӓ_Ȃǖ{
ȂׂLĂ܂BۂɐvO
胉C^ǂۂ̎菕ƂȂ΍KłB



^C~O

  C^̃^C~O𓾂邽߂ɁAmsPʂł̓VXeBIOS̃fBC@\
 sPʂł MPUxˑ̏Ȃ I/O[hgpĂ܂B



foCX̎Fip[hj

  p[h̏ꍇA܂ 20sfoCXƂăfoCXIDǂݍ݂݂āA
s 8sfoCXƂčĂ IDF݂܂B8sfoCXł͂
W菇(x1 clock)tiny15菇(x16 clock)2ʂŃgC܂B
  ɂAvÖقȂ 8sfoCX܂߂đSẴfoCX
F\ƂȂĂ܂B



foCX̎FiISP[hj

  1200ƂȊÕfoCXł́Aŏ̃R}hV[PX̎菇قȂ
܂B
  ŁA܂ 1200iRESETpXjœV[PXsĎɃGR[
obN݂悤ɂĂ܂BLȃfoCXIDǂݏo܂Łu
IDǂݏovR܂ŃgC܂Aŏ̂Q1200ARڂ̓G
R[obNœV[PXs܂BɂAISP[hɂĂS
̃foCXŎFĂ܂B



0xFFXLbv

  ݎԂZk邽߁AޕKv̖oCg(܂̓y[W)AƂ
΃[hȂ̈vOŒl 0xFFAւ̃vO
XLbvĂ܂B



݊҂iISP[hj

  ISP[hł́AfoCXł̃oCg݂̊҂̂Ƀ|[O
gpĂ܂B̂߁AݎԂ͌X̃foCX̔\͂Ɠdd
ˑ邱ƂɂȂ܂B
  A1200̓f[^V[gɋLĂɂւ炸|[O܂@
\Ȃ悤Ȃ̂ŁAɂĂ 12ms̃^C}[Ŏ̃oCgɈڂ悤ɂ
Ă܂i5Vł 4ms OKA3V܂ŃJo[ɂ͂̒xKvjB
  ܂Ay[W[h݂̃foCXł́Ay[W݂̏I҂^C
}[ƂĂ܂B



Lu[VoCg(CALl)ɂ

  IV[^foCX̑́AOSCCALWX^CALlŔU
g̐̃ocL␳悤ɂȂĂ܂B̒l̓vO}
ǂݏoƂł܂Bavrpp/avrsp̏ꍇAq[Yǂݏoł̃foCX
CALlmFł܂BCALĺA1܂ 410iŕ\A4ꍇ
́A珇 1MHzpA2MHzpA4MHzpA8MHzpłB
  OSCCALWX^̏l0ɂȂÂfoCX́AIV[^g
AK삪KvɂȂ܂BfoCXɌŗLCALĺA炩̎i
ŃvOɖߍޕKv܂B̃foCXɏޏꍇ́A
\[Xt@CCALl𒼐ڃR[fBO邱Ƃ̂ŁAvO}
ł̑ΉKvɂȂ܂B
  vOݎɂ -c XCb`w肷ƁACALltbV
̍ŌoCgɃZbg܂B4ꍇ́AŏIoCg珇1MHzp...8MHzp
Ŕzu܂BvO͏ɂǂݏoĐݒ肵ĂOKłB

example:
    c = pgm_read_byte(FLASHEND - n); // written by -c switch
    if(c != 0xFF) OSCCAL = c;



ISPł̒ʐMx

  -d XCb`́AISP[hł̃foCXƂ̒ʐMxύX܂BISP
\ȒʐMx̓foCX̓NbNɈˑ̂ŁAʐMx̂
^C~OfBC}Ă܂BᑬNbNɃfoCXFł
Ƃ́Ax𒲐Ă݂ĂB



pC^ł̂Pڂ̏

  pC^ł́AVccVpp̐Ƀp|[g̃Rg[Mg
Ă܂B̐ḾAANeBu "L"Ȃ̂ŁAʏ"H"xłB̂
߁AC^gpO Vcc Vpp ON̏ԂɂȂĂ܂B̏ԂŃ\Pb
gɃfoCXZbgƃfoCX󂷋ꂪ̂ŁAȂƂ͐
vÕfoCXZbgvoĂ\PbgɃZbgKv܂B



vOdHipC^j

  p[h8sfoCX̍dVA[hł́A+12ṼvO
dKvłB̂߁ApC^ł́A{[h DC-DCRo[^
ڂĂ܂BAVR`bv̂+12VقƂǏȂ̂ŁA+12V̓d
10mA OKłB DC-DCRo[^Œuꍇ͂̒x̗eʂ
ڈɐ݌vĂB12Vȏ̓dpӂłȂA𗘗p̂
łȒPł傤B



pC^̕ϊ\Pbg

  pC^ł́A20sfoCX{ɂāAȊO͕ϊ\Pbg
őΉ悤ɂĂ܂BłAŏ炻ꂼ̕ϊ\Pbg𐻍삷
邭炢ȂAꂼ̃foCXp\PbgSă{[hɎĂ܂
قym܂BRłAɃZbgłfoCX1
B



RSTDISBLq[Y

  ̃foCXłRESETs|[gƂĎgݒ肪܂A
ԂłISP[h삵ȂȂ܂BISP[hłRSTDISBLq[Y
ăvOȂ悤ӂKvłB܂ARSTDISBLq[YvO
Ăꍇ́Ap(HVS)C^ -q XCb`KvɂȂ邱Ƃ
B



JTAGENq[Y

  ŋߔ\ꂽfoCXJTAG@\Ă̂Ă܂BftHg
ł JTAGLɂȂĂāAJTAG@\Əds I/O|[gƂĎg
B𕁒ʂɎg悤ɂɂ́AvOs MCU䃌WX^
JTDrbg𗧂ĂKv܂B܂́AJTAGENq[YAvOi"1"j
܂B



avrsp̃A_v^F

  avrsp͕̃vO~OA_v^ɑΉ邽߁AA_v^̃^Cv
FĂ܂B̏Ƀp|[g̐ڑ`FbNāAŏɃ}b`
gݍ킹ŃA_v^^Cv肵܂B

1. D5-ACK        Altera ByteBlasterMV
2. D7-PE         AVRX
3. D6-BUSY-PE    Xilinx JTAG
4. D6-PE         Lattice ISP
5. D0-PE         STK200 dongle
