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

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

?? nrf905.s

?? 本文檔是從MCS51向AVR的快速轉換的說明文檔.
?? S
?? 第 1 頁 / 共 2 頁
字號:
	.module nrf905.C
	.area text(rom, con, rel)
	.dbfile D:\IccAvr\Pei\ptr8000\nrf905.C
	.dbfunc e nrf905_Config _nrf905_Config fV
	.even
_nrf905_Config::
	xcall push_gset2
	.dbline -1
	.dbline 122
; #include "config.h"
; 
; extern void DelayMs(uchar ms);
; extern void DelayUs(uint us);
; 
; #define SIZE 32
; 
; uchar TxBuf[SIZE],RxBuf[SIZE];
; 
; /*-------------------------------------------------------------------------------------------
; nrf905配置寄存器宏定義 author:HotPower
;         nrf905配置寄存器(10Byte)
; 工作頻率f=(422.4+CH_NO/10)*(1+HFREQ_PLL)MHz
; -------------------------------------------------------------------------------------------*/
; #define RX_ADDRESS           0x12345678               //接收有效地址(本方)
; #define TX_ADDRESS           0x12345678               //發送有效地址(對方)
; 
; #define CH_NO_FREQ_422_4MHz  0x000                     //工作頻率422.4MHz(433MHz頻段最低頻率)
; #define CH_NO_FREQ_422_5MHz  0x001                     //工作頻率422.5MHz
; #define CH_NO_FREQ_425_0MHz  0x01a                     //工作頻率425.0MHz
; #define CH_NO_FREQ_427_5MHz  0x033                     //工作頻率427.5MHz
; 
; #define CH_NO_FREQ_430_0MHz  0x04c                     //工作頻率430.0MHz
; #define CH_NO_FREQ_433_0MHz  0x06a                     //工作頻率433.0MHz(433MHz頻段基準頻率)
; #define CH_NO_FREQ_433_1MHz  0x06b                     //工作頻率433.1MHz
; #define CH_NO_FREQ_433_2MHz  0x06c                     //工作頻率433.2MHz
; #define CH_NO_FREQ_434_7MHz  0x07b                     //工作頻率434.7MHz
; #define CH_NO_FREQ_473_5MHz  0x1ff                     //工作頻率473.5MHz(433MHz頻段最高頻率)
; 
; #define CH_NO_FREQ_844_8MHz  0x000                     //工作頻率844.8MHz(868MHz頻段最低頻率)
; 
; #define CH_NO_FREQ_862_0MHz  0x056                     //工作頻率862.0MHz
; #define CH_NO_FREQ_868_0MHz  0x074                     //工作頻率868.0MHz(868MHz頻段基準頻率)
; #define CH_NO_FREQ_868_2MHz  0x075                     //工作頻率868.2MHz
; #define CH_NO_FREQ_868_4MHz  0x076                     //工作頻率868.4MHz
; #define CH_NO_FREQ_869_8MHz  0x07d                     //工作頻率869.8MHz
; #define CH_NO_FREQ_895_8MHz  0x0ff                     //工作頻率895.8MHz
; #define CH_NO_FREQ_896_0MHz  0x100                     //工作頻率896.0MHz
; #define CH_NO_FREQ_900_0MHz  0x114                     //工作頻率900.0MHz
; #define CH_NO_FREQ_902_2MHz  0x11f                     //工作頻率902.2MHz
; #define CH_NO_FREQ_902_4MHz  0x120                     //工作頻率902.4MHz
; #define CH_NO_FREQ_915_0MHz  0x15f                     //工作頻率915.0MHz(915MHz頻段基準頻率)
; #define CH_NO_FREQ_927_8MHz  0x19f                     //工作頻率927.8MHz
; 
; #define CH_NO_FREQ_947_0MHz  0x1ff                     //工作頻率947.0MHz(915MHz頻段最高頻率)
; 
; #define CH_NO_FREQ           CH_NO_FREQ_430_0MHz       //工作頻率433.0MHz
; 
; 
; #define CH_NO_BYTE           CH_NO_FREQ & 0xff         //工作頻率低8位       Byte0       01101100
; 
; #define AUTO_RETRAN          0x20                      //重發數據包          Byte1.5     0
; #define RX_RED_PWR           0x10                      //接收低功耗模式      Byte1.4     0
; #define PA_PWR__10dBm        0x00                      //輸出功率-10dBm      Byte1.3~2   00
; #define PA_PWR_2dBm          0x04                      //輸出功率+2dBm       Byte1.3~2
; #define PA_PWR_6dBm          0x08                      //輸出功率+6dBm       Byte1.3~2
; #define PA_PWR_10dBm         0x0c                      //輸出功率+10dBm      Byte1.3~2   
; #define HFREQ_PLL_433MHz     0x00                      //工作在433MHz頻段    Byte1.1     0
; #define HFREQ_PLL_868MHz     0x02                      //工作在868MHz頻段    Byte1.1
; #define HFREQ_PLL_915MHz     0x02                      //工作在915MHz頻段    Byte1.1
; #define CH_NO_BIT8           CH_NO_FREQ >> 8           //工作頻率第9位       Byte1.0     0
; 
; #define TX_AFW_1BYTE         1 * 16                    //發送地址寬度1字節   Byte2.7~4
; #define TX_AFW_2BYTE         2 * 16                    //發送地址寬度2字節   Byte2.7~4
; #define TX_AFW_3BYTE         3 * 16                    //發送地址寬度3字節   Byte2.7~4
; #define TX_AFW_4BYTE         4 * 16                    //發送地址寬度4字節   Byte2.7~4   100
; #define RX_AFW_1BYTE         1                         //接收地址寬度1字節   Byte2.3~0
; #define RX_AFW_2BYTE         2                         //接收地址寬度2字節   Byte2.3~0
; #define RX_AFW_3BYTE         3                         //接收地址寬度3字節   Byte2.3~0
; #define RX_AFW_4BYTE         4                         //接收地址寬度4字節   Byte2.3~0   100
; 
; #define RX_PW_1BYTE          1                         //接收數據寬度1字節   Byte3.5~0
; #define RX_PW_32BYTE         32                        //接收數據寬度32字節  Byte3.5~0   00100000
; #define TX_PW_1BYTE          1                         //發送數據寬度1字節   Byte4.5~0 
; #define TX_PW_32BYTE         32                        //發送數據寬度32字節  Byte4.5~0   00100000
; 
; #define RX_ADDRESS_0         RX_ADDRESS >> 24          //接收有效地址第1字節 Byte5       11100111
; #define RX_ADDRESS_1         (RX_ADDRESS >> 16) & 0xff //接收有效地址第2字節 Byte6       11100111 
; #define RX_ADDRESS_2         (RX_ADDRESS >> 8) & 0xff  //接收有效地址第3字節 Byte7       11100111
; #define RX_ADDRESS_3         RX_ADDRESS & 0xff         //接收有效地址第4字節 Byte8       11100111
;        
; #define CRC_MODE_16BIT       0x80                      //CRC16模式           Byte9.7     1
; #define CRC_MODE_8BIT        0x00                      //CRC8模式            Byte9.7     
; #define CRC_EN               0x40                      //CRC使能             Byte9.6     1
; #define CRC16_EN             0xc0                      //CRC16模式使能       Byte9.7~6   11
; #define CRC8_EN              0x40                      //CRC8模式使能        Byte9.7~6
; #define XOF_20MHz            0x20                      //晶體振蕩器頻率20MHz Byte9.5~3
; #define XOF_16MHz            0x18                      //晶體振蕩器頻率16MHz Byte9.5~3   100
; #define XOF_12MHz            0x10                      //晶體振蕩器頻率12MHz Byte9.5~3
; #define XOF_8MHz             0x08                      //晶體振蕩器頻率8MHz  Byte9.5~3
; #define XOF_4MHz             0x00                      //晶體振蕩器頻率4MHz  Byte9.5~3
; #define UP_CLK_EN            0x40                      //輸出時鐘使能        Byte9.2     1
; #define UP_CLK_FREQ_500kHz   0x03                      //輸出時鐘頻率500kHz  Byte9.1~0   11
; #define UP_CLK_FREQ_1MHz     0x02                      //輸出時鐘頻率1MHz    Byte9.1~0
; #define UP_CLK_FREQ_2MHz     0x01                      //輸出時鐘頻率2MHz    Byte9.1~0
; #define UP_CLK_FREQ_4MHz     0x00                      //輸出時鐘頻率4MHz    Byte9.1~0
; 
; #define UP_CLK_EN_500kHz     0x43                      //輸出時鐘頻率500kHz  Byte9.2~0   111
; #define UP_CLK_EN_1MHz       0x42                      //輸出時鐘頻率1MHz    Byte9.2~0
; #define UP_CLK_EN_2MHz       0x41                      //輸出時鐘頻率2MHz    Byte9.2~0
; #define UP_CLK_EN_4MHz       0x40                      //輸出時鐘頻率4MHz    Byte9.2~0
; 
; #define TX_ADDRESS_0         TX_ADDRESS >> 24          //發送有效地址第1字節
; #define TX_ADDRESS_1         (TX_ADDRESS >> 16) & 0xff //發送有效地址第2字節
; #define TX_ADDRESS_2         (TX_ADDRESS >> 8) & 0xff  //發送有效地址第3字節
; #define TX_ADDRESS_3         TX_ADDRESS & 0xff         //發送有效地址第4字節
; 
; /*-----------------------------------------------
;         nrf905命令控制字 author:HotPower
; ------------------------------------------------*/
; #define WC        0x00            // Write configuration register command
; #define RC        0x10            // Read  configuration register command
; #define WTP       0x20            // Write TX Payload  command
; #define RTP       0x21            // Read  TX Payload  command
; #define WTA       0x22            // Write TX Address  command
; #define RTA       0x23            // Read  TX Address  command
; #define RRP       0x24            // Read  RX Payload  command
;  
; 
; //配置nRF905
; void nrf905_Config(void)
; {
	.dbline 123
;   CLR(PORTB,CSN);                   // Spi 片選開
	cbi 0x18,4
	.dbline 124
;   nrf905_SpiRW(WC);                // Write config command
	clr R16
	clr R17
	xcall _nrf905_SpiRW
	.dbline 125
;   nrf905_SpiRW(CH_NO_BYTE);                      //中心頻率低8位
	ldi R16,76
	ldi R17,0
	xcall _nrf905_SpiRW
	.dbline 126
;   nrf905_SpiRW(PA_PWR_10dBm | HFREQ_PLL_433MHz); //發射+10dBm,發射頻率433MHz,中心頻率第9位=0
	ldi R16,12
	ldi R17,0
	xcall _nrf905_SpiRW
	.dbline 127
;   nrf905_SpiRW(TX_AFW_4BYTE | RX_AFW_4BYTE);     //接收地址寬度4字節,發送地址寬度4字節
	ldi R16,68
	ldi R17,0
	xcall _nrf905_SpiRW
	.dbline 128
;   nrf905_SpiRW(RX_PW_32BYTE);                    //接收數據寬度32字節
	ldi R16,32
	ldi R17,0
	xcall _nrf905_SpiRW
	.dbline 129
;   nrf905_SpiRW(TX_PW_32BYTE);                    //發送數據寬度32字節
	ldi R16,32
	ldi R17,0
	xcall _nrf905_SpiRW
	.dbline 130
;   nrf905_SpiRW(RX_ADDRESS_0);                    //接收有效地址第1字節
	ldi R16,18
	ldi R17,0
	ldi R18,0
	ldi R19,0
	xcall _nrf905_SpiRW
	.dbline 131
;   nrf905_SpiRW(RX_ADDRESS_1);                    //接收有效地址第2字節
	ldi R16,52
	ldi R17,0
	ldi R18,0
	ldi R19,0
	xcall _nrf905_SpiRW
	.dbline 132
;   nrf905_SpiRW(RX_ADDRESS_2);                    //接收有效地址第3字節
	ldi R16,86
	ldi R17,0
	ldi R18,0
	ldi R19,0
	xcall _nrf905_SpiRW
	.dbline 133
;   nrf905_SpiRW(RX_ADDRESS_3);                    //接收有效地址第4字節
	ldi R16,120
	ldi R17,0
	ldi R18,0
	ldi R19,0
	xcall _nrf905_SpiRW
	.dbline 134
;   nrf905_SpiRW(CRC16_EN | XOF_16MHz);            //CRC16模式使能,晶體振蕩器頻率16MHz
	ldi R16,216
	ldi R17,0
	xcall _nrf905_SpiRW
	.dbline 135
;   SET(PORTB,CSN);                 // Disable Spi
	sbi 0x18,4
	.dbline -2
L1:
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e nrf905_SpiRW _nrf905_SpiRW fc
;           temp -> R20
;            val -> R16
	.even
_nrf905_SpiRW::
	xcall push_gset1
	.dbline -1
	.dbline 139
; }
; 
; uchar nrf905_SpiRW(uchar val) 
; {uchar temp;
	.dbline 141
; 
;     SPDR=val;
	out 0xf,R16
L3:
	.dbline 142
L4:
	.dbline 142
; 	while ((SPSR&(1<<SPIF))==0);
	sbis 0xe,7
	rjmp L3
	.dbline 143
; 	temp=SPDR;
	in R20,0xf
	.dbline 144
; 	return temp;
	mov R16,R20
	.dbline -2
L2:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r temp 20 c
	.dbsym r val 16 c
	.dbend
	.dbfunc e nrf905_StandBy _nrf905_StandBy fV
	.even
_nrf905_StandBy::
	.dbline -1
	.dbline 149
; }
; 
; //PwrDown->StandBy
; void nrf905_StandBy()
; {
	.dbline 150
;    SET(PORTB,PWR);
	sbi 0x18,0
	.dbline 151
;    CLR(PORTB,TRXCE);
	cbi 0x18,1
	.dbline 152
;    CLR(PORTB,TX_EN);
	cbi 0x18,2
	.dbline -2
L6:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e nrf905_Off _nrf905_Off fV
	.even
_nrf905_Off::
	.dbline -1
	.dbline 157
; }
; 
; //->PwrDown
; void nrf905_Off()
; {
	.dbline 158
;   CLR(PORTB,PWR);
	cbi 0x18,0
	.dbline -2
L7:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e nrf905_TxOn _nrf905_TxOn fV
	.even
_nrf905_TxOn::
	.dbline -1
	.dbline 163
; }
; 
; //->ShockBurst Send
; void nrf905_TxOn()
; {
	.dbline 164
;   SET(PORTB,PWR);
	sbi 0x18,0
	.dbline 165
;   SET(PORTB,TX_EN);
	sbi 0x18,2
	.dbline 166
;   CLR(PORTB,TRXCE);
	cbi 0x18,1
	.dbline -2
L8:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e nrf905_TxSend _nrf905_TxSend fV
	.even
_nrf905_TxSend::
	.dbline -1
	.dbline 171
; }
; 
; //->ShockBurst Send
; void nrf905_TxSend()
; {
	.dbline 172
;   SET(PORTB,TRXCE);
	sbi 0x18,1
	.dbline 173
;   DelayUs(20);//>10us
	ldi R16,20
	ldi R17,0
	xcall _DelayUs
	.dbline 174
;   CLR(PORTB,TRXCE);//只發送一次
	cbi 0x18,1
	.dbline -2
L9:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e nrf905_RxOn _nrf905_RxOn fV
	.even
_nrf905_RxOn::
	.dbline -1
	.dbline 179
; }
; 
; //->ShockBurst Recv
; void nrf905_RxOn()
; {
	.dbline 180

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲视频免费在线观看| 一区二区三区在线视频免费| 在线不卡欧美精品一区二区三区| 成人一区二区三区| 国产成人精品亚洲日本在线桃色| 国产一区二区精品久久99| 精品影视av免费| 国产精品77777| www.欧美日韩| 日本乱人伦一区| 欧美日韩一区三区| 欧美成人女星排行榜| 精品国内二区三区| 国产精品欧美一区二区三区| 专区另类欧美日韩| 三级久久三级久久| 极品少妇xxxx精品少妇| 成人性色生活片| 欧美中文字幕亚洲一区二区va在线| 欧美吞精做爰啪啪高潮| 精品精品国产高清a毛片牛牛 | 91精品国产91综合久久蜜臀| 91精品国产品国语在线不卡| 久久亚洲精品小早川怜子| 国产欧美日韩精品在线| 一区二区三区欧美| 久久国产精品色| 91丝袜高跟美女视频| 欧美一级xxx| 国产精品久久三区| 日韩av网站免费在线| 国产一区二区三区综合| 色婷婷久久一区二区三区麻豆| 欧美精品乱码久久久久久| 欧美激情资源网| 日本欧美一区二区| kk眼镜猥琐国模调教系列一区二区 | 国内久久婷婷综合| 色婷婷精品久久二区二区蜜臀av| 精品国产免费一区二区三区香蕉| 国产精品网站在线观看| 日韩黄色在线观看| 91免费视频网| 337p粉嫩大胆噜噜噜噜噜91av | 日本午夜一区二区| 91玉足脚交白嫩脚丫在线播放| 日韩丝袜美女视频| 亚洲午夜精品一区二区三区他趣| 国产精品一区二区x88av| 欧美日韩一区二区在线观看视频| 亚洲国产岛国毛片在线| 精品一区二区免费视频| 欧美日韩午夜精品| 亚洲欧美偷拍另类a∨色屁股| 久久er99热精品一区二区| 在线观看国产91| 中文字幕一区二区三区在线不卡| 久久99国内精品| 91麻豆精品国产91久久久更新时间 | 欧美性生活一区| 中文字幕佐山爱一区二区免费| 国内成人免费视频| 日韩欧美国产成人一区二区| 亚洲一区在线观看网站| 色综合欧美在线| 综合激情成人伊人| 不卡av免费在线观看| 欧美国产乱子伦| 国产成人免费视频精品含羞草妖精 | 欧美成人福利视频| 日本va欧美va精品发布| 91精品国产乱码久久蜜臀| 亚洲精品国久久99热| 99r国产精品| 国产精品欧美久久久久无广告 | 欧美性色黄大片| 亚洲精品国产视频| 色婷婷国产精品久久包臀| 中文字幕一区二区三区在线观看 | 自拍偷拍国产精品| 91色|porny| 亚洲自拍偷拍麻豆| 欧美美女bb生活片| 日本三级韩国三级欧美三级| 91精品婷婷国产综合久久竹菊| 午夜久久久久久电影| 日韩精品一区在线观看| 国产在线国偷精品产拍免费yy| 久久久天堂av| 99re成人精品视频| 亚洲一二三区在线观看| 欧美片网站yy| 国产综合一区二区| 亚洲欧洲精品天堂一级 | 韩国一区二区在线观看| 国产精品视频一二| 在线中文字幕一区二区| 免费高清不卡av| 中文字幕精品三区| 欧美色综合网站| 国产在线国偷精品免费看| 亚洲人123区| 8x8x8国产精品| 国产成人精品www牛牛影视| 一区二区在线免费观看| 欧美一区二区大片| 成人动漫av在线| 午夜私人影院久久久久| 国产三级一区二区三区| 欧美专区在线观看一区| 国产乱码精品一区二区三区忘忧草 | 一区二区三区日韩欧美| 欧美zozozo| 91亚洲永久精品| 久久精品国产亚洲高清剧情介绍| 国产精品色在线| 3d成人动漫网站| jlzzjlzz亚洲女人18| 日韩国产精品久久久久久亚洲| 国产日本欧洲亚洲| 欧美精品免费视频| 国产蜜臀av在线一区二区三区| 奇米888四色在线精品| 中文成人综合网| 日韩免费观看高清完整版| 成人精品免费视频| 麻豆视频观看网址久久| 亚洲色图在线视频| 久久久五月婷婷| 在线成人免费视频| 色激情天天射综合网| 国产精品123| 日韩和欧美一区二区三区| 亚洲免费成人av| 国产亚洲视频系列| 欧美放荡的少妇| 欧美日韩一区小说| 99精品一区二区三区| 国产乱子轮精品视频| 日韩成人精品在线| 亚洲综合免费观看高清完整版在线 | 国产精品久久久久国产精品日日| 欧美精品乱码久久久久久按摩| voyeur盗摄精品| 国产99久久久国产精品免费看| 青青青伊人色综合久久| 亚洲福利国产精品| 亚洲男同1069视频| 亚洲靠逼com| 亚洲欧美一区二区三区国产精品| 国产日韩综合av| 日韩三级高清在线| 欧美一级生活片| 制服丝袜中文字幕一区| 欧美日韩免费电影| 亚洲在线视频一区| 亚洲欧洲日本在线| 18成人在线视频| 亚洲精品国产高清久久伦理二区| 国产精品白丝在线| 综合激情网...| 亚洲激情六月丁香| 亚洲一区二区美女| 亚洲一卡二卡三卡四卡 | 美女被吸乳得到大胸91| 麻豆91在线看| 国内外成人在线| 国产成人精品综合在线观看| 成人午夜视频在线观看| 色综合咪咪久久| 91精品国产91久久久久久一区二区| 7777精品伊人久久久大香线蕉| 欧美丰满少妇xxxxx高潮对白| 日韩欧美国产综合一区| 国产区在线观看成人精品| 亚洲欧洲成人精品av97| 亚洲国产一区在线观看| 免费视频一区二区| 成人动漫视频在线| 欧美影院一区二区| 欧美精品一区在线观看| 中文字幕一区二区三区在线观看 | 国产一区二区影院| 粉嫩aⅴ一区二区三区四区| 99精品视频一区二区三区| 欧美日韩一区中文字幕| 亚洲精品在线免费观看视频| 国产精品久久久久久久久动漫 | 国产欧美一二三区| 亚洲精品v日韩精品| 久久69国产一区二区蜜臀| 成人app下载| 4438亚洲最大| 亚洲欧洲性图库| 美美哒免费高清在线观看视频一区二区| 成人av在线播放网站| 亚洲精品在线观看网站| 一区二区三区在线视频免费 | 精品伦理精品一区| 一区二区三区 在线观看视频|