聊聊身边的嵌入式,英语学习利器点读笔

家里有小孩的朋友,可能对下面的这款产品不陌生。

点读笔,一个会发声的电子产品,我当时为了给孩子做英语启蒙,买了小达人点读笔(上图最下方那个,另外两个分别是宝玩英语和巧虎配套的点读笔),用了好几年了,非常不错。既不用自己费力的念,同时发音也更标准。另外小孩子还可以在不需要大人陪伴的情况下,自己拿着去读书。先发个小视频,大家看看效果。

需要有能支持点读的书,同时需要在笔里安装书对应的点读包才可以使用。使用这个点读笔带孩子读了有几百本书了,所以非常推荐家里有小孩的朋友买一个。除了小达人,还有毛毛虫等系列,不过据说小达人的支持的图书种类比较丰富一点。

用了这么多年的嵌入式产品,怎么能不去研究下它的工作原理呢?

能够实现点读功能是因为点读笔的光学笔头可以识别出印在图书中的二维编码(OID编码),OID(Optical Identification Device)编码是一种二维光学辨别编码,通过编码的不同组合承载不同的内容。这些编码的实际印刷尺寸非常小,以印刷的方式呈现在图书中,但肉眼无法清晰分辨,就像完全隐身一样。

笔头识别出OID编码后,交给MCU进行处理,MCU找到事先存储在存储器中与之相对应的语音文件,然后通过喇叭播放出声音。整体框图如下:

原理并不复杂,目前有松翰、凌阳、安凯等方案。点读笔厂家也都是选择公版的方案进行局部的修改完成的,所以你会看到有一堆品牌的点读笔,区别主要就是外观长的不一样。产品开发过程中重点需要关注的地方有笔头的灵敏性、在各种不同角度下的识别率,还有功耗情况,以及音色是否饱满、好听。

由于这笔原价几百块钱,我就不拆解自己手里的了,网上找了两张别人拆解后的图片。

小达人点读笔内部,来源于网络https://zhuanlan.zhihu.com/p/351727573 

巧虎点读笔内部,来源于网络https://www.mydigit.cn/forum.php?mod=viewthread&tid=139592

某点读笔,来源于https://www.bilibili.com/video/BV1Q54y1e7M6/

点读笔内部大同小异,其中一款用的MCU是ANYKA(安凯技术公司)的芯片  AK1060L,一款ARM9芯片。

另外找了一个点读笔的参考电路,MCU用的是ZC3202N

查了下,该MCU是深圳市组创微电子有限公司(Chomp Microelectronics)的芯片,但是没有找到Datasheet。

从原理图可以看出该MCU支持USB、MMC、音频等接口。

下面是音频功放电路,使用了SCE8891芯片。

下面这部分是存储电路,也有用SD卡的,用于存储点读包。

下面是USB供电以及按键开关机电路

最后一部分是OID译码电路

使用的是松瀚的SN9P701-00X芯片,表头Sensor使用的是SN9S102芯片。

虽然点读笔的原理都是一样的,但是不同厂家的点读笔是没法通用的,这里我认为更多的是商业上的考虑。

欢迎关注我们:

添加下方管理员微信,可获取完整版pdf原理图,同时可加入嵌入式交流群。

觉得文章不错,点个赞支持一下吧。


推荐阅读:

专辑|Linux文章汇总

专辑|程序人生

专辑|C语言

我的知识小密圈

关注公众号,后台回复「1024」获取学习资料网盘链接。

欢迎点赞,关注,转发,在看,您的每一次鼓励,我都将铭记于心~

嵌入式Linux

微信扫描二维码,关注我的公众号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/465545.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

EasyUI_datagrid

案例一丶jquery.easyui.min.js:10631 Uncaught TypeError: this.renderEmptyRow is not a function 解决方法:datagrid记录为空就会报错。是easyui里没处理return 空的方法。需要进行添加一些东西。具体我也不清楚, 案例二丶清除datagrid右侧空白区域 查…

三枚硬币自制收音机

大家好,我是记得诚。我们称这个收音机为三个硬币收音机是因为我们使用了三个硬币作为锚点,连接收音机各个部件,这将使我们的制作过程变得极为简单。在这个收音机中我们使用了一个特殊的10晶体管集成电路,使最后做出的收音机效果非…

双重检查锁实现单例模式的线程安全问题

