国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

33、基于51單片機老人防跌倒蜂鳴器報警系統(tǒng)加速度檢測

這篇具有很好參考價值的文章主要介紹了33、基于51單片機老人防跌倒蜂鳴器報警系統(tǒng)加速度檢測。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

背景技術(shù)

老年人出門由于身體不靈活、視力較差,容易發(fā)生跌倒,現(xiàn)用的老年人跌倒報警裝置是通過無線對講系統(tǒng)研發(fā)的,它外觀精美,自動化程度高,有很強的專業(yè)性,但是,設(shè)計者忽略了一個問題,因為大多數(shù)老年人使用現(xiàn)代化產(chǎn)品不熟練,隨著視力、操作能力的下降,使用該設(shè)備有很大困難。另外,老年人跌倒以后,由于受到驚嚇,再進(jìn)行操作按鈕和實施對講,就更不現(xiàn)實。

引 言

在經(jīng)濟(jì)高速發(fā)展的今天,物質(zhì)給人們帶來了對美好生活的向往,所以大批的年輕人選擇離開家鄉(xiāng),前往大城市尋找發(fā)展的機會。但是毫無意外的是,他們年邁的父母孤單地留在了家里無人照看,一旦他們生病跌倒,獨居老人根本無法及時獲救,從而錯過最佳的治療時間,更有甚者,會因此喪命。

老人跌倒警報器的設(shè)計可以強有力地預(yù)防由于老人獨居時的傷害,也可以及時地報警,保證老人在第一時間得到有效的救治,很大程度上能夠避免由于子女不在身邊而造成的二次傷害。

方案選擇 單片機的選擇

方案一:AT89C52是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS型8位單片機,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲單元,功能強大。其片內(nèi)的8K程序存儲器是FLASH工藝的,這種單片機對開發(fā)設(shè)備的要求很低,開發(fā)時間也大大縮短。寫入單片機內(nèi)的程序還可以進(jìn)行加密,這又很好地保護(hù)我們的勞動成果。再者,AT89C52目前的售價比8031還低,市場供應(yīng)也很充足。AT89C52可構(gòu)成真正的單片機最小應(yīng)用系統(tǒng),縮小系統(tǒng)體積,增加系統(tǒng)的可靠性,降低系統(tǒng)的成本。只要程序長度小于8K,四個I/O口全部提供給用戶??捎?V電壓編程,而且擦寫時間僅需lOms。AT89C51芯片提供三級程序存儲器加密,提供了方便靈活而可靠的硬加密手段,能完全保證程序或系統(tǒng)不被仿制。PO口是三態(tài)雙向口,通稱數(shù)據(jù)總線口,因為只有該口能直接用于對外部存儲器的讀/寫操作。

方案二:STC89C52系列單片機的指令系統(tǒng)和AT89C52系列的完全兼容,但實際操作起來卻存在很多問題:

(1)AT89C52不帶ISP下載,要用下載器才行,STC89C52可以用你的USB轉(zhuǎn)串口下載,下載軟件可以到STC廠家網(wǎng)上去下。

(2)STC單片機執(zhí)行指令的速度很快,大約是AT的3-30倍,盡管快是好事,但這樣一來,你在AT上好使的程序在STC上不一定好用,最典型的例子就是那些對時序有嚴(yán)格要求的模塊,用STC時注意得加長延時,大約是AT的10—30倍就差不多,這一點自己調(diào)試就知道了。

(3)STC單片機對工作環(huán)境的要求比較低,電壓低于5伏時仍然正常工作,甚至3伏到4伏之間都還可以工作,然而這樣的環(huán)境下AT肯定不行了,所以當(dāng)一個系統(tǒng)用STC單片機好用,但用AT的單片機不工作時,直接查最小系統(tǒng),看單片機的供電是否正常。

比較這兩種方案,由于在學(xué)校期間學(xué)過數(shù)字電路、單片機原理、C語言程序設(shè)計,綜合考慮單片機的各部分資源和作為學(xué)生能夠獲得的資源,經(jīng)過對比此次設(shè)計要求,我選擇用STC系列芯片完成。而且學(xué)校也提供了相應(yīng)的硬件操作平臺,實際操作起來比較方便,故STC為更合理的選擇。本系統(tǒng)選擇STC89C52單片機作為主控芯片。足夠本設(shè)計運行,且價格便宜,下載程序方便。

一、硬件方案

