*********************************************************************************************************************************

This directory is associated with Rev 2 of the Application Note


    Using the On-Chip Thermal Diode on Analog Devices Processors (EE-346) 


that can be found at http://www.analog.com/ee-notes


Analog Devices, Inc.
DSP Division
Three Technology Way
P.O. Box 9106
Norwood, MA 02062

Date Created:     August 2,  2010

*********************************************************************************************************************************

Description of the EE-Note:


As a processors speed increases, heat dissipation also increases. This results in an increased operating temperature. 
For processors that operate at higher speeds, thermal management is important to ensure reliable operation and longer life. 
ADSP-214xx SHARC processors incorporate an on-chip thermal diode that can be used to monitor the die temperature and take 
appropriate actions if it goes beyond a threshold value. This EE-Note describes how the on-chip thermal diode can be interfaced 
with a digital temperature sensor. 


*********************************************************************************************************************************

Description of the code:

This code uses ADM1032 present on the EZ-Board to read the die temperature of the ADSP-21489 processor with the help of
the on chip thermal diode. It also shows the usage of other features of ADM1032 IC e.g. 

1) Setting the remote temperature offset.
				
2) Setting the THERM and ALERT temperature limits (for more details on THERM and ALERT limits, refer ADM1032 data sheet).
				   
3) /THERM output is connected to LED11. Whenever, local/remote temperature exceeds the corresponding THERM limit, LED11 glows 
untill the temperature falls below the limit-HYSTERISIS value.The code outputs the corresponding error message to know if 
local/remote temperature crossed the limit.
			   
4) /ALERT  output can be connected to an interrupt pin (FLAG0/IRQ0) on the board. 
Whenever, local/remote temperature goes beyond the corresponding temperature limits,/ALERT  will generate an interrupt. 
The code uses this interrupt to know if any of the limits were excedeed and diplays the appropriate error message till 
both local and remote temperatures are not within their limits.


s--> Setting the limits

Limits can be changed in the file "Thermal_Diode_ADM1032.h". Default limits are:

REMOTE_OFFSET 		0	
LOCAL_THERM_LIMIT	40
REMOTE_THERM_LIMIT  	40
THERM_HYSTERISIS 	10
REMOTE_ALERT_HIGH_LIMIT 50
REMOTE_ALERT_LOW_LIMIT  10
LOCAL_ALERT_HIGH_LIMIT  50
LOCAL_ALERT_LOW_LIMIT   10

Connections and switch settings required:
SW3.7 : ON
SW3.8 : ON
SW13.3: ON


*********************************************************************************************************************************

The code example has been written and tested with

	VisualDSP++ 5.0 Update 8

	ADSP-21489 silicon revision 0.1

	ADSP-21489 EZ-Board rev 0.1


*****************************************************************************************