C語言程序設計 課件 于紅 模塊五 控制類實戰(zhàn)項目_第1頁
C語言程序設計 課件 于紅 模塊五 控制類實戰(zhàn)項目_第2頁
C語言程序設計 課件 于紅 模塊五 控制類實戰(zhàn)項目_第3頁
C語言程序設計 課件 于紅 模塊五 控制類實戰(zhàn)項目_第4頁
C語言程序設計 課件 于紅 模塊五 控制類實戰(zhàn)項目_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

C語言程序設計基礎與實踐控制類實戰(zhàn)項目GJYY2022501慶典活動1.0C語言程序設計基礎與實踐課程組04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022501慶典活動1.0一問題引入1921年7月經(jīng)過各地黨組織推選產(chǎn)生第一次全國代表大會代表,代表們進行了8天的討論,對各項議題進行了充分的商討并形成了一致意見。7月30日晚,法租界的一個巡捕闖進了會場,會議不得不臨時中斷,大部分代表迅速轉(zhuǎn)移,十幾分鐘后,法租界巡捕包圍和搜查會場,結果一無所獲。8月初,在浙江嘉興南湖的一艘游船上,召開了最后一天的會議。黨的一大通過了中國共產(chǎn)黨綱領關于當前實際工作的決議等重要文件。于是將1921年7月1日作為中國共產(chǎn)黨成立之日。2021年7月1日是中國共產(chǎn)黨成立100周年,在這個節(jié)日上黨和國家召開了多次慶典活動,隆重紀念這個日子。我們編寫代碼,典禮燈光,發(fā)出聲音,慶祝中國共產(chǎn)黨成立100周年。一問題引入04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022501慶典活動1.0二技能點分析1.了解項目的需求分析2.能夠繪制系統(tǒng)電路圖3.能夠繪制整體流程圖4.使用基礎編程語句完成項目開發(fā)5.掌握項目的調(diào)試方法6.能夠?qū)椖窟M行創(chuàng)新并實踐學習目標(1)完成STC89C51單片機最小系統(tǒng)的電路設計,如圖GJYY2022501.1;(2)完成指示燈電路的設計、無源蜂鳴器電路的設計、8位流水燈電路的設計;(3)完成延時電路流程圖繪制及程序設計;(4)指示燈快閃100次,代表100年,然后蜂鳴器響,同時流水燈按照正向閃爍運行3次,反向閃爍運行1次。(5)繪制程序設計流程圖,如圖GJYY2022501.2所示。學期預習04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022501慶典活動1.0三技能點詳解——設計圖繪制該項目采用STC89C51單片機作為控制系統(tǒng)的控制核心,這款單片機采用8051核的ISP(InSystemProgramming)在系統(tǒng)可編程芯片,最高工作時鐘頻率為80MHz,片內(nèi)含4KBytes的可反復擦寫1000次的Flash只讀程序存儲器GJYY2022501.1控制類項目硬件元件清單名稱標號引腳指示燈LAMPP3.6無源蜂鳴器BUZP3.5有源蜂鳴器LSP3.4按鍵KEY1,KEY2,KEY3,KEY4P3.0,P3.1,P3.2,P3.3LED燈D0-D7P0口共陽極數(shù)碼管SEG_AP1口共陰極數(shù)碼管SEG_KP2口三技能點詳解——設計圖繪制2)程序流程圖三技能點詳解——設計圖繪制1)指示燈電路設計LED燈正極接在電源正極,負極經(jīng)過限流電阻R14,接到P3.6引腳上,如圖GJYY2022501.3(b)所示。當P3.6引腳為高電平的時候,電流不通,LED燈不亮。當P3.6引腳為低電平的時候,電流導通,LED燈發(fā)光。通過改變P3.6引腳的電平,實現(xiàn)燈光的閃爍。三技能點詳解——關鍵節(jié)點設計2)蜂鳴器電路設計LT-9650屬于貼片SMD有源蜂鳴器,尺寸為9.6*9.6*5mm,驅(qū)動電壓有3V、5V、12V三種。有缺口部位對應的引腳為負極,另一引腳為正極。在本電路中選擇驅(qū)動電壓3V,將正極接到電源正極上,負極通過限流電阻R15接到P3.5引腳上。三技能點詳解——關鍵節(jié)點設計3)LED燈電路設計

