ttl

串口 COM口 USB-TTL RS-232 RS-485 不同标准 区别 释疑

泪湿孤枕 提交于 2020-01-14 20:15:34
http://blog.sina.com.cn/s/blog_6566538d0100r7p8.html Point (所有要点都在这,请仔细阅读): 1、串口、COM口是指的物理接口形式(硬件)。而TTL、RS-232、RS-485指的是串口的电平标准(电信号)。 2、接线的时候,一般只接 GND 、 RX (接收)、 TX (发送)。不会接入Vcc等电源线,避免与目标设备上的供电冲突。 (接线法则:主机的 TX 接目标设备的 RX ,主机的 RX 接目标设备的 TX ,但是很多设计人员为了接线更为直观而故意颠倒标记 RX、TX ,如果有问题可以尝试交换RX、TX,不会烧坏设备 。) 3、PL2303、CP2102、FT232R 芯片是用USB来扩展串口(TTL电平输出)的芯片,需要安装Windows驱动。 (常用于笔记本增加串口,注意其兼容性 不如 板载串口。优先选择:FT232R > CP2102 > PL2303 ) 4、MAX232芯片是TTL电平与RS232电平的专用 双向 转换芯片,不同引脚实现TTL转RS-232或RS-232转TTL的功能。 (TTL与RS232转换芯片很多很多,正向、逆向接口数量不同:比如:MAX202、SP213、MAX3232 ) 5、TTL电平标准 是 低电平为0,高电平为1 (对地,标准数字电路逻辑)。 RS-232电平标准 是

usb转串口 TTL 232电平

淺唱寂寞╮ 提交于 2020-01-14 20:14:51
TTL电平:一般用作数字芯片的电平(单片机大多是TTL电平,只是不同的电压标准) 232电平:232电平特制电脑串口的电平 USB :除去屏蔽层,有4根线,分别是VCC、GND和D+、D-两根信号线。5V是USB的电源电压,给USB device供电用的。信号线对于2.0, D+比D-大200mV时为1,D-比D+大200mV时为0,属 差分信号 ,与 TTL电平 不兼容,信号传输时需要电平转换电路。 我们所说的USB转串口,实际上是上两种,一种是USB转232串口,一种是USB转TTL串口。 由于单片机串口是TTL电平, 要和电脑串口(或者USB转串口线)通信, 就需要使得他两的电平逻辑一样才可以通信。 这时候,就需要用到转换TTL--232电平的芯片, 常用的有MAX232、MAX3232、SP232、SP3232等。MAX232芯片是TTL电平与RS232电平的专用双向转换芯片,不同引脚实现TTL转RS-232或RS-232转TTL的功能。 连接方式为:单片机串口—232芯片–串口 USB转TTL: 单片机串口—USB转TTL芯片–USB口 USB转TTL芯片有很多, 例如:CH340、PL2303、CP2102、FT232等。 开发板上,板载USB转TTL芯片:CH340,(stm32f103) 所以你只需要用USB连接线把电脑和开发板连起来,

串口波形分析(TTL,RS232,RS485)波形分析

二次信任 提交于 2020-01-14 14:59:59
常见的USB转串口线分为USB-RS232和USB-RS485两种, 区别主要是逻辑电平是相反的 。 一、串行数据的格式 异步串行数据的一般格式是:起始位+数据位+停止位,其中起始位1 位,数据位可以是5、6、7、8位,停止位可以是1、1.5、2位。 起始位是一个值为0的位,所以对于正逻辑的TTL电平,起始位是一位时间的低电平;停止位是值为1的位,所以对于正逻辑的TTL电平,停止位是高电平。线路路空闲或者数据传输结束, 对于正逻辑的TTL电平,线路总是1。对于负逻辑(如RS-232电平)则相反。 例如,对于16进制数据55aaH,当采用8位数据位、1位停止位传输时,它在信号线上的波形如图1(TTL电平)和图2(RS-232电平)所示。 (先传第一个字节55,再传第二个字节aa,每个字节都是从低位向高位逐位传输) 图1 TTL电平的串行数据帧格式(55aah) 图2 RS-232电平的串行数据帧格式(55aah) 再如: 图3 1.该图是TTL电平同相位的逻辑 2.波特率设置时 38400 3.串口发送的是 0x55 4.串口设置为8N1 二、根据波形图计算波特率 如图4是图1在示波器中的显示示意,其中灰色线是示波器的时间分度线,此时假设是200us/格。 图4 波特率计算示意图 可以看了,第一个字节的10位(1位起始位,8位数据位和1位停止位)共占约1.05ms