一、结论 双重校验锁的单例模式代码如下: public class Singleton {   private static Singleton singleton; private Singleton() {} public static Singleton getSingleton() {     if (singleton null) { // 1       synchronized (Singleton.clas…

摇杆控制方向原理_为工业安全守好”门”!各种方向的控制阀原理图大集合

单向的、换向的....你想了解的方向控制阀都在这里了!方向控制阀门液压阀是用来控制液压系统中油液的流动方向或调节其流量和压力的。方向控制阀作为液压阀的一种,利用流道的更换控制着油液的流动方向。单向型方向控制阀是只允许气流沿一个方向流动的方向…

对于新生代农民工,你有什么想说的?

昨晚上这个新闻很多人转,但是可能很少有人知道他的链接出处,链接来自于http://www.mohrss.gov.cn/SYrlzyhshbzb/jiuye/gzdt/202108/t20210816_420736.html我记得我还在上小学的时候,我们家有干不完的农活,暑假每天都要下田干活&am…

谁是经营之神

—北京维富友携手北京服装学院开展服装ERP沙盘大赛时间4月21日,地点北京服装学院,参加人数35人,参加人员北京维富友软件公司高级讲师、服装学院教师和同学共35人。目的:为了让学生更好的掌握服装企业管理和盈利管控,北…

在Android初次的前期学习中的二个小例子(2)

Hello13:SQLite数据库 一、简述SQLite的概念和主要特性SQLite是一个轻量级的关系型数据库,运算速度快,占用资源少,使用非常方便,支持SQL语法标准和数据库事务原则。相对于SharedPreferences使用文件保存数据,SQLite具有…

access 增加字段 工具_Java效率工具之Lombok

作者:LiWenD正在掘金来源:https://juejin.im/post/5b00517cf265da0ba0636d4b上一篇:数据库查询速度优化之解决技巧还在编写无聊枯燥又难以维护的POJO吗?洁癖者的春天在哪里?请看Lombok!在过往的Java项目中&…

一文读懂 | 进程并发与同步

并发 是指在某一时间段内能够处理多个任务的能力,而 并行 是指同一时间能够处理多个任务的能力。并发和并行看起来很像,但实际上是有区别的,如下图(图片来源于网络):concurrency-parallelism上图的意思是&a…

rust卡领地柜权限_RFID智能医疗耗材柜,上海智能高值耗材柜,国药智能医用耗材柜...

近几年因为我们的医疗改革一直在进步并改革,国家对我们的医疗方面的补助也有了明显的加大投入,与此同时让各种公立私立医院如雨后春笋般层出不穷,各大医院为了在医疗市场占有一席之地,都在各个方面开始想办法提升自己医院的水准。…

刚接触电子时,有过哪些百思不得其解的问题?

青少年时期,刚接触电子时,出于好奇,对这方面的东西也比较关注,但同时也衍生了一些百思不得其解的疑问,比如...01物理书里说大地是导体,那为什么我的小灯珠却不亮!?02初三时学了物理的…

建立管理SQL Server登录帐户

1、打开SQL Server 2005的管理工具,选择以windows身份验证模式登陆。然后右击服务器选择属性。2、在打开的服务器属性页面中,选择“安全性”做如下图设置:3.在windows上新建三个组:ReceptionEmployees,ITEmployees。4、然后在SQL …

c++ doxygen 注释规范_利用Doxygen给C程序生成注释文档

利用Doxygen为C程序生成注释文档一、Doxygen工具的安装利用Doxygen工具生成API帮助文档需要下载安装以下三个软件:(1)Doxygen:可以从一套归档源文件开始,生成HTML格式的在线类浏览器,或离线的LATEX、RTF参考手册。本文中所使用的版…

【2021新版】一线大厂 Go 面试题合集

秋天到了,又到了工程师们躁动不安,蠢蠢欲动的季节~这不,金九银十已然到了家门口,现在后台就有不少人问我:现在外边大厂面试都问啥想去大厂又怕面试挂面试应该怎么准备Go 开发前景如何啥样的后端适合切 Go 技术栈...面试…

python开发【基础二】

基本数据类型: 1、数字 在Python2中,分为整形(int)和长整形(long)。 在Python3中,都是int。 #1、将字符串转换为数字 a "123" v int(a) print(v) print(type(v))#2、当前数字的二进制,至少用几位表示 1位等于8个字节.…

can总线资料

应知识星球的同学要求,整理了一些can总线资料。在公众号后台回复 【can总线】获取资料截图推荐阅读:专辑|Linux文章汇总专辑|程序人生专辑|C语言我的知识小密圈

Go语言基础之4--流程控制

一、if else语句 1.1 基本语法1 语法1: if condition { //do something } 语法2: if condition { //do something } else { //do something } 语法3: if condition { //do something } else if condition { //do something } else { //do som…

大家都挺难的​

这是昨天小号发的一个推文小时候觉得读书苦 但是现在想想,如果那时候跟现在一样用功 考上北大清华都没问题然后想到跟我家小云聊天的内容,挺有感触的。小云最近在我们小区的业委会上班,业委会在我家旁边,上班就是从这栋楼到另一栋…

android handler封装_Handler都没搞懂,你拿什么去跳槽啊?!

0. 前言做 Android 开发肯定离不开跟 Handler 打交道,它通常被我们用来做主线程与子线程之间的通信工具,而 Handler 作为 Android 中消息机制的重要一员也确实给我们的开发带来了极大的便利。Handler应用之广泛,可以说只要有异步线程与主线程…

做梦也想有一个这样的实验室

从现在开始,努力攒钱,等有钱了,自己也开一个这样的实验室。推荐阅读:专辑|Linux文章汇总专辑|程序人生专辑|C语言我的知识小密圈关注公众号,后台回复「1024」获取学习资料网盘链接。欢迎点赞,关注&#xff…