PICerFT(ファームウェア不要USB接続ライタ)

■はじめに

2023-05-19 PICkit5 2021-10-02 半導体不足 2021-07-02 緊急告知 さらに使いやすくなりました。 PICerFTの必要性
右上:PICerFT
左上:AE-UM232R(秋月のUSBシリアル変換モジュール)

著作権と免責事項 補足 セキュリティソフト

■PICライタの仕組み

PICライタの基本的な仕組みです。

■従来のPICer(パラレル接続PICライタ)での問題点

さて、PICerは自作でき、入門には最適なPICライタでした。 しかし時代の移り変わりとともに問題点も浮かび上がってきました。 入門レベルを卒業された方は18Fシリーズを扱うことが出てくるでしょう。 18Fシリーズ、dsPICシリーズの書き込みには複雑な処理を必要とするため、パラレル制御では限界がありました。 そこでこれらを解決すべく、計画されたのが PICerUSB, PICerFT です。 PICkit2($44.95=\5000前後)PICkit3($47.95=\6000前後)PICkit4($47.95=\6000前後、値上げ$69.99=\8500前後、値上げ$76.99=\12800前後)よりも手軽に制作できそして低コストを目指しました。

■PICerFT の特徴

基本コンセプトは簡単便利 PICerFTのメリット PICerFTのデメリット

■回路図


2021-04-24 ピンを(9)DCD#から(2)DTR#に変更しました。
リビジョン
rev.1UPDI未対応、
rev.2UPDI対応、ピンを(9)DCD#から(2)DTR#に変更
rev.3トランジスタからFETに変更し、部品点数削減

J1はVpp=9Vのときショートさせます。初期設定はショートです。
J1Vpp電圧選択
ショート9.0V
オープン12.5V
以下のデバイスはVpp=12.5VではなくVpp=9Vですので注意が必要です。
PIC10F 320, 322
LF320, LF322
8-9V
PIC12F 1501, 1571, 1572, 1612, 1822, 1840
LF1501, LF1571, LF1572, LF1612, LF1822, LF1840
8-9V
PIC16F 707, 720, 721, 722, 722A, 723, 723A, 724, 726, 727
LF707, LF720, LF721, LF722, LF722A, LF723, LF723A, LF724, LF726, LF727
1454, 1455, 1458, 1459
LF1454, LF1455, LF1458, LF1459
1503, 1507, 1508, 1509, 1512, 1513, 1516, 1517, 1518, 1519, 1526, 1527
LF1503, LF1507, LF1508, LF1509, LF1512, LF1513, LF1516, LF1517, LF1518, LF1519, LF1526, LF1527
LF1554, LF1559, LF1566, LF1567
1574, 1575, 1578, 1579
LF1574, LF1575, LF1578, LF1579
1613, 1614, 1615, 1618, 1619
LF1613, LF1614, LF1615, LF1618, LF1619
1703, 1704, 1705, 1707, 1708, 1709, 1713, 1716, 1717, 1718, 1719,
1764, 1765, 1768, 1769, 1782, 1783, 1784, 1786, 1787, 1788, 1789
LF1703, LF1704, LF1705, LF1707, LF1708, LF1709, LF1713, LF1716, LF1717, LF1718, LF1719,
LF1764, LF1765, LF1768, LF1769, LF1782, LF1783, LF1784, LF1786, LF1787, LF1788, LF1789
1773, 1776, 1777, 1778, 1779
LF1773, LF1776, LF1777, LF1778, LF1779
1823, 1824, 1825, 1826, 1827, 1828, 1829, 1847
LF1823, LF1824, LF1825, LF1826, LF1827, LF1828, LF1829, LF1847
1933, 1934, 1936, 1937, 1938, 1939, 1946, 1947
LF1902, LF1903, LF1904, LF1906, LF1907
LF1933, LF1934, LF1936, LF1937, LF1938, LF1939, LF1946, LF1947
15213, 15214, 15223, 15224, 15225, 15243, 15244, 15245, 15254, 15255, 15256, 15274, 15275, 15276
15313, 15323, 15324, 15344, 15354, 15325, 15345, 15355, 15375, 15385, 15356, 15376, 15386
LF15313, LF15323, LF15324, LF15344, LF15354, LF15325, LF15345, LF15355, LF15375, LF15385, LF15356, LF15376, LF15386
18313, 18323, 18324, 18344, 18325, 18345, 18326, 18346
LF18313, LF18323, LF18324, LF18344, LF18325, LF18345, LF18326, LF18346
18424, 18444, 18425, 18445, 18455, 18426, 18446, 182446, 18456
LF18424, LF18444, LF18425, LF18445, LF18455, LF18426, LF18446, LF182446, LF18456
18854, 18855, 18875, 18856, 18876, 18857, 18877
LF18854, LF18855, LF18875, LF18856, LF18876, LF18857, LF18877
19155, 19156, 19175, 19176, 19185, 19186, 19195, 19196, 19197
LF19155, LF19156, LF19175, LF19176, LF19185, LF19186, LF19195, LF19196, LF19197
17114, 17115, 17124, 17125, 17126, 17144, 17145, 17146, 17154, 17155, 17156, 17174, 17175, 17176
18013, 18014, 18015, 18023, 18024, 18025, 18026, 18044, 18045, 18046, 18054, 18055, 18056, 18074, 18075, 18076
18114, 18115, 18124, 18125, 18126, 18144, 18145, 18146, 18154, 18155, 18156, 18174, 18175, 18176
8-9V
PIC18F 13K22, LF13K22, 13K50, LF13K50
14K22, LF14K22, 14K50, LF14K50
24K50, 25K50, 26K50, 45K50, 46K50
LF24K50, LF25K50, LF26K50, LF45K50, LF46K50
24K40, 25K40, 26K40, 27K40, 45K40, 46K40, 47K40, 65K40, 66K40, 67K40
LF24K40, LF25K40, LF26K40, LF27K40, LF45K40, LF46K40, LF47K40, LF65K40, LF66K40, LF67K40
24K42, 25K42, 26K42, 27K42, 45K42, 46K42, 47K42, 55K42, 56K42, 57K42
LF24K42, LF25K42, LF26K42, LF27K42, LF45K42, LF46K42, LF47K42, LF55K42 ,LF56K42, LF57K42
25K83, 26K83
LF25K83, LF26K83
24Q10, 25Q10, 26Q10, 27Q10, 45Q10, 46Q10, 47Q10
25Q43, 26Q43, 27Q43, 45Q43, 46Q43, 47Q43, 55Q43, 56Q43, 57Q43
26Q83, 27Q83, 46Q83, 47Q83, 56Q83, 57Q83
26Q84, 27Q84, 46Q84, 47Q84, 56Q84, 57Q84
04Q40, 05Q40, 06Q40, 14Q40, 15Q40, 16Q40
04Q41, 05Q41, 06Q41, 14Q41, 15Q41, 16Q41
24Q71, 25Q71, 26Q71, 44Q71, 45Q71, 46Q71, 54Q71, 55Q71, 56Q71
04Q20, 05Q20, 06Q20, 14Q20, 15Q20, 16Q20
8-9V
PIC18F 23K20, 24K20, 25K20, 26K20, 43K20, 44K20, 45K20, 46K20 Vdd+1.5V-9.0V
PIC18F 23K22, 24K22, 25K22, 26K22, 43K22, 44K22, 45K22, 46K22
LF23K22, LF24K22, LF25K22, LF26K22, LF43K22, LF44K22, LF45K22, LF46K22
Vdd+4.5V-9.0V
PIC18F 65K22, 66K22, 67K22, 85K22, 86K22, 87K22
65K90, 66K90, 67K90, 85K90, 86K90, 87K90
Vdd+1.5V-10.0V

■部品表

rev.2
備考単価
0.01uF1C1 積層セラミックコンデンサ\10
22uF1C2 縦型電解コンデンサ(耐圧25V)\10
1N41481D1 スイッチング・ダイオード(代替品 1S1588, 1S2076A, BAV21)、整流ダイオードは不可\10
HZ12A21Z1 12Vツェナー・ダイオード(RENESAS)(代替品 RD12E B3, GDZJ12C, BZX55C12V)\10
HZ9B11Z2 9Vツェナー・ダイオード(RENESAS)(代替品 RD9.1E B1, GDZJ9.1C, BZX55C9V1)\10
100uH1L1 アーキシャルリード・インダクタ(LAL03NA101K, 太陽誘電)(代替品 AL0307-101K)\10
2SC18152Q1,Q4 NPNトランジスタ(TOSHIBA,UTC)ランクはY, GR, BL、(代替品 2SC945L)\10
2SA10152Q2,Q3 PNPトランジスタ(TOSHIBA,UTC)ランクはY, GR, BL、(代替品 2SA733L)\10
1k1R7 カーボン皮膜抵抗(小型1/6W)\10
4.7k1R6 カーボン皮膜抵抗(小型1/6W)\10
10k4R1,R2,R4,R5 カーボン皮膜抵抗(小型1/6W)\10
100k2R3,R8 カーボン皮膜抵抗(小型1/6W)\10
AE-UM232R1IC1 秋月のFT232RLモジュールキット[AE-UM232R](ミニUSB)\950
1x20P1ピンヘッダー(2P/6P/7P)2.54mm\20
合計20
\1150
代替品 回路設計

■基板

部品配置

PIC専用(表面=部品面)

AVR専用(表面=部品面)


部品削減のヒント
チェックポイント

■対応デバイス

