|
请教一下,我们这边在omapl138开发的时候,使用了sdk里面的例程1,helloworld例程进行引脚复用配置的测试,
" u# ]9 u. \3 v9 p4 ]: b PINMUX0 &= 0x00ffffff; j2 z/ C0 H& @
PINMUX0 |= 0x08000000;
* }# J. T* D5 O6 ~ n1 C
9 w R) V$ l* g有个现象不能理解,就是在cfg文件里面有
5 m5 T5 p; B/ {3 X/* required because SysLink is running on the host processor */
$ f8 z, U- q% U- cxdc.useModule('ti.syslink.ipc.rtos.Syslink');
* f2 b5 N+ D! g/ T5 _; P; ?/ _+ Z) T4 S& ?. `7 E) _
这么一句话,如果把这句话去掉的话,引脚复用寄存器PINMUX,已经别的gpio的方向,写值等寄存器都没有写值成功,因为可以再arm侧读这些omapl138的固定寄存器,发现读不到,同时也配置了gpio点灯,也点不亮灯,事实就是这些寄存器没有写值成功,$ C5 O9 x; E7 J/ j3 `; e/ f
但是如果在cfg文件里面增加了5 _% Y, f3 w; G$ g2 P3 x( }
/* required because SysLink is running on the host processor */
" h$ Q* }$ u2 n8 F: i. cxdc.useModule('ti.syslink.ipc.rtos.Syslink');
; ^( c/ s1 K& S: J4 G- z
7 v7 ] W' ~% i3 q' O这么一句话,那么相同的代码,寄存器写值都能成功了,gpio点灯也点亮了,这一点我们没有理解,请帮忙分析一下,这是什么原因,1 K j' {& O6 L6 z
/* required because SysLink is running on the host processor */" j$ }) g! {* S7 b6 q
xdc.useModule('ti.syslink.ipc.rtos.Syslink');这句话为啥对这些寄存器配置写值有影响?( d" G1 p4 Y$ ]+ e; ] _7 ^2 c% E: A3 E
% k# f; _" K, J( I
|
|