使用pic單片機控制cc1101無線通信模塊
單片機源程序如下:
- #include<pic.h>
- __CONFIG(0x3B31);
- #include "board.h"
- /* MAIN.C file
- *
- * Copyright (c) 2002-2005 STMicroelectronics
- */
- //#include "OLED.h"
- /*typedef unsigned char INT8U;
- typedef signed char INT8S;
- typedef unsigned int INT16U;
- typedef signed int INT16S;
- typedef unsigned long INT32U;
- typedef signed long INT32S;*/
- void delay_ms(INT32U x);
- INT8U c,d;
- void main( void )
- {
- INT8U txBuffer[10] = {1,2,3,4,5,6,7,8,9,10 }, rxBuffer[5];
- INT32U x;
- INT8U testbuffer[10] = {"00000"};
- INT16U tx_couter = 0, itmp;
- SPI_Initial( );
- //GPIO_Initial( );
- //初始化狀態檢測IO口,使用查詢方式
- /*PORTB |= ( 1<<6 ) | ( 1<<7 );
- DDRB &= ~( ( 1<<6 ) | ( 1<<7 ) );*/
- //RB1=1;RB2=1;
- TRISB1=1;
- TRISB2=1;
- //初始化LED狀態
- //LED_On( );
- /*LCD_Init( );
- LCD_Dis_Logo( );
- LCD_Dis_Str( 2,24,"AVR board" );
- LCD_Dis_Str( 4,0,"yhmcu.taobao.com" );
- LCD_Dis_Str( 6,0,"CC1101:TX " );
- LCD_Dis_Str( 6, 80, (char*)testbuffer );*/
-
- //initialize CC1101
- CC1101Init( ); //LED_Off( );
- CC1101SetTRMode( TX_MODE );
- while( 1 )
- {
- CC1101SetTRMode( TX_MODE );
- //delay some time
- for( x = 0; x < 10000; x ++ );
- //發送數據包,每發送一次,LED閃爍一次
- CC1101SendPacket( txBuffer,10, ADDRESS_CHECK );
- CC1101SetTRMode( RX_MODE );
- delay_ms(50);
- c++;
- x = 10000;
- while( GET_GDO0( ) != 0 )
- {
- if( x ) { x--; }
- else { break; }
- }
- if( x != 0 )
- {
- while( GET_GDO0( ) == 0 );
- if( CC1101RecPacket( rxBuffer ) == 5 )
- {
- //已經收到應答數據
- //LED_Toggle( );
- /* tx_couter ++;
- itmp = tx_couter;
- testbuffer[0] = ( itmp / 10000 ) + '0';
- itmp %= 10000;
- testbuffer[1] = ( itmp / 1000 ) + '0';
- itmp %= 1000;
- testbuffer[2] = ( itmp / 100 ) + '0';
- itmp %= 100;
- testbuffer[3] = ( itmp / 10 ) + '0';
- itmp %= 10;
- testbuffer[4] = itmp + '0';
- testbuffer[5] = 0;*/
- //LCD_Dis_Str( 6, 80, (char*)testbuffer );
- d=1;
- }
- else
- {
- d=2;//未收到應答數據,添加代碼
- }
- }
- else
- {
- //LED_On( );
- d=3;
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
loral-SPI.zip
(345.69 KB, 下載次數: 64)
2018-8-18 16:14 上傳
點擊文件名下載附件
程序源代碼 下載積分: 黑幣 -5
|