仕様は予告なく変更されることがあります。
Microchip Flash対応リスト
PIC10F200, 202, 204, 206, 220, 222, 320, 322, LF320, LF322
PIC12F508, 509, 510, 609, 615, 617, 629, 635, 675, 683, HV609, HV615, 752, HV752
1501, LF1501, 1571, LF1571, 1572, LF1572, 1612, LF1612, 1822, LF1822, 1840, LF1840
PIC16F54, 57, 59, 505, 506
610, HV610, 616, HV616, 627, 628, 627A, 628A, 630, 631, 636, 639, 648A, 676, 677
684, 685, 687, 688, 689, 690
72, 73, 74, 76, 77, 716
707, LF707, 753, HV753
720, 721, 722, 722A, 723, 723A, 724, 726, 727
LF720, LF721, LF722, LF722A, LF723, LF723A, LF724, LF726, LF727
737, 747, 767, 777, 785, HV785
83, 84, 84A, 87, 88
818, 819, 870, 871, 872, 873, 873A, 874, 874A, 876, 876A, 877, 877A
882, 883, 884, 886, 887
913, 914, 916, 917, 946
1454, 1455, 1458, 1459
LF1454, LF1455, LF1458, LF1459
1503, 1507, 1508, 1509, 1512, 1513, 1516, 1517, 1518, 1519, 1526, 1527
LF1503, LF1507, LF1508, LF1509, LF1512, LF1513, LF1516, LF1517, LF1518, LF1519, LF1526, LF1527
LF1554, LF1559, LF1566, LF1567
1574, 1575, 1578, 1579
LF1574, LF1575, LF1578, LF1579
1613, 1614, 1615, 1618, 1619
LF1613, LF1614, LF1615, LF1618, LF1619
1703, 1704, 1705, 1707, 1708, 1709, 1713, 1716, 1717, 1718, 1719,
1764, 1765, 1768, 1769, 1782, 1783, 1784, 1786, 1787, 1788, 1789
LF1703, LF1704, LF1705, LF1707, LF1708, LF1709, LF1713, LF1716, LF1717, LF1718, LF1719,
LF1764, LF1765, LF1768, LF1769, LF1782, LF1783, LF1784, LF1786, LF1787, LF1788, LF1789
1773, 1776, 1777, 1778, 1779
LF1773, LF1776, LF1777, LF1778, LF1779
1823, 1824, 1825, 1826, 1827, 1828, 1829, 1847
LF1823, LF1824, LF1825, LF1826, LF1827, LF1828, LF1829, LF1847
1933, 1934, 1936, 1937, 1938, 1939, 1946, 1947
LF1902, LF1903, LF1904, LF1906, LF1907
LF1933, LF1934, LF1936, LF1937, LF1938, LF1939, LF1946, LF1947
15213, 15214, 15223, 15224, 15225, 15243, 15244, 15245, 15254, 15255, 15256, 15274, 15275, 15276
15313, 15323, 15324, 15344, 15354, 15325, 15345, 15355, 15375, 15385, 15356, 15376, 15386
LF15313, LF15323, LF15324, LF15344, LF15354, LF15325, LF15345, LF15355, LF15375, LF15385, LF15356, LF15376, LF15386
18313, 18323, 18324, 18344, 18325, 18345, 18326, 18346
LF18313, LF18323, LF18324, LF18344, LF18325, LF18345, LF18326, LF18346
18424, 18444, 18425, 18445, 18455, 18426, 18446, 18456
LF18424, LF18444, LF18425, LF18445, LF18455, LF18426, LF18446, LF18456
18854, 18855, 18875, 18856, 18876, 18857, 18877
LF18854, LF18855, LF18875, LF18856, LF18876, LF18857, LF18877
19155, 19156, 19175, 19176, 19185, 19186, 19195, 19196, 19197
LF19155, LF19156, LF19175, LF19176, LF19185, LF19186, LF19195, LF19196, LF19197
17114, 17115, 17124, 17125, 17126, 17144, 17145, 17146, 17154, 17155, 17156, 17174, 17175, 17176
18013, 18014, 18015, 18023, 18024, 18025, 18026, 18044, 18045, 18046, 18054, 18055, 18056, 18074, 18075, 18076
18114, 18115, 18124, 18125, 18126, 18144, 18145, 18146, 18154, 18155, 18156, 18174, 18175, 18176
PIC18F242, 248, 252, 258, 442, 448, 452, 458
1220, 1230, 1320, 1330
2220, 2221, 2320, 2321, 2331
2410, 2420, 2423, 2431, 2439, 2450, 2455, 2458, 2480
2510, 2515, 2520, 2523, 2525, 2539, 2550, 2553, 2580, 2585
2610, 2620, 2680, 2682, 2685
4220, 4221
4320, 4321, 4331
4410, 4420, 4423, 4431, 4439, 4450, 4455, 4480
4510, 4515, 4520, 4523, 4525, 4539, 4550, 4553, 4580, 4585
4610, 4620, 4680, 4682, 4685
6310, 6390, 6393
6410, 6490, 6493
6520, 6525, 6527, 6585
6620, 6621, 6622, 6627, 6628, 6680
6720, 6722, 6723
8310, 8390, 8393
8410, 8490, 8493
8520, 8525, 8527, 8585
8620, 8621, 8622, 8627, 8628, 8680
8720, 8722, 8723
PIC18J 24J10, 25J10, 44J10, 45J10
LF24J10, LF25J10, LF44J10, LF45J10
24J11, 25J11, 26J11, 44J11, 45J11, 46J11
LF24J11, LF25J11, LF26J11, LF44J11, LF45J11, LF46J11
26J13, 27J13, 46J13, 47J13
LF26J13, LF27J13, LF46J13, LF47J13
24J50, 25J50, 26J50, 44J50, 45J50, 46J50
LF24J50, LF25J50, LF26J50, LF44J50, LF45J50, LF46J50
26J53, 27J53, 46J53, 47J53
LF26J53, LF27J53, LF46J53, LF47J53
65J10, 66J10, 67J10, 85J10, 86J10, 87J10
63J11, 64J11, 65J11, 66J11, 67J11, 83J11, 85J11, 84J11, 86J11, 87J11
65J15, 66J15, 85J15, 86J15
66J16, 86J16
65J50, 66J50, 67J50, 85J50, 86J50, 87J50
66J55, 86J55
66J60, 67J60, 86J60, 87J60, 96J60, 97J60
66J65, 86J65, 96J65
86J72, 87J72
63J90, 64J90, 65J90, 66J90, 67J90, 83J90, 84J90, 85J90, 86J90, 87J90
66J93, 67J93, 86J93, 87J93
65J94, 66J94, 67J94, 85J94, 86J94, 87J94, 95J94, 96J94, 97J94
66J99, 87J99, 96J99
PIC18K 23K20, 24K20, 25K20, 26K20, 43K20, 44K20, 45K20, 46K20
13K22, 14K22, 23K22, 24K22, 25K22, 26K22, 43K22, 44K22, 45K22, 46K22
LF13K22, LF14K22, LF23K22, LF24K22, LF25K22, LF26K22, LF43K22, LF44K22, LF45K22, LF46K22
13K50, 14K50
LF13K50, LF14K50
24K50, 25K50, 26K50, 45K50, 46K50
LF24K50, LF25K50, LF26K50, LF45K50, LF46K50
25K80, 26K80, 45K80, 46K80, 65K80, 66K80
25LK80, 26LK80, 45LK80, 46LK80, 65LK80, 66LK80
65K22, 66K22, 67K22, 85K22, 86K22, 87K22
65K90, 66K90, 67K90, 85K90, 86K90, 87K90
24K40, 25K40, 26K40, 27K40, 45K40, 46K40, 47K40, 65K40, 66K40, 67K40
LF24K40, LF25K40, LF26K40, LF27K40, LF45K40, LF46K40, LF47K40, LF65K40, LF66K40, LF67K40
24K42, 25K42, 26K42, 27K42, 45K42, 46K42, 47K42, 55K42, 56K42, 57K42
LF24K42, LF25K42, LF26K42, LF27K42, LF45K42, LF46K42, LF47K42, LF55K42, LF56K42, LF57K42
25K83, 26K83
LF25K83, LF26K83
PIC18Q 24Q10, 25Q10, 26Q10, 27Q10, 45Q10, 46Q10, 47Q10
25Q43, 26Q43, 27Q43, 45Q43, 46Q43, 47Q43, 55Q43, 56Q43, 57Q43
26Q83, 27Q83, 46Q83, 47Q83, 56Q83, 57Q83
26Q84, 27Q84, 46Q84, 47Q84, 56Q84, 57Q84
04Q40, 05Q40, 06Q40, 14Q40, 15Q40, 16Q40
04Q41, 05Q41, 06Q41, 14Q41, 15Q41, 16Q41
24Q71, 25Q71, 26Q71, 44Q71, 45Q71, 46Q71, 54Q71, 55Q71, 56Q71
04Q20, 05Q20, 06Q20, 14Q20, 15Q20, 16Q20
Microchip Flash未対応リスト
PIC10Fなし2023-03-13現在
PIC12F519, 529, LF15522023-03-13現在
PIC16F526, 527, 570, HV540(パラレル書き込み)2024-02-08現在
PIC18Fなし2024-02-07現在
主に未出荷製品で情報不足のためです。
dsPIC対応リスト
dsPIC30F1010
2010, 2011, 2012, 2020, 2023
3010, 3011, 3012, 3013, 3014
4011, 4012, 4013
5011, 5013, 5015, 5016
6010, 6011, 6012, 6013, 6014, 6015, 6010A, 6011A, 6012A, 6013A, 6014A
dsPIC33FJ 06GS101, 06GS102, 06GS202
12GP201, 12GP202
12MC201, 12MC202
16GP304
16MC304
16GS402, 16GS404, 16GS502, 16GS504
32GP202, 32GP204, 32GP302, 32GP304
32MC202, 32MC204, 32MC302, 32MC304
32GS406, 32GS606, 32GS608, 32GS610
64GP202, 64GP204, 64GP206(A), 64GP306(A), 64GP310(A), 64GP706(A), 64GP708(A), 64GP710(A), 64GP802, 64GP804
64GS406, 64GS606, 64GS608, 64GS610
64MC202, 64MC204, 64MC506(A), 64MC508(A), 64MC510(A), 64MC706(A), 64MC710(A), 64MC802, 64MC804
128GP202, 128GP204, 128GP206(A), 128GP306(A), 128GP310(A), 128GP706(A), 128GP708(A), 128GP710(A), 128GP802, 128GP804
128MC202, 128MC204, 128MC506(A), 128MC510(A), 128MC706(A), 128MC708(A), 128MC710(A), 128MC802, 128MC804
256GP506, 256GP510, 256GP710, 256MC510, 256MC710
256GP506A, 256GP510A, 256GP710A, 256MC510A, 256MC710A
06GS001, 06GS101A, 06GS102A, 06GS202A, 09GS302
16GP101, 16GP102, 16MC101, 16MC102
32GP101, 32GP102, 32GP104, 32MC101, 32MC102, 32MC104
dsPIC33EP32GP502, 32GP503, 32GP504
32MC202, 32MC203, 32MC204, 32MC502, 32MC503, 32MC504
64GP502, 64GP503, 64GP504, 64GP506
64MC202, 64MC203, 64MC204, 64MC206, 64MC502, 64MC503, 64MC504, 64MC506
128GP502, 128GP504, 128GP506
128MC202 ,128MC204, 128MC206, 128MC502, 128MC504, 128MC506
256GP502, 256GP504, 256GP506
256MC202 ,256MC204, 256MC206, 256MC502, 256MC504, 256MC506
512GP502, 512GP504, 512GP506
512MC202 ,512MC204, 512MC206, 512MC502, 512MC504, 512MC506
256MU806, 256MU810, 256MU814
512GP806, 512MC806, 512MU810, 512MU814
PIC24対応リスト
PIC24FJF04KA200, F04KA201, F08KA101, F08KA102, F16KA101, F16KA102
F16KA301, F16KA302, F16KA304, F32KA301, F32KA302, F32KA304
FV16KA301, FV16KA302, FV16KA304, FV32KA301, FV32KA302, FV32KA304
F04KL100, F04KL101, F08KL200, F08KL201, F08KL301, F08KL302, F08KL401, F08KL402, F16KL401, F16KL402
F08KM101, F08KM102, F08KM202, F08KM204, F16KM102, F16KM104, F16KM202, F16KM204
16GA002, 16GA004
32GA002, 32GA004
32GA102, 32GA104
48GA002, 48GA004
64GA002, 64GA004, 64GA006, 64GA008, 64GA010
96GA006, 96GA008, 96GA010
128GA006, 128GA008 ,128GA010
64GA106, 64GA108, 64GA110
128GA106, 128GA108 ,128GA110
192GA106, 192GA108 ,192GA110
256GA106, 256GA108 ,256GA110
64GB106, 64GB108 ,64GB110
128GB106, 128GB108 ,128GB110
192GB106, 192GB108 ,192GB110
256GB106, 256GB108 ,256GB110
32GA102, 32GA104
32GB002, 32GB004
64GA102, 64GA104
64GB002, 64GB004
128DA106, 128DA110, 128DA206, 128DA210
256DA106, 256DA110, 256DA206, 256DA210
128GB206, 128GB210
256GB206, 256GB210
64GA306, 64GA308, 64GA310
128GA306, 128GA308, 128GA310
64GC006, 64GC008, 64GC010
128GC006, 128GC008, 128GC010
64GA202, 64GA204
64GB202, 64GB204
128GA202, 128GA204
128GB202, 128GB204
16MC101, 16MC102
32MC101, 32MC102, 32MC104
PIC24HJ 12GP201, 12GP202
16GA002, 16GA004, 16GP304
32GP202, 32GP204, 32GP302, 32GP304
64GP202, 64GP204, 64GP206(A), 64GP210(A), 64GP502, 64GP504, 64GP506(A), 64GP510(A)
128GP202, 128GP204, 128GP206(A), 128GP210(A) ,128GP306(A), 128GP310(A), 128GP502, 128GP504, 128GP506(A), 128GP510(A)
256GP206, 256GP210, 256GP610
256GP206A, 256GP210A, 256GP610A
PIC24EP 32GP202, 32GP203, 32GP204
32MC202, 32MC203, 32MC204
64GP202, 64GP203, 64GP204, 64GP206
64MC202, 64MC203, 64MC204, 64MC206
128GP202, 128GP204, 128GP206
128MC202 ,128MC204, 128MC206
256GP202, 256GP204, 256GP206
256MC202 ,256MC204, 256MC206
512GP202, 512GP204, 512GP206
512MC202 ,512MC204, 512MC206
256GU810, 256GU814
512GP806, 512GU810, 512GU814
dsPIC未対応リスト
PIC24FGX4xx,GA6xx,GX7xx2018-03-13現在
PIC24Hなし2018-03-13現在
PIC24Eなし2018-03-13現在
dsPIC30Fなし2018-03-13現在
dsPIC33Fなし2018-03-13現在
dsPIC33CHxxMP2019-01-15現在
dsPIC33CKxxMP2019-01-15現在
dsPIC33EPxxGM,xxGS2018-03-13現在
dsPIC33EVxxGM2018-03-13現在
主に未出荷製品で情報不足のためです。
Atmel AVR 対応リスト
AT90S1200, 1200A
2313, 2323, 2333, 2343
4414, 4433, 4434
8515, 8535
ATtiny12, 13, 13A, 15
22, 24, 24A, 25, 26
43U, 44, 44A, 45, 48
84, 84A, 85, 87, 88, 167
261, 261A, 461, 461A, 861, 861A
2313, 2313A, 4313
828
441, 841
1634
ATmega8, 8A, 16, 16A, 32, 32A, 48, 48A, 48P, 48PA, 64, 64A, 88, 88A, 88P, 88PA
103, 128, 128A, 161, 162, 163
164A, 164P, 164PA, 165, 165A, 165P, 165PA, 168, 168A, 168P, 168PA, 169, 169A, 169P, 169PA
323, 324A, 324P, 324PA, 325, 325A, 325P, 325PA, 328, 328P, 329, 329A, 329P, 329PA
640, 644, 644A, 644P, 644PA, 645, 645A, 645P, 649, 649A, 649P
1280, 1281, 1284, 1284P
2560, 2561
3250, 3250A, 3250P, 3290, 3290A, 3290P, 3290PA
6450, 6450A, 6450P, 6490, 6490A, 6490P
8515, 8535
8U2, 16U2, 32U2
16U4, 32U4
16M1, 32M1, 64M1, 32C1, 64C1
Atmel AVR 未対応リスト
(2023-03-13現在)
AT90C8534パラレル書き込みのため
ATtiny4TPI書き込みのため
ATtiny5TPI書き込みのため
ATtiny9TPI書き込みのため
ATtiny10TPI書き込みのため
ATtiny11HVSP書き込みのため
ATtiny19リリースされなかったため
ATtiny20TPI書き込みのため
ATtiny28HVPP書き込みのため
ATtiny40TPI書き込みのため
ATmega83リリースされなかったため
ATmega85リリースされなかったため
ATmega164リリースされなかったため
ATmega324リリースされなかったため
ATmega406HVPP書き込みのため
ATmega603リリースされなかったため
AT90CAN未定
AT90PWM未定
AT90USB未定
ATtiny102,104TPI書き込みのため

UPDIの AVR 対応リスト
tinyAVR-0202, 204, 402, 404, 406, 804, 806, 807, 1604, 1606, 1607
tinyAVR-1212, 214, 412, 414, 416, 417, 814, 816, 817, 1614, 1616, 1617, 3216, 3217
tinyAVR-2424, 426, 427, 824, 826, 827, 1624, 1626, 1627, 3224, 3226, 3227
megaAVR-0808, 809, 1608, 1609, 3208, 3209, 4808, 4809
AVR-DA32DA28, 32DA32, 32DA48, 64DA28, 64DA32, 64DA48, 64DA64, 128DA28, 128DA32, 128DA48, 128DA64
AVR-DB32DB28, 32DB32, 32DB48, 64DB28, 64DB32, 64DB48, 64DB64, 128DB28, 128DB32, 128DB48, 128DB64
AVR-DD16DD14, 16DD20, 16DD28, 16DD32, 32DD14, 32DD20, 32DD28, 32DD32, 64DD14, 64DD20, 64DD28, 64DD32
AVR-EA8EA2, 8EA32, 16EA28, 16EA32, 16EA48, 32EA28, 32EA32, 32EA48, 64EA28, 64EA32, 64EA48
AVR-EB16EB14, 16EB20, 16EB28, 16EB32
UPDIの AVR 未対応リスト
(2024-01-13現在)
ATxmegaPDI書き込みのため
AVR32EB未定

PIC32ファミリ,SAMファミリに対応しない理由

■対応OS

USB機能を標準搭載しているOSが必要です。 動作確認は 10, 11 で行っています。

■使用例

PICerFTとターゲットデバイスをICSP接続します。USB端子はミニBです。AE-UM232R上のピンでターゲット用電源(5V/3.3V)を切り替えます。
あえて表面実装部品を使用していないため、製作が容易です。

専用アダプタ(非売品) PIC用アダプタ(80mm x 100mm)
備考
8P2IC1,IC2 8ピンソケット(300mil)
14P2IC3,IC10 14ピンソケット(300mil)
18P1IC4 18ピンソケット(300mil)
20P2IC5 IC11 20ピンソケット(300mil)
28P1IC6 28ピンソケット(300mil)
28PW1IC7 28ピンソケット(600mil)
40PW2IC8,IC9 40ピンソケット(600mil)
3mm1LED1 赤
1k1R1 カーボン皮膜抵抗(小型1/6W)
10k4R2,R3,R4,R5 カーボン皮膜抵抗(小型1/6W)
6pin2J1,J2 ピンヘッダー

dsPIC用アダプタ(80mm x 100mm)
備考
14P1IC8 14ピンソケット(300mil)
18P2IC1,IC5 18ピンソケット(300mil)
20P1IC6 20ピンソケット(300mil)
28P2IC2,IC7 28ピンソケット(300mil)
40PW2IC3,IC4 40ピンソケット(600mil)
3mm1LED1 赤
1k1R1 カーボン皮膜抵抗(小型1/6W)
10uF1C1 積層セラミックコンデンサ
6pin2J1,J2 ピンヘッダー
3pin1J3 ピンヘッダー
2pin1ジャンパーピン
ジャンパー
VPPdsPIC30用設定
MCLRdsPIC30 SMPS,dsPIC33,PIC24用設定

Atmel用アダプタ(80mm x 100mm、ISP)
備考
8P1IC1 8ピンソケット(300mil)
14P1IC2 14ピンソケット(300mil)
20P2IC3,IC4 20ピンソケット(300mil)
28P1IC5 28ピンソケット(300mil)
40PW2IC6,IC7 40ピンソケット(600mil)
3mm1LED1 赤
1k1R1 カーボン皮膜抵抗(小型1/6W)
7pin1J1 ピンヘッダー
6pin1J2 ピンヘッダー

AVR用アダプタ(80mm x 100mm、UPDI)
備考
8P1IC1 8ピンソケット(300mil)
14P2IC2,IC6 14ピンソケット(300mil)
20P2IC3,IC7 20ピンソケット(300mil)
28P1IC4 28ピンソケット(300mil)
40PW1IC5 40ピンソケット(600mil)
3mm1LED1 赤
1k1R1 カーボン皮膜抵抗(小型1/6W)


■外部ピン配置

対象デバイスとの具体的な接続方法はICSP接続方法をご覧ください。
※PGC=ICSPCLK、PGD=ICSPDATと読み替えてください。
I/OPIC用ICSP
OVPP
OVDD
-VSS
I/OPGD
OPGC
OMCLR
I/OATMEL用ISP
ORST
OCLK
-GND
OVCC
OSCK
IMISO
OMOSI
I/OAVR用UPDI
-N/A
-N/A
-GND
OVDD
-N/A
I/OUPDI
-N/A
ATMEL用ISPのCLKはXTAL1用のクロックです。供給されているなら接続不要です。

J1
J1Vpp電圧切り替え
オープン12.5V
ショート9.0V
JP1
JP1Vdd電圧切り替え
1-2間ショート3.3V
2-3間ショート5.0V(VCC)
JP2
JP2デフォルトはショート
ショートUSBバスパワー供給
オープン外部(VCC)パワー供給

参考
PIC用ICSPConnect前Connect後
VPP12/9V0V
VDD0V0V
VSS--
PGD5/3.3V0V
PGC5/3.3V0V
MCLR0.8V0V
ATMEL用ISPConnect前Connect後
RST0.8V0V
CLK(6MHz)(6MHz)
GND--
VCC0V0V
SCK5/3.3V0V
MISO5/3.3V0V
MOSI4.5/2.8V0V


■使用方法

  1. FT232Rモジュールを選択し、接続(Connect)します。複数のFT232RモジュールがPCに接続されていることを想定しています。
    FT232Rモジュールに振られたFixed Serial Numberで識別されます。複数のFT232Rモジュールを自動的に検出します。
    検出しない場合、ソフトウェアを再起動してください。(プラグアンドプレイに対応したため、再起動不要になりました。約5秒で認識します。)
  2. メニューの一覧です。
    • LFタイプ用設定(Wide Vdd)
    • 書き込み前にチップ消去(Erase before writing)
    • 書き込み後に照合(Verify after writing)
    • 拡張ICSP(Enhanced ICSP for dsPIC)
  3. 接続(Connect)すると操作可能になります。(latency=1ms以外の場合はFT232Rドライバを設定してください。)
  4. 書き込み方式を選択します。
    • 書き込み方式がわからない場合は選択後にデバイスのリストを確認します。
    • どの書き込み方式を選択すればよいかわかります。
    • ※Detectは選択した書き込み方式でのみ行います。
    • ※リストにないデバイスを検出しません。
    • "NoDeviceId ICSP"
    • "16F ICSP"
    • "16F ICSP(LSb first)"
    • "16F ICSP(MSb first)"
    • "18F ICSP(LSb first)"
    • "18F ICSP(MSb first)"
    • "dsPIC30"
    • "dsPIC33F/PIC24F/PIC24H"
    • "dsPIC33E/PIC24E"
    • "AVR ISP"
    • "AVR UPDI"
    • "AVR UPDI HVA"
  5. デバイスを選択するか自動検出(Detect)します。
    • チップ消去(Erase)
    • ブランクチェック(Check)
    • 書き込み(Write)、ファイル選択ウィンドウで書き込むHEXファイルを選択します。
    • 読み込み(Read)、チップの内容を読み出しファイルにします。
  6. ドラッグアンドドロップ機能
    書き込み可能な状態で、HEXファイルをドロップすると書き込みを開始します。
Optionの解説 使い方のまとめ
  1. 接続(Connect)する
  2. 書き込み方式を選択する
  3. 自動検出(Detect)する
  4. 書き込む(Write)

■動作確認手順

  1. 配線の確認
    • PICerFTの配線間違いがないか確認してください。
    • ICSPの接続間違いがないか確認してください。
    • VPPとMCLRのどちらを接続しましたか?その接続は正しいですか?
    • 思い込みを捨てて、何度も確認してください。
  2. 電源電圧VDDの確認
    • AE-UM232R上のJP1で設定します。
    • PICのデータシートでVDD電圧範囲を確認し、3.3Vか5Vを選択しましたか?
    • LFタイプは3.3Vしか選択できません。
    • どちらも選択できる場合、5Vを選択してください。
    • VDD=5Vにしないと消去できない場合があります。
    • ※PICは電源電圧不足になるとフラッシュメモリ(NVM)を消去できません。
    • ※3.3Vでは消去できないことがあります。
  3. 書き込み電圧VPPの確認
    • PICerFT上のJ1で設定します。初期設定はショートです。
    • PICのデータシートでVPP電圧範囲を確認し、9Vか12Vを選択しましたか?
    • ※ICSPでMCLRを接続しているなら設定不要です。
    • ※FT232Rからクロック供給しないとVPP電圧を発生しません。
    • ※この設定はPICerFTが自動でFT232R内部のEEPROMを書き換えて行います。
    • ※一度PICerFTで[Connect]しないと行われません。
    • ※USBを再接続すると設定が反映され、クロック供給を開始します。
    • コツ
    • Vpp=9.0を初期設定(デフォルト)にしてください。
    • 12.5Vを必要とする場合であってもVdd+3.5以上あれば動作するからです。
    • 一部(16F84A,16F5x,16F7xなど)は12V以上を必要とします。
  4. FTDIの動作確認
    • FTDIのドライバをインストールしましたか?
    • FTDIのシリアル番号を認識したら[Connect]を実行します。
    • FT232Rの偽物を使っていると"Reconnect USB cable!"を繰り返し、これ以上先に進めません。
    • ※偽物はFT232R内部のEEPROMを書き換えられないためです。
    • ※嫌がらせをしているわけではありません。
    • ※FT232Rの内部設定を行わないと動作しないからです。
    • ※[Connect]時にFT232Rの内部設定を確認します。
  5. PICの検出確認
    • [Detect]を実行し、PICを検出しましたか?
    • 書き込み方式は正しいですか?
    • 検出できない場合、配線(ICSP接続を含む)を確認してください。
    • PGCやPGDに余計な回路を接続しないでください。信号が邪魔されます。
    • 原則としてICSP端子(PGCとPGD)を回路と兼用してはいけません。ICSPの基本です。
    • 勘違いが多いのですが、ICSPとは回路の兼用ではありません。兼用したいなら考慮した設計が必要です。
    • VPPに12Vがかかります。何も考えずに回路を兼用していると12Vで回路を壊します。
    • ※ICSP:In Circuit Serial Programming とは基板に組み込んだままプログラムを書き込む方法。
    • 指定以外の部品を使っていたら、指定を守ってください。
    • 検出が不安定な場合、トランジスタのEとCを取り違えている可能性もあります。
    • ジャンパーピンの接触不良の可能性もあります。
    • ※電源VDDに大容量のコンデンサを接続している可能性もあります。
    • ※VDDの立ち上がり時間が長くなり、書き込みモードに入れません。
    • 動かない可能性をすべて排除してください。
  6. PICの消去確認
    • [Erase]を実行し、[Check]を実行します。
    • エラーなら正しく消去できないため、正しく書き込みできません。
    • VDD=5Vにしないと消去できない場合があります。
    • USB電源電圧が低い可能性もあります。
素直になろう、失敗経験は進歩の糧 実に興味深い ちょっと補足 初心者以前の話

■データシートの確認方法

  1. データシートの入手方法
    • PIC16F18313を例にします。
    • https://www.microchip.com/en-us/product/pic16f18313
    • Documentationにデータシート(pdf)があります。
    • 型番を変更するだけです。例、pic16f18313からATmega4809に変更します。
    • ※技術者には情報収集能力も求められます。
    • ※自分で公式の情報を収集できなければなりません。
    • ※噂話や嘘に惑わされてはいけません。
  2. 書き込み電圧VPPと電源電圧VDDの確認方法
    • データシートの Electrical Specifications 章で確認します。
    • 表の中を探して下さい。
    • VDD Min=2.5V Max=5.5V(FOSC>16MHz)
    • VIHH Min=8V Max=9V
    • ※別のデータシート、Programming Specificationでも確認できます。
  3. ICSP端子の確認方法
    • データシートのPin Diagramsで確認します。
    • VPPがあれば使用します。なければMCLRを使用します。
    • ※正確には高電圧書き込み方式ならVPP(12V/9V)を使用し、低電圧書き込み方式ならMCLR(5V/3.3V)を使用します。
    • ※PGC=ICSPCLK、PGD=ICSPDATと読み替えてください。Microchipがあとになって名称変更しました。
  4. ICSP接続方法
    • 別のデータシート、Programming Specifications(pdf)で確認します。
    • AVRはデータシートのProgramming 章で確認します。

■補足

ATMELの書き込みについて補足します。
  1. ATMEL用EEPROMについて
    • ATMELのデータ領域は.eepファイルに保存されます。
    • そのため、書き込む.hexファイルと同じディレクトリに .eepファイルがあれば同時に書き込みます。なければ書き込みません。
  2. ATMEL用フューズについて
    • ATMEL用のフューズ情報は.hexファイルに保存されていません。
    • そのため独自仕様として、.cfgファイル(テキスト形式)を用意することとしました。
    • 書き込む.hexファイルと同じディレクトリに .cfgファイルがあれば同時に設定します。なければ設定しません。
    • フューズのみを設定できませんが、同一の.hexファイルを上書きすればそれと同様の効果があります(あるいは空の.hexファイルを用意)。
    • メモ帳でこのファイル(同一ファイル名.cfg)に記述し、フューズを指定します。
    • 指定できる内容はATMELの種類によって異なります。詳しくはサンプルファイル(atmel.cfg)をご覧ください。
    • ※これには理由があります。
    • ※PICと異なり、ATMELのフューズを書き換える機会は稀です。初期設定のまま使うことが多いです。
    • ※そのためコンパイル時にフューズ情報をあえて保存しないようにしています。
    • ※実はコンパイルオプションでフューズ情報を省略しています。
    • ※フューズ情報をあえてhexファイルに出力しないようにしています。
    test.cfgファイルの例(test.hex用フューズ指定)
               LOCK=3
               RCEN=0
             
    • セミコロン ";" 以降はコメントとみなし読み飛ばします。
    • 一行に1つの LOCK あるいは FUSE を記述します。
    • 複数指定する場合、複数行にわけて記述します。順序は問いません。
  3. ATMELのLOCKはチップ消去すると初期化されます。
  4. ATMELのフューズはチップ消去しても初期化されません。 そのためフューズの中には一旦設定してしまうと PICerFT で書き込みできなくなるものがあります。 一度この状態に陥ると PICerFT で復旧させることができません。 パラレル方式の書き込みで復旧させることができます。
  5. ご注意:RSTDISBL=0 を設定すると PICerFT で書き込みできなくなります。
  6. ご注意:PLLCK=0 を設定すると PICerFT で書き込みできなくなります。
  7. PICerFT(Low Voltageシリアル方式)はSPIENを変更できません。
  8. 自動検出(Detect)でフューズ情報を確認できます。

■UPDI対応

UPDI対応について説明します。
  1. ハードウェアの変更
    • UPDI対応のためにピンを変更します。
    • (9)DCD#から(2)DTR#に変更します。
    • 写真は修正例です。
  2. ソフトウェアの変更
    • PICerFT 7.4からUPDI対応です。
    • 「書き込み方式」から "AVR UPDI" を選択します。
  3. ソフトウェアとハードウェアの組み合わせ
    PICerFT 7.4未満UPDI非対応ハードウェア
    PICerFT 7.4以降UPDI対応ハードウェア、UPDI非対応ハードウェア
    • PICerFT 7.4以降はUPDI非対応ハードウェアでも動作します。
    • 単にUPDI書き込みできないだけです。
    • UPDIを利用しないなら、無理してハードウェアを修正する必要はありません。
  4. UPDIの接続
    • 対象デバイスとの具体的な接続方法はICSP接続方法のAVRのUPDI概要をご覧ください。
  5. EEPROM書き込み
    • *.hex と同じ名前の*.eepファイルがあれば書き込みます。ファイルがなければ書き込みません。
  6. FUSE設定
    • 設定できる FUSE は avr.cfg ファイル(テキスト)を参照ください。
    • *.hex と同じ名前にコピーします。
    • *.cfgファイルがあれば、FUSE を設定します。ファイルがなければ設定しません。
  7. LOCKBITの注意点
    • LOCKBITを設定すると Detect もできなくなります。
    • Erase でLOCKBITを解除できます。
    • このとき FUSE も消去されることもあるため、FUSEの再設定が必要かもしれません。
  8. ATtinyはGPIO/UPDI/RESET端子を共有しています。デフォルトはUPDIです。 UPDI以外(RSTPINCFG=1以外)に一旦設定してしまうと UPDI方式で書き込みできなくなります。 UPDI HVA方式の書き込みで復旧させることができます。
UPDIに対応した理由

■UPDI HVA対応

UPDI HVA対応について説明します。
  1. ハードウェアの変更
    • 要望の多いUPDI High Voltage Activationです。
    • ピン数の少ないAVRではGPIO/UPDI/RESET端子を共有しています。
    • そのため、UPDIをGPIOとして使用するケースがあります。
    • ところが一旦、GPIOとして設定するとUPDIとして機能しないため、書き込み不能に陥ります。
    • 特別にUPDIを有効にする方法がUPDI HVA方式です。
    • 2種類あります。
    • tinyAVR-0/tinyAVR-1/tinyAVR-2用(12V)
    • AVR-DD/AVR-EA/AVR-EB用(9V)※まだ暫定資料のため確定情報ではありません。
    • なおmegaAVR-0/AVR-DA/AVR-DBにUPDI HVA方式はありません。高電圧を適用すると壊れます。
    • 12V/9Vを必要とする特殊な方式です。
    • 12V/9Vのパルスを規定したタイミングで与える必要があります。
    • UPDI HVA対応した専用回路です。
    • 通常のPICerFTの回路と異なります。
    • UPDI/RESET端子は内蔵プルアップとして機能するため、ノイズに弱いです。
    • UPDI/RESETに余計な回路を接続しないでください。
    • ※FUSEの書き換えに失敗するとDetectできなくなります。
    • ※Eraseを試してください。可能ならFUSEを初期値に戻します。
    • ※なお、UPDI端子を変更するとその直後からUPDI方式で残りのFUSEを書き換えできずエラーを発生します。
    • ※UPDI端子の変更を伴うときはUPDI HVA方式を使用してください。
    • D1,D2,D3はショットキーダイオード(SD103A,BAT43)が望ましいです。
    PICerFT rev2からの変更点
    -tinyAVR-0/tinyAVR-1/tinyAVR-2AVR-DD/AVR-EA/AVR-EB
    VPP電圧Z1=12VZ2=9V
    VPP接続UPDIRESET
    RST接続RTS#RTS#
    R7位置変更位置変更
    R8なしプルアップ
    D2/D3追加追加

  2. UPDI HVA tinyAVR専用(表面=部品面)


    UPDI HVA AVR専用(表面=部品面)

  3. ソフトウェアの変更
    • ※Connect実行後にUPDI接続することが望ましいです。
    • ※Connect実行前はFTDIの初期状態でVPP電圧を出力します。高電圧を出力したままUPDI接続するのは好ましくありません。
    • PICerFT 8.0からUPDI HVA対応です。
    • 「書き込み方式」選択を追加しました。
    • "AVR UPDI HVA"を選択してください。
    • 検出は選択した「書き込み方式」で行います。
    • ※この回路は"AVR UPDI"としても使用できます。
  4. その他の条件
    • UPDIと同じです。

■ログ機能

Ver 7.6bからログ機能を追加しました。

■更新確認

Ver 7.8から更新確認を追加しました。 インターネット通信について

■開発中

開発中の様子です


■制限事項

(1)Detect不可能なPIC(DeviceIDを持たないPIC)
PIC10F200, 202, 204, 206, 220, 222
PIC12F508, 509, 510
PIC16F54, 57, 59, 505, 506

(2)Detect不可能なPIC(DeviceIDが重複しているため)
PIC16F8384
PIC16F636639
PIC18F2422439
PIC18F2522539
PIC18F4424439
PIC18F4524539
PIC18F86J7266J93
PIC18F87J7267J93

(3)Detect不可能なATMEL(DeviceIDが重複しているため)
AT90S1200AT90S1200A

(4)チップ消去は一般的に Vdd=5V のみで可能
Vdd=5Vを選択できる場合、Vdd=3.3V ではチップ消去できません。
(Vdd=3.3Vのみのデバイスを除く)

(5)dsPIC30 SMPS(dsPIC30F1010,2020,2023)は拡張ICSP方式に対応していません。
標準ICSP方式をご利用ください。

(6)PIC24FxxKA/KL/KMは拡張ICSP方式に対応していません。
標準ICSP方式をご利用ください。

(7)PIC24EPxxGU,dsPIC33EPxxMUのAuxiliary Program書き込みに対応していません。

(8)PICライタから大きな電源電流(VDD)を供給できません。
そのため消費電力の大きい周辺回路を駆動できません。消費電力が小さいなら駆動できます。
書き込み時は周辺回路を切り離すなり対処が必要です。

(9)深すぎるディレクトリで動作しません。
文字列バッファの制限があるためです。
PICerFT.exe や *.hex ファイルを深すぎるディレクトリに配置しないでください。

(10)漢字のディレクトリを避けてください。
漢字に依存しないようにしていますが、思いもしないところで引っかかるかもしれません。
技術者なら漢字のディレクトリを避けるのは当たり前です。
最近はこうした常識を誰も教えないようです。
※WindowsはANSI(ShiftJIS)とUnicode(UTF8)の混在した環境にあり、単純な話ではありません。
※Windows APIも漢字の扱いが複雑です。

(11)Detectの副作用
Ver 8.0で解決。書き込み方式の追加で解決しました。
18FのNVMシリーズ(KシリーズやQシリーズ)でDetect直後、アドレス0000に何かを書き込む誤動作があります。
旧18Fシリーズの検出が先に行われ、その際の誤動作です。
「消去、検出、読み込み」の順でを行うと、再現します。「検出、消去、読み込み」の順で違いが判ります。
旧18Fシリーズの自動検出を廃止すれば解決できますが、支障がないためこのままとします。
書き込み後に「検出」しないでください。

(12)Detectの誤認
Ver 8.0で解決。書き込み方式の追加で解決しました。
便利な自動検出ですが、複雑なプログラム処理をしています。そして処理の限界があります。
非常にまれな確率で、18FのNVMシリーズ(KシリーズやQシリーズ)を誤認します。
原因は16FのNVMと18FのNVMがあり、読み取り方式が同じためです。
16Fを先に調査するため、(18Fの16Fに相当する場所の)DEVICE IDを誤認しまうことがあります。
「デバイスを再選択、消去」すれば回復します。

(13)SAFLOCK
18FxxQ20はコンフィグレーションにSAFLOCKを持ちます。
SAFLOCKを0:enableにするとこれを消去できません。enableにしないでください。
特殊な手続きが必要です。後ほど対応を考えます。


■よくある質問

ちょっとその前に 新しいデバイス(あるいは未対応のデバイス)の対応予定はありますか? これから使おうとしています。 動かないという方へ 問い合わせの前に 問い合わせについて 一時的な不安定はある 確認する習慣を身に着ける 地道な努力が必要 VPP電圧を出力しない FTDIのドライバの動きがおかしいときの対処方法は? 動かない。 動かない。 動かない。 動かない。 読みだせない。 動かない。指示に従わない。 Detectで"エラー:DeviceIDなし"と表示する。 Verifyで"エラー:正しく書き込めません。"と表示する。 Detectで認識しない。 ご注意 USBのセレクティブサスペンド機能

■FT232RLの偽物


■PICkit3の偽物


■PICkit3の修正、修理


■PL2303の偽物


■バグ修正例

PIC12F1501 PIC18F25K80

■ご協力のお願い

開発支援 新しいデバイス発表の情報提供 新しいデバイスの寄付 開発事情 「無償の代償」「無償からの勘違い」

■モチベーション

開発へのやる気 子供に教育の機会を 将来に希望を ご年配へ

■ダウンロード

事前準備1 事前準備2

■履歴

