2020-01-04 18:46发布
momo_li 发表于 2019-8-19 10:25 看SWD的时序,并不是标准的8-16-32位,比如那个ACK就只有3位,我估计这个应该用标准的SPI实现不了,所以 ...
布心 发表于 2019-8-19 12:50 别往SPI上想了,STM32F1/F2系列的GPIO实现双向通行,IO口需要配置为开漏输出,开漏输出的话,就需要外加 ...
momo_li 发表于 2019-8-19 13:20 想来想去也只能是开漏做输出和另一个IO配合实现双向了, 为了高速,JLINK特地在输出使用了方向可控的缓冲 ...
zhikunWang 发表于 2019-8-20 08:45 我有个ARM脱机烧写器,第三方厂家做的,烧写需要十几秒, 而jlink只要1秒不到。 ...
2019-08-20_092203.jpg (216.04 KB, 下载次数: 0)
下载附件
2019-8-20 09:22 上传
最多设置5个标签!
别往SPI上想了,STM32F1/F2系列的GPIO实现双向通行,IO口需要配置为开漏输出,开漏输出的话,就需要外加上拉电阻,这样的话,速度肯定上不去的,1MHz到顶了。如果采用切换配置来事项I和O,速度同样上不去。I永远配置为输入,O永远配置为输出,没有切换。也就是为什么它们中间要加个2K电阻的原因。
想来想去也只能是开漏做输出和另一个IO配合实现双向了,
为了高速,JLINK特地在输出使用了方向可控的缓冲芯片,这样做输出的时候开漏输出的负载为高阻,提高了输出的速度,
输入时缓冲芯片换方向,同样是高阻输入,解决了输入的速度,看上去很高深的东西,扒光了看看也不过如此。
关键还是时钟上不去,IO口模拟时钟当然高不了,IO切向耗不了多少时间。
估计就是IO模拟swd的效率问题,真正快速就要使用汇编了,或者用fpga
2019-08-20_092203.jpg (216.04 KB, 下载次数: 0)
下载附件
2019-8-20 09:22 上传
一周热门 更多>