![[STM32] 基于STM32F103的USB VCD代码.doc_第1页](http://file.renrendoc.com/FileRoot1/2020-1/11/1a893852-9076-4edf-a577-304b399420a6/1a893852-9076-4edf-a577-304b399420a61.gif)
![[STM32] 基于STM32F103的USB VCD代码.doc_第2页](http://file.renrendoc.com/FileRoot1/2020-1/11/1a893852-9076-4edf-a577-304b399420a6/1a893852-9076-4edf-a577-304b399420a62.gif)
![[STM32] 基于STM32F103的USB VCD代码.doc_第3页](http://file.renrendoc.com/FileRoot1/2020-1/11/1a893852-9076-4edf-a577-304b399420a6/1a893852-9076-4edf-a577-304b399420a63.gif)
![[STM32] 基于STM32F103的USB VCD代码.doc_第4页](http://file.renrendoc.com/FileRoot1/2020-1/11/1a893852-9076-4edf-a577-304b399420a6/1a893852-9076-4edf-a577-304b399420a64.gif)
![[STM32] 基于STM32F103的USB VCD代码.doc_第5页](http://file.renrendoc.com/FileRoot1/2020-1/11/1a893852-9076-4edf-a577-304b399420a6/1a893852-9076-4edf-a577-304b399420a65.gif)
已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ST官网上的USB VCD例程总是有问题我改了一个,今天测试了下,115200BPS下10MB字节无差错。应该还可以了。放在这里大家共享下。 VCD V2.0.0.zip (309.63 KB) 这个例子我在ST的新三合一板子上跑的,这块板子的USB上拉电阻的使能管脚是PA8,所以如果要在其他板子上跑,要根据自己的板子改下这个使能管脚。还有,这个例子是在IAR5.5上改的,所以建议在IAR5.5下打开项目,如果是IAR5.5以下版本,可能会丢失项目的配置信息。本主题由 香水城 于 2011-1-4 14:03 解除置顶分享本文到: 帖子: 192积分: 577专家等级: mcu5i51发表于 2010-7-31 08:59 | 只看该作者 回复 引用 返回版面 TOP?得分:02楼:怎么用呀,还是顶一下,最好上图或说明帖子: 81积分: 243专家等级: henry_wu001发表于 2010-7-31 17:27 | 只看该作者 回复 引用 返回版面 TOP?得分:03楼:iar都5.5拉,usb转串口,PC上会多出一个串口来,如果多个设备插入同一pc,pc上就会多出许多串口,有无办法把同一类型的设备只用同一个串口呢?帖子: 12142积分: 38206专家等级: 香水城发表于 2010-8-1 12:11 | 只看该作者 回复 引用 返回版面 TOP?得分:04楼:如果把同一类型的设备只用同一个串口,你如何区分不同的设备?I do not teach, but I coach. I do not feed, but I seed.欢迎访问我的博客:/STM32/帖子: 303积分: 923专家等级: 流行音乐发表于 2010-8-1 18:25 | 只看该作者 回复 引用 返回版面 TOP?得分:05楼:收下了,感谢分享。帖子: 5707积分: 18616专家等级: icecut发表于 2010-8-3 13:48 | 只看该作者 回复 引用 返回版面 TOP?得分:06楼:vcd是什么意思老版本的某个破开发板带的代码竟然usb转串口有问题.已经找到.新版本的下载了.还没试试.-帖子: 3102积分: 22136专家等级: mcuisp发表于 2010-8-4 11:21 | 只看该作者 回复 引用 返回版面 TOP?得分:07楼:用同一个序列号就可以了。不过这样弄不能同时存在。免费STM32 ISP软件EP968手持烧录器,现场升级/生产线量产STM32,STM8S/L,FreeScale,LPC2000,LPC9xx,C8051F,AVR,PIC.最新支持STM8S、L在线仿真和脱机下载帖子: 563积分: 2082专家等级: vigia发表于 2010-8-7 09:52 | 只看该作者 回复 引用 返回版面 TOP?得分:08楼:說明一下本例程實現了一個USB虛擬串口上位機可以通過串口應用程序如HyperTerminal與設備通信。上位機通過USB發給STM32的數據,STM32將立刻通過USART1發給外部的其他設備。外部的其他設備通過USART1發給STM32數據,STM32在每5個SOF(即每5毫秒)后,檢查是否有收到USART1的數據,如有數據則通過USB發送給上位機。帖子: 1527积分: 4582专家等级: 无冕之王发表于 2010-8-8 09:05 | 只看该作者 回复 引用 返回版面 TOP?得分:09楼:楼主能给个相应的说明就更好了喜欢远行帖子: 1631积分: 4987专家等级: 火箭球迷发表于 2010-8-8 09:40 | 只看该作者 回复 引用 返回版面 TOP?得分:010楼:很不错,多谢共享姚明的铁杆球迷帖子: 1228积分: 3946专家等级: Simon21ic发表于 2010-8-8 10:27 | 只看该作者 回复 引用 返回版面 TOP?得分:011楼:对一次调用write发送的数据长度有限制吗?比如,我一次调用串口write,写10M的数据。帖子: 1188积分: 3666专家等级: yybj发表于 2010-8-8 14:46 | 只看该作者 回复 引用 返回版面 TOP?得分:012楼:给个说明吧帖子: 563积分: 2082专家等级: vigia发表于 2010-8-9 10:24 | 只看该作者 回复 引用 返回版面 TOP?得分:013楼:本帖最后由 vigia 于 2010-8-9 10:26 编辑对一次调用write发送的数据长度有限制吗?比如,我一次调用串口write,写10M的数据。Simon21ic 发表于 2010-8-8 10:27 对于设备来说,一次USB通信最多收到64字节数据,然后通过USART发送出去,在USART发送期间,设备将一直以NAK响应主机,直到USART发送64字节数据完毕,设备可以接收下一个数据包。所以如果USART很慢,比如2400bps,这个NAK期间会比较长,我不太清楚USB虚拟串口驱动,可以容忍多长时间的NAK响应。帖子: 563积分: 2082专家等级: vigia发表于 2010-8-9 10:24 | 只看该作者 回复 引用 返回版面 TOP?得分:014楼:给个说明吧yybj 发表于 2010-8-8 14:46 怎么样的说明?关于代码流程吗?还是如何使用?帖子: 1313积分: 4191专家等级: 秋天落叶发表于 2010-8-9 13:15 | 只看该作者 回复 引用 返回版面 TOP?得分:015楼:可以把代码流程和如何使用都简单说说落叶很美帖子: 1128积分: 3484专家等级: dfsa发表于 2010-8-9 13:46 | 只看该作者 回复 引用 返回版面 TOP?得分:016楼:很不错的资料,楼主能写个简单的使用说明就更好了帖子: 1228积分: 3946专家等级: Simon21ic发表于 2010-8-9 14:24 | 只看该作者 回复 引用 返回版面 TOP?得分:017楼:本帖最后由 Simon21ic 于 2010-8-9 14:27 编辑最近流行PK,偶们也PK一下? 对于设备来说,一次USB通信最多收到64字节数据,然后通过USART发送出去,在USART发送期间,设备将一直以NAK响应主机,直到USART发送64字节数据完毕,设备可以接收下一个数据包。这样的效率太低,看一下我的方案:1K发送缓冲,1K接收缓冲,环形堆栈。发送缓冲满后,NACK主机,主机可以设置串口的字节延时。USB收发都是用双缓冲。稳定921600bps。支持一些扩展命令,比如,串口下载MTK固件时,需要支持BREAK命令。PK一下性能吧?其实,按照USB FS的1ms轮训,已经大概可以算出来了。921600下,1ms的单向数据量,已经超过64字节。帖子: 563积分: 2082专家等级: vigia发表于 2010-8-9 15:04 | 只看该作者 回复 引用 返回版面 TOP?得分:018楼:本帖最后由 vigia 于 2010-8-9 15:11 编辑最近流行PK,偶们也PK一下? 对于设备来说,一次USB通信最多收到64字节数据,然后通过USART发送出去,在USART发送期间,设备将一直以NAK响应主机,直到USART发送64字节数据完毕,设备可以接收下一个数据包。这样 .Simon21ic 发表于 2010-8-9 14:24 你是高手啦,我们就探讨探讨我当初做这个代码的时候,只考虑了115200bps的波特率,平均到每毫秒是15个字节,而且对于上位机可以用NAK来做流量控制,所以没有对USB OUT的传输做缓冲,直接收直接发,这样代码简单,一目了然,对于115200的传输来说,也足够了。当然如果USART上升到921600BPS,那肯定是你的方案效率更高,而且可以使能STM32F103的USB双缓冲BULK传输,效果会更好。对于USB IN传输,我也是只考虑了115200BPS的波特率,所以每5个SOF才检查一次USART收到的数据,如果有数据,就启动USB上传到上位机。由于USART的传输具有突发性,并且我不想做流量控制,所以对于IN的传输,我做了缓冲。我考虑这样是对STM32F103的压力小,主芯片完全可以去处理其他事情。当然,如果速度上升到了921600BPS,间隔的5个SOF就太长了,可以每个SOF都检查下数据。总之,这只是个DEMO的例程,可以修正提高的地方还很多,欢迎各路高手来踩点。楼上的需要说明的各位,等我有时间了我来做个说明,希望可以连带大致讲一下STM32的USB库。帖子: 1228积分: 3946专家等级: Simon21ic发表于 2010-8-10 04:30 | 只看该作者 回复 引用 返回版面 TOP?得分:019楼:也不算高手,只是正好做过而已,了解STM32可以发挥的性能。其实,这个系统的正真瓶颈就在串口接收,所以,串口接收部分需要用中断的方式处理,并且,优先级最高,可以打入其他中断,这个就需要做好各种零界处理。否则,速度高的话,是会丢数据的。当然,实际怎么实现,完全看需求定位。我这里原来考虑9216
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 英语语法知识拓展:高一阶段
- 给岑老师的一封信650字13篇范文
- 六年级数学数对练习题
- 胜似亲人作文800字(7篇)
- 长途汽车运输合同
- 驾校教练车承包合同
- 公交公司拓展活动方案
- 七年级英语语法新解
- 太阳的宇宙周游记250字8篇
- 公众场合活动方案
- 2025年共享办公空间增值服务运营模式创新与产业链创新模式报告
- 电气控制柜面试题及答案
- 药房药品追溯管理制度
- 2025年初中学业水平考试地理模拟卷:地震、台风等自然灾害防治措施试题及答案
- 2025年中国柔性透明导电膜项目投资计划书
- 中医执业医师资格考试《第一单元》真题及答案(2025年新版)
- 缺血性卒中脑保护中国专家共识(2025)解读
- 重症医学科医院感染控制原则专家共识(2024)解读
- 海洋垃圾资源化利用与环境影响评估-洞察阐释
- 分公司收回协议书
- 虚拟现实技术的应用场景的试题及答案
评论
0/150
提交评论