<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.jackslab.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-cn">
		<id>http://wiki.jackslab.org/index.php?action=history&amp;feed=atom&amp;title=%E9%9D%A2%E5%8C%85%E6%9D%BF%E4%B8%8A%E7%9A%84%E8%87%B3%E7%AE%80_Arduino</id>
		<title>面包板上的至简 Arduino - 版本历史</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.jackslab.org/index.php?action=history&amp;feed=atom&amp;title=%E9%9D%A2%E5%8C%85%E6%9D%BF%E4%B8%8A%E7%9A%84%E8%87%B3%E7%AE%80_Arduino"/>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E9%9D%A2%E5%8C%85%E6%9D%BF%E4%B8%8A%E7%9A%84%E8%87%B3%E7%AE%80_Arduino&amp;action=history"/>
		<updated>2026-08-12T10:14:49Z</updated>
		<subtitle>本wiki的该页面的版本历史</subtitle>
		<generator>MediaWiki 1.19.2</generator>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=%E9%9D%A2%E5%8C%85%E6%9D%BF%E4%B8%8A%E7%9A%84%E8%87%B3%E7%AE%80_Arduino&amp;diff=2728&amp;oldid=prev</id>
		<title>Comcat：以“== 元器件 == &lt;br&gt; ATmega328p，TQFP32 封装，手头没有 PDIP 的 328p 就用这个了   文件:Nano-arduino-01.jpg   为了用杜邦线接插的方便，...”为内容创建页面</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E9%9D%A2%E5%8C%85%E6%9D%BF%E4%B8%8A%E7%9A%84%E8%87%B3%E7%AE%80_Arduino&amp;diff=2728&amp;oldid=prev"/>
				<updated>2014-06-25T09:17:01Z</updated>
		
		<summary type="html">&lt;p&gt;以“== 元器件 == &amp;lt;br&amp;gt; ATmega328p，TQFP32 封装，手头没有 PDIP 的 328p 就用这个了   &lt;a href=&quot;/%E6%96%87%E4%BB%B6:Nano-arduino-01.jpg&quot; title=&quot;文件:Nano-arduino-01.jpg&quot;&gt;文件:Nano-arduino-01.jpg&lt;/a&gt;   为了用杜邦线接插的方便，...”为内容创建页面&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== 元器件 ==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ATmega328p，TQFP32 封装，手头没有 PDIP 的 328p 就用这个了&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[文件:Nano-arduino-01.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
为了用杜邦线接插的方便，故将其先焊接在一小片转接板上&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[文件:Nano-arduino-02.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
焊好后，在面包板上加一个 16MHz 晶振外围电路即可，所需要的元件仅为：&lt;br /&gt;
&lt;br /&gt;
::1 个 16MHz 无源晶振&lt;br /&gt;
&lt;br /&gt;
::2 个 15pF 电容&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
电路如下：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[文件:Nano-arduino-osc.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
XTAL1, XTAL2 接晶振，再找一个 VCC 接 5V，GND 接地，即成一个极简系统&lt;br /&gt;
&lt;br /&gt;
ATmega328p 针脚定义为：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[文件:Atmega328p-TQFP32-pin.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
搭好的效果为：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[文件:Nano-arduino-04.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
白线连 5V，黑线连接 GND，极简系统即可工作&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bootloader 烧写 ==&lt;br /&gt;
&lt;br /&gt;
328p 的片子，可使用 /PATH/TO/arduino-1.0.1/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex&lt;br /&gt;
&lt;br /&gt;
这个 bootloader，烧写的过程可参考 [[Arduino bootloader 的烧写]]&lt;br /&gt;
&lt;br /&gt;
至于编程器的连线，可直接连片子的引脚，即：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
MISO  --&amp;gt; MISO&lt;br /&gt;
MOSI  --&amp;gt; MOSI&lt;br /&gt;
SCK   --&amp;gt; SCK&lt;br /&gt;
RESET --&amp;gt; RESET&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== arduino upload 测试 ==&lt;br /&gt;
&lt;br /&gt;
烧写有 arduino bootloader 的芯片安如下连接，就可以用 arduino 的开发环境直接上载程序了：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  将 FT232RL 板的 RX 串一个 1K 的电阻连 ATmega 的 TX&lt;br /&gt;
  TX 也要串一个 1K 的电阻连 ATmega 的 RX&lt;br /&gt;
  DTR 串一个 100nF 的电容连在 RESET&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
断电重启一下，一般即可像正常 arduino 板一样使用。对于命令行方式，可用如下命令测试是否成功：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
$ avrdude -C /d/arduino-1.0.1/hardware/tools/avr/etc/avrdude.conf -p m328p -c arduino -P COM27  -b 57600&lt;br /&gt;
&lt;br /&gt;
avrdude.exe: AVR device initialized and ready to accept instructions&lt;br /&gt;
Reading | ################################################## | 100% 0.00s&lt;br /&gt;
avrdude.exe: Device signature = 0x1e950f&lt;br /&gt;
avrdude.exe: safemode: Fuses OK&lt;br /&gt;
avrdude.exe done.  Thank you.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
对于已有 bootloader 的板子，avrdude 通过串口与板上的 ATmega328p 通信，实际为 avrdude 通过串口“命令”ATmega328p 对自身的 flash 进行编程，需要写入的数据也从串口传入&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
烧了一个在数字口 7、1s 闪一次 LED 的程序：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
$ avrdude -C /d/arduino-1.0.1/hardware/tools/avr/etc/avrdude.conf -p m328p -c arduino   \&lt;br /&gt;
          -P COM27  -b 57600 -D -U flash:w:Blink-7-1s.hex&lt;br /&gt;
&lt;br /&gt;
avrdude.exe: AVR device initialized and ready to accept instructions&lt;br /&gt;
&lt;br /&gt;
Reading | ################################################## | 100% 0.02s&lt;br /&gt;
&lt;br /&gt;
avrdude.exe: Device signature = 0x1e950f&lt;br /&gt;
avrdude.exe: reading input file &amp;quot;Blink-7-1s.hex&amp;quot;&lt;br /&gt;
avrdude.exe: input file Blink-7-1s.hex auto detected as Intel Hex&lt;br /&gt;
avrdude.exe: writing flash (2496 bytes):&lt;br /&gt;
&lt;br /&gt;
Writing | ################################################## | 100% 1.27s&lt;br /&gt;
&lt;br /&gt;
avrdude.exe: 2496 bytes of flash written&lt;br /&gt;
avrdude.exe: verifying flash memory against Blink-7-1s.hex:&lt;br /&gt;
avrdude.exe: load data flash data from input file Blink-7-1s.hex:&lt;br /&gt;
avrdude.exe: input file Blink-7-1s.hex auto detected as Intel Hex&lt;br /&gt;
avrdude.exe: input file Blink-7-1s.hex contains 2496 bytes&lt;br /&gt;
avrdude.exe: reading on-chip flash data:&lt;br /&gt;
&lt;br /&gt;
Reading | ################################################## | 100% 1.08s&lt;br /&gt;
&lt;br /&gt;
avrdude.exe: verifying ...&lt;br /&gt;
avrdude.exe: 2496 bytes of flash verified&lt;br /&gt;
&lt;br /&gt;
avrdude.exe: safemode: Fuses OK&lt;br /&gt;
avrdude.exe done.  Thank you.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
烧完后去除无关连接线，PD7（对应于 Arduino 的数字 7 口）接一个 LED 灯，效果如下（每秒 LED 灯闪一次）：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[文件:Nano-arduino-05.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
对于测试连接出现的如下错误信息：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ avrdude -C /d/arduino-1.0.1/hardware/tools/avr/etc/avrdude.conf -p m328p -c arduino -P COM27  -b 115200&lt;br /&gt;
avrdude.exe: stk500_getsync(): not in sync: resp=0x00&lt;br /&gt;
&lt;br /&gt;
avrdude.exe done.  Thank you.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
一般是波特率的问题，改成 '-b 57600' 试试&lt;br /&gt;
&lt;br /&gt;
还不行的话就要检查硬件连接了，尤其是 RX/TX/RESET(DTR) 这三个线串的电阻和电容有无问题&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	</feed>