硬件構(gòu)成:本系統(tǒng)由STC89C52單片機、ADXL345重力加速度傳感器、按鍵、蜂鳴器報警及電源組成。

二、設(shè)計功能

1. 單片機型號:STC89C52/51、AT89C52/51、AT89S52/51 都可通用

2、板子豎直放置的時候,蜂鳴器不報警,板子歪倒一定角度,一定時間沒有恢復(fù)豎直,則蜂鳴器鳴叫報警。

3、系統(tǒng)帶有誤報警按鍵,蜂鳴器報警的時候,如果老人認(rèn)為是誤報警,則按鍵按下,蜂鳴器停止報警。

4、按鍵停止報警后,如果還未站起,延時一段時間會報警,防止老人發(fā)生意外。

三、實物圖

?

?文章來源地址http://www.zghlxwxcb.cn/news/detail-405258.html

3.2主控模塊設(shè)計

單片微型計算機是隨著微型計算機的發(fā)展而產(chǎn)生和發(fā)展的。自從1975 年美國德克薩斯儀器公司的第一臺單片微型計算機( 簡稱單片機)TMS-1000 問世以來,迄今為止,單片機技術(shù)已成為計算機技術(shù)的一個獨特分支,單片機的應(yīng)用領(lǐng)域也越來越廣泛,特別是在工業(yè)控制中經(jīng)常遇到對某些物理量進(jìn)行定時采樣與控制的問題,在儀器儀表智能化中也扮演著極其重要的角色。

如果將8位單片機的推出作為起點,那么單片機的發(fā)展歷史大致可以分為以下幾個階段:

第一階段(1976—1978):單片機的探索階段。以Intel公司的MCS-48為代表。MCS-48的推出是在工控領(lǐng)域的探索,參與這一探索的公司還有Motorola、Zilog等。都取得了滿意的效果。這就是SCM的誕生年代,“單片機”一詞即由此而來。

第二階段(1978—1982):單片機的完善階段。Intel公司在MCS-48基礎(chǔ)上推出了完善的、典型的單片機系列MCS-51。它在以下幾個方面奠定了典型的通用總線型單片機體系結(jié)構(gòu)。

(1)完善的外部總線。MCS-51設(shè)置了經(jīng)典的8位單片機的總線結(jié)構(gòu),包括8位數(shù)據(jù)總線、16位地址總線、控制總線及具有多機通信功能的串行通信接口。

(2)CPU外圍功能單元的集中管理模式。

(3)體現(xiàn)工控特性的地址空間及位操作方式。

(4)指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控制功能的指令。

第三階段(1982—1990):8位單片機的鞏固發(fā)展及16位單片機的推出階段,也是單片機向微控制器發(fā)展的階段。Intel公司推出的MCS-96系列單片機,將一些用于測控系統(tǒng)的模數(shù)轉(zhuǎn)換器、程序運行監(jiān)視器、脈寬調(diào)制器等納入片中,體現(xiàn)了單片機的微控制器特征。

第四階段(1990—):微控制器的全面發(fā)展階段。隨著單片機在各個領(lǐng)域全面、深入地發(fā)展和應(yīng)用,出現(xiàn)了高速、大尋址范圍、強運算能力的8位/16位/32位通用型單片機,以及小型廉價的專用型單片機。

單片機是在集成電路芯片上集成了各種元件的微型計算機,這些元件包括中央處理器CPU、數(shù)據(jù)存儲器RAM、程序存儲器ROM、定時/計數(shù)器、中斷系統(tǒng)、時鐘部件的集成和I/O接口電路。由于單片機具有體積小、價格低、可靠性高、開發(fā)應(yīng)用方便等特點,因此在現(xiàn)代電子技術(shù)和工業(yè)領(lǐng)域應(yīng)用較為廣泛,在智能儀表中單片機是應(yīng)用最多、最活躍的領(lǐng)域之一。在控制領(lǐng)域中,現(xiàn)如今人們更注意計算機的底成本、小體積、運行的可靠性和控制的靈活性。在各類儀器、儀表中引入單片機,使儀器儀表智能化,提高測試的自動化程度和精度,提高計算機的運算速度,簡化儀器儀表的硬件結(jié)構(gòu),提高其性能價格比。

單片機引腳介紹

單片機主要特點:

(1)有優(yōu)異的性能價格比。

