V Click_2x5W_AMP Branislav Marton branislav.marton@mikroe.com www.mikroe.com' Library and example for 2x5W AMP click. mikroC PRO for PIC32 Click_2x5W_AMP click_2x5w_amp .\Uses\click_2x5w_amp.c[ /*
* click_2x5w_amp.c
*
* Version : 0.0.1
*
* Revision Log :
* 0.0.1 (Jan/2017) Module created
*
* To Do List :
*
******************************************************************************/
#include "click_2x5w_amp.h"
extern sfr sbit CLICK_2X5W_AMP_GAIN0;
extern sfr sbit CLICK_2X5W_AMP_GAIN1;
extern sfr sbit CLICK_2X5W_AMP_STBY;
extern sfr sbit CLICK_2X5W_AMP_MUTE;
/* Preprocessors
******************************************************************************/
#define LOW 0
#define HIGH 1
#define BIT0_MASK 0b00000001
#define BIT1_MASK 0b00000010
/* Public Function Definitions
******************************************************************************/
void click_2x5W_init( void )
{
CLICK_2X5W_AMP_GAIN0 = LOW;
CLICK_2X5W_AMP_GAIN1 = LOW;
CLICK_2X5W_AMP_STBY = LOW;
CLICK_2X5W_AMP_MUTE = LOW;
}
void click_2x5W_gain( click_2x5w_amp_gain_t gain )
{
CLICK_2X5W_AMP_GAIN0 = (gain & BIT1_MASK) ? HIGH : LOW;
CLICK_2X5W_AMP_GAIN1 = (gain & BIT0_MASK) ? HIGH : LOW;
}
void click_2x5W_mode( click_2x5w_amp_mode_t mode )
{
CLICK_2X5W_AMP_MUTE = (mode & BIT0_MASK) ? HIGH : LOW;
CLICK_2X5W_AMP_STBY = (mode & BIT1_MASK) ? HIGH : LOW;
}
/* End of File
******************************************************************************/ .\Uses\click_2x5w_amp.h /**
* @file click_2x5w_amp.h
* @brief Library for 2x5W AMP click.
*
* @defgroup lib2x5wamp Library for 2x5W AMP click
* @brief This is driver for 2x5W AMP click.
*
* @{
*
* ### Device Description ###
* On board IC TDA7491LP is a dual BTL class-D audio amplifier with single power
* supply designed for LCD TVs and monitors.
*
*
* ### Features ###
* -5 W + 5 W continuous output power:
* RL = 8 Ω, THD = 10% at VCC = 9 V
* -5 W + 5 W continuous output power:
* RL = 4 Ω, THD = 10% at VCC = 6.6 V
* -Wide range single supply operation (5 V - 14 V)
* -High efficiency (η = 90%)
* -Four selectable, fixed gain settings of
* nominally 20 dB, 26 dB, 30 dB and 32 dB
* -Differential inputs minimize common-mode
* noise
* -Filterless operation
* -No ‘pop’ at turn-on/off
* -Standby and mute features
* -Short-circuit protection
* -Thermal overload protection
* -Externally synchronizable
*
* ### Library Description
* The library has two helper function to set gain and mode.
*
* @example click_2x5W_AMP_ARM.c
* @example click_2x5W_AMP_PIC.c
* @example click_2x5W_AMP_PIC32.c
* @example click_2x5W_AMP_AVR.c
* @example click_2x5W_AMP_FT90x.c
*
******************************************************************************/
#ifndef CLICK_2X5_AMP_H
#define CLICK_2X5_AMP_H
/**
* @name Types
******************************************************************************/
///@{
/**
* @enum click_2x5w_amp_mode_t
* @brief Mode selection.
* Use to select mode.
*/
typedef enum
{
CLICK_2X5W_AMP_MODE_STBY = 0x00,
CLICK_2X5W_AMP_MODE_MUTE = 0x02,
CLICK_2X5W_AMP_MODE_PLAY = 0x03,
} click_2x5w_amp_mode_t;
/**
* @enum click_2x5w_amp_gain_t
* @brief Gain setting.
* Use to set gain.
*/
typedef enum
{
CLICK_2X5W_AMP_20_DB = 0x00,
CLICK_2X5W_AMP_26_DB = 0x01,
CLICK_2X5W_AMP_30_DB = 0x02,
CLICK_2X5W_AMP_32_DB = 0x03
} click_2x5w_amp_gain_t;
///@}
/**
* @name Functions
******************************************************************************/
///@{
#ifdef __cplusplus
extern "C"{
#endif
/**
* @brief
2x5W AMP click initialization
*
*
* The function initializes click to work in standby mode, and with nominal gain
* of 20 dB.
*
*/
void click_2x5W_init( void );
/**
* @brief Gain setting.
*
* @param[in] gain Gain.
*
* The function sets gain.
*/
void click_2x5W_gain( click_2x5w_amp_gain_t gain );
/**
* @brief Mode selection
*
* @param[in] mode Mode.
*
* The function selects mode.
*
*/
void click_2x5W_mode( click_2x5w_amp_mode_t mode );
#ifdef __cplusplus
} // extern "C"
#endif
#endif // CLICK_2X5_AMP_H
///@}
/**
* @} End of File
******************************************************************************/
P32MX110F016B
P32MX110F016C
P32MX110F016D
P32MX120F032B
P32MX120F032C
P32MX120F032D
P32MX120F064H
P32MX130F064B
P32MX130F064C
P32MX130F064D
P32MX130F128H
P32MX130F128L
P32MX150F128B
P32MX150F128C
P32MX150F128D
P32MX150F256H
P32MX150F256L
P32MX170F256B
P32MX170F256D
P32MX170F512H
P32MX170F512L
P32MX210F016B
P32MX210F016C
P32MX210F016D
P32MX220F032B
P32MX220F032C
P32MX220F032D
P32MX230F064B
P32MX230F064C
P32MX230F064D
P32MX230F128H
P32MX230F128L
P32MX250F128B
P32MX250F128C
P32MX250F128D
P32MX250F256H
P32MX250F256L
P32MX270F256B
P32MX270F256D
P32MX270F512H
P32MX270F512L
P32MX320F032H
P32MX320F064H
P32MX320F128H
P32MX320F128L
P32MX330F064H
P32MX330F064L
P32MX340F128H
P32MX340F128L
P32MX340F256H
P32MX340F512H
P32MX350F128H
P32MX350F128L
P32MX350F256H
P32MX350F256L
P32MX360F256L
P32MX360F512L
P32MX370F512H
P32MX370F512L
P32MX420F032H
P32MX430F064H
P32MX430F064L
P32MX440F128H
P32MX440F128L
P32MX440F256H
P32MX440F512H
P32MX450F128H
P32MX450F128L
P32MX450F256H
P32MX450F256L
P32MX460F256L
P32MX460F512L
P32MX470F512H
P32MX470F512L
P32MX530F128H
P32MX530F128L
P32MX534F064H
P32MX534F064L
P32MX550F256H
P32MX550F256L
P32MX564F064H
P32MX564F064L
P32MX564F128H
P32MX564F128L
P32MX570F512H
P32MX570F512L
P32MX575F256H
P32MX575F256L
P32MX575F512H
P32MX575F512L
P32MX664F064H
P32MX664F064L
P32MX664F128H
P32MX664F128L
P32MX675F256H
P32MX675F256L
P32MX675F512H
P32MX675F512L
P32MX695F512H
P32MX695F512L
P32MX764F128H
P32MX764F128L
P32MX775F256H
P32MX775F256L
P32MX775F512H
P32MX775F512L
P32MX795F512H
P32MX795F512L P32MZ1024ECG064 P32MZ1024ECG100 P32MZ1024ECG124 P32MZ1024ECG144 P32MZ1024ECH064 P32MZ1024ECH100 P32MZ1024ECH124 P32MZ1024ECH144 P32MZ1024ECM064 P32MZ1024ECM100 P32MZ1024ECM124 P32MZ1024ECM144 P32MZ2048ECG064 P32MZ2048ECG100 P32MZ2048ECG124 P32MZ2048ECG144 P32MZ2048ECH064 P32MZ2048ECH100 P32MZ2048ECH124 P32MZ2048ECH144 P32MZ2048ECM064 P32MZ2048ECM100 P32MZ2048ECM124 P32MZ2048ECM144 .\Help\click_2x5W_AMP_doc.chm ITSF ` K: |{ "|{ "` x T ITSP T
j].! "T PMGL / /#IDXHDRF /#ITBITS /#STRINGS]/#SYSTEM ,/#TOPICSF`/#URLSTR.//#URLTBL& /#WINDOWSL/$FIftiMain> /$OBJINSTI?/$WWAssociativeLinks/ /$WWAssociativeLinks/PropertyE/$WWKeywordLinks/ /$WWKeywordLinks/BTreegL/$WWKeywordLinks/Data3h/$WWKeywordLinks/Map
/$WWKeywordLinks/Property% /bc_s.png&$ /bdwn.png*/click_2x5_w__a_m_p__a_r_m_8c-example.html)9*/click_2x5_w__a_m_p__a_v_r_8c-example.htmlbK+/click_2x5_w__a_m_p__f_t90x_8c-example.html-/,/click_2x5_w__a_m_p__p_i_c32_8c-example.html>(*/click_2x5_w__a_m_p__p_i_c_8c-example.html\b/click__2x5w__amp_8h.htmlsW /click__2x5w__amp_8h_source.htmlf
/closed.png
*/dir_255fa8f554e95a439f260058328638ab.html15*/dir_9bb0cdb2fc6936e925cffa69d90b0c80.html<*/dir_e3d620c6b6fdb93ed3bc6186215bde2e.html@q/doxygen.pngJC/doxygen_1.css /dynsections.jsWD/e_logo.pngj/examples.html8S/files.htmlE
/globals.htmlUY/globals_enum.htmlpH/globals_func.html.B/group__lib2x5wamp.htmlJ:
/index.hhcA$
/index.hhke/index.htmlf0
/jquery.jsI/menu.js/l/menudata.js'/mikroe.pngpa
/modules.html/
/nav_f.png
/nav_h.png+b /open.png{
/sync_off.pnglU/sync_on.pngM
/tab_a.png
/tab_b.png)
/tab_h.pngB1
/tab_s.pngs8 /tabs.cssQ=/tabs_1.css$::DataSpace/NameList <(::DataSpace/Storage/MSCompressed/Content :n,::DataSpace/Storage/MSCompressed/ControlData j)::DataSpace/Storage/MSCompressed/SpanInfo b/::DataSpace/Storage/MSCompressed/Transform/List <&_::DataSpace/Storage/MSCompressed/Transform/{7FC28940-9D31-11D0-9B27-00A0C91E9C7C}/InstanceData/ i::DataSpace/Storage/MSCompressed/Transform/{7FC28940-9D31-11D0-9B27-00A0C91E9C7C}/InstanceData/ResetTable _30u > C U n c o m p r e s s e d M S C o m p r e s s e d { 7 F C 2 8 9 4 0 - 9 D 3 1 - 1 1 D 0 LZXC ( n 6 ~z V (
J e Ή
X HHA Version 4.74.8702 $ ?J: index.html 2x5W AMP click click_2x5w_amp_doc main
T#SM> 6
4EW" V,~ΥZ{tHCKB̫^P*r>LL3" " X0|ɲܚKf$KrhIcOr;wRܓn-iꮅs
Sg/;jae)ܝ22ddfRP A
oo{n{[t2;oJBEV▪R%X?H_Z DD? P0? ǡSUFNYU*zjzN1D ]-Z⮔[iʦ
%ڬ.UMHQhql"n&@m:2%-ȶV^[
+"[\iɷ֊un*Կ2
0k[-r0L.:+隆kC
;B"fzr\E\j*%,lV\Īv)Sg6炛]ֲk+=HL&BԈ-B=Ag+Q,2d7
=# *G**h^tp\.:ltyHߙ1v9:,HrBɕ+zUؙ°gZep+>h`H0oLU,
K0+ƦJ+TO[([eчm*tMvTr;&B]P83R8|ͨ(=V`vQ̪ŒRH%.Qmd$ wx`P S#
D;LKPJѥEHoۑCDhz'S!)"EH N&>t$bK+k ߑJz*V+UI.wHC+wBꌯƺeuNT]鿐:6ee4ui`TT&ՂSRhzH&ę^BLWl*͐amid W_bJWvȽĻ*s"o J_wgN^Ke}!R9Xt]ɪ;LYR)Ot_5TuWzeƶeP3Ŝ*XyeUX_yf%1h/3dIXwcfx?jS&灁f6Im4FaĒl¨9Ka-ԉ~Hmv唥^>.uGq+|Dxw T\?:
0v"V6ok]k8l(%jhuNPz8BL?fzvC.GS[aah ?+˅TѼ+9o7ϧu.]*]R
6\(M}w=$M,j5:#Md[pdz ]$+QV|ou!pԯ8g~bXZ
ݺ,:mZ܇b'ظ=&5bvdݐFC7\cQ?-wB&Kم6cDy¾aX(i PŢhb$s%&}Z
ifh]/LWY&vtfXխvCxjNǼ½ٚϫO6zYK0iw*-|gO^7vVWu']`3NXwoA1dXb) [69qEoo"bkdtlNm;<>_
CN#|W}d.<ܯy+_:}{^Nyu6**:L:!MkEW\뷝3$A Ɨw*>(]A?'|6@\a.}Fa}V-Wton^=Hƹ=:"Gט`_.NP]r ʣBQ]hݘ9\U\WN'^?WV"wK;+ #2YGכqhɥB1Fu1Qa(6biۤx(OXΪ'צ?aZc&fd
)O+Z,d.Ǯqa|,Hmsbat
70oLGv_hqVi .;N-yiN0oi43>X<=wGjz3'8q_dA5D_Kmj!W=,fYp8SSLB|"&S=Ÿ#\DٳB4((lj饗o$~-jn ~Rѕe
TԴuq79bhXx/4Z[v2s&4azpxJ7r7L-^cxN6kz[=mCx7c]/t}S,Qt[\6K MwvX 1 V~t~r@_R=6CʤЖ2~;=&`>BjXZtTZ# )bju9b{nNixY藼Ώ*jYpѻ&RB=wJT09˶Iۢ![85cgl?ZQ;< 5ҹ%IOJۗ(nI)HFhCF'ۦ` VVCH h &g