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

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

wolfSSL参数设置或配置项解释

1. wolfCrypt Only 解释:wolfCrypt是一个开源的、轻量级的、可移植的加密库,支持多种加密算法和协议。选择“wolfCrypt Only”意味着系统或应用将仅使用wolfCrypt库进行加密操作,而不依赖其他加密库。 2. DTLS Support 解释:DTLS(Datagram Transport Layer Security)是一种基于UDP的安全协议,提供类似于

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

高并发环境中保持幂等性

在高并发环境中保持幂等性是一项重要的挑战。幂等性指的是无论操作执行多少次,其效果都是相同的。确保操作的幂等性可以避免重复执行带来的副作用。以下是一些保持幂等性的常用方法: 唯一标识符: 请求唯一标识:在每次请求中引入唯一标识符(如 UUID 或者生成的唯一 ID),在处理请求时,系统可以检查这个标识符是否已经处理过,如果是,则忽略重复请求。幂等键(Idempotency Key):客户端在每次