首页
图床推荐
实用链接
友链
关于
Search
1
彻底卸载Cloudflare Tunnel(解决 cloudflared service uninstall 报错问题)
387 阅读
2
从零开始注册Hugging Face账号到部署网页应用
91 阅读
3
Debian 11.2 搭建 Typecho 个人博客教程
83 阅读
4
Linux配置frps与frpc的四种隧道并设置开机启动
77 阅读
5
紫电猫8.8元随身WIFI刷Debian系统教程
73 阅读
默认分类
教程
随笔
软件开发
笔记
登录
/
注册
Search
标签搜索
Datawhale
AI+X
Fun-Transformer
#Datewhale组队学习
隧道
Debian
Transformer
教程
随身wifi
frp
frpc
frps
内网穿透
Linux
toml
我的世界
Minecraft
MySQL
单片机
OLED
Simuoss
累计撰写
17
篇文章
累计收到
8
条评论
首页
栏目
默认分类
教程
随笔
软件开发
笔记
页面
图床推荐
实用链接
友链
关于
搜索到
17
篇与
的结果
2024-08-10
THE —— TTF2HEX_Extractor | 单片机字库提取器
THE —— TTF2HEX_Extractor | 单片机字库提取器📖 介绍THE —— TTF2HEX_Extractor_单片机字库提取器是一个可以将ttf字体文件转换为单片机字库的工具。它可以将ttf字体文件转换为单片机字库的C语言格式头文件,以便于在单片机上使用。我写这个软件的初衷是因为想在oled屏幕上显示中文,而一个一个字码的手动输入HEX实在是太麻烦了,所以就想着写一个软件来自动生成字库头文件。Github页面:https://github.com/Simuoss/THE-TTF2HEX_Extractor🧰 特性列表{x} 支持ttf字体文件 {x} 画幅、字体大小可调{x} 支持位移、旋转、镜像、反色{x} 所见即所得字符预览{x} 进度条显示生成进度{x} 输出为.h的C语言格式字库头文件{x} 支持更多字体文件格式 { } 多语言支持{ } 从本地/网络字体库选择字体 { } 图片转HEX { } 添加自动适配宽高模式{ } 自定义屏幕尺寸预览待转文字 { } 添加数学符号、emoji等选区支持 { } 美化界面 { } 重构代码✨ 快速开始使用准备一款或多款ttf字体文件,推荐像素字体,提取出来效果比较好下载最新的 release 版本运行 .exe 文件,选择字体文件,设置字体大小、画幅大小等参数,预览确认无误后点击 提取字体 按钮导出格式:#ifndef __WENQUANYI_BITMAP_SONG_12PX_TTF_FONT_H__ #define __WENQUANYI_BITMAP_SONG_12PX_TTF_FONT_H__ const unsigned char code F_zh_cn_8x8[][8] = { // \u8fd9: 这 {0x00, 0x42, 0x84, 0xF0, 0x07, 0x24, 0x44, 0x84, 0x44, 0x34, 0x0A, 0xF1, }, // \u662f: 是 {0x00, 0xF8, 0x08, 0xF8, 0x08, 0xF8, 0x00, 0xFF, 0x24, 0xE4, 0x2A, 0xF1, }, // \u4e00: 一 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, }, // \u6bb5: 段 {0x00, 0xD8, 0x46, 0x42, 0x2E, 0x02, 0xEE, 0x22, 0x42, 0x8F, 0x42, 0x32, }, // \u6d4b: 测 {0x00, 0x7D, 0x46, 0x54, 0x55, 0x56, 0x54, 0x54, 0x13, 0x2A, 0x46, 0x02, }, // \u8bd5: 试 {0x00, 0x82, 0x84, 0xF8, 0x80, 0xF7, 0xA4, 0xA4, 0x24, 0x64, 0x1C, 0x04, }, // \u5b57: 字 {0x00, 0x20, 0xFE, 0x02, 0xF9, 0x40, 0x20, 0xFF, 0x20, 0x20, 0x20, 0x38, }, // \u7b26: 符 {0x00, 0x84, 0xBC, 0x4A, 0x21, 0x08, 0xF4, 0x06, 0x25, 0x44, 0x04, 0x84, }, }; #endif // 提取完成,应提取8个字符,实际提取8个字符,有0个字符不在字体里。这里感谢且安利文泉驿点阵体,演示时使用的字体就是它。使用时注意LICENSE。开发克隆项目到本地git clone
[email protected]
:Simuoss/THE-TTF2HEX_Extractor.git在目录打开命令行,安装依赖(主要就是一个Pyslide6)pip install -r requirements.txt使用你的IDE打开项目开发即可。main.py : 主程序入口extractor.py : QT界面和界面逻辑处理 woker.py : 字体提取器 in_font.py : 判断字体是否在字体文件中的一个函数
2024年08月10日
19 阅读
0 评论
1 点赞
2024-08-10
【2024 Datawhale AI 夏令营】Task1:借助魔塔(ModelScope)社区基于[源-2B]模型构建智能编程助手
一、注册社区并启动实例注册ModelScope账号,领取免费时长。按下图方式选择并启动实例(注意一定要选GPU平台)等待几分钟,让实例开起来,然后进入实例二、搭建并启动Demo打开终端并克隆仓库git lfs install git clone https://www.modelscope.cn/datasets/Datawhale/AICamp_yuan_baseline.git安装streamlit依赖pip install streamlit==1.24.0下载模型并启动Demostreamlit run AICamp_yuan_baseline/Task\ 1:零基础玩转源大模型/web_demo_2b.py --server.address 127.0.0.1 --server.port 6006此时,终端上应该会显示一个 http://127.0.0.1:6006 。点击这个链接就可以访问Demo网页了。网页右上角会显示一个奔跑的小人:Running。原先的终端后台应该在下载并加载模型:注意!如果你此处遇到了问题,请跳转到 四、Debug三、测试在上面打开的Demo页面输入任何你想问的问题!不过这个模型好像有点人工智障的意思...可能因为只有2B参数吧四、Debug在模型搭建的过程中,我在步骤2.3时遇到了FileNotFoundError报错:检查报错信息,并在开启了显示隐藏文件之后找到报错目录下,发现报错实际上是因为模型仓库下载失败。那就简单了,直接手动补齐缺失文件即可。我的解决方法是从Huggingface镜像站手动用git clone或者curl指令下载所有文件到/mnt/workspace/._____temp/IEITYuan/Yuan2-2B-Mars-hf,随后再运行步骤2.3指令,即可成功开启Demo网页。后来,群内助教也分享了自己的解决方法:pip install modelscope==1.14.0 git clone https://www.modelscope.cn/IEITYuan/Yuan2-2B-Mars-hf.git也就是降级modelscope到1.14.0版本,并重新拉取仓库走流程。另外,组内另一队友使用了如下方法解决问题(以下引用他的博客原文):分析一下,当我去huggingface的源大模型2.0-2B官网去查看Files的时候,对比发现,我其实不止缺少LICENSE,还缺少诸多文件,没能下载到至DSW实例上。推测是最初配置DSW的问题,重新按照说明再创建了一个DSW,发现一切都正常了。
2024年08月10日
22 阅读
0 评论
1 点赞
2024-08-10
服务器无魔法时手动下载安装Shell美化插件Starship
前言Starship自述:最小化、极速且无限可定制的终端提示符,适用于任何Shell!兼容性优先 在最常见的操作系统上的最常见Shell中均可使用。随处可用!Rust驱动 利用Rust的顶级速度和安全性,使您的提示符尽可能快速和可靠。可定制 每一个细节都可以根据您的喜好进行定制,使这个提示符可以是最简约的,也可以是功能丰富的,完全由您决定。但是有时当我们想要安装时,会发现一个问题:通常我们的远端服务器并不能访问到Starship官网给出的https://starship.rs/install.sh,因为服务器上没有魔法。那我们能不能在有魔法的设备上下载好文件之后,手动安装呢?当然可以!从Github下载文件打开 Starship的Github仓库 在里面找到合适你系统版本的预编译文件。如果你不清楚要选哪个,那么对于大多数X86的Linux,starship-x86_64-unknown-linux-gnu.tar.gz更合适。上传至服务器并安装Starship下载好之后,通过(s)ftp协议将文件传到远端服务器。推荐使用自带ftp协议的ssh终端,如 MobaXterm如果你使用 MobaXterm ,那么将文件拖入这里即可传输至远端服务器。随后,执行以下两条指令来安装Starship解压文件:tar xvf starship-x86_64-unknown-linux-gnu.tar.gz将 starship 可执行文件复制到 /usr/local/bin 目录:sudo mv starship /usr/local/bin/至此,就已完成安装。随后按照 官方文档 里面的第二步及随后步骤继续配置即可。如果Shell的样式没有变化,请重新发起SSH连接以重载Shell。附:设置开机启动以及自定义样式注意,以下内容都是官方文档里面的,如果你在官方文档中进行了后续步骤,就不必理会本文的后续内容了设为开机启动(基于默认的Bash)打开bash配置文件vi ~/.bashrc将光标移动到最底部,另起一行,粘贴以下内容并保存文件:eval "$(starship init bash)"自定义样式创建Starship配置文件目录并编辑配置文件mkdir -p ~/.config && vi ~/.config/starship.toml目前博主自用的配置文件如下,可以直接粘贴进去,或者配置自己的样式:format = """ [](#9A348E)\ $os\ $username\ [](bg:#DA627D fg:#9A348E)\ $directory\ [](fg:#DA627D bg:#FCA17D)\ $git_branch\ $git_status\ [](fg:#FCA17D bg:#86BBD8)\ $c\ $conda\ $elixir\ $elm\ $golang\ $gradle\ $haskell\ $java\ $julia\ $nodejs\ $nim\ $rust\ $scala\ [](fg:#86BBD8 bg:#06969A)\ $docker_context\ [](fg:#06969A bg:#33658A)\ $time\ [ ](fg:#33658A)\ \n$character""" # Disable the blank line at the start of the prompt # add_newline = false # 将提示符中的 '❯' 替换为 '➜' [character] # 此组件名称为 'character' success_symbol = '[➜](bold green)' # 将 'success_symbol' 字段设置成颜色为 'bold green' 的 '➜' [status] style = 'bg:blue' symbol = '🔴 ' success_symbol = '🟢 SUCCESS' format = '[\[$symbol$common_meaning$signal_name$maybe_int\]]($style) ' map_symbol = true disabled = false # You can also replace your username with a neat symbol like or disable this # and use the os module below [username] show_always = true style_user = "bg:#9A348E" style_root = "bg:#9A348E" format = '[$user ]($style)' disabled = false # An alternative to the username module which displays a symbol that # represents the current operating system [os] style = "bg:#9A348E" disabled = true # Disabled by default [directory] style = "bg:#DA627D" format = "[ $path ]($style)" truncation_length = 3 truncation_symbol = "…/" # Here is how you can shorten some long paths by text replacement # similar to mapped_locations in Oh My Posh: [directory.substitutions] "Documents" = " " "Downloads" = " " "Music" = " " "Pictures" = " " # Keep in mind that the order matters. For example: # "Important Documents" = " " # will not be replaced, because "Documents" was already substituted before. # So either put "Important Documents" before "Documents" or use the substituted version: # "Important " = " " [c] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [conda] format = '[$symbol$environment](dimmed green) ' [docker_context] symbol = " " style = "bg:#06969A" format = '[ $symbol $context ]($style)' [elixir] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [elm] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [git_branch] symbol = "" style = "bg:#FCA17D" format = '[ $symbol $branch ]($style)' [git_status] style = "bg:#FCA17D" format = '[$all_status$ahead_behind ]($style)' [golang] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [gradle] style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [haskell] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [java] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [julia] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [nodejs] symbol = "" style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [nim] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [rust] symbol = "" style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [scala] symbol = " " style = "bg:#86BBD8" format = '[ $symbol ($version) ]($style)' [time] disabled = false time_format = "%R" # Hour:Minute Format style = "bg:#33658A" format = '[ ♥ $time ]($style)'效果如下:更详细的配置方法可以参见:Starship 配置⸺在终端上显示 Git 状态、Python 虚拟环境、命令运行时间等
2024年08月10日
45 阅读
0 评论
3 点赞
2024-01-01
记一次定时器实现呼吸流水灯的代码优化过程
之后再更新
2024年01月01日
9 阅读
0 评论
0 点赞
2023-11-07
宿舍桌搭记录(一):左上置物架(部分)
本系列用来记录博主宿舍的陈设,以及安利一些实用的宿舍低价好物,是真实的低价且好用,而不是B站上动亟十几几十元起步的那种小贵物件。总览先放一张本区域的全家福:看起来比较乱,因为大部分设备都在充电。这里就可以看出本区域的职能是充电与储能区,并浅浅兼任一下杂物区。三角插排目光首先来到右上方的三角插排。这块插排作为本区域的核心角色,是其它AC-DC电路的源头。这个三角插排其实并不符合新国标,拆开目测线宽,真实额定功率应该在1kW左右,不过在限电800W的宿舍场景完全够用了,价格只要3.9元三角插排最上方的插座是给左侧第二层置物架的插排供电的,本期不会出现,可以期待之后几期。四口充电头三角插排右侧的插座上是一块疑似三无的“四口快充头”,加引号是因为9块多的价格不可能支撑得起快充协议芯片。用USB功率计实测,这款宣称30W充电功率的四口充电头单口最大电流1.46A(7.3W),四口满载时电流0.9A(单口4.5W),也就是最大功率18W。单看这个成绩可以说是惨不忍睹,虚标严重,但是考虑到它以不到10元的价格就提供了4个充电口共计18W的功率,同时发热也不是很大,总体来看还是挺值的。个人觉得这个头适用于要求口多,但不要求充电速度的场景,比如接usb小挂灯,小台灯,还有给蓝牙耳机、蓝牙鼠标什么的充电用。四口充电头的黑色线目前没有使用,其余三根线分别连接了一块四并18650电池盒,一条八年前的古早充电宝,以及一块正在给18650充电的TP4056锂电充电板。电池盒四并电池盒的主板是一块12块钱左右的18W双向快充板,大概三年前买的,现在还在服役。里面的电池是两条淘宝最便宜的那种18650电池,标称4800mWh,实际应该还不到。古早充电宝古早充电宝长条造型5V1A,购入于2015年前后,因为在家里刷了很久的存在感一直不舍得扔,所以上了大学之后就带到了学校。其实那时候充电宝已经坏了,但奈何拆不开没法修理。发布本文的前几个小时,博主灵光一现成功拆开了充电宝,原来是里面18650连接主板的正极导线断了,重新焊上,遂复活。不过里面的电池饿了两年应该也快不行了,现在留着纪念意义居多。TP4056至于TP4056充着的那块带端子的锂电,是从博主家里用坏的收音机上面拆下来的,有些年头了,也是纪念意义居多。DC5V电源三角插排下方的插座连接的是全家图里面中上方的黑色5V10A DC5525电源适配器。这块适配器是三个月前以7.9元的价格购入的,最初是为了打造一个可以为5V直流设备供电的电站,搭配电源上方的七口USB扩展坞食用。可能有人会有疑问:你都有前面提到的四口充电头了,还不够用吗?还真不够细数一下需要5V供电的设备:一座台灯,一条灯带,一台屏幕挂灯,一根服务器(也就是运行博客的这台)...不算需要充电的耳机,鼠标,遥遥领先,电池,充电宝,夜视仪之类的设备,单这四件就已经把四口充电头插满了。所以这个5V电站应该算是刚需(x后来,博主觉得晚上宿舍断电,各种用电器跟着一起断这件事太寻常了,于是想把这个充电区的至少一部分改成UPS,以实现夜间不断电。用充电宝需要每天手动切换输入输出,不够优雅;用220V的UPS又不太安全,于是相中一款只需要15元的5V3A的UPS模块,再搭配上另购的33元16Ah带保护板的18650软包锂电,就完美的实现了一台5V供电的UPS。把它接在有独立供电口的7口USB集线器上,5V电站就出现了。此后,至少照明系统可以彻底向熄灯断电say goodbye了。为了方便查看容量以及检测功率以防止可能的短路情况,博主给UPS又加上了一块电压电流表头。电压直接监测锂电两端,可以通过电压估计电池剩余容量;电流监测输出端,心算乘5就是功率。外壳是三块100mm*100mm的亚克力板用手电钻切割开的,再在前面板上给表头切出开口,完美配合。输入和输出端口因为不想把原先的接口剪断,就都各套了一层转接头。集线器全家图中在5V适配器上方的就是前文提到的USB集线器了。集线器有7个USB输出,应该是1分(3+(1分4))的结构,每个口都可以独立开关。侧边带有一个DC2517的独立供电口,通过一个转接头与UPS的输出相连。集线器上面从左到右依次是服务器、另一块四并18650电池盒主板的充电线,暖黄光COB灯带,遥遥领先的充电线和一块单独的18650电池仓的充电线。服务器就是紫电猫8.8元随身WIFI刷Debian系统教程提到的这条服务器,这里就不赘述了,免得有人说博主话多,也不放图了,要不然太占位置。另一块电池盒四并电池盒的主板是一块13块钱左右的22.5W双向快充板,带一个测温探头,一个月前购入。里面的电池是两条2000mAh的拆机电池,每节6.68元,实测容量并未测试,但比淘宝最便宜的那种18650明显要重很多,也明显更耐用。灯带这条1M长的暖黄光COB灯带是在淘宝叠券买的,只花了不到2元,线长1.5M,带一个开关。满载电流大概在0.7A,比较节能。唯一美中不足的就是暖黄光有点暖的过头了,用来照明有些过于黄。(随后补图)遥遥领先遥遥领先已经有些年纪了,它发布于七年前的11月,是一台华为畅享6。用到目前装一些旧版软件也还堪用,可惜屏幕碎了,观感不是很好,充电也有些问题,大约是micro-usb接口松掉了。此时不知从哪里远远地飘来一句声音,仔细倾听,好像是什么......遥遥领先!独立电池仓一块TP4056充电板连接着一条18650电池仓。TP4056这款充电模块便宜好用,如果愿意等的话,淘宝上可以找到1元左右的价格。这个充电器最开始是给一个改了16850供电的小灯带的电池充电用的,那是一条装饰盒装礼品用的灯带。不过后来因为太暗了以及换宿舍,就把那条灯带换下来了。没有接线的设备除了以上供着电的设备以外,还有几个没有接线的设备。魔方初中时期有一段时间学校很是流行拧魔方,博主那时候也买了一个。现在回想起那个时候,哪怕只是看着魔方静静的躺在桌兜里,心里都是美滋滋的,更别提课间和同学一起玩,教新人魔方公式,甚至是上课偷玩了。少年的快乐就是这么简单。PS:博主认为少年一词是少男和少女的总称,并不带有性别色彩现在魔方公式已经基本(完全)忘光了,这个魔方和包装盒也变成给UPS垫高的工具了。不知道多年以后,面对UPS,这块三阶魔方是否会回想起博主攥着它和同学谭笑言欢的那个遥远的下午?HDMI切换器有一次在淘宝捡垃圾时看到的,只要6元就有一个标称4K*2K的三进一出HDMI分线器,这个价格就算只能支持1080p也值了,遂购入,不过还没有测试。电打火机就是在图中出现过的一条五彩斑斓的紫色打火机。这是博主高一时候收到的来自同学的生日礼物,因为很有意思就一直带在了身边。打火机不是重点,重点是电。每当按下按钮时,看着紫色的电弧肆意飞舞,再加上鼻尖淡淡的电离出的臭氧味,有种很鲜活的生动感。当然日常最大的作用其实是点蚊香。夜视仪这台DIY的夜视仪应该是这个区域最有意思的小玩意了,主动式红外夜视仪1080p画质带屏幕。它的原理其实很简单,主体部分就是一台拆掉红外滤光片的运动相机,给相机加上外置供电,带散热片和风扇的红外发生器,就完成了。相机大约¥30,电池¥6.68,散热片¥3.65,三颗红外灯珠¥7.5,风扇¥2.9,PCB板¥2.1,16G存储卡¥6.67(是的,这款运动相机支持拍照和录像),充电宝主板是从废旧充电宝上拆下来的。总价格来到了¥59.5,可以说是非常实惠了。实测夜间最远可视距离在15M左右,因为红外灯珠上加了聚光镜头。后来,朋友看见了,觉得缺点什么东西,于是帮博主打印了现在图里的白色手柄。不得不说,握持感非常棒。吸尘器购买价格仅为¥5的USB吸尘器,非常适合宿舍使用,吸吸浮灰,头发,清理一下各种角落,又或者是键盘的缝隙,十分实用。尾声第一阶段的分享就告一段落了,下一篇分享打算做一个胶带特辑。博主手里目前有十几种功能各异的胶带。
2023年11月07日
37 阅读
0 评论
6 点赞
1
2
3
4