嵌入式开发者社区

标题: OMAPL138 SPI通讯 [打印本页]

作者: dongxiaoyang    时间: 2016-10-18 21:30
标题: OMAPL138 SPI通讯
' ~& e. V$ }3 F2 h3 F

, t1 T7 G% M3 y8 D6 _
有一个问题,请大神帮忙,我在用贵公司的OMAPL138,用IO口模拟SPI通讯时序,目前我写的程序,SCLK周期最小就为9.6us,但是我需要更快的SCLK时序,关于SCLK的时序如下,请问程序需要怎么修改,谢谢。
void WriteViaSpi(INT8UValueToWrite)
{
       INT8Ui;
       //Write out the ControlWord
       for(i= 0; i < 8; i++)
       {     
              CLR_SCLK();
              if(0x80== (ValueToWrite & 0x80))
              {
                     SET_SDIN();   //Sendone to SDI pin
              }
              else
              {
                     CLR_SDIN();   //Sendzero to SDI pin
              }
              SET_SCLK();
              ValueToWrite<<= 1;    //Rotate data
       }
       CLR_SCLK();
    delay(1);//100
}

/ N6 u8 y2 E1 _) x  \# W; B2 f
作者: 希望缄默    时间: 2016-10-19 09:02
程序本身优化空间不大
+ x5 m: b' T$ I2 A( ?; L编译选项 -o2 / -o3
0 p$ c0 A( p: O+ W3 DCMD 文件把段放到 L2RAM 中等等
; w7 ~: R, ?( x- z: @8 v' Y
9 D/ l- C+ u) }  d4 w或者改用硬件 SPI
作者: dongxiaoyang    时间: 2016-10-19 10:13
请问,-o2 / -o3 CMD 文件把段放到 L2RAM 怎么修改呢?谢谢
作者: human    时间: 2016-10-20 12:17
您打开CMD文件就知道
$ }' Y+ F# f; v2 i$ K6 D2 C编译选项在工程属性配置
作者: dongxiaoyang    时间: 2016-10-21 10:27
改了-o2/-o3有效果,用-o3能到5us,但是改CMD文件没有效果。还请问,OMAPL138的主频时钟是456MHZ,是不是硬件IO口被分频了?咱们的历程程序里是不是有对硬件IO口的时钟限制啊?谢谢




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4