摘要: 1. 概念 物联网,Internet Of Things(IoT),是互联网的延伸和扩展,是指物品与物品之间信息交换和通信组成的网络智能家居,Home Automation,是通过互联网技术将家中的设备进行互联,提供控制功能;可以说智能家居系统是物联网应用的具体实例 智能家居系统从广泛意义上包括室内 阅读全文
posted @ 2018-09-23 19:07 北落不吉 阅读(1610) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 Linux中,将包括MMC、SD、SDIO统称为MMC子系统 MMC子系统从功能上可分为三个层次 2. 数据结构 MMC中包含的主要数据结构如下 mmc_host主要字段如下 mmc_card主要字段如下 mmc_ios字段如下 mmc_driver字段如下 mmc_bus_ops字段如 阅读全文
posted @ 2018-09-13 19:12 北落不吉 阅读(6245) 评论(1) 推荐(0) 编辑
摘要: 1. 介绍 MMC,MultiMediaCard,即多媒体卡,是一种非易失性存储器件,有7pin,目前已基本被SD卡代替 eMMC,Embedded Multimedia Card,内嵌式存储器,以BGA方式封装到SOC上;内置主控制器,以实现统一MMC接口 SD,Secure Digital Me 阅读全文
posted @ 2018-09-05 22:43 北落不吉 阅读(2394) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 8250是IBM PC及兼容机使用的一种串口芯片; 16550是一种带先进先出(FIFO)功能的8250系列串口芯片; 16550A则是16550的升级版本, 修复了FIFO相关BUG, 也是目前比较常见的串口芯片. 本文介绍的是Xilinx UART 驱动分析, 因为没有找到其data 阅读全文
posted @ 2018-08-30 14:48 北落不吉 阅读(1618) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 本文介绍了TTY打开、TTY读和TTY写操作的函数跟踪过程 2. 示例 下面是一个简单的Linux TTY打开和读写过程 3. 打开 open会调用tty_open, 其分析如下: uar_open分析如下 4. 写入 write会调用tty_write, 其分析如下: uart_wri 阅读全文
posted @ 2018-08-28 23:30 北落不吉 阅读(864) 评论(0) 推荐(0) 编辑
摘要: 1. UART介绍 UART是一类tty设备, 是一种串行端口终端, 具体可参考<UART接口介绍>在Linux中UART属于tty驱动的一部分, 具体实现包括驱动抽象层和硬件实现层 本文主要介绍了UART驱动抽象层, 代码主要是drivers/tty/serial/serial_core.c 2. 阅读全文
posted @ 2018-08-25 20:34 北落不吉 阅读(846) 评论(0) 推荐(0) 编辑
摘要: 1. TTY介绍 TTY(TeleType)指Linux中的一类终端(Terminal)设备, 是一种字符设备 在Linux中, tty可分为如下几类- 串行端口终端(serial port terminal): 指使用计算机串行端口连接的终端设备, /dev/ttySn- 伪终端(pseudo t 阅读全文
posted @ 2018-08-25 11:27 北落不吉 阅读(3203) 评论(0) 推荐(0) 编辑
摘要: 1. 背景 在<Jasper语音助理介绍>中, 介绍了Linux音频系统, 本文主要介绍了Linux下音频编程相关内容. 音频编程主要包括播放(Playback)和录制(Record), 大概过程简单总结如下:播放: 将音频文件进行解码(Decode)生成PCM数据, 并将其送入音频设备中播出.录制 阅读全文
posted @ 2018-01-08 23:43 北落不吉 阅读(3743) 评论(0) 推荐(1) 编辑
摘要: 1. 介绍 Jasper是一款基于树莓派的开源语音控制助理, 使用Python语言开发. Jasper工作原理主要是设备被动监听麦克风, 当收到唤醒关键字时进入主动监听模式, 此时收到语音指令后进行语音识别, 然后对得到的文本进行语义内容解析并处理, 然后将处理结果通过语音合成并输出给用户. 其中涉 阅读全文
posted @ 2018-01-06 22:22 北落不吉 阅读(2925) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 笔者Raspberry Pi 2 Model B为例介绍 1.1 参数 Raspberry Pi 2 Model B硬件参数如下: 1.2 接口 接口信息如下图所示: 2. 串口 由于RaspberryPi默认是没有显示器的, 为了方便调试笔者购买了USB转TTL模块(3V3) 首先US 阅读全文
posted @ 2017-10-13 21:27 北落不吉 阅读(938) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 OpenWRT是一款第三方路由器固件, 其特别在于开放性, 如它的文件系统可写, 用户可在路由器上安装需要的第三方软件.通过刷入OpenWRT, 我们可以完成如下事情 - DLNA共享 - 私有NAS/私有云存储(Seafile) - ShadowSockFQ - 远程下载(transmission/transmission-web) … 2. 设备选购 由于OpenWRT并非支持所有... 阅读全文
posted @ 2017-10-12 11:41 北落不吉 阅读(2537) 评论(1) 推荐(0) 编辑
摘要: 1. 介绍 前面介绍了, 但是Nginx是一个提供静态文件访问的web服务 首先我们介绍一下Web服务器, 应用服务器和应用框架的关系 客户端: 浏览器或者app Web服务器: Web服务器是指驻留于因特网上某种类型计算机的程序。当客户端连到服务器上并请求文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。服务器使用HTTP(超文本传输协议)... 阅读全文
posted @ 2017-08-10 16:58 北落不吉 阅读(588) 评论(0) 推荐(0) 编辑
摘要: 1. 安装 CentOS 7上Nginx的安装和启动方法如下 # yum install nginx # firewall-cmd --permanent --zone=public --add-service=http # firewall-cmd --permanent --zone=public --add-service=https # firewall-cmd --reload # ... 阅读全文
posted @ 2017-08-09 11:39 北落不吉 阅读(5390) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 笔者发现每次登陆云服务器时都提示如下信息 There were xxx failed login attempts since the last successful login. 这让我非常诧异, 明显网络上有人尝试远程登陆云服务器. 2. 检测 首先我们可以使用nmap工具来检测服务器开发了哪些端口注意在另一个Linux主机上运行, 这里设定云服务IP地址为A.A.A.A # nm... 阅读全文
posted @ 2017-08-04 11:10 北落不吉 阅读(1096) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. 2. 安装 安装方法如下: 3. 启动 先要修改启动文件 启动失败解决办法 4. 命令 Redis 客户端的基本语法为 参考:<Redis教程 阅读全文
posted @ 2017-06-14 19:12 北落不吉 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 笔者使用的系统是CentOS 7, 默认使用的是mariadb来替代MySQL, 使用上基本一致. 2. 安装 安装方法如下: 启动方案如下: 注意: 安装完成后首次启动默认的root用户密码为空, 可以通过MySQL安全配置向导来进行安全方面的配置--> mysql_secure_in 阅读全文
posted @ 2017-06-12 17:05 北落不吉 阅读(483) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 Flask是一种使用Python 编写的轻量级Web应用框架, 实现了基础的核心, 用extension增加其他功能它的WSGI工具箱采用Werkzeug, 模板引擎则使用Jinja2 2. 使用 2.1 路由 2.2 反向路由 2.3 重定向 2.4 请求和响应 2.5 模板 flas 阅读全文
posted @ 2017-05-31 17:14 北落不吉 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 Web应用是一种基于客户端/服务器的应用程序.客户端通常在Web浏览器中运行, 向服务器发起HTTP/HTTPS请求(Request), 服务器处理请求后返回响应(Response) 2. 框架 这里的Web应用框架指的是Server端的Web框架 Web应用框架通常基于Model-View-Controller(MVC) 不同的语言有各自的实现, 比较流行的Web应用框架如下: C#... 阅读全文
posted @ 2017-05-31 16:22 北落不吉 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 BroadcastReceiver用于接收广播事件(Intent), 是Android四大组件之一 2. 使用 2.1 实现广播接收类 实现一个广播收类继承BroadcastReceiver类, 并覆写onReceive()方法 public class MyBroadcastReceiver extends BroadcastReceiver { @Override ... 阅读全文
posted @ 2017-04-19 15:11 北落不吉 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 1. 介绍 SQLite是一款轻型的数据库, 是遵守ACID的关系型数据库管理系统, Android系统已经在框架中适配接口供用户使用. 2. 数据类型 SQLite采用的是动态数据类型, 会根据存入值自动判断.SQLite具有以下五种常用的数据类型: 存储类 描述 NULL NULL 值 INTEGER 带符号的整数,根据值的大小存储在 1、2、3、4、6 或 8 字节中 REAL ... 阅读全文
posted @ 2017-04-14 18:32 北落不吉 阅读(448) 评论(0) 推荐(0) 编辑