精华内容
下载资源
问答
  • 信息模块怎么做
    千次阅读
    2018-08-09 16:59:33

    问题网址 : http://bbs.daxiangclass.com/?thread-268.htm

    模块化开发

    首先我们要知道什么是模块化开发?
    1. 模块就是一个有特定功能的文件,我们可以通过加载这些模块得到特定的功能
    2. 模块化开发就是js的功能分离,通过需求引入不同的文件
    3. 模块化开发可以使代码耦合度降低,避免代码多次在页面出现,他最大的作用就是重用
    模块开发要遵循的规范
    1. AMD规范也叫异步模块加载规范,在这个规范下模块会异步加载,不影响后面语句的执行,我们可以使用define定义模块,使用require调用模块
    2. CommonJS规范是服务器端模块的规范,node.js就采用了这个规范,每个模块都有一个单独的作用域,模块内部的变量无法被其他模块读取,除非定义为global的对象和属性
    3. CMD规范通用模块定义.CMD是按需加载,一个模块就是一个文件

    更多相关内容
  • 我最欢就是带语音播报的产品,写程序的过程太枯燥了。 有些产品一开发就是几个月,整个过程都跟冷冰冰的LED、蜂鸣器、按键、LCD屏打交道难免有些寂寞。 加上语音就不同了,录制好一个好听的妹子声音,不但...

    我最欢就是做带语音播报的产品,写程序的过程太枯燥了。

    有些产品一开发就是几个月,整个过程都跟冷冰冰的LED、蜂鸣器、按键、LCD屏打交道难免有些寂寞。

    加上语音就不同了,录制好一个好听的妹子声音,不但可以提升整个产品的逼格,自己也满满的成就感。

    今天就来聊聊带语音的产品怎么做。

    实际产品中,用单片机播放语音方案有很多种,唯一没有开发板那种,因为成本各方面都不满足产品需求。

    另外就是加一个语音芯片,如果利润高的产品会优先使用这种,一个几块钱还能接受。

    还有就做软解码的,就是把语音文件解码成喇叭能够识别的PWM和DAC数据,这种技术难度最大,对工程师编程水平是一个考验。

    虽然难度大,但是成本低,不需要额外增加语音芯片,老板的最爱,反正工程师掉点头发对公司又没影响。

    软解码大概在6,7年前做电子狗的时候玩过一次,大概原理就是把语音文件合并成bin文件,烧录到外置的flash里面,做好每条语音的地址映射。

    用单片机读取Flash的数据并解码,然后转换成PWM或者DAC经过功放输出到喇叭。

    这种一般要有个写上位机的配合,以前市面上没有在把语音文件合并成bin文件的工具,现在好像有了。

    时间相隔太久,很多细节记不清楚了,后续如果还能找到资料再跟大家分享。

    今天无际单片机编程给大家讲后面我做过的一种方法:用语音芯片

    这是语音芯片的一些介绍:

    我们需要关注的就是,这个芯片对语音长度的支持分别有55s、25s、85s,如果产品语音少还是挺合适的。

    这种芯片如果语音少的直接用芯片内部的Flash,如果语音多了就需要外挂一个Flash来存储语音数据。

    一般每个产品的语音都是不一样的,那怎么把我们想要的语音通过这个语音芯片播放出来呢?

    想实现这个功能要经过以下几个步骤:

    1. 通过软件把语音文案转成mp3格式语音文件,类似的软件有很多,比如说科大讯飞。
    2. 把语音文件提供给芯片方,让他们帮你定制。
    3. 拿到样品后就是焊接到自己板子上,然后根据芯片规格书写控制时序程序,每条语音都对应了一个地址,只要把地址数据写入芯片,芯片就会自动播放指定语音。

    整个过程是不是非常简单?

    除了播放语音功能以外,还有一些附加功能,比如说静音,音量调节、循环播放等等。

    下面来看下芯片的引脚定义

    一般使用3根线来跟单片机通讯。

    PA0/SDA:数据线

    PA1/SCL:时钟线

    PA2:忙碌线,当有语音播报的时候,该引脚为低电平。

    芯片的控制时序如下:

    不难发现,数据开始之前SCL需要先产生5ms的低电平同步头,然后数据在SCL线的上升沿被读取,一共读取8位,也就是1个字节。

    如果你不会写这个时序也没关系,芯片原厂都有提供例程。

    展开全文
  • 正如我们将要看到的那样,Python鼓励模块化的程序结构,将功能相近的可重用单元组织在一个模块中,这种方式符合直觉,同时也合乎直觉。在这个过程中,我们也会探索Python模块、导入以及对象属性这三个核心概念。 ...

    实际上,程序通常涉及不只一个文件。除了最简单的脚本之外,程序一般将采用多文件系统的形式,即使能够自己编写单个文件,也一定会使用到其他人已经写好的外部文件。

    Python程序架构是将一个程序分割为源代码文件(也就是模块)的集合,并将这些集合连接成整体的方式。正如我们将要看到的那样,Python鼓励模块化的程序结构,将功能相近的可重用单元组织在一个模块中,这种方式符合直觉,同时也合乎直觉。在这个过程中,我们也会探索Python模块、导入以及对象属性这三个核心概念。

    如何组织一个程序

    从本质上讲,一个Python程序包括了多个含有Python语句的文本文件。程序拥有一个主体的顶层文件,辅以零个或多个被称为模块的支持文件。

    以下是模块的工作原理。顶层文件(又称为脚本)包含了程序的主要控制流程:这就是你用来启动应用程序的文件。而模块文件是工具库,这些文件中收集了顶层文件(或者其他可能的地方)要使用的组件。顶层文件使用了在模块文件中定义的工具,而这些模块又有可能使用了其他模块所定义的工具。

    尽管模块文件也是代码文件,但它们通常在运行时不需直接做任何事。作为替代,它们定义的工具会在其他文件中使用。在Python中,一个文件通过导人一个模块来获得这个模块定义的工具的访问权,这些工具被认为是这个模块的属性(即附加到模块对象的名称,例如函数)。总而言之,我们导入了模块、获取它的属性从而使用其中的工具。

    导入和属性

    下图是一个包含三个文件的Python程序的草图:a.pyb.pyc.py。文件a.py是顶层文件,它是一个由语句组成的简单文本文件,在运行时这些语句将从上至下执行。文件b.pyc.py是模块,它们也是含有语句的简单文本文件,但是它们通常并不是直接运行。就像之前解释的那样,取而代之的是,模块通常被想要使用它们的文件导入。
    Python程序
    例如,b.py定义了一个名为spam的函数,供外部来使用。就像我们提到的那样,b.py中包含一个Python的def语句来生成函数,这个函数会在之后通过给函数名后的括号中传入零个或更多的值来运行:

    def spam(text)#File b.py
        print(text, 'spam')
    

    现在,假设a,py想要使用spam。为了实现这个目标,a,py中也许要包含如下这样的Python语句:

    import b                         # File a.py 
    b.spam('gumby')            # Prints "gumby spam"
    

    第一条Python的import语句,给文件a,py提供了由文件b.py在顶层所定义的所有对象的访问权限。代码import b可以大致理解为:载入文件b.py,并给我能通过变量名b获取它所有的属性的权限。

    为了达到这样的效果,import以及from语句会按需运行并载入其他的文件。更确切地说,在Python中,跨文件的模块链接在运行时import语句执行后才会进行解析。实际效果就是,import语句将模块名(可以简单地认为是变量名)赋值了载入的模块对象。事实上,在一个import语句中的模块名起到两个作用:识别加载的外部文件,同时它也会变成赋值了被载入模块的变量。

    类似的,模块中定义的对象也会在运行时被创建,即在import执行时。import原则上会逐行运行在目标文档中的语句从而构建其中的对象。与此同时,每个在文件顶层赋值的名称都变成了模块的一个属性,这些属性可以被导入者访问。例如,a,py中的第二行语句通过使用对象属性语法,调用了模块b中所定义的函数spamspam在导入过程中通过运行def语句而创建)。代码b.spam可以理解为:取出存储对象b中名称为spam的值。

    在这个例子中,spam碰巧是个可调用的函数,所以我们可以在小括号内传入字符串'gumby'。如果你亲自编写了这些文件,并在保存之后执行a.py,那么字符串'gumby spam'就会被打印出来。

    如前所述,在Python脚本中随处可见object.attribute这种表示法:多数对象都有一些可用的属性,可以通过.运算符取出。有些是像函数这样可调用的对象,而其他的则是用来表示静态对象和属性的简单数据数值。

    导人的概念在Pytho之中贯穿始终。任何文件都能从任何其他文件中导入其工具。例如,文件a.py可以导入b.py从而调用其函数,而b.py也可能导人c.py以利用定义在其中的不同工具。导入链要多深就有多深:在这个例子中,模块a可导人b,而b可导人c,c可以再导入b,诸如此类。

    除了作为最高级别的组织结构外,模块以及模块包也是Python中程序代码重用的最高层次。在模块文件中编写组件,可让原有的程序以及任何其他之后可能编写的程序得以使用。例如,编写上图中的程序后,我们发现函数b.spam是通用的工具,可在完全不同的程序中再次使用。而我们所需要做的,只是从其他程序文件中再次导人文件b.py

    标准库模块

    注意上图最右侧的部分。程序导入的模块有一些是由Python自身提供的,而不是你所需要编写的。

    Python自带了很多实用的模块,称为标准库。根据最近的统计,这个集合体有超过200个模块,包含与平台无关的常见程序设计任务:操作系统接口、对象持久化、文本模式匹配、网络和Internet脚本、GUI建构等。虽然这些工具都不是Python语言的组成部分,但是你可以在任何安装了标准Python的环境下,通过导人适当的模块来使用它们。因为这些都是标准库模块,所以你可以理所当然地认为它们一定可用,而且在执行Pytho的绝大多数平台上都可运行。为了更全面地了解Python标准库模块,我们可以查看Pythor标准库参考手册,这份手册在Python安装后就可以看到,或者也可以使用https://www.python.org/的在线版本。

    因为有如此繁多的模块,这是唯一了解有哪些工具可以使用的方式。我们也可以在涉及应用级程序设计的商业书籍中找到Python库工具的教程,例如《Python编程》,不过手册是免费的,可以用任何网页浏览器查看(属于HTML格式),也可以使用其他方式(例如Windows中的帮助功能),而且每次Python发行时都会更新。

    展开全文
  • 大致意思是,用C++写了一个算法,成了dll,然后在C#里调用,在调试Dll的时候遇到了这样的问题。尝试了很多网上的方法,无效。经过三个多小时的挣扎,最后发现了问题在于,我运行的C#程序里给定的是相对路径,此时...

         大致意思是,用C++写了一个算法,做成了dll,然后在C#里调用,在调试Dll的时候遇到了这样的问题。尝试了很多网上的方法,无效。经过三个多小时的挣扎,最后发现了问题在于,我运行的C#程序里给定的是相对路径,此时调试dll就会报错,修改为绝对路径之后,问题解决。这是个很容易被忽视的问题,dll调试要仔细,谨防路径问题。

    展开全文
  • 【Linux】Linux基础知识(Linux模块

    万次阅读 多人点赞 2018-07-14 18:51:17
    Linux的内核模块机制允许开发者动态的向内核添加功能,我们常见的文件系统、驱动程序等都可以通过模块的方式添加到内核而无需对内核重新编译,这在很大程度上减少了操作的复杂度。模块机制使内核预编译时不必包含很...
  • Accounting Architecture : 会计模块架构 主要分为以下三个部分: Treasury:主要关注资金; Financial Accounting:FI-总账、应收、应付等等; Controlling:CO-费用、产品成本、获利分析等一些内部报表 ; ...
  • 一、引言数据中心机房作为公司内部一个重要的领域,如何保护好机房安全性能非常的重要,微模块机房是数据机房时代化进步的选择。而模块化数据机房,是将大型数据中心分割成若干个独立...
  • 前端模块化详解(完整版)

    万次阅读 多人点赞 2019-02-16 19:13:46
    前言 在JavaScript发展初期就是为了实现简单的页面交互逻辑,寥寥数语即可;如今CPU、浏览器性能得到了极大的提升,很...本文内容主要有理解模块化,为什么要模块化,模块化的优缺点以及模块化规范,并且介绍下开发中...
  • DIY一款4路USB转TTL串口调试模块

    千次阅读 2020-09-01 16:13:20
    最近调测程序经常用到单片机的三个串口同时交互通信,我使用1路USB转TTL串口调试模块不断切换,不仅影响观察效果,更是劳心劳力。 本打算淘宝选购4路USB转TTL串口调试模块,均价在60RMB...... 遂决定DIY一款4路USB转...
  • 【STM32】ESP8266模块简介

    千次阅读 2020-10-17 10:14:57
    ATK-ESP8266 是正点原子团队推出的一款高性能的 UART-WiFi(串口-无线)模块,ATK-ESP8266 板载了正点原子团队自主开发的 ATK-ESP-01 模块,该模块通过 FCC,CE 认证,可直接用于产品出口欧美地区。 ATK-ESP8266 ...
  • 模块学习总结

    万次阅读 多人点赞 2020-08-23 00:48:28
    准确来说,光模块是几种类别的模块的统称,具体包括:光发送模块Transmitter、光接收模块Receiver、光收发一体模块Transceiver和光转发模块Transponder。通常我们所说的光模块,一般是指光收发一体模块(下同)。 ...
  • 之前我们谈到了导入模块,然而并没有解释当你这么时会发生什么。因为导入是Python中程序结构的核心,所以现在要深入讨论导入这个操作,让这个流程尽量不再那么抽象。 有些C程序设计者喜欢把Python的模块导入操作...
  • 一、语音模块以及硬件模块开发的行情 硬件模块的开发——常用:语音模块 语音模块STC11L08XE 比如 人脸识别打卡器——虹膜识别(购买方式) 语音识别(购买方式) 车牌识别(购买方式) 华为手机(购买方式) 拿到...
  • python模块详细介绍

    万次阅读 多人点赞 2020-09-04 18:30:19
    模块 模块的简介和使用 简介 模块化是将程序分解为一个个的模块module,通过组合模块来搭建出一个完整的程序。 有点:便于团队开发,方便维护,代码复用。 在python中一个脚本(.py)文件就是一个模块,创建模块实际上...
  • Maven中子模块继承父模块的两种方式

    千次阅读 2020-04-09 11:12:59
    模块就是普通的父模块,主要工作在子模块; 案例如下: 父模块pom文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=...
  • 白光模块?彩光模块

    万次阅读 2021-02-05 10:03:03
    首先了解一下,光模块主要作用是什么? 光模块实际就是实现光/电、电/光转换,即在发送端,把电信号转换成光信号,再在接收端,把光信号转换成电信号的模块。 什么是白光模块(灰光模块)呢? 即当前普遍使用的光...
  • 四、jira模块讲解

    千次阅读 2019-11-03 14:19:31
    一.模块理解 模块是项目的组成部分:比如一个软件包含:user登陆:验证用户密码模块:支付模块:报告模块: ...3.如图输入模块名称,主管,描述,模块负责人信息后,添加按钮高亮,点击添加,则模...
  • 模块结构图初涉

    万次阅读 多人点赞 2019-12-07 11:08:05
    模块结构图是用于描述系统模块结构的图形工具,不仅描述了系统的子系统结构与分层的模块结构,还清楚地表示了每个模块的功能 模块模块是可以组合,分解和更换的单元,是组成系统,易于处理的基本单位 调用:在...
  • Python中几个非常有趣的模块

    万次阅读 多人点赞 2019-10-24 12:16:05
    最近学习Python,发现了许多有趣的模块。感觉开启了新世界的大门,因为我也不是对所有模块都熟悉,所以今天不是讲代码。 1、ItChat 这是一个微信自动回复的模块,因为我微信一直无法登陆,所以也没有测试这个模块的...
  • 如何优雅的使用GMS,为此我了个食用Google服务的magisk懒人包。 开端 其实吧,我对google服务的需求并不大,我主要就是在play store下下软件,同步同步通讯录和用Google相机,所以我就在magisk仓库找到了microG...
  • Inception模块

    千次阅读 2020-11-11 21:29:30
    Inception网络或Inception层的作用是代替人工来确定卷积层中的卷积核类型,或者是否需要创建卷积层和池化层,可以代替你来决定,虽然网络架构比较复杂,但网络表现却非常好。下图是Inception网络的核心:网络自行...
  • WiFi模块浅析

    万次阅读 2018-04-11 18:12:59
    一、什么是wifi 模块 百度百科上这样定义: Wi-Fi模块又名串口Wi-Fi模块,属于物联网传输层,功能是将串口或TTL电平转为符合Wi-Fi无线网络通信标准的嵌入式模块,内置无线网络协议IEEE802.11b.g.n协议栈以及TCP/IP...
  • 用Visio画软件(模块)功能图

    千次阅读 多人点赞 2022-05-02 17:06:02
    再下层的的子模块操作和上面步骤一样,一步步操作就好,然后我写的最后结果如下: 因为找了蛮久没有看到比较详细的教程,所以就写了这篇文章,给像我有一样困扰的初学者提供一下参考,欢迎有更好的方法一起交流!
  • 物联网模块--esp8266的wifi模块

    万次阅读 2021-04-15 11:16:25
    学习前提:基于参与人人卓越选题为智能家居,故选择学习ESP8266模块(以下简称为模块
  • YOLOX是把YOLO系列检测器转化成anchor-free的形式。YOLOX部署方便,支持ONNX,TensorRT,NCNN和Openvino部署。...学习率开始的时候非常小,接着warmup(热身)达到一个较高的值,最后用余弦曲线递减。 ...
  • ESP32TR2.4W是集成 2.4 GHz WiFi和蓝牙双模的无线模块,采用单芯片解决方案,拥有最佳的功耗性能、射频性能、稳定性、通用性和可靠性,适用于各种应用和不同功耗需求。WIFI特性• 802.11 b/g/n• 802.11 n (2.4 GHz)...
  • Simulink如何在线修改模块参数 (动态修改模块参数)

    万次阅读 多人点赞 2021-07-05 22:15:00
    典型的Simulink模块双击时会弹出对话框,在对话框中可以设置模块参数,如:双击正弦波模块(Sine Wave),可以设置正弦波幅值和频率;双击增益模块(Gain),可以设置增益值;双击PID控制器模块(PID Controller),...
  • python中threading模块详解

    千次阅读 2021-02-03 10:03:40
    python中threading模块详解,threading提供了一个比thread模块更高层的API来提供线程的并发性。这些线程并发运行并共享内存。...这里对使用多线程并发,和不适用多线程并发了一个比较:首先是不使用多线...
  • 模块测试

    千次阅读 2017-11-30 14:45:57
    本博客主要分享关于模块测试(单元测试)的相关概念。 以及再进行模块测试中的各种测试方法,和他们各自的优缺点。大型测试的软件程序(超过500条语句的程序)需要特别的测试对策。大型程序测试的第一个步骤:模块...
  • 原标题:万兆(10G SFP+)单模光模块的介绍及应用10G万兆单模光模块通常与OS2单模光纤搭配使用,最高速率为10.3Gb/s,目前主流采用SFP+封装类型。万兆单模光模块双纤波长为1310nm、1550nm,单纤波长主要以1270nm、1330...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,679,348
精华内容 671,739
热门标签
关键字:

信息模块怎么做