www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]////////////////////////////////////////////////////////////////////////////////////////////////////// // 2012 年吉林省大學(xué)生電子設(shè)計大賽 C題 ----(聲源部分) // 要求: 有信號產(chǎn)生電路, 放大電路, 聲音頻率

//////////////////////////////////////////////////////////////////////////////////////////////////////

// 2012 年吉林省大學(xué)生電子設(shè)計大賽 C題<<聲源定位系統(tǒng)>> ----(聲源部分)

// 要求: 有信號產(chǎn)生電路, 放大電路, 聲音頻率 800Hz 左右, 按一次鍵響聲持續(xù) 1 秒.

// 聲源模塊體積不超過 4cm*4cm*4cm.

//====================================================================================================

// 比賽時用的是 555 定時器組成單穩(wěn)態(tài)電路和延時電路做的延時發(fā)生系統(tǒng). 效果也行. 由于器件誤差原因,

// 頻率很難調(diào)到 800Hz 穩(wěn)定下來. (參考康華光 <電子技術(shù)基礎(chǔ)-數(shù)字部分_第五版> 428頁, 習(xí)題 8.4.4)

// 賽后改用了 TI 的 MSP430 Launchpad 重做了一個, 再加一個簡單的放大電路, 程序如下.

// 本來要用 PWM 功能來輸出, 只是還不熟悉, 得慢慢摸索.

//////////////////////////////////////////////////////////////////////////////////////////////////////

#include

#include

// 定義別名

typedef unsigned char INT8U;

typedef unsigned int INT16U;

volatile INT16U i = 0; // 中斷中引用的變量 最好定義成 volatile 類型.

//////////////////////////////////////////////////////////////////////////////////////////////////////

// 主函數(shù)

void main(void)

{

WDTCTL = WDTPW + WDTHOLD; // 關(guān)閉看門狗

//CCTL0 = CCIE; // 使能 CCR0 中斷

CCR0 = 85;

TACTL = TASSEL_2 + ID_3 + MC_1; // 定時器A的時鐘源選擇 SMCLK,增計數(shù)模式

P1DIR |= (BIT0 | BIT6); // P1 設(shè)置為輸出

P1OUT = (BIT0 | BIT3); // 開始時 LED1 亮, LED2 滅, 選擇上拉方式

P2DIR |= BIT2; // 設(shè)置 P2.2 口方向為輸出

P2OUT &= ~BIT2; // P2.2 輸出低電平, 使得初始狀態(tài)蜂鳴器不響

P1REN |= BIT3; // 使能 P13 口的上拉電阻

P1IE |= BIT3; // P1.3 中斷允許

//P1IES &= ~BIT3; // 上升沿觸發(fā)中斷

P1IES |= BIT3; // 下降沿觸發(fā)中斷, 可以對比下與上升沿的區(qū)別

P1IFG = 0x00; // 清除中斷標(biāo)志位

_EINT(); // 使能全局中斷

LPM1; // CPU 進(jìn)入 LPM1 模式 ,LPM0 亦可

for (;;)

{

_NOP(); // 進(jìn)入死循環(huán), 等待中斷發(fā)生

}

}

//////////////////////////////////////////////////////////////////////////////////////////////////////

// 定時器A的中斷服務(wù)函數(shù),在這里定時改變引腳狀態(tài)

#pragma vector = TIMER0_A0_VECTOR

__interrupt void Timer_A_Handler (void)

{

P2OUT ^= BIT2;

if (++i > 1600) { // 1s 時間到, 則停止, 等待下次按鍵開始

CCTL0 &= ~CCIE; // 禁止 CCR0 中斷, 等待下次按鍵重新開啟

P2OUT &= ~BIT2; // 1s 到后, P2.2 要輸出低電平, 使得蜂鳴器不再響

i = 0; // i 清零, 等待下次繼續(xù)計數(shù)

}

}

//////////////////////////////////////////////////////////////////////////////////////////////////////

// P1.3中斷,下降沿觸發(fā)

#pragma vector = PORT1_VECTOR

__interrupt void Port1_Handler(void)

{

CCTL0 = CCIE; // 使能 CCR0 中斷, 蜂鳴器開始 800Hz 的聲響

P2DIR |= BIT2; // 設(shè)置P2.2口方向為輸出

P1OUT ^= (BIT0 | BIT6); // 表示按鍵改變?nèi)》?P1.0/6, 交替亮滅

P1IFG &= ~BIT3; // 清除 P1.3 中斷標(biāo)志位

}

//////////////////////////////////////////////////////////////////////////////////////////////////////

// END OF FILE


/*****************************************************************************************************

Low-power mode 0 (LPM0)

– CPU is disabled

– ACLK and SMCLK remain active, MCLK is disabled

--------------------------------------------------------------------

Low-power mode 1 (LPM1)

– CPU is disabled

– ACLK and SMCLK remain active, MCLK is disabled

– DCO's dc generator is disabled if DCO not used in active mode

*****************************************************************************************************/


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

?MSP430電容觸摸?是指使用MSP430微控制器(MCU)實現(xiàn)的電容觸摸感應(yīng)技術(shù)。MSP430系列MCU以其低功耗和豐富的外設(shè)模塊著稱,特別適用于電容觸摸應(yīng)用。

關(guān)鍵字: MSP430

單片機定時器通過晶振頻率來產(chǎn)生精準(zhǔn)的計數(shù)脈沖,從而實現(xiàn)微秒級別的時間控制。 單片機定時器依托于一個穩(wěn)定的計數(shù)器,該計數(shù)器與單片機上的晶振部件相連。晶振經(jīng)過12分頻后,為單片機提供穩(wěn)定且精準(zhǔn)的1MHZ脈沖。由于晶振的頻率極...

關(guān)鍵字: 單片機 定時器

編碼器?是一種傳感器,主要用于測量旋轉(zhuǎn)運動的角度、角速度和位移等參數(shù)。常見的編碼器類型包括增量式編碼器和絕對值編碼器,前者通過檢測脈沖的增加或減少來測量旋轉(zhuǎn)方向和距離,后者則直接輸出當(dāng)前的絕對位置信息?。

關(guān)鍵字: 編碼器? 定時器

一款語音控制的番茄時間定時器,內(nèi)置Seeed Studio XIAO ESP32S3感測和圓形顯示。用免提時間管理保持高效!

關(guān)鍵字: 定時器 ESP32S3 語音控制

【2025年3月20日, 德國慕尼黑訊】全球功率系統(tǒng)和物聯(lián)網(wǎng)領(lǐng)域的半導(dǎo)體領(lǐng)導(dǎo)者英飛凌科技股份公司(FSE代碼:IFX / OTCQX代碼: IFNNY)近日宣布,其旗下ModusToolboxTM開發(fā)平臺中的AIROC?...

關(guān)鍵字: MCU 物聯(lián)網(wǎng) 定時器

眾所周知,說到延時,很多人都會想到用軟件件來實現(xiàn),比如定時器之類的。今天就來說說用硬件來實現(xiàn)定時的方式,雖說沒有那么準(zhǔn),但是有些場合還是用得到的。

關(guān)鍵字: CD4060 定時器

如果定時器的重裝值和分頻設(shè)置不正確,會導(dǎo)致PWM輸出的頻率和占空比不準(zhǔn)確,從而產(chǎn)生誤差?1。

關(guān)鍵字: 定時器 分頻

在許多領(lǐng)域得到廣泛的應(yīng)用,特別是它的超級低功耗特性,是目前所有其他單片機無法比擬的

關(guān)鍵字: TI公司 MSP430

SysTick定時器的工作原理主要基于一個遞減計數(shù)器的機制。以下是對SysTick定時器工作原理的詳細(xì)解釋:

關(guān)鍵字: SysTick 定時器

單片機定時器是一種用于計時和定時操作的功能模塊。它通常用于生成延時、計數(shù)事件以及產(chǎn)生精確的時間間隔信號。

關(guān)鍵字: 定時器 時鐘源
關(guān)閉