亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

dedeCMS織夢最全標簽參考手冊

  • C語言和c++知識全解

    C語言和c++知識全解

    標簽: C語言

    上傳時間: 2013-11-15

    上傳用戶:llandlu

  • html代碼大全_很全

    html代碼大全_很全

    標簽: html 代碼大全

    上傳時間: 2013-10-16

    上傳用戶:liaofamous

  • 高級機械原理——全動畫圖解

    高級機械原理——全動畫圖解

    標簽: 機械原理 動畫 圖解

    上傳時間: 2014-12-31

    上傳用戶:zhangliming420

  • 小U盤變身最強大路由器

    小U盤變身最強大路由器

    標簽: U盤 路由器

    上傳時間: 2013-11-20

    上傳用戶:黃蛋的蛋黃

  • 最強的硬盤數據恢復軟件FinalData企業2.0破解版

    最強的硬盤數據恢復軟件

    標簽: FinalData 2.0 硬盤 數據恢復

    上傳時間: 2013-11-21

    上傳用戶:二十八號

  • Arduino學習筆記4_Arduino軟件模擬PWM

    注:1.這篇文章斷斷續續寫了很久,畫圖技術也不精,難免錯漏,大家湊合看.有問題可以留言.      2.論壇排版把我的代碼縮進全弄沒了,大家將代碼粘貼到arduino編譯器,然后按ctrl+T重新格式化代碼格式即可看的舒服. 一、什么是PWM PWM 即Pulse Wavelength Modulation 脈寬調制波,通過調整輸出信號占空比,從而達到改 變輸出平均電壓的目的。相信Arduino 的PWM 大家都不陌生,在Arduino Duemilanove 2009 中,有6 個8 位精度PWM 引腳,分別是3, 5, 6, 9, 10, 11 腳。我們可以使用analogWrite()控 制PWM 腳輸出頻率大概在500Hz 的左右的PWM 調制波。分辨率8 位即2 的8 次方等于 256 級精度。但是有時候我們會覺得6 個PWM 引腳不夠用。比如我們做一個10 路燈調光, 就需要有10 個PWM 腳。Arduino Duemilanove 2009 有13 個數字輸出腳,如果它們都可以 PWM 的話,就能滿足條件了。于是本文介紹用軟件模擬PWM。 二、Arduino 軟件模擬PWM Arduino PWM 調壓原理:PWM 有好幾種方法。而Arduino 因為電源和實現難度限制,一般 使用周期恒定,占空比變化的單極性PWM。 通過調整一個周期里面輸出腳高/低電平的時間比(即是占空比)去獲得給一個用電器不同 的平均功率。 如圖所示,假設PWM 波形周期1ms(即1kHz),分辨率1000 級。那么需要一個信號時間 精度1ms/1000=1us 的信號源,即1MHz。所以說,PWM 的實現難點在于需要使用很高頻的 信號源,才能獲得快速與高精度。下面先由一個簡單的PWM 程序開始: const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { if((bright++) == 255) bright = 0; for(int i = 0; i < 255; i++) { if(i < bright) { digitalWrite(PWMPin, HIGH); delayMicroseconds(30); } else { digitalWrite(PWMPin, LOW); delayMicroseconds(30); } } } 這是一個軟件PWM 控制Arduino D13 引腳的例子。只需要一塊Arduino 即可測試此代碼。 程序解析:由for 循環可以看出,完成一個PWM 周期,共循環255 次。 假設bright=100 時候,在第0~100 次循環中,i 等于1 到99 均小于bright,于是輸出PWMPin 高電平; 然后第100 到255 次循環里面,i 等于100~255 大于bright,于是輸出PWMPin 低電平。無 論輸出高低電平都保持30us。 那么說,如果bright=100 的話,就有100 次循環是高電平,155 次循環是低電平。 如果忽略指令執行時間的話,這次的PWM 波形占空比為100/255,如果調整bright 的值, 就能改變接在D13 的LED 的亮度。 這里設置了每次for 循環之后,將bright 加一,并且當bright 加到255 時歸0。所以,我們 看到的最終效果就是LED 慢慢變亮,到頂之后然后突然暗回去重新變亮。 這是最基本的PWM 方法,也應該是大家想的比較多的想法。 然后介紹一個簡單一點的。思維風格完全不同。不過對于驅動一個LED 來說,效果與上面 的程序一樣。 const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { digitalWrite(PWMPin, HIGH); delayMicroseconds(bright*30); digitalWrite(PWMPin, LOW); delayMicroseconds((255 - bright)*30); if((bright++) == 255) bright = 0; } 可以看出,這段代碼少了一個For 循環。它先輸出一個高電平,然后維持(bright*30)us。然 后輸出一個低電平,維持時間((255-bright)*30)us。這樣兩次高低就能完成一個PWM 周期。 分辨率也是255。 三、多引腳PWM Arduino 本身已有PWM 引腳并且運行起來不占CPU 時間,所以軟件模擬一個引腳的PWM 完全沒有實用意義。我們軟件模擬的價值在于:他能將任意的數字IO 口變成PWM 引腳。 當一片Arduino 要同時控制多個PWM,并且沒有其他重任務的時候,就要用軟件PWM 了。 多引腳PWM 有一種下面的方式: int brights[14] = {0}; //定義14個引腳的初始亮度,可以隨意設置 int StartPWMPin = 0, EndPWMPin = 13; //設置D0~D13為PWM 引腳 int PWMResolution = 255; //設置PWM 占空比分辨率 void setup() { //定義所有IO 端輸出 for(int i = StartPWMPin; i <= EndPWMPin; i++) { pinMode(i, OUTPUT); //隨便定義個初始亮度,便于觀察 brights[ i ] = random(0, 255); } } void loop() { //這for 循環是為14盞燈做漸亮的。每次Arduino loop()循環, //brights 自增一次。直到brights=255時候,將brights 置零重新計數。 for(int i = StartPWMPin; i <= EndPWMPin; i++) { if((brights[i]++) == PWMResolution) brights[i] = 0; } for(int i = 0; i <= PWMResolution; i++) //i 是計數一個PWM 周期 { for(int j = StartPWMPin; j <= EndPWMPin; j++) //每個PWM 周期均遍歷所有引腳 { if(i < brights[j])\   所以我們要更改PWM 周期的話,我們將精度(代碼里面的變量:PWMResolution)降低就行,比如一般調整LED 亮度的話,我們用64 級精度就行。這樣速度就是2x32x64=4ms。就不會閃了。

    標簽: Arduino PWM 軟件模擬

    上傳時間: 2013-10-08

    上傳用戶:dingdingcandy

  • M3330E全中文刷機工具

    M3330E全中文刷機工具

    標簽: M3330E 刷機工具

    上傳時間: 2013-10-15

    上傳用戶:fanboynet

  • 最新版Altium Designer+10.1089.24016

    2012年目前最新版

    標簽: Designer Altium 24016 1089

    上傳時間: 2013-11-22

    上傳用戶:kristycreasy

  • Aspen plus工藝流程模擬軟件介紹

      Aspen Plus介紹 (物性數據庫)   · Aspen Plus ---生產裝置設計、穩態模擬和優化的大型通用流程模擬系統   · Aspen Plus是大型通用流程模擬系統,源于美國能源部七十年代后期在麻省理工學院(MIT)組織的會 戰,開發新型第三代流程模擬軟件。該項目稱為“過程工程的先進系統”(Advanced System for Process Engineering,簡稱ASPEN),并于1981年底完成。1982年為了將其商品化,成立了AspenTech公司,并稱之為Aspen Plus。該軟件經過20多年來不斷地改進、擴充和提高,已先后推出了十多個版本,成為舉世公認的標準大型流程模擬軟件,應用案例數以百萬計。全球各大化工、石化、煉油等過程工業制造企業及著名的工程公司都是Aspen Plus的用戶。 它以嚴格的機理模型和先進的技術贏得廣大用戶的信賴,它具有以下特性:   1. ASPEN PLUS有一個公認的跟蹤記錄,在一個工藝過程的制造的整個生命周期中提供巨大的經濟效益,制造生命周期包括從研究與開發經過工程到生產。   2. ASPEN PLUS使用最新的軟件工程技術通過它的Microsoft Windows圖形界面和交互式客戶-服務器模擬結構使得工程生產力最大。   3. ASPEN PLUS擁有精確模擬范圍廣泛的實際應用所需的工程能力, 這些實際應用包括從煉油到非理想化學系統到含電解質和固體的工藝過程。   4. ASPEN PLUS是AspenTech的集成聰明制造系統技術的一個核心部分, 該技術能在你公司的整個過程工程基本設施范圍內捕獲過程專業知識并充分利用。   在實際應用中,ASPEN PLUS可以幫助工程師解決快速閃蒸計算、設計一個新的工藝過程、查找一個原油加工裝置的故障或者優化一個乙烯全裝置的操作等工程和操作的關鍵問。

    標簽: Aspen plus 工藝流程 模擬

    上傳時間: 2013-11-16

    上傳用戶:我干你啊

  • 小U盤變身最強大路由器

    小U盤變身最強大路由器

    標簽: U盤 路由器

    上傳時間: 2013-10-15

    上傳用戶:nshark

主站蜘蛛池模板: 罗山县| 沂南县| 麻江县| 舒兰市| 肃南| 金堂县| 九寨沟县| 白玉县| 平武县| 会理县| 溆浦县| 云和县| 图木舒克市| 天峻县| 田林县| 大港区| 依兰县| 彰武县| 大城县| 道孚县| 贵阳市| 雷波县| 四平市| 元阳县| 屯留县| 榆中县| 凤翔县| 金沙县| 南部县| 临安市| 丰宁| 贵州省| 廊坊市| 团风县| 宁化县| 团风县| 连州市| 吴忠市| 峨山| 平邑县| 上杭县|