⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lss

📁 the code connect Atmega 32 uC to 1 module Bluetooth ARF32
💻 LSS
📖 第 1 页 / 共 5 页
字号:
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 24a:	5d 9b       	sbis	0x0b, 5	; 11
 24c:	fe cf       	rjmp	.-4      	; 0x24a <Create_SDAP_Connection+0x22>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 24e:	1c b8       	out	0x0c, r1	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 250:	5d 9b       	sbis	0x0b, 5	; 11
 252:	fe cf       	rjmp	.-4      	; 0x250 <Create_SDAP_Connection+0x28>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 254:	8a e8       	ldi	r24, 0x8A	; 138
 256:	8c b9       	out	0x0c, r24	; 12
 258:	20 e0       	ldi	r18, 0x00	; 0
 25a:	30 e0       	ldi	r19, 0x00	; 0
		Send_Byte_To_UART(SDAP_CONNECT);	//Opcode
		Send_Byte_To_UART(0x06);			//2byte data length=0x0006
		Send_Byte_To_UART(0x00);
		Send_Byte_To_UART(0x8A);			//Check sum
		for(int i=0; i<=5; i++)			//Gui 6 byte  Bluetooth Address
			{Send_Byte_To_UART(bd_addr[i]);}
 25c:	fa 01       	movw	r30, r20
 25e:	e2 0f       	add	r30, r18
 260:	f3 1f       	adc	r31, r19
 262:	e0 81       	ld	r30, Z
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 264:	5d 9b       	sbis	0x0b, 5	; 11
 266:	fe cf       	rjmp	.-4      	; 0x264 <Create_SDAP_Connection+0x3c>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 268:	ec b9       	out	0x0c, r30	; 12
		Send_Byte_To_UART(REQ);				//Packet Type
		Send_Byte_To_UART(SDAP_CONNECT);	//Opcode
		Send_Byte_To_UART(0x06);			//2byte data length=0x0006
		Send_Byte_To_UART(0x00);
		Send_Byte_To_UART(0x8A);			//Check sum
		for(int i=0; i<=5; i++)			//Gui 6 byte  Bluetooth Address
 26a:	2f 5f       	subi	r18, 0xFF	; 255
 26c:	3f 4f       	sbci	r19, 0xFF	; 255
 26e:	26 30       	cpi	r18, 0x06	; 6
 270:	31 05       	cpc	r19, r1
 272:	a1 f7       	brne	.-24     	; 0x25c <Create_SDAP_Connection+0x34>
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 274:	5d 9b       	sbis	0x0b, 5	; 11
 276:	fe cf       	rjmp	.-4      	; 0x274 <Create_SDAP_Connection+0x4c>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 278:	83 e0       	ldi	r24, 0x03	; 3
 27a:	8c b9       	out	0x0c, r24	; 12
			{Send_Byte_To_UART(bd_addr[i]);}
		Send_Byte_To_UART(ETX);				//Ket thuc ETX
	}
 27c:	08 95       	ret

0000027e <SDAP_Confirm>:
//-----------------------------------------------------------------------------------------
/*---Ham SDAP Confirm---*/
unsigned char SDAP_Confirm(void)
	{
 27e:	90 e0       	ldi	r25, 0x00	; 0
 280:	80 91 66 00 	lds	r24, 0x0066
 284:	88 23       	and	r24, r24
 286:	09 f4       	brne	.+2      	; 0x28a <SDAP_Confirm+0xc>
 288:	91 e0       	ldi	r25, 0x01	; 1
		if(Receive_Cmd[6]==ERROR_OK) return TRUE;	//Status=0x00 thi OK
		else return FALSE;
	}
 28a:	89 2f       	mov	r24, r25
 28c:	08 95       	ret

0000028e <SDAP_Service_Browse>:
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 28e:	5d 9b       	sbis	0x0b, 5	; 11
 290:	fe cf       	rjmp	.-4      	; 0x28e <SDAP_Service_Browse>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 292:	82 e0       	ldi	r24, 0x02	; 2
 294:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 296:	5d 9b       	sbis	0x0b, 5	; 11
 298:	fe cf       	rjmp	.-4      	; 0x296 <SDAP_Service_Browse+0x8>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 29a:	82 e5       	ldi	r24, 0x52	; 82
 29c:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 29e:	5d 9b       	sbis	0x0b, 5	; 11
 2a0:	fe cf       	rjmp	.-4      	; 0x29e <SDAP_Service_Browse+0x10>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2a2:	85 e3       	ldi	r24, 0x35	; 53
 2a4:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2a6:	5d 9b       	sbis	0x0b, 5	; 11
 2a8:	fe cf       	rjmp	.-4      	; 0x2a6 <SDAP_Service_Browse+0x18>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2aa:	82 e0       	ldi	r24, 0x02	; 2
 2ac:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2ae:	5d 9b       	sbis	0x0b, 5	; 11
 2b0:	fe cf       	rjmp	.-4      	; 0x2ae <SDAP_Service_Browse+0x20>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2b2:	1c b8       	out	0x0c, r1	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2b4:	5d 9b       	sbis	0x0b, 5	; 11
 2b6:	fe cf       	rjmp	.-4      	; 0x2b4 <SDAP_Service_Browse+0x26>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2b8:	89 e8       	ldi	r24, 0x89	; 137
 2ba:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2bc:	5d 9b       	sbis	0x0b, 5	; 11
 2be:	fe cf       	rjmp	.-4      	; 0x2bc <SDAP_Service_Browse+0x2e>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2c0:	81 e0       	ldi	r24, 0x01	; 1
 2c2:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2c4:	5d 9b       	sbis	0x0b, 5	; 11
 2c6:	fe cf       	rjmp	.-4      	; 0x2c4 <SDAP_Service_Browse+0x36>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2c8:	81 e1       	ldi	r24, 0x11	; 17
 2ca:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2cc:	5d 9b       	sbis	0x0b, 5	; 11
 2ce:	fe cf       	rjmp	.-4      	; 0x2cc <SDAP_Service_Browse+0x3e>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2d0:	83 e0       	ldi	r24, 0x03	; 3
 2d2:	8c b9       	out	0x0c, r24	; 12
		Send_Byte_To_UART(0x00);
		Send_Byte_To_UART(0x89);	//Check Sum
		Send_Byte_To_UART(0x01);	// 2 byte UUID
		Send_Byte_To_UART(0x11);	//UUID=0x1101
		Send_Byte_To_UART(ETX);		//End
	}
 2d4:	08 95       	ret

