设计需求:增加对编码器EEPROM的读写功能

硬件版本:控制板(ARM与FPGA并口通讯) 多摩川编码器(只包括17bit与23bit),

软件版本:ARM与CPLD采用并口通讯,8bit地址,16bit数据(以电流环周期为一个数据周期)

设计思路:

  1. 电流环周期为一个通讯周期,新增并口地址EEPROM,用于写编码器EEPROM地址和数据,具体数据分配见下;
  2. 由于要写入的地址为16位,且每个地址对应的数据长度不等,所以以8bit数据重新扩展地址;
  3. 由于EEPROM每一个8位地址存一个8位数据的数据格式,所以并口16位数据刚好分为数据组(EDF)和地址组(ADF),EDF为高八位,读地址时,只取第八位ADF,PD组中低位数据对应较位地址;
  4. 图1,2是EEPROM的具体数据结构,与读编码器位置(图3)的数据结构不同的,所以新增以下规则:每一次的写或者命令需要8bit地址(ADF)与8bit数据(EDF)(读命令只需要ADF),并口ADF和EDF都由并口的16数据传过来,其并口的对应的数据地址为EEPROM。数据从原有地址ABS_CF_SF,ABS_DF0_DF1 返回,具体操作见图4和图5;
  5. 5.  数据有并口转到ARM,并口相关通讯方式不做介绍

图1:写编码器EEPROM的数据结构

图2:读编码器EEPROM的数据结构

图3:读编码器位置的数据结构

图4:写EEPROM时并口具体操作

图5:读EEPROM的并口具体操作

转载于:https://www.cnblogs.com/tangbo2018/p/9834600.html

多摩川读写EEPROM以及并口实现相关推荐

  1. STM32F10x_硬件I2C读写EEPROM(标准外设库版本)

    Ⅰ.写在前面 上一篇文章是"STM32F10x_模拟I2C读写EEPROM",讲述使用IO口模拟I2C总线通信,对EEPROM(AT24Xxx)进行读写操作的过程. 上一篇文章主要 ...

  2. IIC软件模拟-读写EEPROM

    这里写目录标题 1.IIC简介 2. I2C 基本读写过程 2.1.主机写数据到从机 2.2.主机由从机中读数据 2.3.读和写数据 2.4.地址及数据方向 2.5.响应信号 3.软件模拟I2C 4. ...

  3. STM32模拟I2C时序读写EEPROM精简版

    平台:STM32ZET6(核心板)+ST-LINK/V2+SD卡+USB串口线+外部EEPROM(不需要上拉电阻) 工程介绍:主要文件在USER组中,bsp_i2c_ee.c,bsp_i2c_ee.h ...

  4. Linux创建线程读取双口数据,linux环境下读写一次双口ram尽然要十几个毫秒。(附驱动代码)...

    linux环境下读写一次双口ram尽然要十几个毫秒.(附驱动代码) 我用的双口ram是IDT70V28,手册上说的读写时间应该是几个纳秒,我写了个linux驱动,然后做测试,发现读写一次的时间尽然是十 ...

  5. IIC控制设计读写EEPROM

    IIC控制设计 本博文完全参考小梅哥(下面是链接) IIC协议详解+Uart串口读写EEPROM IIC模块是比较好理解,但个人觉得比较难实现.这里的读为随机读数据,即自己可以指定读取那一个数据.若不 ...

  6. stm32_GPIO模拟I2c读写EEPROM

    /* 下面给出STM32通过GPIO模拟I2C读写EEPROM程序 */ #define SCL_H GPIOB->BSRR = GPIO_Pin_6 #define SLC_L GPOIB-& ...

  7. STM32硬件IIC读写EEPROM

    前面一篇写了软件模拟IIC读写EEPROM. 本篇介绍硬件IIC读写EEPROM.平台是STM32F103+AT24C04N.SDA和SCL接5K上拉电阻到3.3v. 首先介绍AT24C04N的基本特 ...

  8. mini2440----keil for AMR之IIC读写EEPROM(AT24C08)

    mini2440----keil for AMR之IIC读写EEPROM(AT24C08) 一:EEPROM芯片介绍 在这里分析AT24C02A/AT24C04A/AT24C08A,对于其他不同型号的 ...

  9. STM32学习之I2C协议(读写EEPROM)

    关于STM32学习分享 第七章 I2C协议(读写EEPROM) 文章目录 关于STM32学习分享 前言 二.代码 1.i2c.c 2.i2c.h 3.main.c 总结 前言 开始!开始!单片机的I2 ...

  10. STM32CubeMX学习笔记(9)——I2C接口使用(读写EEPROM AT24C02)

    一.I2C简介 I2C(Inter-Integrated Circuit ,内部集成电路) 总线是一种由飞利浦 Philip 公司开发的串行总线.是两条串行的总线,它由一根数据线(SDA)和一根 时钟 ...

最新文章

  1. 保护隐私的 Structure-from-Motion (SfM)
  2. 我学会了python接下来学什么比较好-我,二本,学会Python后月入上万
  3. TensorFlow Wide And Deep 模型详解与应用
  4. 春招实习前端面试题汇总
  5. 好枪手是靠子弹喂出来的,好分析师是靠大量项目沉淀出来的
  6. 通用ShellCode深入剖析
  7. 资源下载| 深度学习Pytoch1.0如何玩?这一门含900页ppt和代码实例的深度学习课程带你飞
  8. java三个取最大值、菜单新增修改、猜数字大小
  9. 用Navicat for Mysql导入.sql文件
  10. 直击WinRoute
  11. 解析java文件_使用JDK的Parser来解析Java源代码
  12. 清澄A1223. 画圈圈(范浩强)
  13. Java代理(静态代理、JDK动态代理、CGLIB动态代理)
  14. 风变编程学python靠谱吗_风变编程学习Python的感受
  15. 在Ubuntu 22.04 Jammy Jellyfish Linux上流畅安装VMware tools
  16. 【系统集成项目管理工程师】信息系统集成及服务
  17. Spring Cloud Alibaba
  18. 关于未名湖边的烦恼问题
  19. 未明学院:大学生如何增强自己的知识储备?要是读书时知道这些就好了!
  20. 本地搭建start.spring.io

热门文章

  1. 彼得德鲁克《卓有成效的管理者》——阅读摘要
  2. 排名前十名的WAP网站
  3. 前端页面插入Flash动画
  4. VB如何自动保存_VB编程——菜单栏设计教程
  5. Activeperl安装教程
  6. VS2015安装Visual C++的Win32控制台应用程序
  7. 上网本的最佳拍档——极通EWEBS
  8. ERP系统和ERP软件的介绍
  9. 计算机网盘打不开,电脑百度网盘无法打开视频的解决方法|电脑百度网盘无法打开视频如何解决...
  10. 自己做量化交易软件(45)小白量化实战18--直接使用通达信自编指标公式进行分析绘图和回测