时钟同步

IIC总线规范

自作多情 提交于 2019-12-04 07:13:31
在消费者电子 电讯和工业电子中 看上去不相关的设计里经常有很多相似的地方 例如几乎每个系 统都包括 • 一些智能控制 通常是一个单片的微控制器 • 通用电路 例如 LCD 驱动器 远程 I/O 口 RAM EEPROM 或数据转换器 • 面向应用的电路 譬如收音机和视频系统的数字调谐和信号处理电路 或者是音频拨号电话的 DTMF 发生器 下面是 I2C 总线的一些特征: • 只要求两条总线线路 一条串行数据线 SDA 一条串行时钟线 SCL • 每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机 从机关系软件设定地 址 主机可以作为主机发送器或主机接收器 • 它是一个真正的多主机总线 如果两个或更多主机同时初始化数据传输可以通过冲突检测和 仲裁 防止数据被破坏 • 串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s 快速模式下可达 400kbit/s 高速 模式下可达 3.4Mbit/s • 片上的滤波器可以滤去总线数据线上的毛刺波 保证数据完整 • 连接到相同总线的 IC 数量只受到总线的最大电容 400pF 限制 Q I2C 总线支持任何 IC 生产过程 NMOS CMOS 双极性 两线――串行数据 SDA 和串行时钟 SCL 线在连接到总线的器件间传递信息 每个器件都有一个唯一的地址识别 无论是微控制器 LCD 驱动器 存储器或键盘接口

2019年11月12日

亡梦爱人 提交于 2019-12-04 06:53:34
一、USART简介   通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。   STM32 的串口资源相当丰富的,功能也相当强劲。STM32F103ZET6 最多可提供 5 路串口,有分数波特率发生器,支持同步单向通信和半双工单线通信,支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。使用多缓冲器配置的DMA方式,可以实现高速数据通信。 二、USART功能概述   接口通过三个引脚与其他设备连接在一起。任何USART双向通信至少需要两个脚:接收数据输入(RX)和发送数据输出(TX)。   RX:接收数据串行输。通过过采样技术来区别数据和噪音,从而恢复数据。   TX:发送数据输出。当发送器被禁止时,输出引脚恢复到它的I/O端口配置。当发送器被激活,并且不发送数据时,TX引脚处于高电平。在单线和智能卡模式里,此I/O口被同时用于数据的发送和接收。   串口外设主要由三个部分组成,分别是波特率的控制部分、收发控制部分及数据存储转移部分。   1、波特率控制   波特率,即每秒传输的二进制位数,用 b/s (bps)表示,通过对时钟的控制可以改变波特率。在配置波特率时

alsa声卡驱动分析总结(一)

落花浮王杯 提交于 2019-12-04 03:40:13
alsa声卡驱动分析总结 分析只列出部分重要代码,具体请参考 linux3.0 内核代码。 Alsa 架构整体来说十分复杂,但对于驱动移植来说我们仅仅只需要关心 ASOC 就足够了。 在学习 asoc 之前我们先了解一些专业术语: ASoC currently supportsthe three main Digital Audio Interfaces (DAI) found on SoC controllers and portable audio CODECs today, namelyAC97, I2S and PCM. ASoC 现在支持如今的SoC 控制器和便携 音频 解码器上的三个主要数字音频接口,即AC97 ,I2S,PCM(与pcm音频格式注意区分,前者是一种音频接口,后者是一种输入声卡的音频格式)。 AC97 AC97 ==== AC97 is a five wire interface commonly found on many PC soundcards. It is now also popular in many portable devices. This DAI has a reset line and time multiplexes its data on its SDATA_OUT (playback) and SDATA_IN

alsa声卡驱动分析总结

筅森魡賤 提交于 2019-12-04 03:35:01
不小心 参考文章: http://blog.csdn.net/droidphone/ http://blog.chinaunix.net/uid/22917448.html 分析只列出部分重要代码,具体请参考 linux3.0 内核代码。 Alsa 架构整体来说十分复杂,但对于驱动移植来说我们仅仅只需要关心 ASOC 就足够了。 在学习 asoc 之前我们先了解一些专业术语: ASoC currently supportsthe three main Digital Audio Interfaces (DAI) found on SoC controllers and portable audio CODECs today, namelyAC97, I2S and PCM. ASoC 现在支持如今的SoC 控制器和便携 音频 解码器上的三个主要数字音频接口,即AC97 ,I2S,PCM(与pcm音频格式注意区分,前者是一种音频接口,后者是一种输入声卡的音频格式)。 AC97 AC97 ==== AC97 is a five wire interface commonly found on many PC soundcards. It is now also popular in many portable devices. This DAI has a reset line and

Linux配置ntp时间服务器(全)

…衆ロ難τιáo~ 提交于 2019-12-03 23:51:50
时间服务器作用: 大数据产生与处理系统是各种计算设备集群的,计算设备将统一、同步的标准时间用于记录各种事件发生时序, 如E-MAIL信息、文件创建和访问时间、数据库处理时间等。 大数据系统内不同计算设备之间控制、计算、处理、应用等数据或操作都具有时序性, 若计算机时间不同步,这些应用或操作或将无法正常进行。 大数据系统是对时间敏感的计算处理系统,时间同步是大数据能够得到正确处理的基础保障,是大数据得以发挥作用的技术支撑。 大数据时代,整个处理计算系统内的大数据通信都是通过网络进行。 时间同步也是如此,利用大数据的互联网络传送标准时间信息,实现大数据系统内时间同步。 网络时间同步协议(NTP)是时间同步的技术基础。 (一)确认ntp的安装 1)确认是否已安装ntp 【命令】rpm –qa | grep ntp 若只有ntpdate而未见ntp,则需删除原有ntpdate。如: ntpdate-4.2.6p5-22.el7_0.x86_64 fontpackages-filesystem-1.44-8.el7.noarch python-ntplib-0.3.2-1.el7.noarch 2)删除已安装ntp 【命令】yum –y remove ntpdate-4.2.6p5-22.el7.x86_64 3)重新安装ntp 【命令】yum –y install ntp (二

Linux内网时钟同步问题(ntp和chrony)

杀马特。学长 韩版系。学妹 提交于 2019-12-03 23:22:10
我们都知道时钟同步可以使用外网服务器,在内网内不能连接外网的时候也需要时钟同步,那怎么进行呢? 选择内网的一台稳定的服务器作为时钟源,然后让其他机器都来同步这台机器即可。 注:其实ntp服务和chrony服务本质上差不多,他们之间都可以互相进行同步。不过为了避免不必要的麻烦,一般服务器都只选择同一时钟服务来讲进行同步。 一、ntp服务 安装: yum install ntp 1、服务端设置 修改配置文件cat /etc/ntp.conf 将如下外网的时钟源注释掉(前面加#) 如果这台作为内网时钟源服务端的话,做如下设置 ntp实现同步本机时钟 server 127.127.1.0 # local clock fudge 127.127.1.0 stratum 10 如下按需修改: restrict 10.0.0.0 mask 255.255.255.0 #允许10.0.0.0 网段中的服务器访问本ntp服务器进行时间同步(按自己内网来) restrict 10.0.0.16 #允许单个IP地址访问本ntp服务器(按ip来) restrict 192.168.111.0 mask 255.255.255.0 nomodify notrap #允许内网其他机器同步时间,如果不添加该约束默认允许所有IP访问本机同步服务 其它配置不用进行修改,保存退出配置文件 重启 systemctl

FPGA--UART串口通信

心不动则不痛 提交于 2019-12-03 01:32:25
一,串口相关知识 UART 通信 UART 首先将接收到的并行数据转换成串行数据来传输。消息帧从一个低位起始位开始,后面是 7 个或 8 个数据位,一个可用的奇偶位和一个或几个高位停止位。接收器发现开始位时它就知道数据准备发送,并尝试与发送器时钟频率同步。如果选择了奇偶校验,UART 就在数据位后面加上奇偶位。奇偶位可用来帮助错误校验。在接收过程中, UART 从消 息帧中去掉起始位和结束位,对进来的字节进行奇偶校验,并将数据字节从串行转换成并行。UART 传输时序如下图所示 : 串口通讯4根线:Vcc ,Gnd , Tx , Rx;TX-TTL发送端;RX--TTL接收端; 比特率:9600bps 就是每秒中传输9600bit; 串行通信的分类: 1、按照数据传送方向,分为: 单工:数据传输只支持数据在一个方向上传输; 半双工:允许数据在两个方向上传输。但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;它不需要独立的接收端和发送端,两者可以合并一起使用一个端口。 全双工:允许数据同时在两个方向上传输。因此,全双工通信是两个单工通信方式的结合,需要独立的接收端和发送端。 2、 按照通信方式 ,分为: 同步通信:带时钟同步信号传输。比如:SPI,IIC通信接口。 异步通信:不带时钟同步信号。比如:UART(通用异步收发器),单总线。 在同步通讯中

[现代操作系统] I/O 设备

匿名 (未验证) 提交于 2019-12-03 00:29:01
RAID CD-ROM ģʽ ģʽ, X Windows System ˼· CPU zh 如磁盘, 硬盘, 软盘, 常作为辅助存储器. 磁记录, 根据每个 小磁针 的极性记录 0, 1. 写的时候, 改变电流方向利用电流的磁效应感性去磁性. 读的时候, 利用电磁感应判断极性. 磁盘被组织成柱面, 每个柱面包含若干磁道, 磁道数与垂直堆叠的磁头个数相同. 磁道被分成若干扇区. 重叠寻道 (overlapped seek): 控制器同时操控多个驱动器进行寻道. 大多数磁盘都有一个虚拟的几何规格呈现给 OS, 控制器可以将虚拟的几何规格映射到实际的物理位置 RAID (Redundant Array of Inexpensive Disk) CPU 性能提升快于磁盘, 出现 并行 I/O RAID 背后的思想是将一个装满了的磁盘盒子安装到计算机上, 用 RAID 控制器替换磁盘控制器卡, 将数据复制到整个 RAID 上, 然后继续常规的操作 对 RAID 的并行操作, 分为 0 级到 5 级 RAID. 层级这个名称或许用词不当, 这里没有分层结构, 只是不同的组织形式而已 * 0 * 组成: 将 RAID 模拟的虚拟单个磁盘划分成 Stripe , 每个 stripe 带有 K 个扇区, 0 ~ k-1 扇区为 条带 0, k ~ 2k-1 为条带 1… 注意还未引入冗余,

SPI接口

匿名 (未验证) 提交于 2019-12-03 00:27:02
注:本博文大部分内容由华清远见彭丹老师整理! 一、SPI总线协议 1. SPI特点 1.1 采用主-从模式(Mater-Slave) SPI 规定了两个 SPI 设备之间通信必须由主设备 (Master) 来控制次设备 (Slave). 一个 Master 设备可以通过提供 Clock 以及对 Slave 设备进行片选 (Slave Select) 来控制多个 Slave 设备, SPI 协议还规定Slave 设备的 Clock 由 Master 设备通过 SCK 管脚提供给 Slave 设备,Slave 设备 本身不能产生 或控制 Clock, 没有 Clock 则 Slave 设备不能正常工作。 1.2 采用同步方式(Synchronous)传输数据 Master 设备会根据将要交换的数据来产生相应的时钟脉冲(Clock Pulse), 时钟脉冲组成了时钟信号(Clock Signal) , 时钟信号通过 时钟极性 (CPOL) 和 时钟相位 (CPHA) 控制着两个 SPI 设备间何时数据交换以及何时对接收到的数据进行采样, 来保证数据在两个设备之间是同步传输的. 关于时钟极性, 时钟相位名词含义下面会有解释。 1.3 数据交换(DataExchanges) SPI 设备间的数据传输之所以又被称为数据交换, 是因为 SPI 协议规定一个

几种常见的分布式锁的策略优缺点及对应处理

匿名 (未验证) 提交于 2019-12-03 00:19:01
前言 随着互联网的发展,各种高并发、海量处理的场景越来越多。为了实现高可用、可扩展的系统,常常使用分布式,这样避免了单点故障和普通计算机cpu、内存等瓶颈。 但是分布式系统也带来了数据一致性的问题,比如用户抢购秒杀商品多台机器共同执行出现超卖等。有些同学容易将分布式锁与线程安全混淆,线程安全是指的线程间的协同。如果是多个进程间的协同需要用到分布式锁,本文总结了几种常见的分布式锁。 基于数据库 悲观锁―事务 比如用户抢购秒杀商品的场景,多台机器都接收到了抢购的请求,可以将获取库存、判断有货、用户付款、扣减库存等多个数据库操作放到一个事务,这样当一台机器与数据库建立链接请求了抢购商品这个事务,另外的机器只能等这个机器将请求完成才能操作数据库。在实际应用场景中,常常库存与交易是两个独立的系统,这时的事务是一个分布式事务,需要用到两段式、三段式提交。 优点:是比较安全的一种实现方法。 缺点:在高并发的场景下开销是不能容忍的。容易出现数据库死锁等情况。 乐观锁―基于版本号 乐观锁常常用于分布式系统对数据库某张特定表执行update操作。考虑线上选座的场景,用户A和B同时选择了某场次电影的一个座位,都去将座位的状态设置为已售。 设想这样的执行序列: 1、用户A判断该座位为未售状态; 2、用户B判断该座位为未售状态; 3、用户A执行update座位为已售; 4、用户B执行update座位为已售。