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

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

?? hal_w2.c

?? 非常全的nrf2401設計資料
?? C
字號:
/* Copyright (c) 2008 Nordic Semiconductor. All Rights Reserved.
 *
 * The information contained herein is property of Nordic Semiconductor ASA.
 * Terms and conditions of usage are described in detail in NORDIC
 * SEMICONDUCTOR STANDARD SOFTWARE LICENSE AGREEMENT. 
 *
 * Licensees are granted free, non-transferable use of the information. NO
 * WARRENTY of ANY KIND is provided. This heading must NOT be removed from
 * the file.
 *
 * $LastChangedRevision$
 */ 

/** @file
 *
 * @author Rune Brandsegg
 *
 */

#include <stdint.h>
#include <stdbool.h>

#include <Nordic\reg24le1.h>
#include "nordic_common.h"
#include "hal_w2.h"

#define BROADCAST_ENABLE      7     // W2CON0 register bit 7
#define CLOCK_STOP            6     // W2CON0 register bit 6
#define X_STOP                5     // W2CON0 register bit 5
#define X_START               4     // W2CON0 register bit 4
#define CLOCK_FREQUENCY_1     3     // W2CON0 register bit 3
#define CLOCK_FREQUENCY_0     2     // W2CON0 register bit 2
#define MASTER_SELECT         1     // W2CON0 register bit 1
#define WIRE_2_ENABLE         0     // W2CON0 register bit 0


/* Slave specific functions */

void hal_w2_respond_to_gen_adr(bool resp_gen)
{ 
  if(resp_gen)
  {                                                                   
    W2CON0 = W2CON0 | (1 << BROADCAST_ENABLE);  // Set "broadcastEnable" bit
  }
  else
  {
    W2CON0 = W2CON0 & ~(1 << BROADCAST_ENABLE); // Clear "broadcastEnable" bit
  }
}

void hal_w2_alter_clock(bool alt_clk)
{
  if(alt_clk)                         
  {
    W2CON0 = W2CON0 | (1 << CLOCK_STOP);      // Set "clockStop" bit
  }
  else
  {
    W2CON0 = W2CON0 & ~(1 << CLOCK_STOP);     // Clear "clockStop" bit
  }
}

void hal_w2_irq_stop_cond_enable(bool stop_cond)
{ 
  if(stop_cond)
  {                                                                  
    W2CON0 = W2CON0 & ~(1 << X_STOP);         // Clear "xStop" bit
  }
  else
  {
    W2CON0 = W2CON0 | (1 << X_STOP);          // Set "xStop" bit
  }
}

void hal_w2_irq_adr_match_enable(bool addr_match)
{
  if(addr_match)
  {
    W2CON0 = W2CON0 & ~(1 << X_START);        // Clear "xStart" bit
  }
  else
  {
    W2CON0 = W2CON0 | (1 << X_START);         // Set "xStart" bit
  }
}

void hal_w2_set_slave_address(uint8_t address)
{
  W2SADR = (address & 0x7F);                  // Set 7 bit adress of the slave
}


/* Master specific functions */

void hal_w2_transmit_start_cond(void)
{
  W2CON0 = W2CON0 | (1 << X_START);           // Set "xStart" bit
}

void hal_w2_transmit_stop_cond(void)
{
  W2CON0 = W2CON0 | (1 << X_STOP);            // Set "xStop" bit
}


/* General functions */

void hal_w2_set_clk_freq(hal_w2_clk_freq_t freq)
{                                             
  W2CON0 = (W2CON0 & 0xF3) | (((uint8_t)freq) << CLOCK_FREQUENCY_0);       
}                                             // Update "clockFrequency" bits

void hal_w2_set_op_mode(hal_w2_op_mode_t mode)
{
  if(mode == HAL_W2_MASTER)                   // Check for master mode
  {                                                                  
    W2CON0 = W2CON0 | (1 << MASTER_SELECT);   // Set "masterSelect" bit
  }
  else
  {
    W2CON0 = W2CON0 & ~(1 << MASTER_SELECT);  // Clear "masterSelect" bit
  }
}

