21 lines
		
	
	
		
			451 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			451 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #pragma once
 | |
| 
 | |
| struct pdmout {
 | |
|   volatile uint16_t amplitude;
 | |
|   volatile uint16_t flags;
 | |
| };
 | |
| 
 | |
| #define PDMOUT_FLAG_ENABLE_pos 0
 | |
| #define PDMOUT_FLAG_ENABLE_msk (1 << PDMOUT_FLAG_ENABLE_pos)
 | |
| 
 | |
| struct square {
 | |
|   volatile uint16_t period;
 | |
|   volatile uint16_t high_val;
 | |
|   volatile uint16_t low_val;
 | |
|   volatile uint16_t output_address;
 | |
|   volatile uint16_t flags;
 | |
| };
 | |
| 
 | |
| #define SQUARE_FLAG_ENABLE_pos 0
 | |
| #define SQUARE_FLAG_ENABLE_msk (1 << SQUARE_FLAG_ENABLE_pos)
 |