通過編程改變P0口引腳電平的高低,能夠?qū)崿F(xiàn)不同的燈光效果。如果將P0口按照從P0.7-P0.0依次電平,或者從P0.0到P0.7依次低電平,LED燈珠依次點亮,能夠形成燈光流水的效果,俗稱流水燈。三技能點詳解——關鍵節(jié)點設計4)延時子程序單片機實現(xiàn)延時的方法有兩種,一種是軟件延時,即通過延時函數(shù)讓CPU不斷重復執(zhí)行相關語句,達到時間延時的效果。另外一種是中斷延時,即通過單片機內(nèi)部的定時器計時,實現(xiàn)延時的效果。三技能點詳解——關鍵節(jié)點設計完整參考程序/***********************************************************Copyright(C),2021-2023,C語言項目開發(fā)組*文件名:main.c*內(nèi)容簡述:2021年7月1日中國共產(chǎn)黨成立100年慶典活動*文件歷史:*版本

日期

作者

說明*1.02022-06-01課題組

燈光計數(shù),花樣燈光,蜂鳴器************************************************************/#include

<reg51.h>

//51單片機頭文件#include

<intrins.h>

//內(nèi)置函數(shù)頭文件

#defineucharunsigned

char

//數(shù)據(jù)類型宏定義#defineuintunsigned

int三技能點詳解——關鍵節(jié)點設計04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022501慶典活動1.0四技能點拓展——故障排查1)指示燈不閃爍

故障排查:首先,查看硬件電路連接是否正確,然后,對照硬件查看軟件接口配置是否正確。如果這兩個沒有問題,查看延時時間是否正常,延時時間過短,燈光變化不明顯。

2)蜂鳴器不響

故障排查:首先,查看硬件電路連接是否正確,然后,對照硬件查看軟件接口配置是否正確。有源蜂鳴器發(fā)出的固定頻率聲音。如果電源導通時間過短,將無法發(fā)出聲音。3)流水燈無效果

