ATMega328P单片机
ATMEGA328P是Microchip公司的高性能、低功耗控制器。ATMEGA328P是一款基于AVR RISC架构的8位单片机。它是所有AVR控制器中最受欢迎的,因为它被用于ARDUINO板。
ATMega328引出线的配置
ATMEGA328P是一个28引脚芯片,如图所示。这里芯片的许多引脚有不止一种功能。我们将在下表中描述每个引脚的功能。
销不。 |
销的名字 |
描述 |
二次函数 |
1 |
PC6(重置) |
Pin6 PORTC的 |
Pin默认为RESET Pin。编程RSTDISBL保险丝时,PC6只能作为I/O引脚使用。 |
2 |
PD0 (RXD) |
Pin0 PORTD的 |
USART数据输入引脚 USART串行通信接口 [可用于编程] |
3. |
PD1 (TXD) |
Pin1 PORTD的 |
USART数据输出引脚 USART串行通信接口 [可用于编程] 外部中断2输入 |
4 |
PD2 (INT0) |
Pin2 PORTD的 |
外部中断源0 |
5 |
PD3 (INT1 / OC2B) |
Pin3的PORTD |
外部中断source1 OC2B(PWM - Timer/Counter2输出比较匹配B输出) |
6 |
PD4 (XCK / T0) |
Pin4 PORTD的 |
T0(Timer0外部计数器输入) USART外部时钟I/O |
7 |
VCC |
正电压连接 |
|
8 |
接地 |
连接到地面 |
|
9 |
PB6 (XTAL1 / TOSC1) |
Pin6 PORTB的 |
XTAL1(芯片时钟振荡器引脚1或外部时钟输入) TOSC1(定时器振荡器引脚1) |
10 |
PB7 (XTAL2 / TOSC2) |
Pin7 PORTB的 |
芯片时钟振荡器引脚2 定时器振荡器引脚2 |
11 |
PD5 (T1 / OC0B) |
平快的PORTD |
T1(Timer1外部计数器输入) OC0B(PWM - Timer/Counter0输出比较匹配B输出) |
12 |
PD6 (AIN0 / OC0A) |
Pin6 PORTD的 |
模拟比较器正I/P OC0A(PWM - Timer/Counter0输出比较匹配A输出) |
13 |
PD7 (AIN1) |
Pin7 PORTD的 |
模拟比较器负I/P |
14 |
PB0 (ICP1 / CLKO) |
Pin0 PORTB的 |
ICP1(Timer/Counter1输入捕获引脚) 分块系统时钟。分体系统时钟可在PB0引脚上输出) |
15 |
PB1 (OC1A) |
Pin1 PORTB的 |
OC1A (Timer/Counter1输出比较匹配A输出) |
16 |
PB2 (SS / OC1B) |
Pin2 PORTB的 |
SS (SPI Slave选择输入)。当控制器作为从属时,该引脚是低的。 用于编程的串行外围接口(SPI) OC1B (Timer/Counter1输出比较匹配B输出) |
17 |
PB3(莫西人/ OC2A) |
Pin3的PORTB |
MOSI(主输出从输入)。当控制器作为从属时,数据由该引脚接收。用于编程的串行外围接口(SPI) OC2 (Timer/Counter2输出比较匹配输出) |
18 |
PB4(味噌) |
Pin4 PORTB的 |
MISO(主输入从输出)。当控制器作为从控制器时,数据由该控制器通过该引脚发送到主控制器。 用于编程的串行外围接口(SPI) |
19 |
PB5 (SCK) |
平快的PORTB |
SPI总线串行时钟。这是该控制器和其他系统之间共享的时钟,用于准确的数据传输。 用于编程的串行外围接口(SPI) |
20. |
AVCC |
内部ADC转换器的电源 |
|
21 |
基诺 |
ADC的模拟参考引脚 |
|
22 |
接地 |
地面 |
|
23 |
PC0 (ADC0) |
Pin0 PORTC的 |
ADC输入通道0 |
24 |
PC1 (ADC1) |
Pin1 PORTC的 |
ADC1 (ADC输入通道1) |
25 |
PC2 (ADC2) |
Pin2 PORTC的 |
ADC2 (ADC输入通道2) |
26 |
生物(ADC3) |
Pin3的PORTC |
ADC输入通道3 |
27 |
PC4 (ADC4 / SDA) |
Pin4 PORTC的 |
ADC4 (ADC输入通道4) 两线串行总线数据输入/输出线 |
28 |
PC5 (ADC5 / sci) |
平快的PORTC |
ADC输入通道5 标准及校正主任(两线串行总线时钟线) |
特性
简化功能 |
|
CPU |
8位AVR |
针数 |
28 |
工作电压(V) |
+1.8 v到+ 5.5v |
可编程I/O线的数量 |
23 |
通信接口 |
主/从SPI串行接口(17,18,19 pin)[可用于编程此控制器] 可编程串行USART(2,3 pin)[可用于编程此控制器] 两线串行接口(27,28个pin)[可用于连接Servos、传感器、存储设备等外围设备] |
JTAG接口 |
不可用 |
ADC模块 |
6通道,10位分辨率ADC |
定时器模块 |
一个16位计数器,具有独立的预分频器,比较模式和捕获模式。 |
模拟比较器 |
1(12、13针) |
DAC模块 |
零 |
PWM渠道 |
6 |
外部振荡器 |
0-4MHz @ 1.8V到5.5V 0-10MHz @ 2.7V至5.5V 0-20MHz @ 4.5V至5.5V |
内部振荡器 |
8MHz校准内部振荡器 |
程序内存类型 |
闪光 |
程序存储器或闪存 |
32 kb的[10000]写/擦除周期 |
CPU速度 |
1 mips 1 mhz |
内存 |
2 kb的内部存储器 |
eepm |
1 kb eepm |
看门狗定时器 |
可编程看门狗定时器与独立的芯片振荡器 |
程序锁 |
是的 |
省电模式 |
六种模式[空闲、ADC降噪、省电、关机、待机和延长待机] |
工作温度 |
-40°C至+105°C(+105为绝对最大值,-40为绝对最小值) |
注意:完整的技术细节可在ATMEGA328P数据表链接在本页底部。
ATMEGA328P替代品
ATMEGA328P替代品
在哪里使用ATMEGA328P
虽然我们有很多控制器,但ATMEGA328P由于其特点和成本是最受欢迎的。ARDUINO板也开发在这个控制器上,因为它的特点。
- ATMEGA328P具有32kbytes的程序内存,应用非常广泛。
- 具有多种节能模式,可用于移动嵌入式系统。
- 有了看门狗定时器复位错误,它可以用在系统与最小的人为干扰。
- 采用先进的RISC架构,控制器可以快速执行程序。
- 也与芯片温度传感器,控制器可以在极端温度下使用。
所有这些功能加在一起进一步提升了ATMEGA328P。
如何使用ATMEGA328P
ATMEGA328的使用类似于任何其他控制器。所有要做的就是编程。控制器只是在任何时刻执行我们提供的程序。没有编程控制器只是停留在原地不做任何事情。
如前所述,首先我们需要对控制器进行编程,这是通过在ATMEGA328P闪存中写入适当的程序文件来完成的。在转储此程序代码之后,控制器执行此代码并提供适当的响应。
整个过程的使用一个ATMEGA328P是这样的:
- 列出控制器要执行的函数。
- 在IDE程序中用编程语言编写函数。
你可以在公司网站上免费下载IDE程序。用于AVR控制器的IDE程序是“ATMEL STUDIO”。ATMEL STUDIO的链接如下。
(通常是针对Windows7的Atmel Studio 6.0 [http://atmel-studio.software.informer.com/6.0/],
Atmel Studio 7 for Windows10 [https://www.microchip.com/avr-support/atmel-studio-7])
- 也可以在ARDUINO IDE中进行ATMEGA328P编程。
- 编写完程序后,编译它以消除错误。
- 编写的程序编译后,IDE生成HEX文件。
- 这个HEX文件包含了应该写入控制器闪存的机器代码。
- 选择上位机与ATMEGA328P通信的编程设备(通常为AVR控制器制作的SPI编程器)。您还可以使用ARDUINO UNO板对ATMEGA328P进行编程。
- 运行程序设计软件并选择适当的十六进制文件。
- 使用该程序将编写的程序的HEX文件刻录到ATMEGA328P闪存中。
- 断开编程器,为控制器连接适当的外围设备并启动系统。
如何使用Arduino使用ATMega328P
自ATmega328P被用在Arduino Uno和Arduino纳米板,可以直接用ATmega328芯片替换arduino板。首先,你需要安装Arduino引导装载程序(或者你也可以买一个带有引导加载程序的芯片- ATMega328P-PU)。这种带有引导加载器的集成电路可以放置在Arduino Uno板上,并将程序刻录到其中。一旦Arduino程序被刻录到IC中,它就可以被移除并用于Arduino板,以及一个水晶振荡器和其他项目所需的组件。下面是Arduino Uno与ATmega328P芯片之间的引脚映射.
应用程序
ATMEGA328P有数百种应用:
- 用于ARDUINO UNO、ARDUINO NANO、ARDUINO MICRO板。
- 工业控制系统。
- 开关电源和功率调节系统。
- 数字数据处理。
- 模拟信号的测量和操作。
- 嵌入式系统,如咖啡机,自动售货机。
- 电动机控制系统。
- 显示单位。
- 外围接口系统。
二维模型和尺寸
所有的测量单位都是毫米。