主题 : SPI 时钟信号在发送数据时没有波形,或者波形不正常 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 66012
精华: 0
发帖: 3
金钱: 15 两
威望: 3 点
综合积分: 6 分
注册时间: 2012-03-25
最后登录: 2012-03-28
楼主  发表于: 2012-03-25 14:15

 SPI 时钟信号在发送数据时没有波形,或者波形不正常

如题,我使用了Micro2440核心板的SPI1口,外接了自己的芯片,按照论坛上的方法生成了spidev1.0节点,目前现象:
1、使用spidev_test.c程序,MISO、MOSI互相连接时可以看到正确的输出;
2、此时的设置是MISO、MOSI均激活了上拉,片选信号nSS1也设置为上拉,时钟信号未激活上拉;
程序如下:
        s3c2410_gpio_cfgpin(S3C2410_GPG(7), S3C2410_GPG7_SPICLK1);
        s3c2410_gpio_cfgpin(S3C2410_GPG(6), S3C2410_GPG6_SPIMOSI1);
        s3c2410_gpio_cfgpin(S3C2410_GPG(5), S3C2410_GPG5_SPIMISO1);

        s3c2410_gpio_pullup(S3C2410_GPG(3), 1);
        s3c2410_gpio_pullup(S3C2410_GPG(5), 1);
        s3c2410_gpio_pullup(S3C2410_GPG(6), 1);

3、MISO和MOSI不连接时,接收到的数据是随机的。有时候全是0,有时候夹杂有随机的数据。而且我修改了驱动,将片选nSS1一直置为低电平。

问题:
1、主机的nSS1能和从机的CSn接在一起么?可以一直设为低电平么?
2、外接芯片描述为: The digital inputs SCLK, SI and CSn are high-impedance inputs (no internal pull-up) and should have
                                        external pull-ups if not driven. SO is high-impedance when CSn is high. An external pull-up should be
                                       used at SO to prevent floating input at microcontroller. Unused I/O pins on the MCU can be set to outputs
                                       with a fixed '0' level to avoid leakage currents.
      新手请问哪些管脚在驱动中该配置为激活上拉电阻?
3、为何时钟信号输出有问题?要么没有,要么为三角波和梯形波的组合?

谢谢达人解惑
级别: 新手上路
UID: 64579
精华: 0
发帖: 24
金钱: 120 两
威望: 24 点
综合积分: 48 分
注册时间: 2012-03-07
最后登录: 2013-10-29
1楼  发表于: 2012-12-08 10:56
哎,友善之臂的售后太差劲了!