日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
MF干活:C#點(diǎn)燈神話

如同學(xué)習(xí)每一門(mén)編程語(yǔ)言的Hello World!一樣,點(diǎn)燈自然成了單片機(jī)入門(mén)的HelloWorld。因?yàn)閱纹瑱C(jī)上的HelloWorld實(shí)在是太難了!

創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司提供網(wǎng)站設(shè)計(jì)和自適應(yīng)建站服務(wù)。團(tuán)隊(duì)由有經(jīng)驗(yàn)的網(wǎng)頁(yè)設(shè)計(jì)師、程序員和市場(chǎng)專(zhuān)家組成,能夠提供從H5網(wǎng)站設(shè)計(jì),網(wǎng)站制作,一元廣告,模板建站到小程序定制開(kāi)發(fā)等全方位服務(wù)。 以客戶(hù)為中心,致力于為客戶(hù)提供創(chuàng)新、高效的解決方案,幫助您打造成功的企業(yè)網(wǎng)站。

在電子上只有電壓電流之類(lèi)的概念,而對(duì)于單片機(jī)來(lái)說(shuō),我們可以認(rèn)為0代表低電壓(低電平、接地),1代表高電壓(高電平)。在我們學(xué)習(xí)的STM32單片機(jī)上,高電平其實(shí)就是3.3伏!今天我們要點(diǎn)亮的小燈,就是發(fā)光二極管,讓3.3V和0V分別接在發(fā)光二極管的正負(fù)(長(zhǎng)短)兩端,就可以讓其發(fā)光!

我們采用的單片機(jī)有很多針腳(ZET6是144腳,VET6是100腳),一般是PA0~PA15,PB0~PB15這樣子命名。理論上,我們可以把任何一個(gè)腳設(shè)為高電平或者低電平,通過(guò)單片機(jī)程序。

那么,接線上就有兩種了:一是二極管一頭接一個(gè)針腳Pin,另一頭接地GND腳,然后控制Pin高電平,就可以點(diǎn)亮;而是接兩個(gè)針腳,控制讓正腳(長(zhǎng))輸出高電平,負(fù)腳(短)輸出低電平,也可以點(diǎn)亮。

如果用C寫(xiě)這個(gè)控制程序,會(huì)有點(diǎn)小復(fù)雜,因?yàn)槟阈枰仍O(shè)置針腳的工作模式,上拉下拉什么的,然后才可以通過(guò)01控制高低電平。我們做C#開(kāi)發(fā)的同學(xué),絕大多數(shù)不懂這些。MF在這方面封裝得很好,針對(duì)指定針腳實(shí)例化一個(gè)輸出端口OutputPort,并指定初始狀態(tài)true/false,然后就可以讀寫(xiě)布爾值了。當(dāng)然,這個(gè)輸出端口也可以指定上拉下拉那種模式,但是如果我們不懂,就不用那個(gè)構(gòu)造函數(shù)啦。

一般的開(kāi)發(fā)板上都配有LED,就不需要我們自己去接LED啦!如果想做跑馬燈什么的,可以自己去淘寶上買(mǎi),一毛錢(qián)一個(gè),10塊錢(qián)可以買(mǎi)一百個(gè)了,不過(guò)記得買(mǎi)杜邦線,哈哈!

我們來(lái)看代碼:

 
 
 
  1. // 紅牛二
  2. //var pins = new Cpu.Pin[] { Pins.PF6, Pins.PF7, Pins.PF8, Pins.PF9, Pins.PF10 };
  3. // 阿波羅一號(hào)
  4. //var pins = new Cpu.Pin[] { Pins.PE11, Pins.PE12, Pins.PE13, Pins.PE14, Pins.PE15 };
  5. // 探索者一號(hào)
  6. //var pins = new Cpu.Pin[] { Pins.PB11 };
  7. // 探索者二號(hào)
  8. //var pins = new Cpu.Pin[] { Pins.PC6, Pins.PC7 };
  9. // 雅典娜二號(hào)
  10. var pins = new Cpu.Pin[] { Pins.PF8, Pins.PF9 };
  11. // 雅典娜三號(hào)
  12. //var pins = new Cpu.Pin[] { Pins.PF8, Pins.PF9 };
  13. var leds = new OutputPort[pins.Length];
  14. for (int i = 0; i < pins.Length; i++)
  15. {
  16.     leds[i] = new OutputPort(pins[i], i % 2 == 0);
  17. }
  18. //var led4 = new Led4();
  19. for (int i = 0; i < 20000; i++)
  20. {
  21.     for (int j = 0; j < leds.Length; j++)
  22.     {
  23.         leds[j].Write(!leds[j].Read());
  24.     }
  25.     //led4.Display(i);
  26.     //led4.Value = i;
  27.     Thread.Sleep(50);
  28. }

這個(gè)程序很簡(jiǎn)單,首先是實(shí)例化一個(gè)小燈所在的針腳數(shù)組,然后再創(chuàng)建輸出端口數(shù)組,創(chuàng)建的時(shí)候,隔個(gè)的設(shè)置不同的初始化狀態(tài),造成小燈分開(kāi)來(lái)亮的效果。

每一次大循環(huán),都包含一次小循環(huán),而小循環(huán)所做的,就是讀出來(lái)針腳現(xiàn)在的值,取反后寫(xiě)入。大循環(huán)需要暫停一會(huì),要不太快了也看不清楚呀,呵呵!

然后,小燈就閃動(dòng)起來(lái)了!

到這里,也許很多人會(huì)問(wèn),點(diǎn)亮小燈,頂多只能做跑馬燈之類(lèi)的玩具而已。其實(shí)這個(gè)跟用C語(yǔ)言電燈一樣,我們只需要稍稍改變,針腳出來(lái)接的不是小燈,而是一個(gè)繼電器,那么就可以控制220v的強(qiáng)電了啦!剩下的就看自己要做什么了!

本文可能非常簡(jiǎn)單,但作為單片機(jī)的MF入門(mén)來(lái)說(shuō),并非每個(gè)人都可以做得到!

MF是微軟的開(kāi)源嵌入式系統(tǒng)框架,經(jīng)過(guò)了很多年的發(fā)現(xiàn),在國(guó)內(nèi)一直很冷淡,可能是因?yàn)殚_(kāi)發(fā)板極為昂貴并且移植困難吧!我們新生命團(tuán)隊(duì)經(jīng)過(guò)不懈努力,總算找到了相對(duì)比較便宜的MF開(kāi)發(fā)板(淘寶200元左右),還有可以跑MF的核心板(淘寶***售價(jià)只需要46元);并且我們掌握了一些基礎(chǔ)的移植技術(shù),可以把 MF移植到比較熱門(mén)和高性?xún)r(jià)比的多款板子上去。我們歡迎更多志趣相投的朋友一起來(lái)研究MF!

.Net Micro Framework,讓我們盡可能的在不懂單片機(jī)的情況下做一些簡(jiǎn)單的單片機(jī)控制系統(tǒng)!

End

我不相信神話,我只相信汗水!我不相信命運(yùn),我只相信雙手!


網(wǎng)頁(yè)名稱(chēng):MF干活:C#點(diǎn)燈神話
文章源于:http://www.5511xx.com/article/ccsjsid.html