mongodb TTL not removing documents

梦想与她 提交于 2020-01-09 10:51:51
问题 I have a simple schema like: { _id: String, // auto generated key: String, // there is a unique index on this field timestamp: Date() // set to current time } Then I set the TTL index like so: db.sess.ensureIndex( { "timestamp": 1 }, { expireAfterSeconds: 3600 } ) I expect the record to removed after 1 hour but it is never removed. I flipped on verbose logging and I see the TTLMonitor running: Tue Sep 10 10:42:37.081 [TTLMonitor] TTL: { timestamp: 1.0 } { timestamp: { $lt: new Date

mongodb TTL not removing documents

狂风中的少年 提交于 2020-01-09 10:50:51
问题 I have a simple schema like: { _id: String, // auto generated key: String, // there is a unique index on this field timestamp: Date() // set to current time } Then I set the TTL index like so: db.sess.ensureIndex( { "timestamp": 1 }, { expireAfterSeconds: 3600 } ) I expect the record to removed after 1 hour but it is never removed. I flipped on verbose logging and I see the TTLMonitor running: Tue Sep 10 10:42:37.081 [TTLMonitor] TTL: { timestamp: 1.0 } { timestamp: { $lt: new Date

设置消息TTL——通过队列进行设置

浪子不回头ぞ 提交于 2020-01-06 20:28:11
一 代码 package com.rabbitmq.ttl; import com.rabbitmq.client.*; import com.rabbitmq.util.ConnectionUtils; import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.concurrent.TimeoutException; /** * 消息过期(通过队列设置) */ public class MsgTTL2 { private static final String EXCHANGE_NAME = "exchange_demo"; private static final String ROUTING_KEY = "routingkey_demo"; private static final String QUEUE_NAME = "msgTTL2_demo"; private static final String IP_ADDRESS = "127.0.0.1"; private static final int PORT = 5672;//RabbitMQ(AMQP) 服务端默认端口号为 5672 public static void main

Use .Net DirectoryServices to Set TTL on Active Directory Group Membership

妖精的绣舞 提交于 2020-01-06 06:48:27
问题 I am using the tools in the .Net System.DirectoryServices.AccountManagement namespace to manage Active Directory groups - group creation, adding users to groups, removing users from group, etc. Here's some code that shows what I'm doing right now... -- group creation // connect to our organizational unit on the production Active Directory Server using (PrincipalContext principalCtx = new PrincipalContext(ContextType.Domain, s_prodAdServerName, s_ouPath)) { // create group with necessary

How to extend cache ttl (time-to-live) in django-redis?

ぐ巨炮叔叔 提交于 2020-01-05 06:55:27
问题 I'm using django 1.5.4 and django-redis 3.7.1 I'd like to extend cache's ttl(time-to-live) when I retrieved it. Here is sample code from django.core.cache import cache foo = cache.get("foo) if not foo: cache.set("foo", 1, timeout=100) else: // Extend Cache's Time-To-Live something like it cache.ttl("foo") = 200 I tried to search this option at django-redis-docs, but I couldn't find it. However, I noticed that designate time-to-live value for existing cache is available at redis native command

How to set TTL on Rocks DB properly?

泄露秘密 提交于 2020-01-05 03:52:11
问题 I am trying to use Rocks DB with TTL. The way I initialise rocks db is as below: options.setCreateIfMissing(true).setWriteBufferSize(8 * SizeUnit.KB) .setMaxWriteBufferNumber(3) .setCompressionType(CompressionType.LZ4_COMPRESSION).setKeepLogFileNum(1); db = TtlDB.open(options, this.dbpath, 10, false); I have set TTL to 10 seconds. But, the key value pairs are not being deleted after 10 seconds. Whats happening here? 回答1: That's by design: This API should be used to open the db when key-values

MongoDb TTL on nested document is possible?

时光毁灭记忆、已成空白 提交于 2019-12-30 17:16:31
问题 I want to know if it's possible to use TTL on nested documents. Scenario I have Account and inside I have Sessions . Sessions need to expire in 30 minutes. I've set everything up but obviously when I set TTL index on Account.Sessions.EndDateTime it removes the whole Account . Can I make sure it removes only Session ? This is what it looks like in database. Notice how it will delete whole Account and not only Session when EndDateTime will come. { "_id" : ObjectId("53af273888dba003f429540b"),