Added new pgm_read_ptr() macro to Common.h for reading of pointers out of flash memory space.
Added new SWAPENDIAN_16() and SWAPENDIAN_32() macros to Common.h for statically initialized variables at compile time.
This commit is contained in:
		
							parent
							
								
									988604b25d
								
							
						
					
					
						commit
						e621ab33be
					
				
					 5 changed files with 44 additions and 34 deletions
				
			
		| 
						 | 
				
			
			@ -281,9 +281,9 @@ bool Bluetooth_ChannelConnectionRequest(const uint16_t PSM)
 | 
			
		|||
/** Bluetooth stack callback event for a non-signal ACL packet reception. This callback fires once a connection
 | 
			
		||||
 *  to a remote Bluetooth device has been made, and the remote device has sent a non-signalling ACL packet.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param[in] Data    Pointer to a buffer where the received data is stored
 | 
			
		||||
 *  \param[in] DataLen Length of the packet data, in bytes
 | 
			
		||||
 *  \param[in] Channel Bluetooth ACL data channel information structure for the packet's destination channel
 | 
			
		||||
 *  \param[in] Data     Pointer to a buffer where the received data is stored
 | 
			
		||||
 *  \param[in] DataLen  Length of the packet data, in bytes
 | 
			
		||||
 *  \param[in] Channel  Bluetooth ACL data channel information structure for the packet's destination channel
 | 
			
		||||
 */
 | 
			
		||||
void Bluetooth_PacketReceived(void* Data, uint16_t DataLen, Bluetooth_Channel_t* const Channel)
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -60,14 +60,6 @@
 | 
			
		|||
		#define SDP_PDU_SERVICEATTRIBUTERESPONSE        0x05
 | 
			
		||||
		#define SDP_PDU_SERVICESEARCHATTRIBUTEREQUEST   0x06
 | 
			
		||||
		#define SDP_PDU_SERVICESEARCHATTRIBUTERESPONSE  0x07
 | 
			
		||||
		
 | 
			
		||||
		/** Convenience macro - read a pointer out of PROGMEM space.
 | 
			
		||||
		 *
 | 
			
		||||
		 *  \param[in] x  Address of the pointer to read
 | 
			
		||||
		 *
 | 
			
		||||
		 *  \return  Pointer retrieved from PROGMEM space
 | 
			
		||||
		 */
 | 
			
		||||
		#define pgm_read_ptr(x)                         (void*)pgm_read_word(x)
 | 
			
		||||
 | 
			
		||||
	/* Enums: */
 | 
			
		||||
		/** Data sizes for SDP Data Element headers, to indicate the size of the data contained in the element. When creating
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -58,26 +58,7 @@
 | 
			
		|||
		#define SDP_ATTRIBUTE_ID_LANGUAGEBASEATTROFFSET 0x0006
 | 
			
		||||
		#define SDP_ATTRIBUTE_ID_SERVICENAME            0x0100
 | 
			
		||||
		#define SDP_ATTRIBUTE_ID_SERVICEDESCRIPTION     0x0101
 | 
			
		||||
		
 | 
			
		||||
		/** Swaps the byte ordering of a 16-bit value at compile time. Do not use this macro for swapping byte orderings
 | 
			
		||||
		 *  of dynamic values computed at runtime -- use SwapEndian_16() instead.
 | 
			
		||||
		 *
 | 
			
		||||
		 *  \param[in]  x  16-bit value whose byte ordering is to be swapped
 | 
			
		||||
		 *
 | 
			
		||||
		 *  \return Input value with the byte ordering reversed
 | 
			
		||||
		 */
 | 
			
		||||
		#define SWAPENDIAN_16(x)                        ((((x) & 0xFF00) >> 8) | (((x) & 0x00FF) << 8))
 | 
			
		||||
 | 
			
		||||
		/** Swaps the byte ordering of a 32-bit value at compile time. Do not use this macro for swapping byte orderings
 | 
			
		||||
		 *  of dynamic values computed at runtime -- use SwapEndian_32() instead.
 | 
			
		||||
		 *
 | 
			
		||||
		 *  \param[in]  x  32-bit value whose byte ordering is to be swapped
 | 
			
		||||
		 *
 | 
			
		||||
		 *  \return Input value with the byte ordering reversed
 | 
			
		||||
		 */
 | 
			
		||||
		#define SWAPENDIAN_32(x)                        ((((x) & 0xFF000000UL) >> 24UL) | (((x) & 0x00FF0000UL) >> 8UL) | \
 | 
			
		||||
		                                                 (((x) & 0x0000FF00UL) << 8UL) | (((x) & 0x000000FFUL) << 24UL))
 | 
			
		||||
		
 | 
			
		||||
				
 | 
			
		||||
		/** Terminator for a service attribute table of type \ref ServiceAttributeTable_t. */
 | 
			
		||||
		#define SERVICE_ATTRIBUTE_TABLE_TERMINATOR      {.Data = NULL}
 | 
			
		||||
		
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue