免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3531 | 回复: 6
打印 上一主题 下一主题

关于uart的一些宏定义(参照s3c2440硬件手册) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-01-22 18:12 |只看该作者 |倒序浏览
源码中是这样写的:

   // g-bios中对uart寄存器的定义:
    // UART

    #define UART0_BASE 0×50000000 //  chanel 0

    #define UART1_BASE (UART0_BASE + 0×4000) // chanel 1

    #define UART2_BASE (UART1_BASE + 0×4000) // chanel 2


    #define ULCON 0×00 //线控寄存器:数据位,停止位,奇偶校验…

    #define UCON 0×04 //控制寄存器

    #define UFCON 0×08 //fifo控制器

    #define UMCON 0×0c //moderm

    #define UTRSTAT 0×10 //发送/接受状态寄存器

    #define UERSTAT 0×14 //错误状态寄存器

    #define UFSTAT 0×18 //fifo状态

    #define UMSTAT 0×1c //

    #define UTX 0×20 //发送寄存器

    #define URX 0×24 //接受寄存器(Samsung S3C2440大小端偏移量不一致)

    #define UBRDIV 0×28 //波特率


    #define UART_ENABLE_FIFO //fifo使能


而根据s3c2440 Datasheet上描述的,UTX和URX在大小端情况下地址是不一样的… 是否可以做如下修改…

//以下两个寄存器大小端情况下偏移量稍微不一致

//发送寄存器

#if defined(LITTLE_ENDIAN)
# define UTX 0×20
#elif defined(BIG_ENDIAN)
# define UTX 0×23
#endif
//接受寄存器

#if defined(LITTLE_ENDIAN)
# define URX 0×24
#elif defined(BIG_ENDIAN)
# deined URX 0×27
#endif

论坛徽章:
0
2 [报告]
发表于 2009-01-23 02:17 |只看该作者
手册上的地址是这样吗?
我觉得大小端只是正着看反着看的问题阿。

论坛徽章:
0
3 [报告]
发表于 2009-01-27 00:53 |只看该作者

回复 #1 Kallawa 的帖子

Kallawa的建议提得好。
不止s3c24xx,还有其他硬件平台我们也简化了代码,因默认用的是little endian,所以我们偷懒了

Kallawa及其他朋友,大家有类似建议时最好附上patch(哪怕patch简单到只改了一个单词),我们可以连同开发者名字和email信息一起放到svn server中。

论坛徽章:
0
4 [报告]
发表于 2009-05-07 09:15 |只看该作者
大小端除了增加我们的劳动力,还有鸟用吗?

论坛徽章:
5
5 [报告]
发表于 2009-05-07 09:19 |只看该作者
原帖由 lanmanck 于 2009/5/7 09:15 发表
大小端除了增加我们的劳动力,还有鸟用吗?


没鸟用. 真不明白标准为什么不统一.

论坛徽章:
0
6 [报告]
发表于 2009-05-07 09:24 |只看该作者
原帖由 yidou 于 2009-5-7 09:19 发表


没鸟用. 真不明白标准为什么不统一.

呵呵,因为嵌入式厂家众多,每个都认为他牛b,所以搞得不一样,最后搞得我们做软件的很辛苦。

论坛徽章:
5
7 [报告]
发表于 2009-05-07 09:26 |只看该作者
原帖由 lanmanck 于 2009/5/7 09:24 发表

呵呵,因为嵌入式厂家众多,每个都认为他牛b,所以搞得不一样,最后搞得我们做软件的很辛苦。


每家都认为自己就是标准
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP