|
请教一下,我们这边在omapl138开发的时候,使用了sdk里面的例程1,helloworld例程进行引脚复用配置的测试,! n$ [ A# @7 S( c$ W$ A
PINMUX0 &= 0x00ffffff;. t2 p( p B g7 G$ X
PINMUX0 |= 0x08000000;
' y+ Y P1 U1 ^& o7 E8 T3 v/ o+ \7 ~- m% O$ M
有个现象不能理解,就是在cfg文件里面有
" G1 c: l5 t# u4 B; S4 J9 w8 V/* required because SysLink is running on the host processor */1 n; Y' Q2 C5 e$ {. P! i
xdc.useModule('ti.syslink.ipc.rtos.Syslink');& n7 D: x: k; z& |+ p( q: b% l
. \ I$ l4 ?" h- j
这么一句话,如果把这句话去掉的话,引脚复用寄存器PINMUX,已经别的gpio的方向,写值等寄存器都没有写值成功,因为可以再arm侧读这些omapl138的固定寄存器,发现读不到,同时也配置了gpio点灯,也点不亮灯,事实就是这些寄存器没有写值成功,
) }1 \; q/ N& Z! ~' ?但是如果在cfg文件里面增加了
6 E' y. S9 O8 p- S$ `/* required because SysLink is running on the host processor */
3 e- o" o# F( t- J4 u4 @5 Uxdc.useModule('ti.syslink.ipc.rtos.Syslink');# {3 P# E+ S$ B5 J _$ {
7 _( {* M7 S$ x1 x% |% r J
这么一句话,那么相同的代码,寄存器写值都能成功了,gpio点灯也点亮了,这一点我们没有理解,请帮忙分析一下,这是什么原因,7 O9 y, q3 k- B$ S6 ?
/* required because SysLink is running on the host processor */
0 {( G# w1 ~( D" `9 J; j: Axdc.useModule('ti.syslink.ipc.rtos.Syslink');这句话为啥对这些寄存器配置写值有影响?
, m% V; f' l, W/ E7 _. ^6 o! V: H" p/ I0 U! ^2 g/ w1 ?0 B) K' s. O
|
|