嵌入式开发者社区
标题:
光盘UART2_INT例程
[打印本页]
作者:
51DSP2016
时间:
2017-3-21 19:11
标题:
光盘UART2_INT例程
使用CCS中的仿真跑一下 UART2_INT例程,结果在运行的时候一直卡在了 UARTPuts(" trolong ",-1);的位置。
% T' D3 m R) l. o7 W; S# V
经过单步调试,发现其实程序一直卡在了 下面函数中红色的位置。请问这是什么原因?应该怎么解决,如果使用开发板跑的话,还会出现这个问题吗?(因为ASIgen软件的原因,还没有在开发板上试过)。
& b/ d/ S! D' ]$ K" j: y
: Z" M$ B! \% A$ f
unsigned int UARTPuts(char *pTxBuffer, int numBytesToWrite)
& W; D7 k# A% `3 ^! f ]+ c
{
; S+ p+ X) y& D, m5 t* d( `8 E
unsigned int count = 0;
7 S& d! \( i4 ~) o
unsigned int flag = 0;
. z j* \! X. E, ?' R# t
& f' t( {3 |& f: y! e
if(numBytesToWrite < 0)
" M* H' ]! A2 H, f5 P
{
0 h& d3 k2 B2 q( Y# j% _
flag = 1;
$ @0 ~( [& C, A+ b
}
?! G5 r% y1 Q* h E
2 Z. c/ O6 L' x" z( Y0 S; r
while('\0' != *pTxBuffer)
* l4 r" o9 G) n! q4 s+ f7 M
{
. V! p$ @( \, M2 T, k7 D" q. S; w2 Q
if('\n' == *pTxBuffer)
4 T2 y" h; h. H; @* j& d+ m7 L* r* _
{
$ F) z9 f. u. p n; k! `; }
UARTCharPut(SOC_UART_2_REGS, '\r');
+ r' ~1 x( g5 `- `' e) @
UARTCharPut(SOC_UART_2_REGS, '\n');
& e3 ]6 m* i3 \' ^
}
9 c3 B3 g4 ^) r
else
/ e/ L; T1 Y } ^8 K
{
' f& U0 y" B+ L9 p7 o# |9 }4 T
UARTCharPut(SOC_UART_2_REGS, (unsigned char)*pTxBuffer);
% x8 i. F3 L1 `4 \$ ?7 X
}
, o- B9 Y2 I7 Z5 E% h- ]& a z, h
pTxBuffer++;
* ?! y @$ D; ?+ L
count++;
5 Q, b9 V! D! Y, V' k
& J/ p$ l$ ?5 D+ e' F
if((0 == flag) && (count == numBytesToWrite))
0 a8 x) Q9 v1 m# ?) X7 ~& \+ ?
{
+ G E$ r# Y' d6 a1 @8 Y
break;
" u0 v- l+ g1 R7 u% H
}
! p( S' @- K: c6 H. z+ B; e5 q# L
$ d: g6 |9 }7 I n, \' q8 h
}
7 T1 X, q/ b8 W) U' ]' x% o# y- y
+ B9 m( ] ^5 q1 h2 W* W: z7 E
return count;
& C* b- [9 }8 i+ _
}
1 @2 f4 M h' O7 `# i F7 X0 h! P7 J
% y* j7 X7 _3 D
作者:
human
时间:
2017-3-21 22:00
没有出现这样的问题
6 [9 c& n# T i3 j
看看是不是debug模式
作者:
希望缄默
时间:
2017-3-22 07:30
这款芯片软件仿真不能操作硬件外设
欢迎光临 嵌入式开发者社区 (https://www.51ele.net/)
Powered by Discuz! X3.4