(2)集成度高、體積小、有很高的可靠性。單片機把各功能部件集成在一塊芯片上,內(nèi)部采用總線結(jié)構(gòu),減少了各芯片之間的連線,大大提高了單片機的可靠性和抗干擾能力。另外,其體積小,對于強磁場環(huán)境易于采取屏蔽措施,適合在惡劣環(huán)境下工作。

(3)控制功能強。為了滿足工業(yè)控制的要求,一般單片機的指令系統(tǒng)中均有極豐富的轉(zhuǎn)移指令、I/O口的邏輯操作以及位處理功能。單片機的邏輯控制功能及運行速度均高于同一檔次的微機。

(4)低功耗、低電壓,便于生產(chǎn)便攜式產(chǎn)品。

(5)外部總線增加了I2C(Inter-Integrated Circuit)及SPI(Serial Peripheral Interface)等串行總線方式,進(jìn)一步縮小了體積,簡化了結(jié)構(gòu)。

(6)單片機的系統(tǒng)擴展和系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。

優(yōu)異的性能價格比。

1)集成度高、體積小、有很高的可靠性。

單片機把各功能部件集成在一塊芯片上,內(nèi)部采用總線結(jié)構(gòu),減少了各芯片之間的連線,大大提高了單片機的可靠性與抗干擾能力。另外,其體積小,對于強磁場環(huán)境易于采取屏蔽措施,適合于在惡劣環(huán)境下工作。

此外,程序多采取固化形式也可以提高可靠性。

2)控制功能強。

為了滿足工業(yè)控制要求,一般單片機的指令系統(tǒng)中均有極豐富的轉(zhuǎn)移指令、I/O口的邏輯操作以及位處理功能。單片機的邏輯控制功能及運行速度均高于同一檔次的微機。

單片機的系統(tǒng)擴展、系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。

? ?VCC:STC89C52電源正端輸入,接+5V。

GND:電源地端。

XTAL1: ?單芯片系統(tǒng)時鐘的反相放大器輸入端。

XTAL2: 系統(tǒng)時鐘的反相放大器輸出端,一般在設(shè)計上只要在 XTAL1 和 XTAL2 上接上一只石英振蕩晶體系統(tǒng)就可以動作了,此外可以在兩引腳與地之間加入一 20PF 的小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機。

RESET:STC89C52的重置引腳,高電平動作,當(dāng)要對晶片重置時,只要對此引腳電平提升至高電平并保持兩個機器周期以上的時間,AT89S51便能完成系統(tǒng)重置的各項動作,使得內(nèi)部特殊功能寄存器之內(nèi)容均被設(shè)成已知狀態(tài),并且至地址0000H處開始讀入程序代碼而執(zhí)行程序。

EA/Vpp:"EA"為英文"External Access"的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當(dāng)此引腳接低電平后,系統(tǒng)會取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。因此在8031及8032中,EA引腳必須接低電平,因為其內(nèi)部無程序存儲器空間。如果是使用 8751 內(nèi)部程序空間時,此引腳要接成高電平。此外,在將程序代碼燒錄至8751內(nèi)部EPROM時,可以利用此引腳來輸入21V的燒錄高壓(Vpp)。

ALE/PROG:ALE是英文"Address Latch Enable"的縮寫,表示地址鎖存器啟用信號。STC89C52可以利用這支引腳來觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址總線(A0~A7)鎖進(jìn)鎖存器中,因為STC89C52是以多工的方式送出地址及數(shù)據(jù)。平時在程序執(zhí)行時ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來驅(qū)動其他周邊晶片的時基輸入。此外在燒錄8751程序代碼時,此引腳會被當(dāng)成程序規(guī)劃的特殊功能來使用。

PSEN:此為"Program Store Enable"的縮寫,其意為程序儲存啟用,當(dāng)8051被設(shè)成為讀取外部程序代碼工作模式時(EA=0),會送出此信號以便取得程序代碼,通常這支腳是接到EPROM的OE腳。STC89C52可以利用PSEN及RD引腳分別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲器與程序存儲器可以合并在一起而共用64K的定址范圍。

PORT0(P0.0~P0.7):端口0是一個8位寬的開路汲極(Open Drain)雙向輸出入端口,共有8個位,P0.0表示位0,P0.1表示位1,依此類推。其他三個I/O端口(P1、P2、P3)則不具有此電路組態(tài),而是內(nèi)部有一提升電路,P0在當(dāng)做I/O用時可以推動8個LS的TTL負(fù)載。

