嵌入式开发者社区
标题:
光盘UART2_INT例程
[打印本页]
作者:
51DSP2016
时间:
2017-3-21 19:11
标题:
光盘UART2_INT例程
使用CCS中的仿真跑一下 UART2_INT例程,结果在运行的时候一直卡在了 UARTPuts(" trolong ",-1);的位置。
# W4 e. \$ x" Q+ u+ q
经过单步调试,发现其实程序一直卡在了 下面函数中红色的位置。请问这是什么原因?应该怎么解决,如果使用开发板跑的话,还会出现这个问题吗?(因为ASIgen软件的原因,还没有在开发板上试过)。
; ~) c# Q; g. K) h& f% r, G
+ B; r: c) p. G% H0 G" v5 U
unsigned int UARTPuts(char *pTxBuffer, int numBytesToWrite)
2 E& [ Z' a4 R
{
0 y. ]3 P% m8 j& [+ e! Q
unsigned int count = 0;
+ Q- \; p" o/ { c7 _5 K7 c" _$ y
unsigned int flag = 0;
0 z) W9 P: X! Q
) J8 Y1 Q5 c- v3 g4 t8 n# u# |
if(numBytesToWrite < 0)
" R3 o' L0 s' u9 ^% ], O
{
* s. G) g" Q6 {% Y
flag = 1;
8 [* M& T% j! b( J! @
}
- e1 O- d! {7 Y9 q) Q' a
# s6 X1 v6 a8 w& b
while('\0' != *pTxBuffer)
|, f$ _9 g2 ^
{
# N8 F3 J7 q" m- N3 R1 P; w$ A
if('\n' == *pTxBuffer)
: y+ Z) |& f0 K9 v( Y C9 @: B( T0 b
{
- b/ J5 ]' g. w7 F+ c" F4 ^' {: V
UARTCharPut(SOC_UART_2_REGS, '\r');
5 R4 a& B5 O; d: U; c
UARTCharPut(SOC_UART_2_REGS, '\n');
6 e- C3 f. f5 V: m
}
0 K) f% `' K, r6 o$ j
else
, k+ k# e- S( E" ~: S
{
( H+ r. S( Q) v' z
UARTCharPut(SOC_UART_2_REGS, (unsigned char)*pTxBuffer);
0 ~# l( T2 T2 X( b
}
% X- d4 U6 W6 f: {$ d1 s
pTxBuffer++;
9 V$ @8 V7 U0 a+ R& ~: |9 ]
count++;
" f- v3 E/ c, k& J* _3 X3 G% B
4 i/ X; K% p, e- a2 ?
if((0 == flag) && (count == numBytesToWrite))
( P9 Q" U9 |1 v9 I7 h, A1 s1 p
{
/ g9 B/ F, c+ Y! x9 L: E
break;
8 ^; u2 B" ~' r0 U
}
; Y- f' a2 ?) Z1 ^, o
5 Z+ k8 Y2 F! M* ]+ a4 |
}
& F5 D. F' I' \/ S5 r- F
; q2 s) u0 v. p, l9 i# k z! s
return count;
8 V7 L. R0 R. s
}
6 t8 E) Z& s7 x2 s) w. E3 \
0 R3 p$ e" Q( R* n
作者:
human
时间:
2017-3-21 22:00
没有出现这样的问题
6 {- ]# a3 [) j7 J- F
看看是不是debug模式
作者:
希望缄默
时间:
2017-3-22 07:30
这款芯片软件仿真不能操作硬件外设
欢迎光临 嵌入式开发者社区 (https://www.51ele.net/)
Powered by Discuz! X3.4