|
你好,请问:) [1 l3 H, \( c, w: z* \
咨询你个问题:我是omapl138芯片,自带arm和dsp;
/ x4 x$ Q( l3 S- _1 h5 u7 L+ l$ Yarm linux已经运行,dsp端操作gpio,arm端通过syslink控制dsp端gpio操作,在dsp端的gpio操作需要什么样的配置?与arm是否会冲突?是否有相关demo?6 ~) ]" ?9 n8 x. U# g1 Z
0 X2 m; b1 p+ r2 h1 w( T1 w }$ h5 A2 Q; F6 H/ e
我dsp端的gpio初始化:$ l2 A; N% x3 P+ v
#define PINMUX0_GPIO0_13_ENABLE (SYSCFG_PINMUX0_PINMUX0_11_8_GPIO0_13 << \" Z" S/ [: D$ V s: b
SYSCFG_PINMUX0_PINMUX0_11_8_SHIFT)
7 ?$ b5 B6 s0 e& t& {+ s9 x
9 P+ M6 i, g* s. Q% l) [void GPIOBank0Pin13PinMuxSetup(void)
, M( }! F1 }+ o7 ~8 D; `& H{
+ X1 |: R' t4 C* w; S3 e* J. j4 @ unsigned int savePinmux = 0;
- L& V% }, {: N- T; H9 N$ ~1 Q: ~, a
* G' I* C( u! h9 r$ D /*! g) V; L& l$ H) o6 r, L" U
** Clearing the bit in context and retaining the other bit values
5 z+ ^, s: R" V2 o: k3 X ** in PINMUX0 register.
. @& b5 P: F y. M: {8 r */: u) L/ ?6 l* f) N
savePinmux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(0)) &# h" Z" f4 c! N w& h
~(SYSCFG_PINMUX0_PINMUX0_11_8));. F5 Z: k/ m% N3 `) \; i
7 V* X* ^& r- I1 {7 @) p' b7 q' y
/* Setting the pins corresponding to GP0[13] in PINMUX14 register.*/
3 ` E2 l9 L% L/ Y% z# D% j3 m HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(0)) =
5 i/ J; ?3 b4 V! P, o; c* Q# b. f (PINMUX0_GPIO0_13_ENABLE | savePinmux);
8 g1 U$ K0 Y: Q: |7 M1 F) }, Z+ B: v& L& W
}
6 { v+ Q% G2 J# c- y% `- s' q9 I4 w) h
9 Z9 N) x5 r* d3 ]
int init(){
9 Y# V5 m j9 [" n% ]* cPSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);2 {) M$ o" B/ R }! Q
7 l+ f+ d' q- T3 b6 H: lGPIOBank0Pin13PinMuxSetup();# @# g [9 K5 b- Y
: b4 ^+ Q! K3 P4 {- k/ w2 L9 J
GPIODirModeSet(SOC_GPIO_0_REGS, FPP_NSTATUS_GPIO0_13, GPIO_DIR_INPUT);
: s# D- a4 B' i7 v1 G6 E
6 o; z- g) w$ f3 A}
! C( C: ~9 V& m! p/ F' \
6 K0 ~4 D V1 i5 r% r这个样初始化是否有问题?是否会跟arm端冲突?
0 @& ]9 v7 Z- H+ M |
|