故障排查:首先,查看硬件電路連接是否正確,然后,對照硬件查看軟件接口配置是否正確。關注流水燈每個燈光點亮時間,時間過短,將無法看到相應效果。同時,使用函數(shù)實現(xiàn)效果的時候,注意對相應端口賦有效初值。四技能點拓展——故障排查04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022501慶典活動1.0五技能點檢測完成課堂任務,在線提交;1.編寫新式的燈光從兩端向中間亮和滅的效果,聲音根據(jù)燈光有節(jié)奏的鳴響效果。2.能否將燈光逐次點亮模式也采用庫文件內(nèi)的函數(shù)實現(xiàn)?C語言程序設計基礎與實踐控制類實戰(zhàn)項目GJYY2022502慶典活動2.0C語言程序設計基礎與實踐課程組04技能點拓展03技能點詳解02技能點分析目錄CONTENTSGJYY2022502慶典活動2.001問題引入05技能點檢測一問題引入1927年8月1日中國共產(chǎn)黨聯(lián)合國民黨左派,在江西省南昌市舉行武裝起義。起義由周恩來、賀龍、李立三、葉挺、朱德、劉伯承、譚平山領導,打響了武裝反抗國民黨反動派的第一槍,揭開了中國共產(chǎn)黨獨立領導武裝斗爭和創(chuàng)建革命軍隊的序幕。1933年7月11日,中華蘇維埃共和國臨時中央政府根據(jù)中央革命軍事委員會6月30日的建議,決定8月1日為中國工農(nóng)紅軍成立紀念日。從此,8月1日成為中國工農(nóng)紅軍和后來的中國人民解放軍的建軍節(jié)。2022年8月1日是中國人民解放軍建軍節(jié)95周年,在這個節(jié)日我們編寫代碼,通過按鍵計年,典禮燈光,發(fā)出聲音,慶祝中國人民解放軍建軍95周年。一問題引入04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022502慶典活動2.0二技能點分析1.了解項目的需求分析2.能夠繪制系統(tǒng)電路圖3.能夠繪制整體流程圖4.能夠封裝函數(shù)并使用5.能夠掌握數(shù)碼管的顯示方法6.使用基礎編程語句完成項目開發(fā)7.掌握項目的調(diào)試方法8.能夠?qū)椖窟M行創(chuàng)新并實踐學習目標(1)完成STC89C51單片機最小系統(tǒng)的電路設計,如圖GJYY2022502.1所示;(2)完成指示燈電路的設計、無源蜂鳴器電路的設計、8位流水燈電路的設計;(3)完成延時電路流程圖繪制及程序設計;(4)數(shù)碼管記錄按鍵次數(shù),按鍵1代表10年,顯示在左數(shù)碼管,按鍵2代表1年,顯示在右數(shù)碼管。顯示95周年后,按下按鍵3,蜂鳴器響,燈光多種變化效果,依次循環(huán)。(5)繪制程序設計流程圖,如圖GJYY2022502.2所示。學期預習04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022502慶典活動2.0三技能點詳解——電路設計圖名稱標號引腳指示燈LAMPP3.6無源蜂鳴器BUZP3.5有源蜂鳴器LSP3.4按鍵KEY1,KEY2,KEY3,KEY4P3.0,P3.1,P3.2,P3.3LED燈D0-D7P0口共陽極數(shù)碼管SEG_AP1口共陰極數(shù)碼管SEG_KP2口三技能點詳解——電路設計圖2)程序流程圖三技能點詳解——電路設計圖1)按鍵電路設計輕觸開關是隨著電子技術發(fā)展的要求而開發(fā)的第四代開關產(chǎn)品,最早的體積為12mmx12mm,8mmx8mm兩種,現(xiàn)在為6mmx6mm等多種尺寸。產(chǎn)品結構有立式、臥式和臥式帶地端三種,更出現(xiàn)表面組裝的小型輕觸開關和片式輕觸開關。三技能點詳解——關鍵節(jié)點設計if(KEY1==0)//按鍵1的1次判斷{

DelayMS(10);//消去軟件抖動

if(KEY1==0)//按鍵1的2次判斷 { ……//按鍵處理函數(shù)

while(!KEY1); //按鍵松手檢測

}}

按鍵在按下的過程中,會經(jīng)歷三個階段,分別時按下抖動、穩(wěn)定閉合、釋放抖動,其中按下階段的抖動影響按鍵的正常操作判斷,需要消除,三技能點詳解——關鍵節(jié)點設計2)數(shù)碼管電路設計LED數(shù)碼管是由多個發(fā)光二極管封裝在一起組成“8”字型的器件,引線已在內(nèi)部連接完成,只需引出它們的各個筆劃和公共電極。常用的有七段式和八段式數(shù)碼管,八段式比七段式多了一個小數(shù)點,其他的基本相同。三技能點詳解——關鍵節(jié)點設計3)程序的模塊化封裝三技能點詳解——關鍵節(jié)點設計4.完整參考程序/***********************************************************Copyright(C),2021-2023,C語言項目開發(fā)組*文件名:main.c*內(nèi)容簡述:2022年8月1日中國人民解放軍建軍95周年慶典活動*文件歷史:*版本

日期

作者

說明*1.02022-06-01課題組

燈光計數(shù),花樣燈光,蜂鳴器*2.02022-07-01課題組

按鍵控制,時間顯示,慶典效果************************************************************/#include

<reg51.h>

//51單片機頭文件#include

<intrins.h>

//內(nèi)置函數(shù)頭文件

#define

uchar

unsigned

char

//數(shù)據(jù)類型宏定義#define

uint

unsigned

int

#defineFLOW_LAMPP0//宏定義P0口#defineSEG_AP1//宏定義P1口#defineSEG_KP2//宏定義P2口

