程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> MF干活——C#點燈神話

MF干活——C#點燈神話

編輯:C#入門知識

 如同學習每一門編程語言的Hello World!一樣,點燈自然成了單片機入門的HelloWorld。因為單片機上的HelloWorld實在是太難了!
    在電子上只有電壓電流之類的概念,而對於單片機來說,我們可以認為0代表低電壓(低電平、接地),1代表高電壓(高電平)。在我們學習的STM32單片機 上,高電平其實就是3.3伏!今天我們要點亮的小燈,就是發光二極管,讓3.3V和0V分別接在發光二極管的正負(長短)兩端,就可以讓其發光!
    我們采用的單片機有很多針腳(ZET6是144腳,VET6是100腳),一般是PA0~PA15,PB0~PB15這樣子命名。理論上,我們可以把任何一個腳設為高電平或者低電平,通過單片機程序。
    那麼,接線上就有兩種了:一是二極管一頭接一個針腳Pin,另一頭接地GND腳,然後控制Pin高電平,就可以點亮;而是接兩個針腳,控制讓正腳(長)輸出高電平,負腳(短)輸出低電平,也可以點亮。
    如果用C寫這個控制程序,會有點小復雜,因為你需要先設置針腳的工作模式,上拉下拉什麼的,然後才可以通過01控制高低電平。我們做C#開發的同學,絕大 多數不懂這些。MF在這方面封裝得很好,針對指定針腳實例化一個輸出端口OutputPort,並指定初始狀態true/false,然後就可以讀寫布爾 值了。當然,這個輸出端口也可以指定上拉下拉那種模式,但是如果我們不懂,就不用那個構造函數啦。
    一般的開發板上都配有LED,就不需要我們自己去接LED啦!如果想做跑馬燈什麼的,可以自己去淘寶上買,一毛錢一個,10塊錢可以買一百個了,不過記得買杜邦線,哈哈!
    我們來看代碼:

// 紅牛二
//var pins = new Cpu.Pin[] { Pins.PF6, Pins.PF7, Pins.PF8, Pins.PF9, Pins.PF10 };
// 阿波羅一號
//var pins = new Cpu.Pin[] { Pins.PE11, Pins.PE12, Pins.PE13, Pins.PE14, Pins.PE15 };
// 探索者一號
//var pins = new Cpu.Pin[] { Pins.PB11 };
// 探索者二號
//var pins = new Cpu.Pin[] { Pins.PC6, Pins.PC7 };
// 雅典娜二號var pins = new Cpu.Pin[] { Pins.PF8, Pins.PF9 };// 雅典娜三號
//var pins = new Cpu.Pin[] { Pins.PF8, Pins.PF9 };var leds = new OutputPort[pins.Length];for (int i = 0; i < pins.Length; i++)
{
    leds[i] = new OutputPort(pins[i], i % 2 == 0);
}//var led4 = new Led4();for (int i = 0; i < 20000; i++)
{
    for (int j = 0; j < leds.Length; j++)
    {
        leds[j].Write(!leds[j].Read());
    }
    //led4.Display(i);
    //led4.Value = i;

    Thread.Sleep(50);
}
 
 

    這個程序很簡單,首先是實例化一個小燈所在的針腳數組,然後再創建輸出端口數組,創建的時候,隔個的設置不同的初始化狀態,造成小燈分開來亮的效果。我問問
    每一次大循環,都包含一次小循環,而小循環所做的,就是讀出來針腳現在的值,取反後寫入。大循環需要暫停一會,要不太快了也看不清楚呀,呵呵!
    然後,小燈就閃動起來了!
    到這裡,也許很多人會問,點亮小燈,頂多只能做跑馬燈之類的玩具而已。其實這個跟用C語言電燈一樣,我們只需要稍稍改變,針腳出來接的不是小燈,而是一個繼電器,那麼就可以控制220v的強電了啦!剩下的就看自己要做什麼了!
    本文可能非常簡單,但作為單片機的MF入門來說,並非每個人都可以做得到!
    MF是微軟的開源嵌入式系統框架,經過了很多年的發現,在國內一直很冷淡,可能是因為開發板極為昂貴並且移植困難吧!我們新生命團隊經過不懈努力,總算找到了相對比較便宜的MF開發板(淘寶200元左右),還有可以跑MF的核心板(淘寶最低售價只需要46元);並且我們掌握了一些基礎的移植技術,可以把 MF移植到比較熱門和高性價比的多款板子上去。我們歡迎更多志趣相投的朋友一起來研究MF!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved