Clean up onboard_temperature example slightly, and let i tbuild when there is no default LED
This commit is contained in:
		
							parent
							
								
									6a747b3b71
								
							
						
					
					
						commit
						2a11e9f8f2
					
				| @ -20,8 +20,8 @@ float read_onboard_temperature(const char unit) { | ||||
|     /* 12-bit conversion, assume max value == ADC_VREF == 3.3 V */ | ||||
|     const float conversionFactor = 3.3f / (1 << 12); | ||||
| 
 | ||||
|     float adc = adc_read() * conversionFactor; | ||||
|     float tempC = 27.0 - (adc - 0.706) / 0.001721; | ||||
|     float adc = (float)adc_read() * conversionFactor; | ||||
|     float tempC = 27.0f - (adc - 0.706f) / 0.001721f; | ||||
| 
 | ||||
|     if (unit == 'C') { | ||||
|         return tempC; | ||||
| @ -29,13 +29,15 @@ float read_onboard_temperature(const char unit) { | ||||
|         return tempC * 9 / 5 + 32; | ||||
|     } | ||||
| 
 | ||||
|     return -1.0; | ||||
|     return -1.0f; | ||||
| } | ||||
| 
 | ||||
| int main() { | ||||
|     stdio_init_all(); | ||||
| #ifdef PICO_DEFAULT_LED_PIN | ||||
|     gpio_init(PICO_DEFAULT_LED_PIN); | ||||
|     gpio_set_dir(PICO_DEFAULT_LED_PIN, GPIO_OUT); | ||||
| #endif | ||||
| 
 | ||||
|     /* Initialize hardware AD converter, enable onboard temperature sensor and
 | ||||
|      *   select its channel (do this once for efficiency, but beware that this | ||||
| @ -48,10 +50,12 @@ int main() { | ||||
|         float temperature = read_onboard_temperature(TEMPERATURE_UNITS); | ||||
|         printf("Onboard temperature = %.02f %c\n", temperature, TEMPERATURE_UNITS); | ||||
| 
 | ||||
| #ifdef PICO_DEFAULT_LED_PIN | ||||
|         gpio_put(PICO_DEFAULT_LED_PIN, 1); | ||||
|         sleep_ms(10); | ||||
| 
 | ||||
|         gpio_put(PICO_DEFAULT_LED_PIN, 0); | ||||
| #endif | ||||
|         sleep_ms(990); | ||||
|     } | ||||
| 
 | ||||
|  | ||||
		Reference in New Issue
	
	Block a user