Project Icon

tulipcc

多功能便携编程设备 支持音乐创作和图形开发

Tulip Creative Computer是一款便携式编程设备,采用低功耗设计和实惠价格。设备配备触摸屏和音频输出,支持Python编程,内置音乐合成、图形渲染和文本处理功能。可用于创作音乐、游戏、艺术作品或写作。该产品采用开源硬件和软件设计,支持WiFi连接、MIDI输入输出以及多种I2C设备,适合各类创意爱好者使用。

Tulip创意电脑 - 一款用于音乐、图形、编程和写作的便携式可编程设备

Tulip

欢迎使用Tulip创意电脑(Tulip CC)!

Tulip是一款低功耗、经济实惠的自成一体便携式电脑,配备触摸屏显示和声音功能。它完全可编程 - 您可以编写代码来定义音乐、游戏或任何您能想到的内容。它能瞬时启动进入Python提示符,内置大量支持音乐合成、快速图形和文本、硬件MIDI、网络访问和外部传感器的功能。无需分心或复杂操作,直接开始创作。

整个系统专门用于您的代码、显示和声音,在专用硬件上实时运行。硬件和软件完全开源,任何人都可以购买自行构建。您可以使用Tulip创作音乐、编程、艺术、游戏,或者只是写作。

Tulip由MicroPythonAMYLVGL驱动,Tulip硬件运行在ESP32-S3芯片上,使用ESP-IDF

shore pine sound systems discord 在我们的Discord上讨论Tulip!

观看这个视频!

基于Micropython的音乐电脑Tulip

Tulip既可作为现成或DIY硬件项目(Tulip CC)使用,也可作为桌面模拟器应用(Tulip Desktop)使用。它们具有相同的功能。我在开发Tulip时使用Tulip Desktop,但在制作个人项目时使用硬件Tulip CC!如果您对获取或构建硬件感到犹豫,可以下载或构建桌面版!

Tulip Desktop

您可以以59美元购买Tulip自行构建Tulip CC,成本约为25美元加上显示屏的费用(50美元)。第4版Tulip CC的硬件基于ESP32-S3双核微控制器,运行频率为240MHz。这款单一且价格实惠的芯片可以在低功耗下支持Tulip的所有功能。它可以使用任何USB电池组或锂聚合物电池持续工作多个小时。

Tulip CC支持:

  • 8.5MB RAM - 2MB可供MicroPython使用,1.5MB用于操作系统内存。其余用于图形帧缓冲区(可用作存储)和固件缓存。
  • 32MB闪存存储,可在Python中作为文件系统访问(操作系统在ROM中后剩余24MB)
  • 本地运行的AMY立体声120音色合成器引擎,或作为Alles网格的无线控制器。Tulip的合成器支持加法和减法振荡器、出色的FM合成引擎、采样器、Karplus-Strong算法、高质量模拟风格滤波器等。我们为Tulip配备了鼓机、音色/补丁应用程序和Juno-6编辑器。
  • 文本帧缓冲层,128 x 50,支持ANSI 256色、反相、粗体、下划线、背景色
  • 屏幕上最多32个精灵,每扫描线绘制,具有碰撞检测功能,总共32KB位图内存(每像素1字节)
  • 1024(+128过扫描)x 600(+100过扫描)背景帧缓冲区,可绘制任意位图或用作RAM,可水平/垂直滚动
  • WiFi,通过Python requests或TCP/UDP套接字访问http
  • 可调显示时钟和分辨率,默认为30 FPS,1024x600
  • 256色
  • 可从磁盘加载PNG设置精灵或背景,或通过代码生成位图数据
  • 内置代码和文本编辑器
  • 内置BBS聊天室和文件传输区,名为TULIP ~ WORLD
  • USB键盘支持
  • 电容式多点触控支持(Tulip Desktop上为鼠标)
  • MIDI输入和输出
  • I2C / Grove / Mabee连接器,兼容多种I2C设备,如摇杆、键盘、GPIO、DAC、ADC、集线器
  • 在中等显示亮度下,包括显示屏在内,功耗为5V@575mA,使用锂聚合物电池、18650电池或USB电池组可持续工作数小时

我多年来断断续续地开发Tulip,经历了多次硬件迭代,希望有人能像我一样乐在其中,无论是使用Tulip创作还是改进Tulip本身。我很乐意收到反馈、您自己的Tulip实验或改进系统的拉取请求。

Tulip

T-Deck Tulip CC

T-Deck

一个新的小型选择:购买T-Deck并直接在其上安装Tulip CC!查看我们的T-Deck页面了解更多详情。

入门

一旦您购买了Tulip构建了Tulip安装了Tulip Desktop,您会看到Tulip直接启动进入Python提示符,所有与系统的交互都在这里进行。您可以使用Tulip的内置编辑器创建自己的Python程序并执行它们,或者直接在Tulip REPL提示符下实时实验。

查看完整的Tulip API以了解有关所有图形、声音和输入功能的更多详情。

以下是一些入门提示和小示例。完整API页面提供了有关Tulip上所有可执行操作的更多详细信息。查看更完整的入门页面音乐创作教程

# 运行已保存的Python文件。Control-C停止
cd('ex') # ex文件夹包含一些示例和图形
execfile("parallax.py")
# 如果要运行Tulip包(包含其他文件的文件夹)
run("game")

Tulip编辑器

Tulip附带一个基于pico/nano的文本编辑器。它支持语法高亮、搜索、保存/另存为。

# 打开Tulip编辑器并编辑给定文件名的文件。
edit("game.py")

编辑器

输入和用户界面

Tulip支持USB键盘输入和触摸输入。(在Tulip Desktop上,鼠标点击充当触摸点。)它还配备了按钮和滑块等UI元素,可用于您的应用程序,以及一种使用回调同时运行多个应用程序的方法。更多信息请参阅完整API

(x0, y0, x1, y1, x2, y2) = tulip.touch()

UI演示

网络

Tulip CC可以连接Wi-Fi网络,Python的原生requests库可以用于访问TCP和UDP。我们还提供了一些便捷函数来从URL获取数据。更多信息请参阅完整API

# 加入Wi-Fi网络(Tulip Desktop不需要)
tulip.wifi("ssid", "password")

# 获取IP地址或检查是否已连接
ip_address = tulip.ip() # 如果未连接则返回None

# 将URL内容保存到磁盘(需要Wi-Fi)
bytes_read = tulip.url_save("https://url", "filename.ext")

音乐/声音

Tulip配备了AMY合成器,这是一个功能非常丰富的120振荡器合成器,支持FM、PCM、加法合成、部分合成、滤波器等多种功能。我们还提供了一个有用的"音乐计算机",用于音阶、和弦和进行。更多信息请参阅完整API音乐教程。Tulip版本的AMY支持立体声,你可以通过每个振荡器的pan参数进行设置。

amy.drums() # 播放测试歌曲
amy.volume(4) # 改变音量
amy.reset() # 停止所有正在播放的音乐/声音

https://user-images.githubusercontent.com/76612/215893940-658144b7-0c6f-42e2-9836-bd271597aab3.mov

MIDI

Tulip支持MIDI输入和输出,可连接外部音乐硬件。你可以设置Python回调函数来立即响应任何传入的MIDI消息。你也可以向MIDI输出发送消息。更多信息请参阅完整API音乐教程

m = tulip.midi_in() # 返回最后接收到的MIDI消息的字节
tulip.midi_out((144,60,127)) # 发送音符开启消息
tulip.midi_out(bytes) # 可以发送字节或列表

图形系统

Tulip GPU支持滚动背景层、硬件精灵和文本层。更多信息请参阅完整API

# 在背景上设置或获取像素
pal_idx = tulip.bg_pixel(x,y)

# 在背景上设置PNG文件的内容
tulip.bg_png(png_filename, x, y)

tulip.bg_scroll(line, x_offset, y_offset, x_speed, y_speed)

https://user-images.githubusercontent.com/76612/215895305-7b02ad27-b02a-429a-92ef-f13136e9f9d2.mov

支持硬件精灵。它们在每帧每扫描线上绘制在背景和文本层之上:

(w, h, bytes) = tulip.sprite_png("filename.png", mem_pos)

...

# 设置精灵的x和y位置
tulip.sprite_move(12, x, y)

https://user-images.githubusercontent.com/76612/215896311-fc0823aa-44bc-4305-85db-a6773db11a98.mov

Tulip World

虽然仍处于早期阶段,但Tulip支持一个名为TULIP ~ WORLD的原生聊天和文件共享BBS,你可以在这里与其他Tulip用户交流。你可以获取最新的消息和文件,也可以发送消息和文件。更多信息请参阅完整API

import world
world.post_message("hello!!") # 向Tulip World发送消息。需要用户名。如果未设置将提示输入
world.upload(filename) # 上传文件到Tulip World。需要用户名
world.ls() # 列出最近的唯一文件名/用户名

如何构建、编译和帮助开发Tulip

shore pine声音系统Discord 在我们的Discord上讨论Tulip!

如果你想帮助贡献,这里有两个重要的开发指南!

  • 保持友善和乐于助人,不要害怕提问!我们都是为了乐趣和学习而做这些。
  • 任何更改或功能都必须在Tulip Desktop和Tulip CC上等效。当然,这个规则有一些有限的例外,但在提出新功能/更改之前,请在硬件上进行测试。

玩得开心!

Tulip

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

稿定AI

稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号