Versiondate備考
8.012024-04-18表示修正、ファイル出力修正
8.002024-04-14UPDI HVA対応、デバイス対応(16F131xx)
7.942024-03-28バグ修正(ログ機能)
7.932024-02-08デバイス対応(16F171xx, 16F180xx, 16F181xx)
7.922024-02-07デバイス対応(18FxxQ40, 18FxxQ41, 18FxxQ71, 18FxxQ20)
7.912024-02-01バグ修正(18FxxQxx)
7.92024-01-13デバイス対応(AVR-DA,AVR-DB,AVR-DD,AVR-EA,AVR-EB)
7.82023-07-15デバイス対応(ATtiny828,441,841,1634)、バグ修正(16F1933)、レジストリ変更
7.72023-03-13デバイス対応(16F152xx, tinyAVR-2)、FUSE字句解析
7.6b2022-11-08ログ機能追加
7.6a2022-01-20表示内容の整理
7.62021-10-02デバイス対応(18FxxQxx)
7.52021-05-05デバイス対応(tinyAVR-0, tinyAVR-1, megaAVR-0)
7.42021-04-24UPDI対応
7.3a2021-03-18バグ修正(12F1501)
7.32021-03-10ATMELのEEPROM読み出しを$PICer$.eepに分離
7.22019-01-15デバイス対応(18FxxK40, 18FxxK42, 18FxxK83)
7.12018-03-14デバイス対応(16F177x, 16F184xx, 16F191xx)
7.02017-05-16デバイス対応(16F188xx, 16F153xx)、新書き込み方式対応のため大改修
6.92016-05-01デバイス対応(16F707, 16F753)
6.82015-09-01新デバイス対応(16F157x, 16F176x, 16F183xx)
6.72014-11-30FTDIチップ内部の初期設定を自動化
6.62014-09-08新デバイス対応(24FJxxMC, 33FJxxGS1/GP1/MC1, 24EPxxGU, 33EPxxMU)
6.52014-09-02新デバイス対応(16LF155x, 16F161x, 16F171x, 24FxxKL/KM)
6.42014-08-29拡張ICSPのタイミング調整、その他修正
6.32014-03-15デバイス対応(16F170x)、デバイス対応(18FxxJ94)
6.22013-03-04新DeviceID対応、デバイス対応(18FxxK50)
6.12013-01-13バグ修正(ATmega328)
6.02012-08-15デバイス対応(dsPIC33E/PIC24E)
5.9a2012-06-06atmel.cfgのコメントを拡張
5.92012-03-15新デバイス対応(PIC16F145x,PIC16F178x)
5.82012-02-28バグ修正(PIC12F1840)、デバイス対応(10F320,10F322)
5.72011-11-04バグ修正(PIC16F1825)
5.62011-08-16PIC18FのEEPROM書き込みバグ修正
5.52011-02-10新デバイス対応(ATtiny,ATmega)
5.42010-09-20ドラッグアンドドロップ機能追加、プラグアンドプレイ対応
5.32010-09-06新デバイス対応(PIC16F15xx)
5.22010-07-03新デバイス対応(PIC24FJxxxDAxxx)
5.12010-03-30Windows 7での動作不良修正
5.02010-03-14リリース

■USB変換IC比較

FT232RFT245RFT2232DFT231XFT232H
USB 2.0 Full Speed(12Mbps)USB 2.0 Full Speed(12Mbps)USB 2.0 Full Speed(12Mbps)USB 2.0 Full Speed(12Mbps)USB 2.0 Hi Speed(480Mbps)
IO電圧範囲1.8から5VIO電圧範囲1.8から5VIO電圧範囲1.8から5VIO電圧範囲1.8から3.3VIO電圧範囲1.8から3.3V
UART 3Mbpsの通信速度FIFO 1Mbyteの通信速度UART 3Mbpsの通信速度
FIFO 1Mbyteの通信速度
UART 3Mbpsの通信速度UART 12Mbpsの通信速度
BitBang 1Mbpsの通信速度BitBang 1Mbpsの通信速度BitBang 1Mbpsの通信速度BitBang 1Mbpsの通信速度BitBang
MCP2221AMCP2210
USB 2.0 Full Speed(12Mbps)USB 2.0 Full Speed(12Mbps)
IO電圧範囲3.3から5VIO電圧範囲3.3から5V
UART 460kbpsの通信速度
I2C 400kbpsの通信速度
SPI 12Mbpsの通信速度
GPIOGPIO

■FTDIの基本動作確認

以下は開発時のメモです。
FT232RのSynchronous Bit Bang (同期)モードの実際の動きです。 クロックは Baud rate 設定の 16 倍となります。計算上は以下の通りです。
ところが実際には1Mbps程度(1us)を境に制限を受け、計算と実際が食い違います。これはFT232Rの仕様によります。
FT232RはPCとUSBのFull Speed(12Mbps)で通信するため、 当然のことながら、FT232Rの出力が12Mbpsを超えることはありません。
FT232Rの処理能力は1Mbpsまでは設定通りに動作しますが、それ以上は2Mbps,3Mbpsの2つを例外的に設定できます。
これで辻褄があいました。
High Speed(480Mbps)対応のFT232Hが発売されましたが、Synchronus Bit Bangモードの基準クロックは12Mbpsであり、FT232Rの4倍であることがわかりました。
書き込み待ち時間があるため、このままFT232Hに置き換えても劇的に改善されないことがわかりました。
Synchronous 245 parallel FIFO mode に書き換えないと40Mbpsになりません。
もっともFT232HのIOは5V Tolerantであるものの5V出力ができません。回路を見直す必要もあります。
いずれにしても、FT232Rのハードウェア的にはこれが性能限界という見極めがつきました。
Baud rate計算上のパルス実際のパルス
96009600x16=6.51us6.43us
1920019200x16=3.26us3.28us
3840038400x16=1.63us3.2us
5760057600x16=1.09us1.14us
115200115200x16=0.542us1.15us
230400230400x16=0.271us1.1us
460800460800x16=0.136us1.1us
921600921600x16=0.0678us0.72us
18432001843200x16=0.0339us0.52us
(Baud rate = 460800)最小パルスは1.1us=0.91Mbps
(Baud rate = 921600)最小パルスは0.72us=1.39Mbps
(Baud rate = 1843200)最小パルスは0.52us=1.92Mbps

■書き込み時間テストサンプル

全エリアを書き込む場合の時間(EEPROM書き込み、Verifyを含む)を計測してみました。PCの性能にもよるため、あくまで参考データです。
通常は部分書き込みをするため(不要な部分を書き込まない)、これは最悪ケースです。通常はこれ以下の時間で書き込みを完了します。
dsPIC/PIC24ではEnhanced ICSPに対応しました。例によって、microchipの書き込み仕様のままでは動作しません。
少しおまじないが必要でした。まだ、dsPIC30F SMPS(dsPIC30F1010,2020,2023)のみうまく動作しません。
Enhanced ICSPではExecutive Programを事前にStandard ICSPで書き込むため、余分に20から30秒必要です。
(Windows Vista Core 2 T5500 1.66GHz)
PICKwordssec
10F2060.54
12F50917
12F629113
12F683211
16F5728
16F6282?
16F628A217
16F648A443
16F6884?18
16F76840
16F77840
16F84A116
16F88417
16F81929
16F87781:07
16F877A826
18F252161:36
18F258161:36
18F452161:37
18F458161:37
18F2320429
18F2550161:06
18F4320429
18F4520161:05
18F4550161:06
18F872264?
dsPIC(Standard ICSP)Kwordssec
dsPIC30F101021:04
dsPIC30F202042:08
dsPIC30F201142:08
dsPIC30F201242:08
dsPIC30F301284:26
dsPIC30F301384:30
dsPIC30F4012168:42
PIC24FJ32GA002115:41
PIC24FJ64GA0022211:09
dsPIC(Enhanced ICSP)Kwordssec
dsPIC30F10102-:--
dsPIC30F20204-:--
dsPIC30F201140:33
dsPIC30F201240:33
dsPIC30F301280:52
dsPIC30F301380:52
dsPIC30F4012161:19
PIC24FJ32GA002111:05
PIC24FJ64GA002221:35
AVRKwordssec
AT90S120010:20
AT90S231320:39
AT90S232320:39
AT90S441441:16
AT90S443341:17
AT90S851582:37
AT90S853582:35
ATtiny1310:12
ATtiny2620:25
ATtiny231320:25
ATmega881:36
ATmega4840:49
ATmega6464?
ATmega8881:37
ATmega128128?
ATmega168163:00
ATmega664P6411:59

©2008-2024 All rights reserved by Einstein. inserted by FC2 system