打印

转:华邦710串口初始化例子

[复制链接]
1798|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huzixian|  楼主 | 2010-3-15 19:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
华邦710串口初始化例子

首先不要被英文datasheet吓倒,其次要有一定的嵌入式开发基础知识为基础,这样开发最快。慢慢的看慢慢的研究我们的英文水平足够了,拿华邦的w90p710芯片来给你举个例子吧。一般初始化一个接口驱动都遵守从大到小的原则,大就是先考察你用的板子的该驱动有没有和别人共用的寄存器?需要gpio初始化么?需要打开时钟?这些全局都设置正确了才能下一步研究该接口具体的个性,比如说设置波特率了么?需要开启中断使能么?此外串口肯定要设置停止位什么的吧,然后再慢慢的动手调试。此外你最好要对你所写的驱动有所了解,比如写串口驱动,那么串口的原理你应该大致了解吧,不了解就算写出来也不算会写驱动了,呵呵,我自己这么认为。希望批评指正。

void CONSOL_Init(int wBaud)
{
  Multi_setreg=0x15555555;//这个是多功能寄存器设置,就是某些资源串口和别人共用,我们需要切回供串口使用
  REG_COM_FCR=TX_RX_FIFO_RESET;//reset fifo//reset fifo,清除tx和rx的fifo缓存,初始化的时候设置成0就是了
   
         _mBaudValue = (CONFIG_W90P710_CLOCK / (wBaud * 16));
        if ((CONFIG_W90P710_CLOCK % (wBaud * 16)) > ((wBaud * 16) / 2))
            _mBaudValue++;
        _mBaudValue -= 2;

  REG_COM_LCR=ENABLE_DLAB;//这句是因为华邦的串口寄存器的地址值相互共用,切回访问
UART_DLL和UART_DLM :以供设置波特率。如下图及蓝色代码部分。


Register
Offset
R/W
Description
Reset Value
UART_RBR

0x00

R

Receive Buffer Register (DLAB = 0)

Undefined

UART_THR
0x00

W

Transmit Holding Register (DLAB = 0)

Undefined

UART_IER
0x04

R/W

Interrupt Enable Register
(DLAB = 0)

0x0000_0000

UART_DLL
0x00

R/W

Divisor Latch Register (LS)


(DLAB = 1)

0x0000_0000

UART_DLM
0x04

R/W

Divisor Latch Register (MS)


(DLAB = 1)

0x0000_0000


  REG_COM_LSB=(unsigned char)_mBaudValue;
  REG_COM_MSB=(unsigned char)(_mBaudValue >> 8);//蓝色部分代码是设置串口波特率。

  REG_COM_LCR=REG_COM_LCR& DISABLE_DLAB;//切回访问其他寄存器,因为lsb和msb寄存器设置一次就没用了。
  REG_COM_LCR=(WB_PARITY_NONE | WB_DATA_BITS_8 | WB_STOP_BITS_1);//设置奇偶校验停止位等等吧
  REG_COM_TOR=ENABLE_TIME_OUT;//Time Out Register使能timeout

  REG_COM_FCR=LEVEL_1_BYTE;//见下图,我们设置trigger lev为1字节,就是说接受一字节马上发生中断,这样省事但是中断发生频繁,有力有弊:
RX FIFO Interrupt (Irpt_RDA) Trigger Level
RFITL [7:6]

Irpt_RDA Trigger Level (Bytes)

00

01

01

04

10

08

11

14

相关帖子

沙发
linux1| | 2010-3-15 19:39 | 只看该作者
华邦和芯唐是一路子的吧应该是?

使用特权

评论回复
板凳
linux1| | 2010-3-15 19:39 | 只看该作者
华邦和芯唐是一路子的吧应该是?

使用特权

评论回复
地板
想实习去| | 2010-3-15 22:56 | 只看该作者
应该是吧,前几天看一个帖子里这么说的

使用特权

评论回复
5
无语凝咽| | 2010-3-16 12:37 | 只看该作者
看不清楚啊!

使用特权

评论回复
6
linux1| | 2010-3-17 23:08 | 只看该作者
写的挺好的,顶

使用特权

评论回复
7
司徒老鹰| | 2010-3-18 20:34 | 只看该作者
感觉乱七八糟的,呵呵

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

262

主题

1534

帖子

2

粉丝