尝试用ATTINY88开发板做虚拟键盘

尝试用ATTINY88开发板做虚拟键盘

本人小白一枚,本职工作跟理工不沾边……作为一个垃圾佬平时闲暇就玩玩LED、小电机啥的模拟电路,一周前翻出来一个超市收银机用的键盘,板载芯片被打磨了,看样子像是51单片机,决定拿出来玩玩,经过一个星期的尝试和学习,不算是经验,就是借助贵宝地做个简单的笔记。
当初,认为最简单的模拟键盘就是ATTINY85的板子digispark,所以撸了一片开始研究和学习arduino基本用法,看看示例啥的,但无奈85的接口太少,8pin中usb占用了4个,无意中发现ATTINY88开发板(mh-et)DIO很多,绝对够用。
计划实现简单的复制剪切粘贴等快捷功能,代码其实很简单,按照DigiKeyboard示例写就好,只不过我加上了一颗ws2812小led。下边代码不全,不含loop。

#include <DigiKeyboard.h>//按键库
#include <Adafruit_NeoPixel.h>//ws2812支持库
const int ledpin = 3;//led引脚
const int key1 = 4;//按键1
int showtime = 150;
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(1, ledpin, NEO_RGB + NEO_KHZ800);
void setup() {
   pinMode(key1, INPUT_PULLUP);
   pixels.begin();
}

重要的是DigiKeyboard.h库的配置,库中调用的usbconfig.h必须修改

#if defined (__AVR_ATtiny44__) || defined (__AVR_ATtiny84__)
#define USB_CFG_IOPORTNAME      B
#define USB_CFG_DMINUS_BIT      1
#define USB_CFG_DPLUS_BIT       2
…………………………………………
#else
/*	ATtiny2313, ATmega8/48/88/168	*/
#define USB_CFG_IOPORTNAME      D
#define USB_CFG_DMINUS_BIT      1
#define USB_CFG_DPLUS_BIT       2

中间省略号是我自己敲的,因为罗列的型号比较多,唯独没有t88对应的D+D-设置,所以修改最下边的2312、mega等通用配置就行,D- 对应D1pin D+对应D2pin。这个问题卡住我很久……因为我最早关注的是这块板子的BootLoader信息,里边描述的正好相反,直到git上有人试验usbmidi成功。
就这些吧,想起什么再补充,具体怎么切割原键盘的PCB接开发板就不拍照上传了,手残党别污了大家眼。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值