*pSPI_CTL = 0x1001|CPHA| CPOL; //配置模式为手动片选模式
上面这句话为啥这么设置啊,CHPA和CPOL是CTL寄存器的位么?为啥这个语句还要用或0x1001运算?菜鸟实在是弄不明白,求高人解答
你用帮助文件找一个SPI_CTL的寄存器,CPHA和CPOL对应寄存器同名位,|CPHA| CPOL表示这两位写1。
0x1001对应的寄存器含义为 :SPI主模式,当传输buffer为空时进入中断。配置寄存器可以直接填入寄存器位名配置,2位的比较麻烦,可以宏定义一个自己能看懂的位名,也可以直接写入数据配置,只是可读性差一点。
为什么我直接编译咱们的例程会报错?CPHA和CPOL这两个寄存器在哪个头文件里面有定义?我在cdefbf533和bf532好像没找大这两个文件啊。还有PF0-PF15和FLG这些都没有在头文件里面找到。晕了
报错抓图贴上来。
你把调用的头文件里面又调用的头文件也找一下就找到了。或者用windows自带的文件内容搜索,把VDSP下的 include文件夹搜索一遍。