void hal_w2_enable(bool en)
{ 
  if(en)
  {
    W2CON0 = W2CON0 | (1 << WIRE_2_ENABLE);   // Set "wire2Enable" bit
  }
  else
  {
    W2CON0 = W2CON0 & ~(1 << WIRE_2_ENABLE);  // Clear "wire2Enable" bit
  }
}

void hal_w2_all_irq_enable(bool irq)
{ /* In this function the standard "read-modify-write" is not used because
     bit 4:0 (the status bits) in W2CON1 are cleared when read. These bits
     are read only so they can not be modified. */
  if(irq)
  {
    W2CON1 = ~(BIT_5);                        // Clear "maskIrq" bit
  }
  else
  {
    W2CON1 = BIT_5;                           // Set "maskIrq" bit
  }
}

uint8_t hal_w2_get_status(void)
{
  return W2CON1;                              // W2CON1 status variables are
}                                             // cleared when read

void hal_w2_write_data(uint8_t tx_data)
{
  W2DAT = tx_data;                            // Write data to transmitt
}

uint8_t hal_w2_read_data(void)
{
  return W2DAT;                               // Read received data
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲免费在线观看| 精品国产污污免费网站入口| 亚洲人亚洲人成电影网站色| av动漫一区二区| 亚洲欧洲日韩综合一区二区| 91国偷自产一区二区开放时间 | 精品捆绑美女sm三区| 欧美aaaaa成人免费观看视频| 欧美一级在线免费| 国产综合色在线视频区| 国产精品乱码一区二三区小蝌蚪| 91免费观看视频| 爽好多水快深点欧美视频| 日韩一区二区三区三四区视频在线观看| 美国精品在线观看| 国产日本亚洲高清| 91美女蜜桃在线| 六月丁香婷婷久久| 国产精品蜜臀在线观看| 欧美日韩国产电影| 国产成人精品在线看| 亚洲女人的天堂| 精品日韩在线观看| 91精品啪在线观看国产60岁| 精品一区二区久久| 亚洲裸体在线观看| 欧美成人精品福利| 99麻豆久久久国产精品免费 | 日韩免费观看高清完整版 | 成人精品一区二区三区中文字幕| 亚洲精品五月天| 26uuu国产一区二区三区| 91色九色蝌蚪| 久久精品二区亚洲w码| 亚洲色图视频网| 精品久久一二三区| 欧美伊人久久大香线蕉综合69| 国产在线精品不卡| 日韩在线一区二区三区| 国产精品毛片久久久久久| 777欧美精品| 91香蕉视频mp4| 国产伦精品一区二区三区免费迷| 亚洲成人7777| 亚洲欧洲精品成人久久奇米网| 日韩欧美国产高清| 欧美色网站导航| aaa亚洲精品| 国产成人免费视频网站| 天堂久久久久va久久久久| 最近中文字幕一区二区三区| 精品日韩成人av| 欧美日韩一二三区| 91国产丝袜在线播放| 成人h版在线观看| 国产一区二区三区香蕉| 日日夜夜精品免费视频| 亚洲人吸女人奶水| 18欧美乱大交hd1984| 国产亚洲一区二区三区四区| 日韩精品一区二区三区在线播放| 欧美久久婷婷综合色| 欧美无乱码久久久免费午夜一区| av一区二区三区黑人| 国产成a人无v码亚洲福利| 精品在线免费观看| 久久国产夜色精品鲁鲁99| 日韩精品视频网站| 亚洲a一区二区| 亚洲午夜精品一区二区三区他趣| 亚洲男人的天堂一区二区| 国产精品福利av| 国产精品伦理在线| 欧美高清一级片在线观看| 欧美国产欧美亚州国产日韩mv天天看完整| 精品国产一区二区三区不卡| 欧美一级二级三级蜜桃| 日韩欧美一二三| 精品国产免费人成电影在线观看四季| 日韩精品一区二区三区中文精品| 精品免费99久久| 久久影院视频免费| 国产亚洲精品精华液| 欧美激情一区二区三区蜜桃视频| 乱中年女人伦av一区二区| 久久精品国产免费| 国产传媒欧美日韩成人| 成人免费不卡视频| 91日韩精品一区| 欧美日韩和欧美的一区二区| 8x福利精品第一导航| 日韩欧美久久一区| 久久久久国产免费免费| 2020国产精品| 国产精品传媒入口麻豆| 亚洲最色的网站| 日韩精品一级中文字幕精品视频免费观看 | 国产欧美日韩久久| 国产精品电影一区二区三区| 亚洲精品ww久久久久久p站| 午夜精品福利一区二区三区蜜桃| 强制捆绑调教一区二区| 国产大片一区二区| 一本到不卡免费一区二区| 欧美浪妇xxxx高跟鞋交| 久久一夜天堂av一区二区三区 | 91在线小视频| 欧美色综合影院| 久久久噜噜噜久久中文字幕色伊伊 | 精品理论电影在线观看| 亚洲欧洲三级电影| 日韩av一区二| 成人免费毛片嘿嘿连载视频| 91麻豆免费在线观看| 在线电影国产精品| 亚洲国产精品99久久久久久久久| 亚洲美腿欧美偷拍| 六月丁香婷婷久久| 色综合久久天天综合网| 精品剧情v国产在线观看在线| 1000精品久久久久久久久| 天天影视网天天综合色在线播放 | 国产欧美日韩视频一区二区| 亚洲一卡二卡三卡四卡五卡| 国产美女主播视频一区| 欧美亚洲综合网| 欧美精彩视频一区二区三区| 性做久久久久久免费观看| 国产成人在线免费| 欧美肥胖老妇做爰| 亚洲素人一区二区| 狠狠色综合播放一区二区| 欧美在线影院一区二区| 久久久国际精品| 蜜臀精品一区二区三区在线观看 | 一本一道久久a久久精品| 日韩一级成人av| 亚洲猫色日本管| 91精品福利在线一区二区三区| 国产精品色婷婷久久58| 久久av资源站| 91麻豆精品国产| 伊人开心综合网| av网站免费线看精品| 久久免费视频色| 蜜臀av一区二区在线免费观看| 色综合天天在线| 国产欧美一区二区精品婷婷| 麻豆一区二区99久久久久| 欧美日韩在线免费视频| 亚洲另类在线一区| 99re这里只有精品首页| 国产精品视频yy9299一区| 国产毛片精品视频| 精品美女一区二区| 久久电影网电视剧免费观看| 91精品欧美综合在线观看最新| 亚洲综合图片区| 欧美伊人久久久久久久久影院| ●精品国产综合乱码久久久久| 不卡视频一二三四| 中文字幕av不卡| 成人中文字幕合集| 中文字幕二三区不卡| 国产精品亚洲成人| 国产欧美日韩不卡免费| 国产一区视频网站| 国产视频视频一区| 国产精品99久久久久久久女警| 欧美精品一区二区三区一线天视频| 美女国产一区二区| 精品成人一区二区| 国产大陆亚洲精品国产| 国产精品亲子伦对白| 成人性生交大片免费看在线播放| 国产精品网站在线播放| 9i看片成人免费高清| 日韩久久一区二区| 欧美三级一区二区| 日韩电影免费在线| 日韩精品一区二区在线观看| 国产资源在线一区| 日本一区二区三级电影在线观看| 成人a免费在线看| 亚洲一区二区三区四区中文字幕| 欧美日本一区二区| 天堂久久一区二区三区| 337p粉嫩大胆色噜噜噜噜亚洲| 国产露脸91国语对白| 中文字幕一区二区三区精华液| 色婷婷av一区二区三区软件| 午夜激情久久久| 欧美岛国在线观看| youjizz国产精品| 亚洲综合色区另类av| 欧美一区二区久久久| 国产一区二区三区黄视频| 亚洲人成影院在线观看| 欧美一级在线免费| 成人h精品动漫一区二区三区|