|
你好,请问:: o8 t' G- @' P, U A7 @
咨询你个问题:我是omapl138芯片,自带arm和dsp;
9 f$ K) o* S) a* qarm linux已经运行,dsp端操作gpio,arm端通过syslink控制dsp端gpio操作,在dsp端的gpio操作需要什么样的配置?与arm是否会冲突?是否有相关demo?
, j2 T9 w- X* z9 c6 ^8 {7 l
+ T6 F0 h" {& U$ o! F# R- A( r( h6 h7 |; G* e8 M Q% G3 N
我dsp端的gpio初始化:' z W: v, p! b5 a
#define PINMUX0_GPIO0_13_ENABLE (SYSCFG_PINMUX0_PINMUX0_11_8_GPIO0_13 << \. I1 F# w! V3 b) j
SYSCFG_PINMUX0_PINMUX0_11_8_SHIFT)
7 B& d2 P: U; W: U! `: s3 M" O7 }- u; c1 }, P7 C
void GPIOBank0Pin13PinMuxSetup(void)1 W. [% H; }1 d8 a# E) U
{
' D. n1 _2 i8 N8 P& F! A unsigned int savePinmux = 0;
- V6 B- v0 k5 S! z9 Z F7 t% v9 j$ |5 r4 @$ U/ F
/*1 G7 s+ C& F, |. T; H3 ?" o
** Clearing the bit in context and retaining the other bit values) ]9 o' C Z( {1 B5 z% D4 z6 h
** in PINMUX0 register.
3 v+ k% q( L2 C/ |) R4 u- R. w7 Y */
7 c0 @6 t( z4 r+ }8 y* Z6 H, ^ savePinmux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(0)) &6 ~! V7 S: O, A' ?" S
~(SYSCFG_PINMUX0_PINMUX0_11_8));5 a! I8 P9 @6 H0 C. p: w
7 ^) L& i3 e. u& \6 q
/* Setting the pins corresponding to GP0[13] in PINMUX14 register.*/
2 u' p- o r) G- i HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(0)) =
H8 c) U. o# R+ m. M- M6 s( y (PINMUX0_GPIO0_13_ENABLE | savePinmux);; a% |9 g% w4 U: [* K! u% P
' e* E" a+ Z8 j7 G
}
8 p# o* J7 g3 o' [3 |0 y( J/ `8 R1 s9 i
) T4 N3 o5 J9 i+ G) U* ^) O7 Cint init(){
# B$ d- _2 v* q! \; j v0 _PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);) Y' q$ X9 U/ ]( T
1 R' j8 y2 H8 {3 h/ GGPIOBank0Pin13PinMuxSetup();$ H5 w9 ?, B& M# x* Z9 q
+ K) t3 l# c1 c6 y
GPIODirModeSet(SOC_GPIO_0_REGS, FPP_NSTATUS_GPIO0_13, GPIO_DIR_INPUT);6 \7 w8 r+ F, ?2 E
+ N. }+ i) c, \0 h0 L) R: }
}. G9 ~7 A. ^, b- n; y
. m$ c! o$ J6 F* d2 L7 U1 W1 {这个样初始化是否有问题?是否会跟arm端冲突?
% v! Q g' _ T# ~) ` |
|