关于“UART2_INT——UART2串口中断收发”例程 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 10627|回复: 9
打印 上一主题 下一主题

关于“UART2_INT——UART2串口中断收发”例程

[复制链接]

20

主题

65

帖子

341

积分

中级会员

Rank: 3Rank: 3

积分
341
跳转到指定楼层
楼主
发表于 2016-11-10 21:45:35 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
现在用138芯片搭一个导航平台,DSP用于导航解算,ARM用于通过UART2与PC通信。想问$ w/ a* E( r5 ?! C  v; m* H
1.。DSP解算出来的数据是存在哪里?9 J* ]7 M0 c2 V: N0 V# b
2.。在例程中有这段代码:
# a0 D% Q" l7 d& a6 N) x+ ]7 ` unsigned int int_id = 0;4 g3 J  O% o6 y2 L

3 C% K. v6 {0 L; l- n3 Q4 A+ n2 l    // 确定中断源8 W' p/ @6 `- M7 G
    int_id = UARTIntStatus(SOC_UART_2_REGS);: K# b# W% I8 S- H, h* {! Q
1 l! B& x! G! S  N1 Y4 C
    // 清除 UART2 系统中断+ t5 ^# [* \/ |/ Z: _; m
    IntSystemStatusClear(SYS_INT_UARTINT2);
$ ?  G  o0 h$ @' r
# {! f2 n0 O4 r9 K. H    // 发送中断
" a0 r- E( v5 F3 }* [" E( }    if(UART_INTID_TX_EMPTY == int_id)- V& `- C5 D$ @/ Y! Q2 K" o
    {
$ \7 ^. E( E, p% `3 f1 ], b- [% T5 c        if(0 < length)
) r! H# y7 X. u. F+ l& y9 B        {
( ~: z2 E1 n: Q- z            // 写一个字节到 THR
3 A" |0 q; C6 m9 w8 v            UARTCharPutNonBlocking(SOC_UART_2_REGS, txArray[count]);
9 n& @& m& l- k            length--;! v6 T  z% h) ]( h% ^$ u% B, r
            count++;
( z7 m) q0 b( [        }  }- A7 ~' Y. N/ @1 f$ a
        if(0 == length)% |1 ^& M- W' W7 F& Z2 b
        {0 E3 p7 V1 Y# C( Y4 s
            // 禁用发送中断
' F5 l0 k( Q% G- P2 S            UARTIntDisable(SOC_UART_2_REGS, UART_INT_TX_EMPTY);) E7 b, s) @  m: v+ ?
        }
* I' B, f8 G; @9 m1 }     }; x- E% C0 b% Z1 \1 h9 U$ T
我的问题是这里为什么用if不用for??另外这个UART中断是怎么触发的?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
推荐
发表于 2016-11-11 15:29:40 | 只看该作者
1、存在所有可以访问的 RAM 空间都可以3 e8 [8 A( Q8 m* f
2、因为每接收一个字节就产生一次中断
回复 支持 1 反对 0

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
11#
发表于 2018-8-7 15:02:43 | 只看该作者
jiahaonan1022 发表于 2018-3-22 11:43
3 j& `; x2 r* I. U- H6 c7 j2 p" u您好,我想问一下如何手动使能发送中断?
: H1 A! z+ A# g
您好 不好意思回复晚了
& T% i3 ]! O# G8 Q% P  c应该这样就可以了
3 g6 }0 A( w3 o5 ^    UARTIntEnable(SOC_UART_2_REGS, UART_INT_TX_EMPTY)
回复 支持 反对

使用道具 举报

1

主题

3

帖子

1021

积分

金牌会员

Rank: 6Rank: 6

积分
1021
10#
发表于 2018-3-22 11:43:17 | 只看该作者
希望缄默 发表于 2016-11-13 21:33
: H- `% c' n. Y, s  S# u1 t6 R手动使能发送中断就会触发下一次发送

. l! L" g7 w: u" V! I您好,我想问一下如何手动使能发送中断?

点评

您好 不好意思回复晚了 应该这样就可以了 UARTIntEnable(SOC_UART_2_REGS, UART_INT_TX_EMPTY)  详情 回复 发表于 2018-8-7 15:02
回复 支持 反对

使用道具 举报

20

主题

65

帖子

341

积分

中级会员

Rank: 3Rank: 3

积分
341
9#
 楼主| 发表于 2017-3-6 16:54:55 | 只看该作者
Etihad_21 发表于 2017-3-5 22:270 }( K( U0 w4 n* d0 R: L. w5 y
你好,想问你个问题,你有没有用串口实时接收过数据呢?我在实现NovAtel接收机实时通过串口传输数据到DSP时 ...

1 p* O$ i& z2 `# v' E' q+ U. c: U你好。。我后来不搞这块了
回复 支持 反对

使用道具 举报

1

主题

2

帖子

1021

积分

金牌会员

Rank: 6Rank: 6

积分
1021
8#
发表于 2017-3-5 22:27:54 | 只看该作者
你好,想问你个问题,你有没有用串口实时接收过数据呢?我在实现NovAtel接收机实时通过串口传输数据到DSP时,接收的数据不知道什么原因出现了连续的FF或者00?希望能够解答,谢啦5 p; u! s5 y/ Q' w& h" C
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
7#
发表于 2016-11-13 21:33:36 | 只看该作者
jj909305 发表于 2016-11-12 09:43- T5 ~5 o* ^- h. V' J1 B- A) V, h1 M
没懂啥意思。。我的意思是发送一个字节后下次中断是如何触发的?在软件里哪里有体现还是硬件来完成的?
: A" y" P* h5 m% M- \. a ...

0 `5 V. ]! w, S; U! p手动使能发送中断就会触发下一次发送
回复 支持 反对

使用道具 举报

20

主题

65

帖子

341

积分

中级会员

Rank: 3Rank: 3

积分
341
6#
 楼主| 发表于 2016-11-12 09:43:49 | 只看该作者
希望缄默 发表于 2016-11-12 05:43. c9 q5 }, G6 e9 _% h
接收到下一个字节

, W6 v; B9 l3 _. x) {8 |7 u* j没懂啥意思。。我的意思是发送一个字节后下次中断是如何触发的?在软件里哪里有体现还是硬件来完成的?
2 f4 x& p  d2 Q

点评

手动使能发送中断就会触发下一次发送  详情 回复 发表于 2016-11-13 21:33
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
5#
发表于 2016-11-12 05:43:15 | 只看该作者
接收到下一个字节
回复 支持 反对

使用道具 举报

20

主题

65

帖子

341

积分

中级会员

Rank: 3Rank: 3

积分
341
地板
 楼主| 发表于 2016-11-11 20:23:23 | 只看该作者
希望缄默 发表于 2016-11-11 15:29& }% T( Y! w2 t) v1 O
1、存在所有可以访问的 RAM 空间都可以' V$ H5 I+ W" M1 z/ o5 d% k/ z
2、因为每接收一个字节就产生一次中断 ...
1 |  _: ?* ~2 y3 Y( X7 y: f$ J
那下次中断是怎么触发的呢?
) n6 I2 i1 d* L8 c
回复 支持 反对

使用道具 举报

20

主题

65

帖子

341

积分

中级会员

Rank: 3Rank: 3

积分
341
板凳
 楼主| 发表于 2016-11-11 20:12:47 | 只看该作者
@希望缄默 1 |# x  j! U2 ~% P6 T
那下次中断是怎么触发的呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-13 17:15 , Processed in 0.044445 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表