三技能點詳解——關鍵節(jié)點設計04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022502慶典活動2.0四技能點拓展——故障排查1)按鍵按下無反應

故障排查:首先,查看硬件電路連接是否正確,然后,對照硬件查看軟件接口配置是否正確。如果這兩個沒有問題,查看軟件內(nèi)引腳電平設置是否正確。2)封裝函數(shù)無法使用

故障排查:確保封裝函數(shù)沒有問題,函數(shù)內(nèi)部變量無沖突,然后檢查函數(shù)是否聲明。3)流水燈無效果

故障排查:首先,查看硬件電路連接是否正確,然后,對照硬件查看軟件接口配置是否正確。關注流水燈每個燈光點亮時間,時間過短,將無法看到相應效果。同時,使用函數(shù)實現(xiàn)效果的時候,注意對相應端口賦有效初值。04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022502慶典活動2.0五技能點檢測完成課堂任務,在線提交;1.編寫數(shù)碼管的2位組合程序。實現(xiàn)KEY1按下,實現(xiàn)兩位數(shù)的加1,KEY2按下,實現(xiàn)兩位數(shù)的減法。2.編寫燈光效果函數(shù),實現(xiàn)三種燈光模式的選擇使用?C語言程序設計基礎與實踐C語言程序設計基礎與實踐課程組控制類實戰(zhàn)項目GJYY2022503慶典活動3.004技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測一問題引入1949年10月1日下午2時,中國人民政治協(xié)商會議第一屆全體會議選舉產(chǎn)生的中央人民政府委員會在勤政殿舉行第一次會議。中央人民政府主席毛澤東,副主席朱德、劉少奇、宋慶齡、李濟深、張瀾、高崗,以及周恩來等56名中央人民政府委員會委員宣布就職。會議一致決議,宣布中華人民共和國中央人民政府成立,接受《中國人民政治協(xié)商會議共同綱領》為施政方針,向各國政府宣布中華人民共和國中央人民政府為中國唯一合法政府,愿與遵守平等、互利及互相尊重領土主權原則的任何外國政府建立外交關系。會議結束后,中央人民政府主席、副主席及各位委員集體出發(fā),乘車出中南海東門,前往天安門城樓出席開國大典。下午3時,北京30萬群眾齊集天安門廣場,舉行隆重的開國大典。毛澤東主席在天安門城樓上向全世界莊嚴宣告:"中華人民共和國中央人民政府今天成立了!"2024年10月1日將是中華人民共和國建國75周年,在這個節(jié)日我們編寫代碼,通過按鍵計年,典禮燈光,發(fā)出聲音,演唱生日快樂歌,慶祝中華人民共和國成立75周年。一問題引入04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022503慶典活動3.0二技能點分析1.了解項目的需求分析2.能夠繪制系統(tǒng)電路圖3.能夠繪制整體流程圖4.能夠封裝函數(shù)并使用5.能夠掌握數(shù)碼管的顯示方法6.使用基礎編程語句完成項目開發(fā)7.掌握項目的調(diào)試方法8.能夠?qū)椖窟M行創(chuàng)新并實踐學習目標(1)完成STC89C51單片機最小系統(tǒng)的電路設計,如圖GJYY2022503.1所示;(2)完成指示燈電路的設計、無源蜂鳴器電路的設計、8位流水燈電路的設計;(3)完成延時電路流程圖繪制及程序設計;(4)數(shù)碼管記錄按鍵次數(shù),k1代表10年,顯示在左數(shù)碼管,k2代表1年,顯示在右數(shù)碼管。顯示75后,揚聲器唱生日快樂歌,燈光多種變化效果,依次循環(huán)。(5)繪制程序設計流程圖,如圖GJYY2022503.2所示。學期預習04技能點拓展03技能點詳解02技能點分析目錄CONTENTS01問題引入05技能點檢測GJYY2022503慶典活動3.0三技能點詳解——設計圖繪制名稱標號引腳指示燈LAMPP3.6無源蜂鳴器BUZP3.5有源蜂鳴器LSP3.4按鍵KEY1,KEY2,KEY3,KEY4P3.0,P3.1,P3.2,P3.3LED燈D0-D7P0口共陽極數(shù)碼管SEG_AP1口共陰極數(shù)碼管SEG_KP2口三技能點詳解——設計圖繪制三技能點詳解——設計圖繪制1)無源蜂鳴器

無源蜂鳴器利用電磁感應現(xiàn)象,為音圈接入交變電流后形成的電磁鐵與永磁鐵相吸或相斥而推動振膜發(fā)聲,接入直流電只能持續(xù)推動振膜而無法產(chǎn)生聲音,只能在接通或斷開時產(chǎn)生聲音,因此,無源蜂鳴器又稱為揚聲器三技能點詳解——關鍵節(jié)點設計1=C,1=G表示樂譜的曲調(diào)其中1、2為一拍,3、4、5為一拍,6為一拍,共三拍。1、2的時長為四分音符的一半,即為八分音符長,3、4的時長為八分音符的一半,即為十六分音符長,5的時長為四分音符的一半,即為八分音符長,6的時長為四分音符長。那么一拍到底該唱多長呢?一般說來,如果樂曲沒有特殊說明,一拍的時長大約為400~500ms。我們以一拍的時長為400ms為例,則當以四分音符為節(jié)拍時,四分音符的時長就為400ms,八分音符的時長就為200ms,十六分音符的時長就為100ms。三技能點詳解——關鍵節(jié)點設計

本項目的案件采用整體掃描,根據(jù)掃描值判斷相應按鍵被按下,進而執(zhí)行相應案件的功能函數(shù)。設定按鍵緩存值變量,保持按鍵的值,用以判斷執(zhí)行相應的功能。三技能點詳解——關鍵節(jié)點設計

采用switch選擇結構實現(xiàn)功能的散轉(zhuǎn),如果是0X01,代表按鍵KEY1被按下,執(zhí)行按鍵1的功能函數(shù),實現(xiàn)十位數(shù)字的顯示;如果是0X02,代表按鍵KEY2被按下,執(zhí)行按鍵2的功能函數(shù),實現(xiàn)個位數(shù)字的顯示;如果是0X04,代表按鍵KEY3被按下,執(zhí)行按鍵3的功能函數(shù),實現(xiàn)典禮顯示效果;如果是0X08,代表按鍵KEY4被按下,執(zhí)行按鍵4的功能函數(shù),實現(xiàn)生日快樂歌曲的播放三技能點詳解——關鍵節(jié)點設計4)播放音樂函數(shù)/*生日快樂歌的音符頻率表,不同頻率由不同的延時來決定*/ucharcodeSONG_TONE[]={212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126,159,169,190,119,119,126,159,142,159,0};/*生日快樂歌節(jié)拍表,節(jié)拍決定每個音符的演奏長短*/ucharcodeSONG_LONG[]={9,3,12,12,12,24,9,3,12,12,12,24,9,3,12,12,12,12,12,9,3,12,12,12,24,0};SONG_TONE[]是音符的頻率,對應著音樂中的1(哆),2(來),3(咪),4(發(fā)),5(唆),6(啦),7(西)。SONG_LONG[]對應的是每個音符的節(jié)拍,也就是發(fā)聲的時間。三技能點詳解——關鍵節(jié)點設計

祝你生日快樂祝你生日快樂音符212212190212159169212212190212142159節(jié)拍93121212249312121224

祝你生日快樂祝你生日快樂音符212212106126159169190119119126159142節(jié)拍93121212121293121212三技能點詳解——關鍵節(jié)點設計4.完整參考程序/***********************************************************Copyright(C),2021-2023,C語言項目開發(fā)組*文件名:main.c*內(nèi)容簡述:2024年10月1日中華人民共和國建國75周年慶典活動*文件歷史:*版本

日期

作者

說明*1.02022-06-01課題組

燈光計數(shù),花樣燈光,蜂鳴器*2.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論