亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? uart.c

?? 此程式庫有許多的zigbee程式源碼
?? C
字號:
/****************************************************************************
 *
 * MODULE:             uart.c
 *
 * COMPONENT:          $RCSfile: $
 *
 * VERSION:            $Name: $
 *
 * REVISION:           $Revision: $
 *
 * DATED:              $Date: $
 *
 * STATUS:             $State: $
 *
 * AUTHOR:             Ian Morris
 *
 * DESCRIPTION
 *
 * CHANGE HISTORY:
 *
 * $Log: $
 *
 *
 * LAST MODIFIED BY:   $Author: $
 *                     $Modtime: $
 *
 *
 ****************************************************************************
 *
 *  (c) Copyright 2000 JENNIC Ltd
 *
 ****************************************************************************/

/****************************************************************************/
/***        Include files                                                 ***/
/****************************************************************************/
#include <jendefs.h>
#include <AppHardwareApi.h>

#include "config.h"
#include "serialq.h"
#include "uart.h"

/****************************************************************************/
/***        Macro Definitions                                             ***/
/****************************************************************************/
#define UART_START_ADR  	0x30000000UL
#define UART_LCR_OFFSET 	0x0C
#define UART_DLM_OFFSET 	0x04

/****************************************************************************/
/***        Type Definitions                                              ***/
/****************************************************************************/

/****************************************************************************/
/***        Local Function Prototypes                                     ***/
/****************************************************************************/

/****************************************************************************/
/***        Exported Variables                                            ***/
/****************************************************************************/

/****************************************************************************/
/***        Local Variables                                               ***/
/****************************************************************************/

/****************************************************************************/
/***        Exported Functions                                            ***/
/****************************************************************************/

/****************************************************************************/
/***        Local Functions                                               ***/
/****************************************************************************/
PRIVATE void vUART_SetBuadRate(uint32 u32BaudRate);

/****************************************************************************
 *
 * NAME: vUART_Init
 *
 * DESCRIPTION:
 *
 * PARAMETERS:      Name            RW  Usage
 * None.
 *
 * RETURNS:
 * None.
 *
 * NOTES:
 * None.
 ****************************************************************************/
PUBLIC void vUART_Init(void)
{
    /* Enable UART 0: 19200-8-N-1 */
    vAHI_UartEnable(UART);

    vAHI_UartReset(UART, TRUE, TRUE);
    vAHI_UartReset(UART, FALSE, FALSE);

    /* Set the clock divisor register to give 19200 buad, this has to be done
       directly as the normal routines (in ROM) do not support 19200 baud */
    vUART_SetBuadRate(UART_BAUD_RATE);

    vAHI_UartSetControl(UART, FALSE, FALSE, E_AHI_UART_WORD_LEN_8, TRUE, FALSE);
    vAHI_UartSetInterrupt(UART, FALSE, FALSE, TRUE, TRUE, E_AHI_UART_FIFO_LEVEL_1);
}

/****************************************************************************
 *
 * NAME: vUART_SetBuadRate
 *
 * DESCRIPTION:
 *
 * PARAMETERS: Name        RW  Usage
 *
 * RETURNS:
 *
 ****************************************************************************/
PRIVATE void vUART_SetBuadRate(uint32 u32BaudRate)
{
    uint8 *pu8Reg;
    uint8  u8TempLcr;
    uint16 u16Divisor;
    

  
    /* Put UART into clock divisor setting mode */
    pu8Reg    = (uint8 *)(UART_START_ADR + UART_LCR_OFFSET);
    u8TempLcr = *pu8Reg;
    *pu8Reg   = u8TempLcr | 0x80;

    /* Write to divisor registers:
       Divisor register = 16MHz / (16 x baud rate) */
    u16Divisor = (uint16)(16000000UL / (16UL * u32BaudRate));

    pu8Reg  = (uint8 *)UART_START_ADR;
    *pu8Reg = (uint8)(u16Divisor & 0xFF);
    pu8Reg  = (uint8 *)(UART_START_ADR + UART_DLM_OFFSET);
    *pu8Reg = (uint8)(u16Divisor >> 8);

    /* Put back into normal mode */
    pu8Reg    = (uint8 *)(UART_START_ADR + UART_LCR_OFFSET);
    u8TempLcr = *pu8Reg;
    *pu8Reg   = u8TempLcr & 0x7F;
}

