• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      智能家居專業(yè)一體化課程研究

      2019-11-16 12:26:24武志鵬焦紅衛(wèi)
      物聯(lián)網(wǎng)技術(shù) 2019年10期
      關(guān)鍵詞:智能家居教學(xué)研究單片機(jī)

      武志鵬 焦紅衛(wèi)

      摘 要:以STC單片機(jī)控制LED顯示屏為例,闡述在智能家居及其相關(guān)專業(yè)開展單片機(jī)教學(xué)的特點(diǎn)與困境,分析LED顯示屏的結(jié)構(gòu)特點(diǎn)與控制方法,研究單片機(jī)C語言編寫驅(qū)動程序的關(guān)鍵技術(shù),探討該課程一體化教學(xué)內(nèi)容。最后在Proteus平臺上進(jìn)行軟硬件交互仿真與調(diào)試,使一體化課程中的單片機(jī)模塊教學(xué)更加形象具體。

      關(guān)鍵詞:教學(xué)研究;單片機(jī);C語言;LED顯示屏;智能家居;Proteus平臺

      中圖分類號:TP393;G642.423文獻(xiàn)標(biāo)識碼:A文章編號:2095-1302(2019)10-0-04

      0 引 言

      隨著嵌入式系統(tǒng)與各類硬件設(shè)備的不斷融合,尤其是物聯(lián)網(wǎng)智能家居技術(shù)的逐步發(fā)展,以單片機(jī)為核心的計算機(jī)控制技術(shù)成為物聯(lián)網(wǎng)智能家居相關(guān)專業(yè)學(xué)生的必修課。智能家居專業(yè)本質(zhì)上屬于系統(tǒng)集成應(yīng)用,是多專業(yè)的有機(jī)融合。學(xué)生往往需要在有限的學(xué)年里完成趨于無限的課程,因而傳統(tǒng)的教學(xué)方法與教學(xué)節(jié)奏難以滿足需要。另外,單片機(jī)教學(xué)往往以單片機(jī)內(nèi)部結(jié)構(gòu)、單片機(jī)原理和匯編指令為核心,這種教學(xué)模式難以有效培養(yǎng)學(xué)生的應(yīng)用技能,也難以激發(fā)學(xué)生的積極性,往往導(dǎo)致學(xué)生認(rèn)為學(xué)習(xí)內(nèi)容枯燥乏味,最終造成學(xué)生的應(yīng)用能力不足。因此,單片機(jī)教學(xué)應(yīng)該采用理論與實踐有機(jī)結(jié)合的一體化教學(xué)方式,進(jìn)而增強(qiáng)學(xué)生的感性認(rèn)識和工程體驗[1-4]。

      1 LED屏結(jié)構(gòu)特點(diǎn)及工作原理

      基于發(fā)光二極管的數(shù)碼管與點(diǎn)陣模塊是一類重要的顯示器件,其可靠性高,使用壽命長,環(huán)境適應(yīng)能力強(qiáng),操作使用方便靈活,且顯示屏面積可根據(jù)實際需求進(jìn)行擴(kuò)展,對控制系統(tǒng)性能要求低,因而在物聯(lián)網(wǎng)智能家居產(chǎn)品中得到了廣泛應(yīng)用。根據(jù)LED的布局結(jié)構(gòu)不同,常見的LED顯示器可以分為數(shù)碼管類與點(diǎn)陣類。智能家居LED顯示器如圖1所示。數(shù)碼管顯示字符的種類簡單有限,主要用來顯示溫度、濕度、時間及少量字母組成的單詞,如圖1(a)所示。而點(diǎn)陣類可顯示更加豐富的內(nèi)容,如圖1(b)所示。

      教學(xué)中常采用8位8段數(shù)碼管和8×8點(diǎn)陣屏,這兩種顯示屏成本低、顯示內(nèi)容靈活性強(qiáng)。數(shù)碼管一般不具備內(nèi)置字符取模器,通過查閱碼表可實現(xiàn)對數(shù)碼管顯示內(nèi)容的控制,而點(diǎn)陣屏則通常需要使用取模軟件。LED顯示屏如圖2所示。

      圖2中兩種顯示器均以發(fā)光二極管為元件。外觀上,數(shù)碼管和點(diǎn)陣是兩種不同的顯示器,但是兩者都通過對LED采取不同的布置方式組合而成,硬件連線與控制方法均相同,其原理如圖3所示。兩種顯示屏各有64個LED,8個數(shù)碼管共陽端即其位選線對應(yīng)點(diǎn)陣的8根列線;8個數(shù)碼管的段選并聯(lián)組成8根段選線,對應(yīng)點(diǎn)陣的8根行線。兩者均可用多路復(fù)用技術(shù)即動態(tài)掃描法控制[5-6]。

      開展教學(xué)時,可利用Proteus仿真軟件搭建原理圖,也可組織學(xué)生實際操作,采用分立元件搭建數(shù)碼管與點(diǎn)陣,使學(xué)生加深對元件結(jié)構(gòu)的認(rèn)知。搭建完成后,首先帶領(lǐng)學(xué)生使用單片機(jī)對顯示屏進(jìn)行簡單規(guī)則的點(diǎn)亮與熄滅,待學(xué)生掌握控制規(guī)律后,再開展后續(xù)程序設(shè)計課程。

      2 數(shù)碼管滾動

      數(shù)碼管結(jié)構(gòu)單一,顯示內(nèi)容有限,編碼方法易于掌握,應(yīng)首先開展數(shù)碼管的滾動控制教學(xué)。

      2.1 程序原理分析及設(shè)計

      要求顯示內(nèi)容“HELLO”,自右至左滾動顯示,周而復(fù)始。采用8位8段共陽型數(shù)碼管顯示5位字符,根據(jù)數(shù)碼管動態(tài)掃描原理,需用3個空屏“0xFF”補(bǔ)足顯示內(nèi)容(0xFF,0xFF,0x89,0x86,0xC7,0xC7,0xC0,0xFF),若顯示內(nèi)容的字符數(shù)量大于8且不為8的整倍數(shù),則應(yīng)用空屏“0xFF”補(bǔ)足至8的整倍數(shù)。

      經(jīng)分析,本例滾動動畫過程可分解為17幀,動畫幀次分解見表1所列。將表中7幀數(shù)據(jù)循環(huán)發(fā)送至數(shù)碼管即可顯示滾動動態(tài)效果。由表易知,兩個for循環(huán)即可滿足數(shù)據(jù)的循環(huán)發(fā)送,但考慮到數(shù)據(jù)幀之間需保留一段時間使人眼能夠識別,因此可通過增加一個for循環(huán)控制滾動速度[7],程序流程如圖4所示。

      2.2 編寫程序及仿真

      由上述原理,在Keil軟件平臺上編寫C語言程序,仿真結(jié)果如圖5所示,主要程序截取如下:

      #define duanxuan P2//數(shù)碼管段選

      #define weixuan P3//數(shù)碼管位選

      uchar duan [] = {//字碼數(shù)組

      0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,//空屏

      0xFF,0xFF,0x89,0x86,0xC7,0xC7,0xC0,0xFF,

      //3個空屏補(bǔ)足8位顯示內(nèi)容

      0xFF, 0xFF,0xFF,0xFF, 0xFF, 0xFF, 0xFF, 0xFF};//空屏

      uchar wei [] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00};//共陽數(shù)碼管位選

      void main()

      {while(1)

      {uchar i,j,k;

      for(i=0;i<17;i++)//循環(huán)發(fā)送17幀

      {for(j=0;j<100;j++)//滾動速度

      {for(k=0;k<8;k++)//8位數(shù)碼管動態(tài)掃描

      {duanxuan=duan[k+i];

      //根據(jù)幀數(shù)選取8個段碼發(fā)送至段選端口

      weixuan=wei[k];

      delay(50);//延時函數(shù)

      weixuan=wei[8];//數(shù)碼管消隱

      } } } ? } ? ?}

      在講授此部分內(nèi)容時,若采用逐個指令逐個語法講解的教學(xué)方法,則極易造成學(xué)生難以跟上教學(xué)節(jié)奏,進(jìn)而失去學(xué)習(xí)興趣。一個較好的方法是,先讓學(xué)生抄下所有程序代碼,然后讓學(xué)生親自動手完成輸入、編譯、下載,目的是使學(xué)生對操作過程產(chǎn)生宏觀認(rèn)知。待學(xué)生能夠完整正確地實現(xiàn)控制目標(biāo)后,再逐個講解知識點(diǎn)。如教給學(xué)生更換顯示內(nèi)容以及調(diào)整滾動速度的方法。值得注意的是,教師應(yīng)注重傳授給學(xué)生解決問題的“方法”,而非僅僅講授解決問題的“知識”。

      3 8×8點(diǎn)陣

      3.1 滾動

      在講授點(diǎn)陣模塊時,教師應(yīng)注意強(qiáng)調(diào)點(diǎn)陣和數(shù)碼管具有相似的動態(tài)掃描原理,因此可預(yù)設(shè)點(diǎn)陣列選對應(yīng)數(shù)碼管位選,點(diǎn)陣行選對應(yīng)數(shù)碼管段選。這種概念上的同義替換,有利于學(xué)生將先前所學(xué)知識應(yīng)用于后續(xù)教學(xué)中。

      此時應(yīng)采用字模提取V2.2軟件提取點(diǎn)陣顯示字符的16進(jìn)制數(shù)據(jù),取模軟件設(shè)置為縱向取模,將生成的數(shù)據(jù)復(fù)制到上述程序字碼數(shù)組中對應(yīng)位置,略加修改后即得到點(diǎn)陣滾動程序。仿真結(jié)果如圖6所示,主要程序截取如下:

      #define hangxuan P2//對應(yīng)數(shù)碼管段選

      #define liexuan P3//對應(yīng)數(shù)碼管位選

      uchar hang[]={//字碼數(shù)組

      0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//空屏

      0x00,0x3E,0x2A,0x7F,0xFF,0xAA,0xBE,0xC0,

      //漢字“電”

      0x00,0x09,0x09,0x89,0xFD,0x0F,0x0B,0x00,

      //漢字“子”

      0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00//空屏

      };

      uchar lie[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//列選碼,對應(yīng)共陽數(shù)碼管位選

      void main()

      {while(1)

      {uchar i,j,k;

      for(i=0;i<25;i++)//顯示了兩組字碼,故有25幀數(shù)據(jù)

      {for(j=0;j<50;j++)//滾動速度

      {for(k=0;k<8;k++)

      {liexuan=lie[k];//點(diǎn)陣列選

      hangxuan=~hang[k+i];

      //根據(jù)幀數(shù)選取8個段碼發(fā)送至行選端口

      delay(50);//延時函數(shù)

      } } } } ? }

      需要注意的是,取模方式、接線順序及列選順序均會影響顯示結(jié)果,不同的組合會產(chǎn)生如反向滾動、上下滾動、畫面旋轉(zhuǎn)或亂碼等結(jié)果。此時可組織學(xué)生分組進(jìn)行實驗,通過歸納法總結(jié)出在取模軟件中設(shè)置不同的參數(shù)對顯示結(jié)果會有不同的影響。

      3.2 翻頁

      將字碼數(shù)組中的內(nèi)容分為4幀顯示4個畫面(空屏-電-子-空屏)就形成了翻頁效果。采用縱向取模,運(yùn)行程序。當(dāng)i=0時,從字碼數(shù)組中依次取出成員[0~7]循環(huán)并行發(fā)送至8根行線上,列線0~7依次選通,即顯示第1幀;當(dāng)i=1時,取成員[8~15]數(shù)據(jù)置于列上,列線0~7依次選通,顯示第2幀;依此循環(huán)4次至i<4。將上例程序修改兩處即能實現(xiàn)翻頁效果,仿真結(jié)果如圖7所示,主要程序截取如下:

      for(i=0;i<4;i++)//循環(huán)發(fā)送4幀畫面

      {for(j=0;j<200;j++)

      {for(k=0;k<8;k++)

      {liexuan=lie[k];

      hangxuan=~hang[k+i*8];

      //k*8根據(jù)幀次從數(shù)組中選擇對應(yīng)的8個程序

      delay(50);

      } } }

      需要為學(xué)生總結(jié)的是,同是由64個LED構(gòu)成,點(diǎn)陣顯示的信息種類要比數(shù)碼管多,而8×8點(diǎn)陣的分辨率決定了其無法顯示筆畫較多的漢字,常采用4塊8×8點(diǎn)陣構(gòu)成一塊16×16點(diǎn)陣顯示漢字,而16×16點(diǎn)陣的控制應(yīng)作為另一個課題講授。

      4 結(jié) 語

      物聯(lián)網(wǎng)智能家居產(chǎn)業(yè)規(guī)模巨大,對相關(guān)人才需求逐步增加,以單片機(jī)為核心的嵌入式計算機(jī)系統(tǒng)對智能家居產(chǎn)業(yè)的發(fā)展意義重大。本文以LED顯示屏控制教學(xué)內(nèi)容為例詳細(xì)介紹了兩者的結(jié)構(gòu)及控制原理,將顯示需求分解為動畫數(shù)據(jù)幀,把抽象需求量化為具體的數(shù)據(jù)表格再設(shè)計程序結(jié)構(gòu),編寫51單片機(jī)C語言程序。同時,引入Proteus軟件為實驗平臺開展理實一體化教學(xué)。開展教學(xué)時,應(yīng)注意避免“教師講的多,學(xué)生做的少”。通過這種將教學(xué)內(nèi)容有機(jī)整合、有效壓縮的教學(xué)方式,充分調(diào)動了學(xué)生的主觀能動性,提高了學(xué)生對知識技能的綜合運(yùn)用能力,最終提高教學(xué)質(zhì)量[8-10]。

      參 考 文 獻(xiàn)

      [1]張承暢,吳孟林,張華譽(yù),等.面向?qū)W生工程能力達(dá)成的“單片機(jī)技術(shù)”實驗案例設(shè)計[J].實驗技術(shù)與管理,2018,35(5):178-182.

      [2]李秀瀅,段曉毅,趙成,等.實踐為主導(dǎo)的單片機(jī)課程立體化教學(xué)模式的探索[J].實驗技術(shù)與管理,2018,35(1):190-193.

      [3]安健,任東勝,桂小林,等.物聯(lián)網(wǎng)實踐能力培養(yǎng)的研究與探索[J].實驗技術(shù)與管理,2018,35(10):15-18.

      [4]萬松峰.Proteus在單片機(jī)理實一體化教學(xué)的應(yīng)用[J].實驗科學(xué)與技術(shù),2016,14(1):85-88.

      [5]朱清慧,王志奎.Proteus在LED點(diǎn)陣滾動顯示屏設(shè)計中的應(yīng)用[J].液晶與顯示,2009(2):232-237.

      [6]譚筠梅,李玉龍,王履程.基于Proteus的單片機(jī)虛擬仿真實驗案例設(shè)計[J].實驗技術(shù)與管理,2018,35(5):122-125.

      [7]譚浩強(qiáng).C程序設(shè)計[M].2版.北京:清華大學(xué)出版社,1999:122-138.

      [8]羅文平.學(xué)與做:教師培養(yǎng)的雙輪驅(qū)動模式[J].教師教育論壇,2018,31(5):41-44.

      [9]高同輝,劉東曉.智能家居實訓(xùn)平臺開發(fā)與應(yīng)用[J].實驗技術(shù)與管理,2015,32(7):167-171.

      [10]鄧小龍,顧曉燕.“互聯(lián)網(wǎng)+”背景下創(chuàng)新型復(fù)合技術(shù)技能型人才的培養(yǎng)[J].實驗技術(shù)與管理,2018,35(2):17-20.

      猜你喜歡
      智能家居教學(xué)研究單片機(jī)
      基于單片機(jī)的SPWM控制逆變器的設(shè)計與實現(xiàn)
      電子制作(2019年13期)2020-01-14 03:15:28
      基于單片機(jī)的層次漸變暖燈的研究
      電子制作(2019年15期)2019-08-27 01:12:10
      基于單片機(jī)的便捷式LCF測量儀
      電子制作(2019年9期)2019-05-30 09:42:02
      基于Zigbee的無線通信技術(shù)在智能家居中的應(yīng)用
      電子制作(2018年1期)2018-04-04 01:48:28
      高中數(shù)學(xué)教學(xué)研究
      關(guān)于智能家居真正需求的探討
      交替?zhèn)髯g中聽記平衡教學(xué)研究
      Microchip推出兩個全新PIC單片機(jī)系列
      智能家居更貼心
      語文課堂有效教學(xué)研究
      高淳县| 嘉定区| 天全县| 仙桃市| 镇宁| 浙江省| 福贡县| 侯马市| 呼图壁县| 长海县| 曲周县| 海原县| 白朗县| 延吉市| 尼勒克县| 宕昌县| 鹤壁市| 天祝| 武胜县| 泰兴市| 山东省| 吕梁市| 托里县| 米易县| 斗六市| 左权县| 弥勒县| 凯里市| 灵宝市| 隆回县| 邵阳县| 保康县| 蓬溪县| 海阳市| 明光市| 如东县| 新安县| 盱眙县| 通渭县| 嵊泗县| 西城区|