打印
[Kinetis]

求助kl25系列使用spi问题

[复制链接]
1945|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
FSL_TICS_Robin| | 2014-12-18 09:49 | 只看该作者
楼主你好
PE工具内LDD级别的模块都是附带典型例程的。
请从Kinetis系列产品常见问题总结下载附件文档,在图示位置就有调出典型例程的方法:



使用特权

评论回复
板凳
小小的鳄鱼|  楼主 | 2014-12-18 20:12 | 只看该作者
本帖最后由 小小的鳄鱼 于 2014-12-18 20:16 编辑

@FSL_TICS_Robin 请问kl25z的spi(spi0或spi1)是不是只能选一个一引脚配置成 cs(片选)? 如果我想用spi0(或者spi1)分时控制两片相同的从spi该怎么弄呢?
我尝试了用通用io模拟片选,但是发现spi传输的值,从设备接收到值不对··,我又不能找到pe配置的片选他的置高置低的触发的代码位置··十分急啊··难道只有换芯片?

使用特权

评论回复
地板
小小的鳄鱼|  楼主 | 2014-12-18 20:18 | 只看该作者
求助kl25z 的 spi问题  @FSL_TICS_ZJJ  

使用特权

评论回复
5
FSL_TICS_ZJJ| | 2014-12-19 10:24 | 只看该作者
小小的鳄鱼 发表于 2014-12-18 20:12
@FSL_TICS_Robin 请问kl25z的spi(spi0或spi1)是不是只能选一个一引脚配置成 cs(片选)? 如果我想用spi0 ...

我觉得,PE不让你选,你可以先选个其他引脚,等代码生成好后,把模块锁掉,然后到生成文件中修改CS引脚一样试试。

使用特权

评论回复
6
FSL_TICS_Robin| | 2014-12-19 10:51 | 只看该作者
小小的鳄鱼 发表于 2014-12-18 20:12
@FSL_TICS_Robin 请问kl25z的spi(spi0或spi1)是不是只能选一个一引脚配置成 cs(片选)? 如果我想用spi0 ...

同样的方法跳出帮助文档


其中Chip select list有提示让你用SelectConfiguration函数实现片选切换

使用特权

评论回复
7
小小的鳄鱼|  楼主 | 2014-12-19 13:13 | 只看该作者
本帖最后由 小小的鳄鱼 于 2014-12-19 13:17 编辑

@FSL_TICS_Robin 谢谢您抽空回答我的帖子,我用的是freescale FRDM-KL25的板子,芯片是MKL25Z128VLK4Z,在PE配置那一栏没有找到SelectConfiguration函数,昨天我看了spi帮助文档,上面也提到了SelectConfiguration函数,但是我找了好久也没发现,所以我才询问您,是不是KL25只支持配置一个片选··,是不是我那里配置有误啊。请指点一下,谢谢!
我sm1:spimaster中没有SelectConfiguration函数

使用特权

评论回复
8
FSL_TICS_Robin| | 2014-12-19 13:37 | 只看该作者
小小的鳄鱼 发表于 2014-12-19 13:13
@FSL_TICS_Robin 谢谢您抽空回答我的帖子,我用的是freescale FRDM-KL25的板子,芯片是MKL25Z128VLK4Z,在PE ...

请按此图点选Advanced模式,这个在2楼提到的FAQ文档里也有的(3.3 如何配置Component Inspector选项卡的显示级别)。

使用特权

评论回复
9
小小的鳄鱼|  楼主 | 2014-12-19 13:51 | 只看该作者
本帖最后由 小小的鳄鱼 于 2014-12-19 14:07 编辑

@FSL_TICS_ZJJ 您好,谢谢您能回复,我属于kl25用PE的新手,
我表达一下我对spi的编写流程,
在stm32中,初始化:只需要配置io引脚、配置输出时钟,配置spi,
                   编写读(写)spi数据寄存器的函数
                   编写spi功能函数(如果是传数据函数只需,使能片选引脚—>调用写spi数据寄存器的函数->取消片选引脚)
            应用:初始化spi(调用初始化spi函数),调用功能函数


在freescale,配置PE(类似设置初始化spi的参数)
             调用初始化函数(可配置系统自动初始化)
             调用功能函数

可问题来了--->@FSL_TICS_ZJJ 请问 在PE配置的片选引脚CS使能和取消使能在哪里啊?(我只发现在初始化中,初始化引脚时,对引脚初始化了,在调用功能函数处都没发现。

这是我PE配置

只是初始化中引脚的初始化能看到片选引脚为PE4


这是使用SM1_SendChar函数的步进过程,没发现片选使能
过程是SM1_SendChar->SMasterLdd1_SendBlock->SPI_PDD_EnableInterruptMask->PE_ISR
SM1_SendChar

SMasterLdd1_SendBlock

SPI_PDD_EnableInterruptMask

PE_ISR







使用特权

评论回复
10
FSL_TICS_Robin| | 2014-12-19 14:11 | 只看该作者
FSL_TICS_Robin 发表于 2014-12-19 13:37
请按此图点选Advanced模式,这个在2楼提到的FAQ文档里也有的(3.3 如何配置Component Inspector选项卡的 ...

请看8楼图片中红圈,勾选后即可看到SelectConfiguration函数

使用特权

评论回复
11
小小的鳄鱼|  楼主 | 2014-12-19 14:29 | 只看该作者
本帖最后由 小小的鳄鱼 于 2014-12-19 14:50 编辑
FSL_TICS_Robin 发表于 2014-12-19 14:11
请看8楼图片中红圈,勾选后即可看到SelectConfiguration函数

@FSL_TICS_Robin 嗯,谢谢您提醒··,但是我的组件配置出来还是有问题!
问题是,
如果Chip_select_List 为1时                            SelectConfiguration函数不能生成
如果Chip_select_List 为2(或者以上)时,   SelectConfiguration 函数 能生成,但是组件报错
我比较疑问的是我这块板能不能实现PE配置同一总线下实现多片片选从设备,help文档上写的是能,不知道文档所述的内容是不是包括整个freescale系列的MCU还是只是我这款的。

使用特权

评论回复
12
小小的鳄鱼|  楼主 | 2014-12-19 14:42 | 只看该作者
本帖最后由 小小的鳄鱼 于 2014-12-19 14:57 编辑
FSL_TICS_ZJJ 发表于 2014-12-19 10:24
我觉得,PE不让你选,你可以先选个其他引脚,等代码生成好后,把模块锁掉,然后到生成文件中修改CS引脚一 ...

想干的是这样的,实现同一spi总线下,切换片选,(同一芯片)分时选择不同从设备。
PE是在初始化固定的片选引脚。按照您给方法(我理解的是,先生成spi组件模块,随后在程序中将片选CS改成自己需要的引脚,不知道自己理解对吗?),我只需在用的时候,重新初始化片选引脚,我去试试,不知道可行不,我理解错了的话,请指出。谢谢

使用特权

评论回复
13
小小的鳄鱼|  楼主 | 2014-12-19 15:12 | 只看该作者
@FSL_TICS_Robin  谢谢您哈,我发现就像我开始所想的:freescale FRDM-KL25的板子,芯片是MKL25Z128VLK4Z  只能支持一个CS设置(CS0),Chip_select_List不能配置为2和2以上.     

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

18

帖子

0

粉丝