自己制作applepen

Apple Pen是一支被广泛使用的智能笔,可以在iPad、iPhone和其他设备上进行手写笔记和涂鸦。但是,如果你不想花大量的资金购买一只Apple Pen,那么你可以尝试自己制作一支。在这篇文章中,我将详细介绍如何制作自己的Apple Pen。

首先,你需要了解Apple Pen的工作原理。Apple Pen不是一个简单的笔,而是一个具有多个传感器和元件的复杂设备。他需要准确的感应和响应来检测笔尖的位置和压力,并通过蓝牙传输数据。要制作一个Apple Pen,你需要使用一些开源硬件和软件工具。

硬件:

1. Arduino Nano(一个小型的基于ATmega328的开源硬件)

2. 芯片模块ADS7843(一个触摸屏控制器)

3. 5V电机和透明管子(作为笔身)

4. 一对可调电阻器

5. 一组细小的导电笔尖和插头

6. 薄而灵活的端子盖和线缆

软件:

1. Arduino IDE (用于编写和加载Arduino程序)

2. Processing(一个用于创建互动、图像和音频应用程序的开源编程语言和集成开发环境)

3. SerialOSC(一个操作系统X系统下的开源项目,为处理不同硬件和软件通信提供接口)

第一步:组装硬件

组装硬件包括将Arduino Nano连接到ADS7843模块和可调电阻器上。

连接Arduino Nano:通过使用一个USB线缆,将Arduino Nano连接到你的计算机。打开Arduino IDE软件,选择对应端口(在工具-串口菜单栏中)。

连接ADS7843模块:使用七针连接电缆将ADS7843模块连接在Arduino Nano上。连接方法如下:

- 5v与VCC Pin连接

- GND与GND Pin连接

- DOUT与A1 Pin连接

- CS与A2 Pin连接

- DIN与A4 Pin连接

- CLK与A3 Pin连接

- Pen IRQ与A0 Pin连接

连接可调电阻器:将可调电阻器连接到模拟A5 Pin和A6 Pin。

这样你就完成了相应的硬件连接!

第二步:编写控制代码

利用Arduino IDE软件,编写代码,并将其上传到Arduino Nano,这样就能控制笔尖的按压和移动。

下面是Arduino代码:

```

#include

void setup()

{

Serial.begin(9600);

SPI.begin();

pinMode(9, OUTPUT);

digitalWrite(9, LOW);

}

void loop()

{

byte buf[3];

buf[0] = 0x90;

buf[1] = 0x00;

buf[2] = 0x00;

digitalWrite(9, HIGH);

SPI.transfer(buf[0]);

SPI.transfer(buf[1]);

delayMicroseconds(10);

buf[0] = 0x00;

buf[1] = 0x00;

buf[2] = 0x00;

SPI.transfer(buf[0]);

SPI.transfer(buf[1]);

digitalWrite(9, LOW);

delayMicroseconds(100);

if(Serial.available() > 0) {

byte ch = Serial.read();

if(ch >= '0' && ch <= '9') {

buf[0] = ch;

Serial.readBytesUntil('\n', &buf[1], 2);

digitalWrite(9, HIGH);

for(int i=0; i<3; ++i)

SPI.transfer(buf[i]);

digitalWrite(9, LOW);

}

}

}

```

该代码使用SPI接口与ADS7843模块通信,并通过串口传输数据,这样你就可以跟踪笔的位置和压力,从而进行精确的笔迹输出。

第三步:创建可交互程序

使用Processing软件编写程序,将传输的数据接收并转化为图案。我们可以使用SerialOSC模块进行数据的接收,然后在Processing中创建图案。

下面是Processing程序代码:

```

import oscP5.*;

import netP5.*;

OscP5 oscP5;

float x, y;

void setup() {

size(400, 400);

background(255, 255, 255);

oscP5 = new OscP5(this, 8080);

}

void draw() {

}

void oscEvent(OscMessage theOscMessage) {

if(theOscMessage.checkAddrPattern("/sp/note")) {

x = theOscMessage.get(0).floatValue();

y = theOscMessage.get(1).floatValue();

fill(0, 0, 0);

ellipse(x, y, 10, 10);

}

}

```

该程序通过OSC协议接收数据,并创建一个包含位置和压力的笔迹。

第四步:制作和安装笔尖

使用纸和铅笔设计和绘制合适的笔尖和笔身,然后选择合适的材料来制作它们。在这种情况下,使用电机和管子制作笔身,导电细小笔尖来制作工作笔尖。你可以使用端子盖和线缆来连接笔尖和Arduino Nano Pin。

