ATtiny88入坑之路-原理图及arduino环境配置

2023-12-16 00:59

本文主要是介绍ATtiny88入坑之路-原理图及arduino环境配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ATtiny88入坑之路-原理图及arduino环境配置

  • ATtiny88简介
    • 说明
    • 原理图及PCB
    • 配置arduino环境和代码测试
    • 烧写BootLoader
    • Blink
    • OLED显示
    • 写在最后

ATtiny88简介

##基本参数:
UART/USART 0
SPI 1
USB Device 0
PWM 0
USB Host/OTG 0
LCD 0
I2C(SMBUS/PMBUS) 1
工作电压 1.8V ~ 5.5V
Ethernet 0
EEPROM 尺寸 64Bytes
CAN 0
A/D 8x10bit
D/A 0
CPU位数 8-Bit
CPU内核 AVR
ROM尺寸 8KB (4KW)
RAM大小 512Bytes
主频(MAX) 12MHz
ROM类型 FLASH
I/O 数 28

说明

我在文档里没有见到有关UART和USB的说明,但貌似某宝上有卖的核心板可以USB下载的,等我抄原理图之后再更新一下。

原理图及PCB

原理图及PCB工程地址:直通车

原理图
在这里插入图片描述
PCB:

在这里插入图片描述
因为我这儿的阻容都是0805的,所以在选择上就都选择了0805,可以选小一点的。

实物:
在这里插入图片描述
PS:多出来那截是打样时拼上去的红外接收模块。

配置arduino环境和代码测试

github链接:https://github.com/SpenceKonde/ATTinyCore arduino
直接添加开发板链接:http://drazzy.com/package_drazzy.com_index.json

在这里插入图片描述
1、在打开–>首选项–>附加开发板管理器网址的后面添加上面的开发板链接,然后关闭当前窗口
在这里插入图片描述

2、选择工具–>开发板–>开发板选项,在搜索框搜索Attiny,安装即可。
在这里插入图片描述

然后就开始愉快的编程了……

烧写BootLoader

在这里插入图片描述
所有以上那一堆的烧录器,任选其一(前提是你得有),常用的是USBasp和USBtinyISP,没有的话需要买一个,插上之后安装相应的驱动程序。我使用的通用USB设备驱动安装软件zadig,不保证完全适用于每个人。

插上相应的烧录器,连接上板子上的2*3排针,注意看方向,然后在工具–>开发板下边选择相应的芯片以及参数,然后点烧录引导程序……等它成功即可。

有一个需要注意的地方,因为这个并无外部晶振,所以最大时钟频率只能到8MHz,在编程时选择Clock要选择括号里带Internal的选项image.png 如有需要更高频率,可以选择在PB6即GPIO14的位置加一个有源晶振。
在这里插入图片描述

Blink

文件–>示例–>Basic–>Blink
将LED_BUILTIN改成13(因为这个板子的LED是D13)

void setup() {// initialize digital pin LED_BUILTIN as an output.pinMode(13, OUTPUT);
}// the loop function runs over and over again forever
void loop() {digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)delay(1000);                       // wait for a seconddigitalWrite(13, LOW);    // turn the LED off by making the voltage LOWdelay(1000);                       // wait for a second
}

OLED显示

OLED显示选用的单色屏显示库U8g2,但芯片空间不足,只能使用u8x8,不能用u8g2(同样容易爆表)。

#include <U8x2lib.h>
U8X8_SSD1306_128X64_NONAME_SW_I2C u8x8(/* clock=*/ 22, /* data=*/ 21, /* reset=*/ U8X8_PIN_NONE); // void setup() {// initialize digital pin LED_BUILTIN as an output.pinMode(13, OUTPUT);u8x8.begin();u8x8.setFont(u8x8_font_pcsenior_f);  //选择字体,注意要选择一个很小很小的字体,否则芯片空间容量不足/*或者百度一下怎么自己取模*/u8x8.setCursor(0,15);//这里设置显示的坐标u8x8.print("setup done");//输出显示内容
}// the loop function runs over and over again forever
void loop() {digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)delay(1000);                       // wait for a seconddigitalWrite(13, LOW);    // turn the LED off by making the voltage LOWdelay(1000);                       // wait for a second}

最后的效果请参照:https://oshwhub.com/MengYang/ATtiny88-On-Arduino

写在最后

Attiny 88这款单片机在我测试过程中发现的问题来说,并不适合工程级别的项目开发,但作为AVR系列里性价比较高的单片机来说,还是具有一定的研究价值,总的来说,它适合用来学习,不适合用来做项目。

以上仅为本人片面之词,有所不足之处欢迎指正。

这篇关于ATtiny88入坑之路-原理图及arduino环境配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/498538

相关文章

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

springboot security之前后端分离配置方式

《springbootsecurity之前后端分离配置方式》:本文主要介绍springbootsecurity之前后端分离配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的... 目录前言自定义配置认证失败自定义处理登录相关接口匿名访问前置文章总结前言spring boot secu

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

SpringBoot中封装Cors自动配置方式

《SpringBoot中封装Cors自动配置方式》:本文主要介绍SpringBoot中封装Cors自动配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot封装Cors自动配置背景实现步骤1. 创建 GlobalCorsProperties

Spring Boot结成MyBatis-Plus最全配置指南

《SpringBoot结成MyBatis-Plus最全配置指南》本文主要介绍了SpringBoot结成MyBatis-Plus最全配置指南,包括依赖引入、配置数据源、Mapper扫描、基本CRUD操... 目录前言详细操作一.创建项目并引入相关依赖二.配置数据源信息三.编写相关代码查zsRArly询数据库数

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技

如何自定义Nginx JSON日志格式配置

《如何自定义NginxJSON日志格式配置》Nginx作为最流行的Web服务器之一,其灵活的日志配置能力允许我们根据需求定制日志格式,本文将详细介绍如何配置Nginx以JSON格式记录访问日志,这种... 目录前言为什么选择jsON格式日志?配置步骤详解1. 安装Nginx服务2. 自定义JSON日志格式各

使用Python实现网络设备配置备份与恢复

《使用Python实现网络设备配置备份与恢复》网络设备配置备份与恢复在网络安全管理中起着至关重要的作用,本文为大家介绍了如何通过Python实现网络设备配置备份与恢复,需要的可以参考下... 目录一、网络设备配置备份与恢复的概念与重要性二、网络设备配置备份与恢复的分类三、python网络设备配置备份与恢复实