000002d6 <SDAP_Service_Confirm>:

//----------------------------------------------------------------------------------------
unsigned char SDAP_Service_Confirm(unsigned char *remote_port)
	{
 2d6:	fc 01       	movw	r30, r24
		if (Receive_Cmd[6]==ERROR_OK)			//STATUS=OK
 2d8:	80 91 66 00 	lds	r24, 0x0066
 2dc:	88 23       	and	r24, r24
 2de:	11 f0       	breq	.+4      	; 0x2e4 <SDAP_Service_Confirm+0xe>
 2e0:	80 e0       	ldi	r24, 0x00	; 0
 2e2:	08 95       	ret
			{*remote_port=Receive_Cmd[12];		//Serial Port Number on Remote device
 2e4:	80 91 6c 00 	lds	r24, 0x006C
 2e8:	80 83       	st	Z, r24
 2ea:	81 e0       	ldi	r24, 0x01	; 1
			 return TRUE;	}
		else return FALSE;
	}
 2ec:	08 95       	ret

000002ee <SDAP_Disconnect>:
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2ee:	5d 9b       	sbis	0x0b, 5	; 11
 2f0:	fe cf       	rjmp	.-4      	; 0x2ee <SDAP_Disconnect>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2f2:	82 e0       	ldi	r24, 0x02	; 2
 2f4:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2f6:	5d 9b       	sbis	0x0b, 5	; 11
 2f8:	fe cf       	rjmp	.-4      	; 0x2f6 <SDAP_Disconnect+0x8>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 2fa:	82 e5       	ldi	r24, 0x52	; 82
 2fc:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 2fe:	5d 9b       	sbis	0x0b, 5	; 11
 300:	fe cf       	rjmp	.-4      	; 0x2fe <SDAP_Disconnect+0x10>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 302:	83 e3       	ldi	r24, 0x33	; 51
 304:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 306:	5d 9b       	sbis	0x0b, 5	; 11
 308:	fe cf       	rjmp	.-4      	; 0x306 <SDAP_Disconnect+0x18>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 30a:	1c b8       	out	0x0c, r1	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 30c:	5d 9b       	sbis	0x0b, 5	; 11
 30e:	fe cf       	rjmp	.-4      	; 0x30c <SDAP_Disconnect+0x1e>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 310:	1c b8       	out	0x0c, r1	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 312:	5d 9b       	sbis	0x0b, 5	; 11
 314:	fe cf       	rjmp	.-4      	; 0x312 <SDAP_Disconnect+0x24>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 316:	85 e8       	ldi	r24, 0x85	; 133
 318:	8c b9       	out	0x0c, r24	; 12
/*----Gui 1 byte du lieu qua cong USART----*/
/*--------------------------------------------*/
void Send_Byte_To_UART(char data )
	{
		/*Doi cho den khi UDRE=1,san sang de truyen du lieu	*/
	   while ( !( UCSRA & (1<<UDRE)) );
 31a:	5d 9b       	sbis	0x0b, 5	; 11
 31c:	fe cf       	rjmp	.-4      	; 0x31a <SDAP_Disconnect+0x2c>
	   
	   /*Dua du lieu ra cong USART*/
   	    UDR=data;
 31e:	83 e0       	ldi	r24, 0x03	; 3
 320:	8c b9       	out	0x0c, r24	; 12
		Send_Byte_To_UART(SDAP_DISCONNECT);	//OPCODE
		Send_Byte_To_UART(0x00);		//Data length=0x0000
		Send_Byte_To_UART(0x00);
		Send_Byte_To_UART(0x85);		//Check Sum
		Send_Byte_To_UART(ETX);			//End
	}
 322:	08 95       	ret

00000324 <SDAP_Disconnect_Confirm>:
//-----------------------------------------------------------------------------------------
/*---Ham SDAP Disconnect Confirm---*/
unsigned char SDAP_Disconnect_Confirm(void)
	{	if (Receive_Cmd[6]=ERROR_OK) {return TRUE;}
 324:	10 92 66 00 	sts	0x0066, r1
		else {return FALSE;}
	}
 328:	80 e0       	ldi	r24, 0x00	; 0
 32a:	08 95       	ret

0000032c <Create_SPP_Link>:
//------------------------------------------------------------------------------------------	
	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -