ATtiny45芯片引脚图_功能参数_编程烧录
ATtiny45因其小尺寸和多种功能而成为最流行的微控制器之一,该微控制器可用于多种嵌入式系统,甚至可以在工业级别找到它的应用。
ATtiny45微控制器允许设计人员通过编程来优化功耗与性能,它采用AVR和RSIC技术设计,使其控制器功耗更低,并且使用其内部振荡器使其更省电。简而言之,大多数开发板和学生项目都使用ATtiny85来最小化项目的尺寸,并且通过使用其不同的封装可以进一步减小微控制器的尺寸。
功能参数
引脚配置
ATtiny45微控制器具有8引脚配置,其引脚图如下所示:
电源引脚
ATtiny45由于引脚数量有限,只有两个电源引脚。一个引脚将用作电源输入,第二个引脚将用作接地引脚。接地引脚将用于与微控制器和外部设备建立公共接地。ATtiny45中的电源引脚有:
- VCC – 引脚8
- GND – 引脚4
振荡器/时钟引脚
ATtiny45微控制器具有内部0-8MHz频率,但也提供10至20MHz频率的能力,外部时钟的值取决于不同的封装。外部振荡器/时钟需要的外部引脚是:
- XTAL1/CLKI – GPIO2
- XTAL2/CLKO – GPIO3
定时器模块
ATtiny45有两个内部8位定时器,可用于计数。计数可以通过编程来完成,但Timer0有一个外部输入引脚,可用于接收输入脉冲,定时器将通过该脉冲来计数值。Timer0外部脉冲输入引脚为:
- T0 – GPIO7
数字输入/输出引脚
在该微控制器中,只有一个GPIO端口(端口B),能够提供多种I/O功能。端口B有输入上拉电阻,可实现输入功能,端口还可以提供可通过编程初始化的输出信号。微控制器中的I/O引脚有:
- PB0 – GPIO5
- PB1 – GPIO6
- PB2 – GPIO7
- PB3 – GPIO2
- PB4 – GPIO3
- PB5 – GPIO1
中断引脚
几乎每个电路都需要一个中断引脚,以应对紧急代码或满足某些模块要求。ATtiny45有一个中断引脚,可以通过编程来引起CPU的注意。单片机上的中断引脚如下:
- INT0 – GPIO7
SPI通信引脚
大多数模块使用不同类型的通信系统,SPI就是其中之一。在ATtiny45中,SPI协议用于通过调试引脚进行编程。由于“从选择”引脚不可用,控制器可以使用其输出引脚与SPI通信设备进行通信:
- MOSI/DO – GPIO5
- MISO/DI – GPIO6
- SCK/USCK – GPIO7
I2C通信模块
对于两线串行通信,控制器中可以使用I2C协议。这种方法需要两根线,一根用于时钟脉冲,一根用于数据传输/接收。下面列出了这两个引脚:
- SDA(数据) – GPIO5
- SCL(时钟) – GPIO7
dW引脚
对微控制器进行编程的方法有多种,其中一种方法是通过SPI协议。一些SPI设备可用于对控制器进行编程,但对控制器进行编程需要调试引脚。该引脚仅出现在某些特定控制器中。ATtiny45上的调试引脚如下:
- dW – GPIO1
模拟比较器模块
用于比较模拟输入信号,模拟比较器有输入引脚,但不提供任何输出引脚。比较器输出只能由内部寄存器用于进一步处理,或者可以对其进行编程以根据特定比较值提供特定输出。输入引脚接收相同的反相和非反相模拟信号。微控制器上的模拟比较器引脚有:
- AN0 – GPIO5
- AN1 – GPIO6
捕获/比较/PWM引脚
PWM生成是大多数设备控制其速度所需的输出信号,捕获/比较/PWM允许微控制器使用预分频器生成具有不同时钟脉冲的PWM。捕获持续获取输入信号,并与timer0和timer1进行比较,然后根据指示的程序给出输出,并且输出为非重叠信号。微控制器上的输出引脚是:
- OC1B' – GPIO2
- OC0B – GPIO6
- OC1B – GPIO3
- OC1A – GPIO6
- OC1A' – GPIO5
- OC0A – GPIO5
模数转换器通道引脚
ATtiny45有一个10位模数转换器,它从四个模拟输入通道获取输入,然后将数据存储在10位寄存器中。数据可以通过程序在内部使用,也可以在输出引脚处接收。ATtiny45上的模数转换引脚为:
- ADC0 – GPIO1
- ADC1 – GPIO7
- ADC2 – GPIO3
- ADC3 – GPIO2
AREF引脚
所有ADC都使用电源电压作为参考来测量模拟信号值,但在ATtiny45中,有一个模拟参考引脚,可用于根据模拟参考引脚上给出的电压来转换模拟信号电平。模拟参考引脚是:
- AREF – GPIO5
复位引脚
微控制器具有内部和外部复位功能。ATtiny45上的外部复位引脚可供外部模块或按钮在需要复位控制器时使用。ATtiny45上的外部复位引脚是:
- RESET – GPIO1
功能框图
微控制器的框图如下所示,该图描述了所有可用的外围设备。此外,它还提供了8位数据总线和地址总线的演示。
编程烧录
为了对Atme公司的微控制器进行编程,总是需要一个编译器。这些是用于C语言或汇编语言编程的流行编译器。
- Atmel Studio
- 适用于AVR的Mikro C
- AVR – GCC
- AVR – 适用于Windows和Linux的工具链
注意:你还可以使用Arduino Uno ISP端口对该小型微控制器进行编程。
使用Arduino ISP进行编程烧录
Arduino Uno具有ISP引脚,可以使用Arduino IDE对Attinyxx芯片进行编程。只需将任何ATtinyxx系列微控制器与Arduino连接起来,如下图所示:
Arduino Uno R3引脚 | ATtiny45芯片引脚 |
---|---|
5伏引脚 | Vcc引脚 |
接地 | 接地 |
针脚13 | 引脚2 |
针脚12 | 引脚1 |
引脚11 | 引脚0 |
引脚10 | Reset |
- 首先,按照上面的电路图和表格进行硬件连接;
- 打开Arduino IDE并选择所需的处理器;
- 从IDE menue>>Programmer – 选择Arduino作为ISP;
- 还可以更改处理器的工作频率。要更改频率,请转到tools>>Clock并选择frequency;
- 将bootloader烧录到ATtiny45;
- 之后编写测试程序/代码并上传到你的设备;
外围设备
ATtiny45还配备了不同类型的外围设备,所有这些都可以在这里找到。
- 自编程:它是控制器内最流行、最高效的编程方法之一。在自编程中,数据存储在启动存储器中,然后在启动时执行。当每次需要执行相同的程序时,自编程是高效的,这有助于解决内存问题并提高控制器效率。
- USI:它是适合每个控制器的最佳通信方法之一。它有两根线和三根线。在微控制器中,三线方法称为SPI,两线方法称为I2C。这两种方法都串行传输数据,SPI方法允许微控制器使用SPI协议对微控制器内的指令进行编程。
- 死区时间发生器:在ATtiny45中,使用连接到输出引脚死区时间发生器。通过使用死区时间发生器,微控制器能够生成具有不同脉冲的输出信号。ATtiny45还可以产生非重叠和重叠形式的输出信号。
主要应用
- LCD等显示单元大多采用微型微控制器。
- 在工业单元中,使用ATiny45来执行单个任务。
- ATtiny45由于其性能而被用于商业和开发级别。
- 功率调节系统可通过ATtiny45进行操作。
替代型号
ATtiny45替代芯片型号包括:ATtiny88、ATtiny85、ATmega328P。
封装设计二维图
总结
ATtiny45是由Microchip Technology(前身为Atmel)生产的微控制器。它属于ATtiny系列,是一系列专为嵌入式应用而设计的低功耗、小尺寸的微控制器。ATtiny45因其紧凑的尺寸、低成本和多功能性而受到业余爱好者和开发者的欢迎。
ATtiny45微控制器基于8位RISC(精简指令集计算机)架构,工作时钟频率高达20 MHz,包含单个CPU核心,并且拥有4KB的Flash存储器用于程序存储和256字节的SRAM用于数据存储。专为低功耗设计,适用于电池供电的应用。
由于其紧凑的尺寸和丰富的功能,ATtiny45常用于各种嵌入式系统、物联网设备、家庭自动化项目、机器人和其他需要低功耗和小尺寸的应用。它的能力特别适合对计算需求简单、资源受限的项目。