PDIUSBD12管脚简述

        

PDIUSBD12管脚及简述

PDIUSBD12读写时序图

CS_N是片选信号,当片选信号位低电平时,下面的操作才有效。由于板子上将CS_N接地,所以它一直保持低电平。

A0是地址线,用于选择是命令还是数据。A0=1,表示操作的是命令,A0=0,表示操作的是数据。

WR_N是写信号,表示WR_N的上升沿将数据写入到芯片中。数据必须在上升沿的前后稳定地保持一段时间(图中的tWDSU和tWDH)才能可靠写入。

RD_N是读信号,在读数据时,应该先将RD_N置低,等待一段时间(tRLDD)后,数据将出现在DATA[7:0]上,这时可以读数据。读取完毕后,将RD_N置高。

写命令:

将A0置高(即设置为命令状态) ——> 将WR_N置低 ——> 将命令放到数据总线上 ——> 将WR_N置高。

    void D12WriteCommand(uint8 command)
{
D12SetCommandAddr();
D12ClrWr();
D12SetPortOut();
D12SetData(command);
D12SetWr();
D12SetPortIn();
}

写字节:

将A0置低(即设置为数据状态) ——> 将WR_N置低 ——> 将数据保存到数据管脚对应寄存器上 ——> 将WR_N置高。

    void D12WriteByte(uint8 value)
{
D12SetDataAddr();
D12ClrWr();
D12SetPortOut();
D12SetData(value);
D12SetWr();
D12SetPortIn();
}

读字节:

将A0置低(即设置为数据状态) ——> 将RD_N置低 ——> 读取数据管脚对应寄存器上数据 ——> 将RD_N置高。

    uint8 D12ReadByte()
{
uint8 tmp; D12SetDataAddr();
D12ClrRd(); tmp = D12GetData(); D12SetRd(); return tmp;
}

参考资料:《圈圈教你玩USB》

PDIUSBD12管脚简述的更多相关文章

  1. 神文章2:文本矩阵简述 V1.0 -vivo神人

    评论: 牛逼的业余书籍爱好者读书思路,指导思想. 2013/9/22         文本矩阵简述 V1.0http://www.douban.com/note/170688812/ 文/vivo   ...

  2. 简述前后端分离的情况下,Vue实现点击图片下载到本地(并实现IE11浏览器的兼容)

    1.简述 在前后端分离的项目中涉及跨域问题,通常都会使用token进行验证.最近在前后端分离的项目中在一个问题上搞了很久,就是以前下载附件或者导出数据为文件的时候,在以前的那些项目前端可以直接用 wi ...

  3. PDIUSBD12指令

    PDIUSBD12指令 端点描述 PDIUSBD12的端点适用于不同类型的设备,端点可通过[Set mode]命令配置为4种不同的模式,分别为: 模式0(NON-ISO模式):非同步模式 模式1(IS ...

  4. 简述 OAuth 2.0 的运作流程

    本文将以用户使用 github 登录网站留言为例,简述 OAuth 2.0 的运作流程. 假如我有一个网站,你是我网站上的访客,看了文章想留言表示「朕已阅」,留言时发现有这个网站的帐号才能够留言,此时 ...

  5. JavaScript单线程和浏览器事件循环简述

    JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...

  6. Design Patterns Simplified - Part 3 (Simple Factory)【设计模式简述--第三部分(简单工厂)】

    原文链接:http://www.c-sharpcorner.com/UploadFile/19b1bd/design-patterns-simplified-part3-factory/ Design ...

  7. 仿喜马拉雅实现ListView添加头布局和脚布局

     ListView添加头布局和脚布局 之前学习喜马拉雅的时候做的一个小Demo,贴出来,供大家学习参考: 如果我们当前的页面有多个接口.多种布局的话,我们一般的选择无非就是1.多布局:2.各种复杂滑动 ...

  8. Android网络定位服务定制简述

    Android 添加高德或百度网络定位服务 Android的网络定位服务以第三方的APK方式提供服务,由于在国内Android原生自带的com.google.android.gms服务几乎处于不可用状 ...

  9. 《Entity Framework 6 Recipes》翻译系列 (1) -----第一章 开始使用实体框架之历史和框架简述

    微软的Entity Framework 受到越来越多人的关注和使用,Entity Framework7.0版本也即将发行.虽然已经开源,可遗憾的是,国内没有关于它的书籍,更不用说好书了,可能是因为EF ...

随机推荐

  1. 吴裕雄--天生自然python学习笔记:WEB数据抓取与分析

    Web 数据抓取技术具有非常巨大的应用需求及价值, 用 Python 在网页上收集数据,不仅抓取数据的操作简单, 而且其数据分析功能也十分强大. 通过 Python 的时lib 组件中的 urlpar ...

  2. Jeninks远程部署war包

    主体上看别人的脚本,然后和开发协商,做出符合自己的生产脚本................................ 脚本一: #!/bin/bash DATE=`date +%F-%H-%M` ...

  3. Hadoop什么?

    Hadoop是什么?Hadoop是一个开发和运行处理大规模数据的软件平台,是Appach的一个用java语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算. Hadoop框架中 ...

  4. cordova+jquery form上传里面的一些诡异坑

    在浏览器里面执行很正常的代码,打包到手机上测试就出问题了,浏览器中的执行版本如下: <!DOCTYPE html> <html lang="en"> < ...

  5. Yii的自带缓存的使用

    Yii的自带缓存都继承CCache 类, 在使用上基本没有区别缓存基础类 CCache 提供了两个最常用的方法:set() 和 get().要在缓存中存储变量 $value,我们选择一个唯一 ID 并 ...

  6. 康威定律(Conway's law)

    系统是设计该系统的组织结构的映射. Conway's law 最初是Conway在1967年发表的论文<How Do Committees Invent?>,然后 Fred Brooks ...

  7. Geohash介绍

    Geohash介绍 Geohash是一种地址编码,能把二维的经纬度编码成字符串,某一区域范围内的经纬度是一致的,其中有编码长度控制区域的范围 精度参考 使用场景 实时LBS应用 LBS应用中,搜索某某 ...

  8. C++走向远洋——63(项目二2、两个成员的类模板)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...

  9. 8.【Spring Cloud Alibaba】配置管理-Nacos

    使用Nacos管理配置 架构图 配置文件遵循的格式 bootstrap.yml pom.xml <dependency> <groupId>org.springframewor ...

  10. 002.使用kubeadm安装kubernetes 1.17.0

    一 环境准备 1.1 环境说明 master      192.168.132.131      docker-server1 node1       192.168.132.132      doc ...