기본제공 되는 예제에서 unsigned 만 삭제하면 문제없이 영하에 대해서도 작동한다.
long GetTemperature(char isCelcius)
{
long ulADC0_Value[1];
long ulTemp_ValueC;
long ulTemp_ValueF;
ADCProcessorTrigger(ADC0_BASE, 3);
while(!ADCIntStatus(ADC0_BASE, 3, false))
{
}
ADCSequenceDataGet(ADC0_BASE, 3, ulADC0_Value);
ulTemp_ValueC = ((1475 * 1023) - (2250 * ulADC0_Value[0])) / 10230;
ulTemp_ValueF = ((ulTemp_ValueC * 9) + 160) / 5;
if(isCelcius) return ulTemp_ValueC;
return ulTemp_ValueF;
}'embeded > Cortex-M3 Ti' 카테고리의 다른 글
| stellarisware - UARTStdioInit() (4) | 2012.07.23 |
|---|---|
| KEIL 프로그램의 stack 크기 증설을 위해 startup_rvmdk.S를 수정하기 (0) | 2012.06.30 |
| uart 인터럽트 / 폴링 충돌 (0) | 2012.06.18 |
| Ti lm3s1968 arm cortex m3 i2c (0) | 2012.02.20 |
| TI stellarisware / driverlib 기본설정 (uart예제) (4) | 2012.02.05 |