PORT2(P2.0~P2.7):端口2是具有內(nèi)部提升電路的雙向I/O端口,每一個引腳可以推動4個LS的TTL負(fù)載,若將端口2的輸出設(shè)為高電平時,此端口便能當(dāng)成輸入端口來使用。P2除了當(dāng)做一般I/O端口使用外,若是在STC89C52擴充外接程序存儲器或數(shù)據(jù)存儲器時,也提供地址總線的高字節(jié)A8~A15,這個時候P2便不能當(dāng)做I/O來使用了。

PORT1(P1.0~P1.7):端口1也是具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動4個LS TTL負(fù)載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0又當(dāng)做定時器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外部中斷輸入的觸發(fā)腳位。

PORT3(P3.0~P3.7):端口3也具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動4個TTL負(fù)載,同時還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計時計數(shù)控制及外部數(shù)據(jù)存儲器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋?/p>

其引腳分配如下:

P3.0:RXD,串行通信輸入。

P3.1:TXD,串行通信輸出。

P3.2:INT0,外部中斷0輸入。

P3.3:INT1,外部中斷1輸入。

P3.4:T0,計時計數(shù)器0輸入。

P3.5:T1,計時計數(shù)器1輸入。

P3.6:WR:外部數(shù)據(jù)存儲器的寫入信號。

P3.7:RD,外部數(shù)據(jù)存儲器的讀取信號。

RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。

ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。

PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。

EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。

單片機最小系統(tǒng)

單片機芯片內(nèi)還有一項主要內(nèi)容就是并行I/O口。STC89C51共有4個8位的并行I/O口,分別記作P0、P1、P2、P3。每個口都包含一個鎖存器、一個輸出驅(qū)動器和輸入緩沖器。實際上,它們已被歸入專用寄存器之列,并且具有字節(jié)尋址和位尋址功能。在訪問片外擴展存儲器時,低8位地址和數(shù)據(jù)由P0口分時傳送,高8位地址由P2口傳送。在無片外擴展存儲器的系統(tǒng)中,這4個口的每一位均可作為雙向的I/O端口使用。

單片機的4個I/O口都是8位雙向口,這些口在結(jié)構(gòu)和特性上是基本相同的,但又各具特點。

STC89C51單片機的時鐘信號通常有兩種方式產(chǎn)生:一是內(nèi)部時鐘方式,二是外部時鐘方式。在單片機內(nèi)部有一振蕩電路,只要在單片機的XTAL1和XTAL2引腳外接石英晶體(簡稱晶振),就構(gòu)成了自激振蕩器并在單片機內(nèi)部產(chǎn)生時鐘脈沖信號。圖中電容C1和C2的作用是穩(wěn)定頻率和快速起振,電容值在5-30pF,典型值為30pF。晶振CYS的振蕩頻率范圍在1.2-12MHz間選擇,典型值為12MHz和11.0592MHz。

當(dāng)在STC89C51單片機的RST引腳引入高電平并保持2個機器周期時,單片機內(nèi)部就執(zhí)行復(fù)位操作(若該引腳持續(xù)保持高電平,單片機就處于循環(huán)復(fù)位狀態(tài))。

復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式。最簡單的上電自動復(fù)位電路中上電自動復(fù)位是通過外部復(fù)位電路的電容充電來實現(xiàn)的。只要Vcc的上升時間不超過1ms,就可以實現(xiàn)自動上電復(fù)位。時鐘頻率用6MHZ時C取22uF,R取1KΩ。除了上電復(fù)位外,有時還需要按鍵手動復(fù)位。本設(shè)計就是用的按鍵手動復(fù)位。按鍵手動復(fù)位有電平方式和脈沖方式兩種。其中電平復(fù)位是通過RST端經(jīng)過電阻與電源Vcc接通而實現(xiàn)的。

四、原理圖 ??

在本設(shè)計做的過程中,硬件和軟件方面都遇到了許多問題,但是相比于軟件,在硬件方面還是比較快解決的方面,因為硬件是比較容易檢查出來錯誤的,軟件比較晦澀難懂,還是有一定難度。
在硬件調(diào)試問題上,首先焊接好了元器件實物板后,先用萬用表測量這個工業(yè)板子的電源方面,電源方面是最重要的問題,應(yīng)該是特別需要檢查的地方,以防止電源的短路和正負(fù)極的錯誤。然后在仔細(xì)檢查電路的連接是否有問題,或者有沒有虛焊或者沒有焊接到的地方,然后核對一下元器件的安裝是否有問題,安裝上去是否符合規(guī)定,由于已經(jīng)是大學(xué)四年都是做過了很多實訓(xùn)過來了,對于這些還是游刃有余的,但是在上機調(diào)試后還是發(fā)現(xiàn)了很多的問題。