现在,你已经完成了自己的Apple Pen的制作。通过笔尖的压力和位置检测,在iPad、iPhone或其他设备上进行书写和绘画,这是一个不错的DIY项目。


相关知识:
自由app开发工作
移动应用开发,是指用于在移动设备上运行并提供特定功能的程序开发。移动设备是指能够无线连接互联网的设备,如手机、平板电脑、计算机等。一款优秀的移动应用可以帮助用户便捷高效地完成各种工作和娱乐活动,也可以帮助企业和组织实现品牌推广、销售和服务的目标。本文将介绍
2023-06-05
自建app分发
自建App分发指的是开发者自主将App上传到自己的服务器上,通过特定的方式实现用户下载安装。相对于应用商店的上架审核流程较长,自建App分发可以让开发者更加灵活地控制App的更新和发布,同时也能够节省应用商店所需要支付的费用。自建App分发的方式主要有两种
2023-06-05
自己做的一个诗词阅读的app
我做的这个诗词阅读的app主要是为了方便人们阅读古诗词作品,并且可以通过app进行学习和交流。该app采用了现代化的技术手段对传统的诗词进行了整合、分类、归纳、解读等操作,让更多的人能够更好的读懂汉字,并理解中国传统文化。该app可以分为三个模块,分别是阅
2023-06-05
自己独立做实体店app
想拥有属于自己的实体店app吗?这里提供一些基本的原理和步骤,有助于你准确地了解如何自己独立开发一个实体店app。1.确定目标市场和需求首先,你需要确定你的目标市场和需求。你想让你的app营销到哪些人,对于你的实体店来说,什么渠道是最适合的?同时,要考虑你
2023-06-05
自己制作彩虹代刷网app
彩虹代刷网是一款提供游戏代练、游戏充值等服务的app,它的出现解决了很多游戏玩家的烦恼。对于自己制作彩虹代刷网app的话,需要具备一定的编程意识和技术知识。以下是彩虹代刷网app的制作详细介绍。1.确定项目类型和技术栈首先,确定开发app所需的技术栈,因为
2023-06-05
自己公司开发app需要什么人才
开发APP需要的人才主要有以下几个方面:1. 产品经理产品经理是一款APP开发的核心,他负责定义产品的特性、功能和用户体验。他要用深入的市场调查和用户研究来确定产品的目标用户、需求和功能。同时,他还要协调团队中的其他成员,如设计师、开发工程师和测试工程师等
2023-06-05
自动做题的app
随着移动互联网技术的不断发展,各种APP层出不穷,其中有一类APP是自动做题APP。自动做题APP是在学习阶段辅助学生进行练习的一种工具,它利用人工智能技术,模拟人的思考过程,自动对题目进行处理,给出正确答案或解题思路,从而减少学生在做题方面的时间和精力。
2023-06-05
有什么app可以自己制作人物
在现今的数字化时代,很多人喜欢通过APP创作自己的作品,其中涵盖了人物制作。以下介绍几款可以进行自己制作人物的APP:1. iClone Character Creator 3iClone Character Creator 3是一款十分强大的人物模型设计
2023-06-05
想自己做一个行车位app
行车位app是一款能够帮助司机快速找到可用停车位的应用,在现代城市交通中越来越受到欢迎。如果你也想自己做一个行车位app,那么可以按照以下步骤操作:1. 确定需求和功能在开发一个行车位app之前,需要确定需求和功能。你可以从以下几个方面考虑:- 搜索附近的
2023-05-31
苹果app编程开发自学教程
苹果的iOS系统上有很多好用的应用程序,如果想要自己开发一款应用程序,就需要学习苹果的应用程序开发。苹果的应用程序开发需要使用Xcode集成开发环境和Objective-C协议编程语言进行开发。一、开发环境搭建首先需要下载并安装Xcode,可以在Mac A
2023-05-30
如何制作自己的app魔盒
在移动互联网的时代,app已经成为人们生活中不可或缺的组成部分之一。即使你不是一名程序员,也可以通过使用在线的app制作平台来轻松制作自己的app魔盒。下面,我们将详细介绍如何制作自己的app魔盒。1.确定你的app功能和目标用户在开始之前,你需要想清楚你
2023-05-30
appui自动化工具开发
随着移动互联网的发展,越来越多的企业开始涉足移动应用程序的开发,这为广大开发者带来了新的机遇和挑战。与此同时,自动化测试技术也变得越来越重要,它可以帮助开发人员提高效率和质量,减少错误。本文将介绍一种流行的自动化工具——appui自动化工具,包括其原理和详
2023-05-30
©2015-2021 自建app开发平台 www.appbyme.cn 蜀ICP备17005078号-1