国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

電子工程網

標題: CortexM0菜鳥之串口輪詢(第9天作業) [打印本頁]

作者: hotpower    時間: 2010-9-7 01:18
標題: CortexM0菜鳥之串口輪詢(第9天作業)
#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/


作者: 寶丫頭冰凝    時間: 2011-4-19 08:40
請問在么?想問你一些M0的知識
作者: kongchau    時間: 2011-4-29 21:50





歡迎光臨 電子工程網 (http://m.4huy16.com/) Powered by Discuz! X3.4