嵌入式开发者社区

标题: 光盘UART2_INT例程 [打印本页]

作者: 51DSP2016    时间: 2017-3-21 19:11
标题: 光盘UART2_INT例程
使用CCS中的仿真跑一下 UART2_INT例程,结果在运行的时候一直卡在了 UARTPuts(" trolong ",-1);的位置。( H9 M2 Q3 L$ h5 k% R# K
经过单步调试,发现其实程序一直卡在了 下面函数中红色的位置。请问这是什么原因?应该怎么解决,如果使用开发板跑的话,还会出现这个问题吗?(因为ASIgen软件的原因,还没有在开发板上试过)。
- M$ B) a  x' a! I* s& |( S% j0 }6 a$ Z/ V
unsigned int UARTPuts(char *pTxBuffer, int numBytesToWrite)
; j" H0 ]" t# ]9 h{
( l! h  R) b. s2 m$ i( C  N9 K     unsigned int count = 0;
7 _2 r5 C2 @: y8 W$ ?) ?, h2 |# T" v     unsigned int flag = 0;$ h" J- v5 A3 t/ _+ T$ C$ n& N* k6 C  F9 x

0 N% r& w! c# T! q     if(numBytesToWrite < 0)
, _8 q- n; X7 w# z7 \! w  \     {
: H& e9 `) ~1 p: f5 @          flag = 1;. |8 m$ |8 A: X% T6 e7 K; ~  r6 y, R; q
     }
* k8 H1 c2 H: K! Q/ X" m6 f& A  B4 ]% V% \+ j, b( |/ Q/ S
     while('\0' != *pTxBuffer)
7 |1 [+ A) J3 I7 o% J     {- @% `  Z: H- g$ r7 {4 s
          if('\n' == *pTxBuffer)) ~  m3 E4 ?( H" U- E  X3 m
          {! _5 z5 _( u/ G: R, [
                   UARTCharPut(SOC_UART_2_REGS, '\r');
% J* l6 j/ H) R; w                   UARTCharPut(SOC_UART_2_REGS, '\n');8 h$ L: [3 h5 S" n
          }
9 o2 \( d  n$ z3 b( w          else6 S1 K" J% M/ f/ X* z
          {
1 C+ _. U& F( }" F" J1 k' r  j3 d, g                  UARTCharPut(SOC_UART_2_REGS, (unsigned char)*pTxBuffer);
& B) D$ M. l! e1 f5 y( H          }: K% v% j" Q9 b* ^' T7 S9 E
          pTxBuffer++;
+ S1 C; e) {9 G$ R. P0 h; u. {: H7 r          count++;
0 P& H2 x0 V2 M/ a: y, H, R: h# I% a4 m& X% O6 ~7 ]0 ~* T
          if((0 == flag) && (count == numBytesToWrite))
* M) P! \7 [6 m. |; l5 j+ l          {5 R2 t" Y2 Q  R( r; S4 p4 W
               break;: E' s8 ~3 y. N, v2 m; r
          }
0 D) W2 i2 E7 U& M8 H% K  O4 D! |1 p5 ?9 D9 {/ ?  \
     }
: t* a# d9 I& T# Z! k- h4 H* ?; A) v% U, W/ U9 n, L
   return count;
/ M) r, \# j% H7 L3 [' V}; r* a' X) l2 R6 a
3 j$ U: I7 o  B* G: A" ]

作者: human    时间: 2017-3-21 22:00
没有出现这样的问题
$ l3 G0 O2 a' I3 H6 o6 L看看是不是debug模式
作者: 希望缄默    时间: 2017-3-22 07:30
这款芯片软件仿真不能操作硬件外设




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4