![shequ.stmicroelectronics.cn](./template/st_v1/static/img/logo2.png)
【MCU实战经验】+STM32F103的uCOSII详细移植
STM32固件库分享,超全系列整理
【原创】STM32F103的SPI2的配置函数,DMA发送和接收!
【福利】用STM32库的朋友有福了:STM32F10x_StdPeriph_Lib_V3.5.0chm...
基于STM32F103做CAN的收发通信经验分享
小马哥STM32F103开源小四轴RoboFly全部资料大放送
【管管推荐】STM32经验分享篇
【MCU实战经验】+STM32F107的USB使用
基于STM32F103两轮平衡小车设计(开源)
STM32F107VCT6官方原理图和PCB
看Doc文件夹,按要求安装兼容包。
但是楼主,这个SWO(PB7)引脚一定要接出来的??& {7 \' m5 y8 n* |* F* m
两个SWD(PB8、PB9)引脚我能不能更改为其他引脚?
不使用SWO功能就不需要接PB7。 SWD的引脚当然可以换做其他的,特别是软件中设置SWD_REMAP就换成了PA13/PA14,方便Bluepill板子使用。
按照你的方法不行啊,具体需要多少版本的MDK啊。
. m0 M i/ W x/ S: M
我下载了5.2.9的MDK,下载了F1的pack,同时在MDK里升级了5.3.0的CMSIS,仍然报很多错,楼主也帮忙回复下,谢谢
没有遇到过,估计你的板子干扰太大,接了PB7干扰变小。
还要安装Keil4的兼容包,使用AC5. ! x3 t4 D5 r1 b6 F' I
MDK5.29应该ok,我现在已经升级到5.28了。
下载了Keil 5.2.9
更新了CMSIS到5.6.0- | l6 h; _1 q7 \5 e
更改了C/C++的包含路径指向5.6.0后
编译是成功了,也成功点亮了指示灯。- K2 i2 Z5 P) M& {8 Y2 i
但是又出现了另外一个问题,现象如下:, h5 h: |$ g4 L' y
1.工程里宏定义设置为4 y& T3 {2 E3 a% D% d; o7 Q# O$ C/ L3 D
USE_STDPERIPH_DRIVER STM32F10X_MD BLUEPILL SWO_PB7 STLINK_V2A0 [4 Q$ G- o8 _$ h' a$ z4 }
2.引脚没有改动,代码没有改动
3.安装了CDC的驱动了' N! P# x/ U. k, k
4.设备管理器里仍然显示“未知USB设备(设备描述符请求失败)”
5.经调试,指示灯可控,但是“usbd_configured()”这个while循环,一直跳不出来,是USB配置不成功吗?: ~2 i+ x3 U. Y3 R8 o/ X8 e% \
应该怎么设置,才可以啊?
你这个宏定义不对呀:, R- @- h6 z2 \4 p) P- e1 e3 H4 s
USE_STDPERIPH_DRIVER STM32F10X_MD BLUEPILL SWO_PB7 STLINK_V2A
BLUEPILL是一种板子,STLINK_V2A是另外一种,只能取其一。
i8 m9 s/ |7 w" r0 N
为了方便选择不同的板子,软件包已经开好了一些分支:
去掉了BLUEPILL,现在是USE_STDPERIPH_DRIVER STM32F10X_MD SWO_PB7 STLINK_V2A: d/ D A' P+ y# E- L6 [
还是不识别USB啊,有其他地方的问题吗?
我的板子比较特殊,是105VC的
引脚定义如下:
JTMS PB8
JTCK PB9* h H1 `: D N5 m8 r; R
RESET PE0
CDC TX PA2% j' @' \8 S4 Y
CDC RX PA3
USB D+ PA12
USB D- PA11
- ]9 Y. L* L, C5 x
请问这些引脚配置有问题吗?
但是USB连接电脑无法识别的问题,应该与这些引脚配置关系不大吧
这么大的事情你放到现在才说,105VC我完全不了解。& u9 C1 M, V- j9 n+ J: ]
7 {. F. G6 j4 ?6 I. M
要验证你的编译系统是否正常,建议你找一块Bluepill/STLINKv2板,然后下载你自己编译的固件,不行再试一试我编译固件,我相信不难吧。
接下来的问题是我的F103的USB库,能不能用于105VC? 直接用还是要做修改,这些都要搞清楚。( M& R! I; r% }# Z
(不知道你为什么使用105VC,速度快?价格低?)8 k( L: d3 E6 ?( }( q/ A( u
用103的最小系统板试了可以识别了+ a# m6 S. Q1 ^: n( S
但是我看了103和105的USB寄存器地址都一样,没发现哪里不一样引起的问题
我简单看了看规格书,105的是OTG的USB,那设置方面肯定与103的有不同,不能直接使用103的USB配置,你需要详细研究修改105的USB底层驱动,比如如何设置OTG为设备模式,如何做一个HID设备,等等。 如果您要套用我的源码,还不能更换到CubeMX的USB库,只能使用和现在103差不多的标准库。 工作量大。0 h( a. s2 f9 @" s* e
好的,暂时决定先不用105来做了,换103
我想问下,在你的源码里可以拓展CDC多串口吗?毕竟103也有3个串口可用