33、基于51單片機老人防跌倒蜂鳴器報警系統(tǒng)加速度檢測

??

五、PCB圖 ?

在本設(shè)計做的過程中,硬件和軟件方面都遇到了許多問題,但是相比于軟件,在硬件方面還是比較快解決的方面,因為硬件是比較容易檢查出來錯誤的,軟件比較晦澀難懂,還是有一定難度。
在硬件調(diào)試問題上,首先焊接好了元器件實物板后,先用萬用表測量這個工業(yè)板子的電源方面,電源方面是最重要的問題,應(yīng)該是特別需要檢查的地方,以防止電源的短路和正負(fù)極的錯誤。然后在仔細(xì)檢查電路的連接是否有問題,或者有沒有虛焊或者沒有焊接到的地方,然后核對一下元器件的安裝是否有問題,安裝上去是否符合規(guī)定,由于已經(jīng)是大學(xué)四年都是做過了很多實訓(xùn)過來了,對于這些還是游刃有余的,但是在上機調(diào)試后還是發(fā)現(xiàn)了很多的問題。
33、基于51單片機老人防跌倒蜂鳴器報警系統(tǒng)加速度檢測

?

六、程序源碼

Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。Keil提供了包括C編譯器、宏匯編、鏈接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(μVision)將這些部分組合在一起。運行Keil軟件需要WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。如果你使用C語言編程,那么Keil幾乎就是你的不二之選,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。
?

#include <reg52.h> 
#include <intrins.h>
#include <stdio.h>
#include  <math.h>    //Keil library  
#include "delay.h"
#include "adxl345.h"


sbit buzzer=P1^4;	//引腳定義
sbit key=P2^2;  

unsigned long times_20ms=0;		//定時器計數(shù)
unsigned char reportFlag=0;		//確認(rèn)是否發(fā)送警報
unsigned char CheckNum=0;				//adxl345采集次數(shù)
unsigned char ErrorNum=0;				//adxl345采集次數(shù)中正常未跌倒次數(shù)
unsigned char read_adxl345=0;		//讀取adxl345數(shù)據(jù)標(biāo)志
unsigned char Delay_Sec=0;				//秒延時 定時器中斷中處理

void Init_Timer0(void);//定時器初始化

void main (void)
{
	Init_Timer0();        //定時器0初始化

	buzzer=0;	//打開蜂鳴器		
	DelayMs(100);          //延時有助于穩(wěn)定
	buzzer=1;		 	//關(guān)閉蜂鳴器

	Init_ADXL345();                 	//初+始化ADXL345
	if(Single_Read_ADXL345(0X00)!=0xe5)	//讀出的數(shù)據(jù)為0XE5,表示正確//**All notes can be deleted and modified**//
	{
		DelayMs(5);
//		SendStr("ready ok",8);//顯示第二行
	}
	else
	{
		DelayMs(3);
	}

	buzzer=1;	//閉合蜂鳴器
	
	while(1)         //主循環(huán)
	{
		if(read_adxl345==1)	 //進(jìn)行讀取
		{
			read_adxl345=0;	//讀取標(biāo)志清除
			ReadData_x();		//讀取數(shù)據(jù) 并進(jìn)行判斷 再該函數(shù)內(nèi)部
			CheckNum++;
			if((temp_X<550)||(abs(temp_Y)>750))       //方位值判斷 查看正常次數(shù)
			{
				ErrorNum++;		   //異常計數(shù)
			}
			if(CheckNum>=5)	  	//進(jìn)行5次處理
			{
				if(ErrorNum>=1)	   //角度出現(xiàn)錯誤 5次出息1次情況
				{
					if(reportFlag==0)	   //檢測是否第一次開始 是開始延時
					{
					 	Delay_Sec=0;	//延時清零
					}
					reportFlag=1;	 //警報									
				}
				else
				{					
					reportFlag=0;	  //不進(jìn)行警報
					Delay_Sec = 0;	
				}						
				ErrorNum=0;		  //清空濾波計數(shù)
				CheckNum=0;		  //清空檢測次數(shù)
			}
		}				

		if((reportFlag==1)&&(Delay_Sec>=3))//3S   上報
		{
			buzzer=0;	//打開蜂鳴器		
		}
		else
		{buzzer=1;}	 	//關(guān)閉蜂鳴器
		if(key == 0)
		{
			DelayMs(10);
			if(key == 0)			//有按鍵觸發(fā) 關(guān)閉蜂鳴器響聲
			{
				Delay_Sec=0;   	//清空延時計數(shù)
				reportFlag=0;
				buzzer=1;		//關(guān)閉蜂鳴器
			}
		}
	}
}

