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

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

?? main.c

?? ARMIC公司的2.4G無線收發應用C51語言源程序。
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*****************************************************************************
**                                                                          **
**                         AMIC Proprietary Document                        **
**                                StartA7121                                **
**               Copyright (c) 2005-2009 AMIC Technology Inc.               **
**                                                                          **
**            No.2, Li-Hsin 6th Road, Science_Based Industrid Park,         **
**                       Hsin_Chu City, 300, Taiwan, ROC.                   **
**                 Tel: 886-3-5679966   Fax: 886-3-5679977                  **
**              E-mail:info@amic.com.tw  http: //www.amic.com.tw            **
**                                                                          **
*****************************************************************************/
#include "reg52.h"
#include "main.h"
#include "A7121.h"

/*****************************************************************************
**  FILE NAME: main.c                                                       **
**                                                                          **
**  HISTORY  : 2005/6/15 Jones created.                                     **
**                                                                          **
**  FUNCTION : This file contains the routines related to StartA7121.       **
**                                                                          **
*****************************************************************************/
Uint8   data    TxFrame[FRAME_LIGHT] = {'A', 'M', 'I', 'C',
                                        'R', 'F', 'I', 'C',
                                       };   
Uint8   data    RxFrame[FRAME_LIGHT];

Uint8   data    DataRateSet;
Uint8   data    TimeOutFlag;
Uint8   data    MyType;
Uint8   data    MyMode;

Uint8   data    Frequency;
Uint8   data    FreqBank[FREQUENCY_NO];

/*****************************************************************************
**  Function    : timer0Isr.                                                **
**                                                                          **
**  HISTORY     : 2004/9/27 Jones created.                                  **
**                                                                          **
**  Description : Rx data timeout.                                          **
**                                                                          **
/****************************************************************************/
void timer0Isr(void) interrupt 1 using 3
{
    TR0         = LOW;
    ET0         = LOW;
    TimeOutFlag = HIGH;
#ifdef RX_TIME_CHECK
    P4 &= 0xFE;
#endif
}

/*****************************************************************************
**  Function    : SpiWrite.                                                 **
**                                                                          **
**  HISTORY     : 2004/9/27 Jones created.                                  **
**                                                                          **
**  Description : Write data to A7121 register.                             **
**                                                                          **
/****************************************************************************/
void SpiWrite(Uint16 dataWord, Uint8 address)
{
    Uint8   data i;

    SpiClk = LOW;
    SpiCs  = LOW;   // Enable A7121 SPI
    SpiTxd = HIGH;     

    //send address code
    address = (address << 2) | 0x80;    //fill wirte bit

    for(i = 0; i < 8; i++)
    {
        SpiClk = HIGH;

        if(address & 0x80)
            SpiTxd = HIGH;  //bit = 1
        else
            SpiTxd = LOW;   //bit = 0

        SpiClk  = LOW;
        address = address << 1;
    }

    //send data code
    for(i = 0; i < 16; i++)
    {
        SpiClk = HIGH;

        if(dataWord & 0x8000)
            SpiTxd = HIGH;
        else
            SpiTxd = LOW;

        dataWord = dataWord << 1;
        SpiClk   = LOW;
    }

    SpiCs     = HIGH;// Disable A7121 SPI
    SpiTxd    = HIGH;
}

/*****************************************************************************
**  Function    : SpiRead.                                                  **
**                                                                          **
**  HISTORY     : 2004/9/27 Jones created.                                  **
**                                                                          **
**  Description : Read data from A7121 register.                            **
**                                                                          **
/****************************************************************************/
Uint16 SpiRead(Uint8 data address)
{
    Uint8  i;
    Uint16 spiData;

    spiData = LOW;
    SpiClk  = LOW;
    SpiCs   = LOW;      // Enable A7121 SPI

    //send address code
    address <<= 2;
    
    for(i = 0; i < 8; i++)
    {
        SpiClk = HIGH;

        if(address & 0x80)
            SpiTxd = HIGH;
        else
            SpiTxd = LOW;

        SpiClk    = LOW;
        address <<= 1;
    }

    //read data code
    for(i = 0; i < 16; i++)
    {
        spiData <<= 1;
        SpiClk = HIGH;

        if(SpiRxd)
            spiData |= 0x01;  // SpiRxd: read "1"

        SpiClk = LOW;
    }

    SpiCs  = HIGH;
    SpiRxd = HIGH;
    SpiTxd = HIGH;     //SpiTxd=miso

    return spiData;
}


/*****************************************************************************
**  Function   : setTxMode                                                  **
**                                                                          **
**  HISTORY    : 2004/10/29  Jones created                                  **
**                                                                          **
**  Description: set RF in tx mode                                          **
**                                                                          **
**  Frequency  : 3 MHz mode 2403 ~ 2479.5                                   **
**               1 MHz mode 2402 ~ 2480                                     **
**                                                                          **
*****************************************************************************/
void setTxMode(void)
{
    Ms1Pin    = LOW;
    CdTxenPin = LOW;

    if(DataRateSet == DATA_RATE_1M) // data rate 1Mbps
    {   //tx mode,sync off
        SpiWrite(0x03DB, MODE_CONTROL_REG);
        // set Frequency
        SpiWrite((0x0962 + FreqHopTable[Frequency] * 2) |
            FreqBank[FreqHopTable[Frequency]] << 13, SYNTH1_REG);
        //VTH = 1~1.5v, Change Cump = 500uA
        SpiWrite(0x0B9B, SYNTH2_REG);
        //BBout off,Tx mode,sync on 
        SpiWrite(0x031F, MODE_CONTROL_REG);
    }
    else                            // data rate 3Mbps
    {   //tx mode,sync off
        SpiWrite(0x03FB, MODE_CONTROL_REG);
        // set Frequency
        SpiWrite((0x0858 + FreqHopTable[Frequency] * 4) |
            FreqBank[FreqHopTable[Frequency]] << 13, SYNTH1_REG);
        //VTH = 1~1.5v, Change Cump = 500uA
        SpiWrite(0x0B98, SYNTH2_REG);
        //BBout off,Tx mode,sync on 
        SpiWrite(0x033F, MODE_CONTROL_REG);
    }

    // reset TRx FIFO
    SpiWrite(0x0000, FIFO_CONTROL_REG);
    SpiWrite(0x01FC, FIFO_CONTROL_REG);
}

/*****************************************************************************
**  Function   : setRxMode                                                  **
**                                                                          **
**  HISTORY    : 2004/10/29  Jones created                                  **
**                                                                          **
**  Description: set RF in Rx mode                                          **
**                                                                          **
**  Frequency  : 3 MHz mode: 2398.5 ~ 2475                                  **
**               1 MHz Mode: 2400   ~ 2478                                  **
**                                                                          **
*****************************************************************************/
void setRxMode(void)
{
    Ms1Pin    = LOW;
    CdTxenPin = HIGH;

    if (DataRateSet==DATA_RATE_1M)  //DATA_RATE_1MHZ
    {   // Rx mode,sync off
        SpiWrite(0x03D3, MODE_CONTROL_REG);
        // Set frequency
        SpiWrite((0x0960 + FreqHopTable[Frequency] * 2) |
            FreqBank[FreqHopTable[Frequency]] << 13, SYNTH1_REG);
        //VTH = 1~1.5v, Change Cump = 500uA
        SpiWrite(0x0B9B, SYNTH2_REG);
        //BBout off, Rx mode,sync on
        SpiWrite(0x0317, MODE_CONTROL_REG);
    }
    else                            //DATA_RATE_3MHZ
    {   // Rx mode,sync off
        SpiWrite(0x03F3, MODE_CONTROL_REG);
        // Set frequency
        SpiWrite((0x0854 + FreqHopTable[Frequency] * 4) |
            FreqBank[FreqHopTable[Frequency]] << 13, SYNTH1_REG);
        //VTH = 1~1.5v, Change Cump = 500uA
        SpiWrite(0x0B98, SYNTH2_REG);
        //BBout off, Rx mode,sync on
        SpiWrite(0x0337, MODE_CONTROL_REG);
    }

    SpiWrite(0x0F42, FIFO_CONTROL_REG);
    SpiWrite(0x0F72, FIFO_CONTROL_REG);
    
    Ms1Pin = HIGH;
}
/*****************************************************************************
**  Function   : CalibrationVCO                                             **
**                                                                          **
**  HISTORY    : 2005/3/30  JHP created                                     **
**                                                                          **
**  Description: Calibration VCO band                                       **
**                                                                          **
*****************************************************************************/
Uint8 CalibrationVCO(Uint8 freq)
{
    Uint8   varBank;
    Uint8   ackError;
    Uint8   i, j;
    Uint16  ack;
    Uint16  varbata;

    if (DataRateSet == DATA_RATE_1M)
    {
        SpiWrite(0x03DF, MODE_CONTROL_REG);     // synthesizer on
        varbata = 0x0962 + freq * 2;            // calculate frequency
        varBank = 3;                            // init varBank value
        SpiWrite(0x0B9B, SYNTH2_REG);           // vth = 1~1.5v CP = 100ma
    }
    else
    {
        SpiWrite(0x03FF, MODE_CONTROL_REG);     // synthesizer on
        varbata = 0x0858 + freq * 4;            // calculate frequency
        varBank = 3;                            // init varBank value
        SpiWrite(0x0B98, SYNTH2_REG);           // vth = 1~1.5v CP = 100ma
    }

    for (i = 1; i <= 8 ;i ++)                   // retry 8 times
    {
        varbata=varbata & 0x1FFF;
        varbata=(varbata | (varBank << 13));

        SpiWrite(varbata, SYNTH1_REG);

        for(j = 0;  j < 180; j ++);             // delay 300us

        ack = SpiRead(SYNTH2_REG);

        if((ack & 0xc000) == 0x4000)            // vt = 01 calibration ok
        {
            ackError = 0;
            break;
        }
        else if((ack & 0xc000) == 0x0000)       // vt = 00 freq too low
        {
            if(varBank == 7)
            {
                ackError = 1;
                break;
            }
            varBank++;
        }
        else if((ack & 0xc000) == 0xc000)       // vt = 11 freq too high
        {
            if(varBank == 0)
            {
                ackError = 1;
                break;
            }
            varBank--;
        }
    }

    //synthesizer off
    if (DataRateSet == DATA_RATE_1M) 
        SpiWrite(0x03DB, MODE_CONTROL_REG);     
    else
        SpiWrite(0x03FB, MODE_CONTROL_REG);

    if(ackError == 1)
        return 0xff;
    else

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色嗨嗨av一区二区三区| 亚洲高清不卡在线观看| 国产不卡视频在线观看| 2023国产精品| 成人深夜视频在线观看| 综合久久久久久久| 在线欧美日韩国产| 奇米色一区二区| www久久久久| 99视频在线精品| 亚洲综合成人在线| 日韩写真欧美这视频| 国产精品99久久久| 亚洲天堂久久久久久久| 欧美色涩在线第一页| 日本在线不卡视频| 国产免费观看久久| 91国产成人在线| 蜜臀av一区二区在线免费观看| 欧美精品一区二区三区在线播放| 成人免费的视频| 亚洲高清中文字幕| 久久精品一区二区三区四区 | 国产一区二区三区四| 欧美激情一区二区三区四区| 日本精品一区二区三区四区的功能| 五月激情六月综合| 国产网站一区二区| 日本道精品一区二区三区| 精品午夜久久福利影院| 久久免费国产精品| 91高清视频在线| 国产寡妇亲子伦一区二区| 亚洲国产日产av| 久久久亚洲欧洲日产国码αv| 在线一区二区三区四区五区| 精品一区二区三区久久| 一区二区三区在线视频播放| 日韩欧美在线影院| 色哟哟亚洲精品| 国产精品一区2区| 天堂蜜桃91精品| 自拍偷自拍亚洲精品播放| 精品日韩一区二区| 欧美在线不卡视频| 成人理论电影网| 久久国产精品99久久久久久老狼| 亚洲欧洲制服丝袜| 久久精品一区四区| 日韩精品中文字幕一区二区三区| 91福利国产精品| 成人高清免费观看| 理论电影国产精品| 亚洲第一搞黄网站| 亚洲欧美韩国综合色| 国产无一区二区| 精品国产精品网麻豆系列| 欧美肥妇free| 欧美性感一类影片在线播放| 99久久99久久免费精品蜜臀| 国产在线播精品第三| 蜜桃av一区二区在线观看| 亚洲制服丝袜av| 亚洲精品国产a久久久久久 | 激情综合亚洲精品| 日韩高清在线电影| 午夜精品视频一区| 亚洲午夜久久久久久久久电影网| 椎名由奈av一区二区三区| 国产精品国产三级国产普通话三级 | 麻豆精品一区二区av白丝在线| 亚洲午夜久久久久久久久电影网| 亚洲精品成人悠悠色影视| 日韩一区中文字幕| 亚洲欧美一区二区三区国产精品| 国产精品久久久久精k8| 国产精品久久久久久久浪潮网站 | 色婷婷亚洲婷婷| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 成人一区在线看| 丁香桃色午夜亚洲一区二区三区| 国产精品18久久久久久久久久久久 | 99久久777色| a4yy欧美一区二区三区| 91视视频在线直接观看在线看网页在线看| 国产精品一级片| 国产精品一区二区久久不卡| 成人综合在线观看| 91偷拍与自偷拍精品| 色香蕉久久蜜桃| 精品污污网站免费看| 7777精品伊人久久久大香线蕉 | 婷婷国产在线综合| 日韩av网站在线观看| 久久精品国产色蜜蜜麻豆| 九九热在线视频观看这里只有精品| 九九**精品视频免费播放| 国产一区不卡精品| 成人午夜在线免费| 欧日韩精品视频| 欧美精品久久一区二区三区| 日韩免费高清视频| 欧美激情一区二区三区蜜桃视频 | 男男视频亚洲欧美| 国产精品影音先锋| 色欧美片视频在线观看| 欧美精品xxxxbbbb| 久久久不卡影院| 亚洲欧美另类久久久精品2019| 亚洲第一精品在线| 国产成人午夜精品5599| 色美美综合视频| 日韩一级二级三级| 国产精品亲子乱子伦xxxx裸| 亚洲一区二区三区美女| 韩国理伦片一区二区三区在线播放| 成人激情av网| 欧美丰满一区二区免费视频| 国产欧美视频一区二区三区| 性欧美大战久久久久久久久| 国产乱码精品1区2区3区| 欧美亚洲一区二区在线| 久久久久一区二区三区四区| 韩国成人福利片在线播放| 91美女精品福利| 精品少妇一区二区三区视频免付费| 中文字幕在线观看不卡| 久久精品999| 在线精品观看国产| 国产婷婷色一区二区三区四区| 亚洲午夜在线电影| 成人午夜av影视| 日韩精品一区二| 亚洲一区二区高清| 不卡一区二区在线| 欧美精品一区男女天堂| 三级亚洲高清视频| 色婷婷狠狠综合| 国产精品久久久久影院| 精品综合免费视频观看| 欧美日韩一区二区三区在线看| 久久久精品国产免大香伊| 日本美女一区二区| 91官网在线免费观看| 国产精品毛片无遮挡高清| 久久机这里只有精品| 欧洲激情一区二区| 成人欧美一区二区三区小说| 国产一区二区三区香蕉| 日韩区在线观看| 日韩在线a电影| 色婷婷av一区二区三区gif| 1000部国产精品成人观看| 国产精品系列在线播放| 久久久综合九色合综国产精品| 日本午夜一区二区| 欧美丰满一区二区免费视频| 亚洲精品精品亚洲| 91久久精品网| 成人免费一区二区三区在线观看| 国产成人av电影在线| 久久久综合视频| 国产一区二区三区观看| 精品999在线播放| 精品亚洲国内自在自线福利| 日韩欧美色电影| 久久av中文字幕片| 欧美成人一级视频| 韩国精品一区二区| 亚洲精品一线二线三线无人区| 久久激情五月婷婷| 精品久久久久香蕉网| 国内精品伊人久久久久影院对白| 日韩欧美国产一区在线观看| 久久爱另类一区二区小说| 欧美一级日韩不卡播放免费| 美女一区二区视频| 精品少妇一区二区三区日产乱码| 老司机精品视频导航| 久久综合九色综合97_久久久| 狠狠色丁香久久婷婷综合_中| 久久九九久精品国产免费直播| 国产成人精品免费| 亚洲色图清纯唯美| 欧美亚洲一区二区在线| 日韩高清一级片| ww亚洲ww在线观看国产| 不卡电影一区二区三区| 一区二区三区加勒比av| 正在播放一区二区| 精品无人码麻豆乱码1区2区| 国产女同性恋一区二区| 91网上在线视频| 日本视频免费一区| 国产日本亚洲高清| 色综合激情五月| 免费视频最近日韩| 国产日韩av一区二区| 91蜜桃婷婷狠狠久久综合9色| 午夜私人影院久久久久|