/****************************************************************************
 *
 * NAME: vUART_StartTx
 *
 * DESCRIPTION:
 *
 * PARAMETERS:      Name            RW  Usage
 * None.
 *
 * RETURNS:
 * None.
 *
 * NOTES:
 * None.
 ****************************************************************************/
PUBLIC void vUART_StartTx(void)
{

    /* Has interrupt driven transmit stalled (tx fifo is empty) */
    if (u8AHI_UartReadLineStatus(UART) & E_AHI_UART_LS_THRE)
    {
        if(!bSerialQ_Empty(TX_QUEUE))
        {
		   	{
		   
		   vAHI_UartWriteData(UART, u8SerialQ_RemoveItem(TX_QUEUE));
		   
		  
		   	}
        }
    }
}

/****************************************************************************
 *
 * NAME: vUART_TxCharISR
 *
 * DESCRIPTION:
 *
 * PARAMETERS:      Name            RW  Usage
 * None.
 *
 * RETURNS:
 * None.
 *
 * NOTES:
 * None.
 ****************************************************************************/
PUBLIC void vUART_TxCharISR(void)
{
    if(!bSerialQ_Empty(TX_QUEUE))
	{
        vAHI_UartWriteData(UART, u8SerialQ_RemoveItem(TX_QUEUE));
	}
}

/****************************************************************************
 *
 * NAME: vUART_RxCharISR
 *
 * DESCRIPTION:
 *
 * PARAMETERS:      Name            RW  Usage
 * None.
 *
 * RETURNS:
 * None.
 *
 * NOTES:
 * None.
 ****************************************************************************/
PUBLIC void vUART_RxCharISR(uint8 u8RxChar)
{
    vSerialQ_AddItem(RX_QUEUE, u8RxChar);
}