void Init_Timer0(void)
{
//**All notes can be deleted and modified**//
  TMOD |= 0x10;  //使用模式1,16位定時器,使用"|"符號可以在使用多個定時器時不受影響		     
	TH0=(65536-20000)/256;		  //重新賦值 20ms
	TL0=(65536-20000)%256;
	EA=1;            //總中斷打開
	ET0=1;           //定時器中斷打開
	TR0=1;           //定時器開關(guān)打開
}


void Timer0_isr(void) interrupt 1 
{
	TH0=(65536-20000)/256;		  //重新賦值 20ms
	TL0=(65536-20000)%256;
	times_20ms++;
	if(times_20ms%10==0)		  //200ms 
	{
		read_adxl345=1;		 //啟動轉(zhuǎn)換
		if(reportFlag==1)//如果處于觸發(fā)警報 延時自加

資料包括:

33、基于51單片機老人防跌倒蜂鳴器報警系統(tǒng)加速度檢測

需要完整的資料可以加入我的紛傳圈子,里面有資源壓縮包的百度網(wǎng)盤下載地址及提取碼。

紛傳點擊用微信打開即可,過程有點繁瑣請見諒。

?

到了這里,關(guān)于33、基于51單片機老人防跌倒蜂鳴器報警系統(tǒng)加速度檢測的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【【51單片機的蜂鳴器發(fā)聲】】

    我們在設(shè)置板子的時候要翻轉(zhuǎn) 翻轉(zhuǎn)IO口是因為使用了步進(jìn)電機的多余的芯片管腳 我們翻轉(zhuǎn)之后還想讓它保持一段時間 就是先翻轉(zhuǎn)500次 Delay(1)之后 就是最小的單位每隔1ms 周期就是2ms 頻率就是500HZ

    2024年02月16日
    瀏覽(23)
  • 【【51單片機的蜂鳴器-11】】

    【【51單片機的蜂鳴器-11】】

    DS1302我一直有問題擱置了幾百天了 先來看看蜂鳴器 搞了一個禮拜verilog然后出去吃飯 估計自己得有10多天沒看c語言和51單片機了 現(xiàn)在先處理一下蜂鳴器的問題 蜂鳴器 蜂鳴器分為有源蜂鳴器和無源蜂鳴器 有源內(nèi)部自帶震蕩源,將正負(fù)極接上直流電壓及可持續(xù)發(fā)聲,頻率固定

    2024年02月16日
    瀏覽(18)
  • 5-51單片機-蜂鳴器實驗

    5-51單片機-蜂鳴器實驗

    ? ? ? ? 1. 對系統(tǒng)默認(rèn)的數(shù)據(jù)類型進(jìn)行重定義,u8,u16; ? ? ? ? 2.延時函數(shù),主要是將傳過來的整數(shù)進(jìn)行減減實現(xiàn)延時; ? ? ? ? 3.還用到了while()循環(huán); ? ? ? ? 1. 首次定義一個變量,主要是為了延時蜂鳴器響亮的時長; ? ? ? ? 2.通過while()循環(huán),使得Buzzer_Port產(chǎn)生脈沖信號,從而使蜂

    2024年04月16日
    瀏覽(35)
  • 51單片機學(xué)習(xí)筆記-9蜂鳴器

    51單片機學(xué)習(xí)筆記-9蜂鳴器

    [toc] 注:筆記主要參考B站江科大自化協(xié)教學(xué)視頻“51單片機入門教程-2020版 程序全程純手打 從零開始入門”。 注:工程及代碼文件放在了本人的Github倉庫。 蜂鳴器 是一種將電信號轉(zhuǎn)換為聲音信號的器件,常用來產(chǎn)生設(shè)備的按鍵音、報警音等提示信號。蜂鳴器按驅(qū)動方式可分

    2024年02月06日
    瀏覽(22)
  • 【【51單片機蜂鳴器實現(xiàn)起風(fēng)了】】

    【【51單片機蜂鳴器實現(xiàn)起風(fēng)了】】

    前面的有兩個非常關(guān)鍵的點希望兄弟們明白 我一開始也失算了 這里兄弟們注意務(wù)必改成int 不然會超出 就會出現(xiàn)播放一半從頭開始的情況 下面是兩份起風(fēng)了代碼直接附上main.c 因為另外的其實和我之前說的模板都一樣復(fù)制粘貼就行 為什么是2份因為什么ABCD大調(diào)我不懂啊 我看樂

    2024年02月16日
    瀏覽(110)
  • 【【51單片機的蜂鳴器實現(xiàn)小星星】】

    【【51單片機的蜂鳴器實現(xiàn)小星星】】

    我們在設(shè)置板子的時候要翻轉(zhuǎn) 翻轉(zhuǎn)IO口是因為使用了步進(jìn)電機的多余的芯片管腳 我們翻轉(zhuǎn)之后還想讓它保持一段時間 就是先翻轉(zhuǎn)500次 Delay(1)之后 就是最小的單位每隔1ms 周期就是2ms 頻率就是500HZ 蜂鳴器播放音樂 我們首先在前面到現(xiàn)在必須明白一個道理 就是我們的蜂鳴器發(fā)

    2024年02月16日
    瀏覽(20)
  • MCU-51:單片機蜂鳴器播放音樂和提示音

    MCU-51:單片機蜂鳴器播放音樂和提示音

    蜂鳴器是一種將電信號轉(zhuǎn)換為聲音信號的器件,常用來產(chǎn)生設(shè)備的按鍵音、報警音等提示信號 蜂鳴器按驅(qū)動方式可分為有源蜂鳴器和無源蜂鳴器 有源蜂鳴器:內(nèi)部自帶振蕩源,將正負(fù)極接上直流電壓即可持續(xù)發(fā)聲,頻率固定 無源蜂鳴器:內(nèi)部不帶振蕩源,需要控制器提供振

    2024年02月02日
    瀏覽(23)
  • 【51單片機】:閃燈、流水燈(從左往右)、流水燈(從右往左)、蜂鳴器。

    【51單片機】:閃燈、流水燈(從左往右)、流水燈(從右往左)、蜂鳴器。

    ? ? ? ? 言歸正傳,一切都回歸本源,從51再來一次,首先就是最簡單的點燈大師。 ? ? ? ? 這么些年從51 到? 32? 再到? arduino? 再到? ESP? 等等,都是從點燈大師開始的。 于是介紹如下: 閃燈 流水燈(從左往右) 流水燈(從右往左) 蜂鳴器 ????????LED燈的原理:LED是發(fā)

    2024年02月11日
    瀏覽(26)
  • 單片機畢設(shè)分享 基于STM32單片機的老人防摔倒報警系統(tǒng) - 物聯(lián)網(wǎng) 嵌入式

    單片機畢設(shè)分享 基于STM32單片機的老人防摔倒報警系統(tǒng) - 物聯(lián)網(wǎng) 嵌入式

    ?? 這兩年開始畢業(yè)設(shè)計和畢業(yè)答辯的要求和難度不斷提升,傳統(tǒng)的畢設(shè)題目缺少創(chuàng)新和亮點,往往達(dá)不到畢業(yè)答辯的要求,這兩年不斷有學(xué)弟學(xué)妹告訴學(xué)長自己做的項目系統(tǒng)達(dá)不到老師的要求。 為了大家能夠順利以及最少的精力通過畢設(shè),學(xué)長分享優(yōu)質(zhì)畢業(yè)設(shè)計項目,今天

    2024年02月02日
    瀏覽(102)
  • 基于單片機的盲人導(dǎo)航智能拐杖老人防丟防摔倒發(fā)短息定位

    基于單片機的盲人導(dǎo)航智能拐杖老人防丟防摔倒發(fā)短息定位

    ???功能介紹 以STM32單片機作為主控系統(tǒng);? OLED液晶當(dāng)前實時距離,安全距離,當(dāng)前經(jīng)緯度信息; 超聲波檢測小于設(shè)置的安全距離,蜂鳴器報警提示:低于安全距離! 超聲波檢測當(dāng)前障礙物距離,GPS進(jìn)行定位; 光敏傳感器檢測當(dāng)前環(huán)境強弱,光線暗開啟LED照明指示燈; A

    2024年02月12日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包