137 CMP比較器

137的和135的是一樣的。

#include "bat32g137.h"
#include "cmp.h"


int main(void)
{
	// postive input CMP_PSIDE_VCIN12--P20
	// negtive input CMP_NSIDE_IVREF 內部電壓參考源
	// 默認是雙邊沿觸發中斷 
	CMP_Init(CMP_CHANNEL_1,CMP_PSIDE_VCIN12,CMP_NSIDE_IVREF);
	// 內部VCC GND 作爲 比較器電壓
	CMP_VREF_Init(CMP_CHANNEL_1,CMP_VDD_VSS_REFERENCE_VOLTAGE);
	// 啓動比較器
	CMP_Start(CMP_CHANNEL_1);
	// 設置以內部電源爲參考電壓,可以256等級細分
	CMP_VREF_Set_Value(CMP_CHANNEL_1,128); // VCC*128/256,VCC = 3.3,3.3*128/256 = 1.65V

	while(1)
	{
		
	}
}

void IRQ25_Handler(void) __attribute__((alias("cmp1_interrupt")));

/***********************************************************************************************************************
* Function Name: cmp1_interrupt
* @brief  CMP0 interrupt service routine
* @param  None
* @return None
***********************************************************************************************************************/
void cmp1_interrupt(void)
{
    INTC_ClearPendingIRQ(CMP1_IRQn);     /* clear INTCMP1 interrupt flag */
    /* Start user code. Do not edit comment generated here */
 
    /* End user code. Do not edit comment generated here */
}

實際測試比較器輸出OK,和預期吻合。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章