/****************************************************************************/
/***        END OF FILE                                                   ***/
/****************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国精品一区二区| 国产精品视频在线看| 精品国产一区久久| 中文乱码免费一区二区| 亚洲成人黄色影院| 99热精品一区二区| 欧美精品一区二区久久婷婷| 亚洲靠逼com| 国产福利一区在线观看| 91.com在线观看| 亚洲精品视频在线| 懂色av一区二区三区蜜臀| 日韩欧美国产1| 日韩综合一区二区| 欧美色图激情小说| 国产精品青草久久| 中文字幕欧美日韩一区| 日韩精品1区2区3区| 在线免费不卡电影| 中文字幕中文字幕一区| 国产成人av资源| 26uuu另类欧美亚洲曰本| 午夜精品久久久久影视| 在线一区二区视频| 一区二区免费在线| 91黄色激情网站| 亚洲色图20p| 99在线热播精品免费| 国产精品久久免费看| 成人av片在线观看| 亚洲欧美在线视频| 91在线观看成人| 亚洲狼人国产精品| 在线看一区二区| 亚洲va韩国va欧美va| 欧美顶级少妇做爰| 蜜桃av噜噜一区| 久久综合色综合88| 国产一区二区三区免费看| www国产亚洲精品久久麻豆| 国产一区二区在线观看免费| 久久久国产一区二区三区四区小说 | 久久亚洲免费视频| 全部av―极品视觉盛宴亚洲| 日韩一区二区在线播放| 精一区二区三区| 欧美高清在线一区| 99re这里都是精品| 亚洲综合在线视频| 91精品国产综合久久久蜜臀图片| 日本不卡一区二区| 26uuu精品一区二区| 国模无码大尺度一区二区三区| 亚洲国产精品t66y| 色婷婷精品久久二区二区蜜臀av| 亚洲福利电影网| 日韩欧美中文字幕公布| 韩国三级电影一区二区| 国产精品视频yy9299一区| 色婷婷av一区二区三区之一色屋| 亚洲成a人片在线观看中文| 欧美一级日韩不卡播放免费| 欧美日韩不卡一区| 青青草成人在线观看| 337p日本欧洲亚洲大胆精品| 成人18视频日本| 夜夜操天天操亚洲| 欧美日韩国产一级| 国产老肥熟一区二区三区| 亚洲欧美国产毛片在线| 日韩免费观看高清完整版| 国产呦萝稀缺另类资源| 亚洲一区日韩精品中文字幕| 精品国产亚洲在线| 日本高清免费不卡视频| 久久国产剧场电影| 亚洲乱码国产乱码精品精98午夜 | 久久精品国产亚洲一区二区三区| 国产精品热久久久久夜色精品三区 | 欧美xxxx老人做受| 国产欧美日韩麻豆91| 色婷婷综合激情| 国产一区二区不卡| 亚洲444eee在线观看| 国产精品午夜免费| 日韩欧美亚洲国产精品字幕久久久| 91丨九色丨蝌蚪丨老版| 国内精品第一页| 日本亚洲三级在线| 中文字幕永久在线不卡| 精品欧美黑人一区二区三区| 亚洲自拍与偷拍| 精品国产一区二区三区av性色| 在线亚洲一区二区| 丁香五精品蜜臀久久久久99网站| 蜜桃一区二区三区在线| 夜色激情一区二区| 18欧美乱大交hd1984| 国产肉丝袜一区二区| 精品国产人成亚洲区| 在线播放中文一区| 精品视频在线视频| 99精品视频在线播放观看| 韩国精品久久久| 久久精品国产秦先生| 日本欧美加勒比视频| 亚洲国产欧美在线人成| 亚洲人成在线播放网站岛国| 一区视频在线播放| 久久精品免视看| 国产欧美日韩综合精品一区二区| 欧美大片在线观看一区| 日韩美一区二区三区| 日韩一区二区在线看片| 91精品国产品国语在线不卡| 91麻豆精品国产91久久久使用方法| 亚洲成a人v欧美综合天堂下载| 一区二区三区四区精品在线视频| 国产欧美日韩卡一| 久久你懂得1024| 国产亚洲一区二区在线观看| 久久在线观看免费| www国产成人免费观看视频 深夜成人网 | 色哟哟国产精品免费观看| 91小宝寻花一区二区三区| 91同城在线观看| 99精品久久久久久| 欧美又粗又大又爽| 精品视频在线免费观看| 555夜色666亚洲国产免| 欧美大胆一级视频| 久久久综合精品| 国产女主播视频一区二区| 中文字幕一区二| 亚洲第一精品在线| 日韩成人伦理电影在线观看| 久久丁香综合五月国产三级网站| 国产精品一二三区| 精品在线视频一区| 久久精品国产77777蜜臀| 国产在线精品一区二区三区不卡| 成人做爰69片免费看网站| 色婷婷一区二区三区四区| 91精品久久久久久久久99蜜臂| 日韩欧美国产电影| 欧美国产精品久久| 亚洲一区二区三区四区在线观看| 日韩成人午夜精品| 国产大陆a不卡| 欧美三级电影在线看| 精品日韩av一区二区| 中文字幕一区二区三区不卡在线| 亚洲综合丝袜美腿| 免费在线观看日韩欧美| 高清beeg欧美| 制服丝袜亚洲精品中文字幕| 久久精品亚洲一区二区三区浴池 | 免费高清在线一区| eeuss影院一区二区三区 | 欧洲av在线精品| 国产亚洲自拍一区| 五月婷婷激情综合网| 国产91精品入口| 日韩欧美国产高清| 亚洲色图.com| 精品亚洲国内自在自线福利| 91毛片在线观看| 国产日韩欧美精品一区| 激情都市一区二区| 日本二三区不卡| 久久精品夜色噜噜亚洲a∨| 午夜久久久影院| 91小视频免费看| 国产亚洲综合在线| 久久97超碰色| 3d动漫精品啪啪| 亚洲无人区一区| 99精品久久只有精品| 久久久国产综合精品女国产盗摄| 欧美aaa在线| 欧美日韩亚洲丝袜制服| 亚洲精品日韩综合观看成人91| 国产一区二区不卡在线| 日韩精品在线一区| 日本在线播放一区二区三区| 欧美美女黄视频| 亚洲一区二区三区影院| 91社区在线播放| 亚洲免费观看高清完整版在线观看 | 成人av片在线观看| 久久久久九九视频| 九色综合国产一区二区三区| 欧美一区二区私人影院日本| 性久久久久久久久久久久| 欧美综合天天夜夜久久| 亚洲视频一区二区在线观看| 精品亚洲aⅴ乱码一区二区三区| 亚洲成人一区二区| 91国偷自产一区二区三区观看| 91精品国模一区二区三区|