<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> Arduino >> 瀏覽文章

        Arduino語言注解語言注解

        作者:huqin   來源:本站原創   點擊數:  更新時間:2014年04月02日   【字體:

             Arduino語言是建立在C/C++基礎上的,其實也就是基礎的C語言,Arduino語言只不過把AVR單片機(微控制器)相關的一些參數設置都函數化,不用我們去了解他的底層,讓我們不了解AVR單片機(微控制器)的朋友也能輕松上手。
               在與Arduino DIYER接觸的這段時間里,發現有些朋友對Arduino語言還是比較難入手,那么這里我就簡單的注釋一下Arduino語言(本人也是半罐子水,有錯的地方還請各位指正)。
        /*************基礎C語言*************/
        關鍵字:


        語法符號:


        運算符:

        數據類型:
         

        數據類型轉換:

        常量:
         

        • HIGH | LOW     表示數字IO口的電平,HIGH 表示高電平(1),LOW 表示低電平(0)。
        • INPUT | OUTPUT   表示數字IO口的方向,INPUT 表示輸入(高阻態),OUTPUT  表示輸出(AVR能提供5V電壓 40mA電流)。
        • true | false    true 表示真(1),false表示假(0)。

        /******************************************/
               以上為基礎c語言的關鍵字和符號,有c語言基礎的都應該了解其含義,這里也不作過多的解釋。
        /*************Arduino 語言*************/
        結構

        • void setup()   初始化變量,管腳模式,調用庫函數等
        • void loop()  連續執行函數內的語句

        功能數字 I/O
         

        • pinMode(pin, mode)    數字IO口輸入輸出模式定義函數,pin表示為0~13, mode表示為INPUT或OUTPUT。
        • digitalWrite(pin, value)    數字IO口輸出電平定義函數,pin表示為0~13,value表示為HIGH或LOW。比如定義HIGH可以驅動LED。
        • int digitalRead(pin)    數字IO口讀輸入電平函數,pin表示為0~13,value表示為HIGH或LOW。比如可以讀數字傳感器。


        模擬 I/O
         

        • int analogRead(pin)    模擬IO口讀函數,pin表示為0~5(Arduino Diecimila為0~5,Arduino nano為0~7)。比如可以讀模擬傳感器(10位AD,0~5V表示為0~1023)。
        • analogWrite(pin, value) - PWM     數字IO口PWM輸出函數,Arduino數字IO口標注了PWM的IO口可使用該函數,pin表示3, 5, 6, 9, 10, 11,value表示為0~255。比如可用于電機PWM調速或音樂播放。


        擴展 I/O
         

        • shiftOut(dataPin, clockPin, bitOrder, value)    SPI外部IO擴展函數,通常使用帶SPI接口的74HC595做8個IO擴展,dataPin為數據口,clockPin為時鐘口,bitOrder為數據傳輸方向(MSBFIRST高位在前,LSBFIRST低位在前),value表示所要傳送的數據(0~255),另外還需要一個IO口做74HC595的使能控制。
        • unsigned long pulseIn(pin, value)    脈沖長度記錄函數,返回時間參數(us),pin表示為0~13,value為HIGH或LOW。比如value為HIGH,那么當pin輸入為高電平時,開始計時,當pin輸入為低電平時,停止計時,然后返回該時間。


        時間函數
         

        • unsigned long millis()   返回時間函數(單位ms),該函數是指,當程序運行就開始計時并返回記錄的參數,該參數溢出大概需要50天時間。
        • delay(ms)    延時函數(單位ms)。
        • delayMicroseconds(us)    延時函數(單位us)。


        數學函數
         

        • min(x, y)  求最小值
        • max(x, y)  求最大值
        • abs(x)   計算絕對值
        • constrain(x, a, b)  約束函數,下限a,上限b,x必須在ab之間才能返回。
        • map(value, fromLow, fromHigh, toLow, toHigh)    約束函數,value必須在fromLow與toLow之間和fromHigh與toHigh之間。
        • pow(base, exponent)  開方函數,base的exponent次方。
        • sq(x)     平方
        • sqrt(x)   開根號


        三角函數
         


        隨機數函數

         

        • randomSeed(seed)   隨機數端口定義函數,seed表示讀模擬口analogRead(pin)函數 。
        • long random(max)   隨機數函數,返回數據大于等于0,小于max。
        • long random(min, max)   隨機數函數,返回數據大于等于min,小于max。

        外部中斷函數

         

        • attachInterrupt(interrupt, , mode)     外部中斷只能用到數字IO口2和3,interrupt表示中斷口初始0或1,表示一個功能函數,mode:LOW低電平中斷,CHANGE有變化就中斷,RISING上升沿中斷,FALLING 下降沿中斷。
        • detachInterrupt(interrupt)    中斷開關,interrupt=1 開,interrupt=0 關。


        中斷使能函數

         


        串口收發函數

         

        /**********************************/
        /************Arduino語言庫文件*************/
        官方庫文件
         

        非官方庫文件
         

        • DateTime - a library for keeping track of the current date and time in software.
        • Debounce - for reading noisy digital inputs (e.g. from buttons)
        • Firmata - for communicating with applications on the computer using a standard serial protocol.
        • GLCD - graphics routines for LCD based on the KS0108 or equivalent chipset.
        • LCD - control LCDs (using 8 data lines)
        • LCD 4 Bit - control LCDs (using 4 data lines)
        • LedControl - for controlling LED matrices or seven-segment displays with a MAX7221 or MAX7219.
        • LedControl - an alternative to the Matrix library for driving multiple LEDs with Maxim chips.
        • Messenger - for processing text-based messages from the computer
        • Metro - help you time actions at regular intervals
        • MsTimer2 - uses the timer 2 interrupt to trigger an action every N milliseconds.
        • OneWire - control devices (from Dallas Semiconductor) that use the One Wire protocol.
        • PS2Keyboard - read characters from a PS2 keyboard.
        • Servo - provides software support for Servo motors on any pins.
        • Servotimer1 - provides hardware support for Servo motors on pins 9 and 10
        • Simple Message System - send messages between Arduino and the computer
        • SSerial2Mobile - send text messages or emails using a cell phone (via AT commands over software serial)
        • TextString - handle strings
        • TLC5940 - 16 channel 12 bit PWM controller.
        • X10 - Sending X10 signals over AC power lines

        /****************************************/
        以上庫文件都需要下載到編譯環境(如下目錄:arduino-0011\hardware\libraries)中才能使用。

        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