原创 CortexM0菜鸟之串口轮询(第9天作业)

2010-9-7 01:19 3075 5 7 分类: MCU/ 嵌入式
#include "uart.h"
UartObj::UartObj (void)
{
    UartInit();
}
void UartObj::UartInit(void)
{
unsigned int Fdiv;
//位域写法
IOCON.TXD.Bits.FUNC = IOCON_TXD;
IOCON.TXD.Bits.MODE = IOCON_PULLUP;
//寄存器写法
// IOCON.TXD.Regs = (IOCON_TXD << IOCON_FUNC)
//                | (IOCON_PULLUP << IOCON_MODE);
//位域写法
IOCON.RXD.Bits.FUNC = IOCON_RXD;
IOCON.RXD.Bits.MODE = IOCON_PULLUP;
//寄存器写法
// IOCON.RXD.Regs = (IOCON_RXD << IOCON_FUNC)
//                | (IOCON_PULLUP << IOCON_MODE);

   SYSCON.SYSAHBCLKCTRL.Bits.UARTCLK = 1;//使能UART的时钟
   SYSCON.UARTCLKDIV.Regs = 1;//UART时钟分频器值
// U0.LCR.Regs = 0x83;
//位域写法
// U0.LCR.Bits.DLAB = 1;//除数锁存器访问使能
// U0.LCR.Bits.WordLengthSelect = 3;//8位串口数据
//寄存器写法
U0.LCR.Regs = (1 << LCR_DLAB)//除数锁存器访问使能
             | (3 << LCR_WordLengthSelect);//8位串口数据位
//设置波特率
    Fdiv = (((SystemFrequency / SYSCON.SYSAHBCLKDIV.Regs )/ SYSCON.UARTCLKDIV.Regs) / 16) /UART_BPS ; /*baud rate */
U0.DLM.Regs = Fdiv / 256;
U0.DLL.Regs = Fdiv % 256;
// U0.LCR.Regs = 3;
U0.LCR.Bits.DLAB = 0;//除数锁存器访问禁止
//寄存器写法
// U0.LCR.Regs = (0 << LCR_DLAB)//除数锁存器访问禁止
//             | (3 << LCR_WordLengthSelect);//8位串口数据位
U0.FCR.Regs = 7;
}
void UartObj::Send(unsigned char ch)
{
while(!U0.LSR.Bits.THRE);
U0.THR.Regs = ch;
}
bool UartObj::Receive(unsigned char & ch)
{
bool Result;
Result = U0.LSR.Bits.RDR;
if (Result)
{
  ch = U0.RBR.Regs;
}
return Result;
}

HotPower@163.com  2010.9.6 23:48 于雁塔菜地

菜农通讯工具:

新浪网页版:http://t.sina.com.cn/hotpower
新浪手机版:http://t.sina.cn/hotpower

网 易微 博:http://t.163.com/hotpower
腾讯QQ:    1270688699

菜农邮箱:     HotPower@163.com
菜农导航: http://www.hotpage.net.cn/


文章评论2条评论)

登录后参与讨论

雁塔菜农 2010-12-30 23:38

菜农已将红杏系列嵌入周立功开发平台TkStudio

用户585936 2010-12-27 20:14

怎么都没有支持TKStudio 下的串口痛心啊 或者SSP控制SPI口的啊?

用户177810 2008-11-2 22:22

我只设计过PCB,没搞过面板设计。想请教大哥用什么软件设计的。

用户177810 2008-11-2 22:22

我只设计过PCB,没搞过面板设计。想请教大哥用什么软件设计的。

用户593995 2008-4-5 13:37

给我一个也,AC 220V转DC 5V的电路图,不胜感激。我的邮箱wzh1231@126.com

用户135423 2008-3-17 15:42

我的油箱是zerofale@tom.com

用户135423 2008-3-17 15:41

1急需 AC 220V转DC12 V 和DC 5V的电路图 如能传我不胜感激 2另外 我有张220V转12V的原理图 不知道上面IC型号 和具体作用

用户27422 2008-2-6 12:35

在下跪求220V转12V的电路图,用器件或芯片实现,没其他要求,邮箱: nyp1984@tom.com 

如能赐教,不胜感激!

用户40282 2007-3-21 22:05

噢,我的QQ:290739165

用户40282 2007-3-21 22:04

我需要你将220v的交流转为24v的直流的硬件电路,不知亲爱的大老张愿否赐教,谢谢!
相关推荐阅读
雁塔菜农 2012-04-05 17:51
2012年度新唐Cortex-M0助学开发套件有约束条件赠送申报贴
2012年度新唐Cortex-M0助学套件从4月起每月有约束条件发放16套。 申报人必须是21ic或 EDNC 会员 并具备1月的会龄。 申报时必须注明“遵守约束条件,缴纳250元订金,上...
雁塔菜农 2012-04-05 17:04
2012年度Cortex-M0助学园地推广框图
...
雁塔菜农 2012-04-01 17:59
2012年度Cortex-M0助学园地奖励计划细则
抢楼请点击:菜地公告:即日起创建《菜农Cortex-M0助学园地》(盖楼入口) 每月10号和25号的下午2:50进行2次抢楼,规则同去年12月的疯狂抢楼活动。 奖品由21IC、北航、广州迪圣...
雁塔菜农 2012-02-03 08:19
菜农谋略:搞定牛人宋俊德,对女牛人孙昌旭说:“记住,俺是雁塔菜农~~~ ”
http://www.baidu.com/s?wd=%B2%CB%C5%A9%D0%A6%CC%B8%A1%B6%D0%C2%C0%CB%C3%FB%C8%CB%D0%A7%D3%A6%A1%B7...
我要评论
2
5
关闭 站长推荐上一条 /2 下一条