基于双模式USB接口的多处理器数据采集系统设计

[09-13 16:55:29]   来源:http://www.88dzw.com  接口定义   阅读:8140

文章摘要:3.2 从机模式此模式下,单片机通过CH375与PC机进行通讯,完成采集方案下载与数据上传,程序流程图如图5所示。单片机重新初始化CH375并设置为设备工作模式。测试芯片正常连接后,系统可接收PC机发送的数据。主控单片机根据下载的采集方案进行采集测试,并将结果数据存入采集缓冲区,待缓冲区满,则向PC机请求上传。采集结束,数据全部上传,系统完成一个从机模式采集工作过程。从机模式单片机程序基本框架如下:CH375Init(); //初始化CH375DelaymS(50); //

基于双模式USB接口的多处理器数据采集系统设计,标签:接口技术,微机原理与接口技术,http://www.88dzw.com

  3.2 从机模式

  此模式下,单片机通过CH375与PC机进行通讯,完成采集方案下载与数据上传,程序流程图如图5所示。


  单片机重新初始化CH375并设置为设备工作模式。测试芯片正常连接后,系统可接收PC机发送的数据。主控单片机根据下载的采集方案进行采集测试,并将结果数据存入采集缓冲区,待缓冲区满,则向PC机请求上传。采集结束,数据全部上传,系统完成一个从机模式采集工作过程。从机模式单片机程序基本框架如下:

  CH375Init();                            //初始化CH375

  DelaymS(50);                                   //延时

  CH375_WR_CMD_PORT(CMD_SET_USB_MODE);

  //设置USB工作模式

  CH375_WR_DAT_PORT(2);

  //模式代码,已启用的内置固件USB设备模式    DelayuS(20);

  //延时

  CH375_WR_CMD_PORT(CMD_CHECK_EXIST);

  //测试工作状态

  CH375_WR_DAT_PORT(0x57);             //写入测试数据    DelayuS(10);

  //延时

  If(CH375_RD_DAT_PORT( )==0xA8);

  //读出测试数据是否按位取反,判断工作状态

  ……

  CH375_WR_CMD_PORT(CMD_GET_STATUS);

  //中断子程序中,读取中断状态命令

  int_sn=CH375_RD_DAT_PORT( );            //读中断号     ……

  if (int_sn ==USB_INT_USB_EP2_OUT)

  CH375_WR_CMD_PORT(CMD_RD_USB_DATA);

  //读取上位机测试方案数据并释放缓冲区

  ……

  test_all( );                 //按下载方案测试采集数据

  ……

  While (flag_upload == 0)                  //数据上传未结束

  {

  ……

  CH375_WR_CMD_PORT(CMD_WR_USB_DATA 7);

  //批量上传采集数据

  CH375_WR_DAT_PORT(n);            //写入上传字节数

  for (i=0;i<n;i++)                      //每次上传n字节

  CH375_WR_DAT_PORT(*test_buf ++);

  //上传采集结果,指针自动加1

  ……

  }

  ……

  if (int_sn ==USB_INT_USB_EP2_IN)

  //中断子程序中,中断号为端点2发送数据完毕

  CH375_WR_CMD_PORT(CMD_UNLOCK_USB);

  //释放缓冲区

  基于CH375双模式USB接口芯片,设计完成了主/从双模式的数据采集测试系统。充分利用接口即插即用、便携式的特点,解决了特殊环境下的测试困难问题。同时,系统具有双模式、多单片机的优势,能够满足高标准的测试需求,具有广阔的应用前景。


上一页  [1] [2] [3] 


Tag:接口定义接口技术,微机原理与接口技术接口定义

《基于双模式USB接口的多处理器数据采集系统设计》相关文章

分类导航
最新更新
热门排行