完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
采用ARM cortex-M0 MCU驱动powetstep01。
完成SPI的初始化包括CS,SDO,SDI,CK,BUSY,STBY。 这是问题,我想步进电机运行,所以我写这个: CS =低; //芯片选择 SPI1_TX0 = param; // param = 0xFF50,因为运行命令的地址是0101000DIR,FF表示速度 SPI1_CNTRL | = GO_BUSY; //开始发送 延迟; CS =高; powerstep01不起作用。这是正确的方法吗? 或者在发送命令之前还应该做些什么(SPI已经初始化)? 非常感谢你! 以上来自于谷歌翻译 以下为原文 An arm cortex-M0 MCU is adopted to drive the powetstep01. The initialization of SPI is done including CS, SDO, SDI, CK,BUSY, STBY. Here is the problem, I want the step motor run, so I write this: CS=low;//chip select SPI1_TX0 = param;//param=0xFF50, since the address of the run command is 0101000DIR, and FF represents speed SPI1_CNTRL |= GO_BUSY;//start the transmit delay; CS=high; The powerstep01 did not work. Is this the right way? Or what else should be done before sending commands(SPI has been initialized already)? Thank you very much! |
|
相关推荐
1个回答
|
|
嗨,
在Run命令之后应该传递的speed参数是3个字节长,所以我认为你需要再向设备发送两个字节以使设备执行命令。 其他可能的问题: 必须在每次传输结束时提高CS线。器件的SPI一次接受一个字节。您在SPI接口中放入两个字节。它们以何种顺序传输(LSB优先或MSB优先)? 以上来自于谷歌翻译 以下为原文 Hi, The speed parameter that should be passed after the Run command is 3 bytes long, so I think you need to send two more bytes to the device in order to make the device execute the command. Other possible issues:
|
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2320 浏览 1 评论
3079 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1647 浏览 1 评论
3464 浏览 6 评论
5816 浏览 21 评论
807浏览 4评论
1182浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
451浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1164浏览 3评论
1216浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-28 08:23 , Processed in 1.060541 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191