请问大神们:
1、 我在做S5PV210开发板的SPI口自发自收数据时,用自带的spidev.c驱动和spidev_test.c测试程序,串口工具显示可以发送数据,但为什么出不来时钟信号?
一般检测不到时钟信号都是由什么造成的?准确的说有波形出来,但不是标准方波,而是高电平往低电平跳2下马上回到高电平。(我发的一组数据是spidev_test.c自带的,时钟应该是标准方波才对。)
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0x40, 0x00, 0x00, 0x00, 0x00, 0x95,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xDE, 0xAD, 0xBE, 0xEF, 0xBA, 0xAD,
0xF0, 0x0D,)
2、同样在做SPI自收自发数据时,在spidev.c驱动程序的open函数中将cs拉高
{gpio_direction_output(S5PV210_GPB(1), 1);},cs还是默认的低电平状态呢?无论我加入中断后,在读写函数里分别拉高拉低,cs都没有任何反应,全是低电平呢?是因为cs复用了吗?那我重新设置寄存器状态
{s3c_gpio_cfgpin(S5PV210_GPB(1), S3C_GPIO_OUTPUT);s3c_gpio_setpin(S5PV210_GPB(1), 1);}再拉高也不行啊?这样设置直接烧进去后,不能正常开机了?
注:我在这添加cs信号是主从模式收发数据时,需要cs信号拉低来判断是否有数据发送,这个是项目要求的,其实可以用其他GPIO口,但是最好要cs口。我觉得是不是我在驱动程序里面直接拉低GPIO口的写法有误啊?还是需要怎么设置下?这个问题困扰我耽误项目几天了,请教大神们啊,拜谢@!
请教大神啊,项目特别急,特别是第二个问题,求教版主。谢谢~! |