新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > stc12c5a60s2單片機的常用函數

        stc12c5a60s2單片機的常用函數

        作者: 時間:2012-08-29 來源:網絡 收藏
        #ifndef _SYSTEM_H_#define _SYSTEM_H_#include.h>#includeintrins.h>#includedelay.h>#includeLcd_1602.h>#includeADC.h>#includePWM.h>#includeEPROM.h>/*===============================================================作品名:    _SYSTEM_H_(系統頭文件)作者:     廣西名族大學物理與電子工程學院09電(2)班 風子(Only)完成日期: 2011年2月18日============================================================該頭文件為型號單片機的系統頭文件目前版本(V1.0)包含intrins,
        delay,Lcd_1602ADC,PWM,EPROM等頭文件各個函數調用語句有:==================================================================intrins.h(位操作函數頭文件)   temp=_crol_(temp,n);//其中temp為要操作數,n為位移量如  temp=_crol_(0x01,1);
        執行后為temp=0x02;=============================================================                  delay.h(延時函數頭文件)       delay_s(n);// 延時n秒    delay_ms(n);//延時n毫秒============================================================                Lcd_1602.h(1602液晶驅動頭文件)  默認P0口為數據接口 RS為P2^2,EN為P2^3,
        可自行定義可在主程序文件直接宏定義如:#define Lcd_Date_Port P3#define RS P2^5#define EN P2^6Lcd_Init();//液晶初始化函數Lcd_Locate(x,y);//液晶定位函數x為行數,y為列數Lcd_Char('a');//顯示單個字符Lcd_String("ABCD");//顯示字符串Lcd_Number(123);//顯示小于65535的數據Lcd_N_Number(123,3);//顯示指定位數的數據Lcd_Float(123.123);//顯示保留三位浮點數====================================================                       ADC.h(stc單片機內部10位8通道ADC轉換頭文件)    使用前必須將其初始化如有:ADC_Init();//初始化ADCGet_ADC(n);//取第n通道的ADC值(帶函數返回值函數)AD_Average(n);
        //取第n通道的AD電壓均值(平均1000次后的值)(帶函數返回值函數)(默認5V參考電壓)=========================================================                       PWMM.h(可調制脈沖產生頭文件)Module_0L//模塊0低八位寄存器(占空比調節參數)Module_0H//模塊0高八位寄存器Module_1L//模塊1低八位寄存器Module_1H//模塊1高八位寄存器如:Module_0L=Module_0H=128;//占空比為50%Pwm_Clock(n); //n=0,1,2,3,4,5,6,7共八種模式//n=0 系統時鐘/12//n=1 系統時鐘/2//n=2 定時器0溢出脈沖,通過改變溢出率可改變PWM頻率//n=3 P1.2(P4.1)腳輸入的外部時鐘(最大速率=時鐘/2)//n=4 系統時鐘//n=5 系統時鐘/4//n=6 系統時鐘/6//n=7 系統時鐘/8Pwm_Work_Mode(module,mode);//為工作模式函數定義//module為PCA模塊選擇,分別有0,1,2,其中2為模塊0,與1兩路同時工作//mode  為PCA/PWM模式選擇,分別有0,1,2,3,4,5,6,7,8,mode  CCAPMn0     0x42   普通8位PWM, 無中斷1     0x53   PWM輸出由(下降沿)高變低可產生中斷2     0x63   PWM輸出由(上升沿)低變高可產生中斷3     0x73   PWM輸出由低變高或由高變低都可產生中斷      4     0x21   16位CEXn上升沿觸發捕捉功能。5     0x11   16位CEXn下降沿觸發捕捉功能。6     0x31   16位CEXn邊沿(上、下沿)觸發捕捉功能。7     0x49   16位軟件定時器。8     0x4d   16位高速脈沖輸出。Pwm_Work_Mode(0,8);//模塊0的16位高速脈沖輸出============================================================                     EPROM.h(斷電儲存函數頭文件) Byte_Read(unsigned int Byte_Read_Addr);//讀取Byte_Delete(unsigned int Byte_Delete_Addr );//擦除Byte_Write(unsigned int Byte_Write_Addr,unsigned char Original_Data);
        //寫入//其中X_X_Addr為,Original_Data當前數值===============================================*/#endif

        pwm相關文章:pwm是什么




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 东方市| 抚松县| 个旧市| 苏尼特左旗| 桐庐县| 融水| 德惠市| 武山县| 蚌埠市| 柘荣县| 中山市| 雷州市| 兴海县| 利辛县| 连江县| 苏尼特左旗| 逊克县| 阿巴嘎旗| 武定县| 天门市| 抚州市| 塔城市| 普格县| 昌图县| 太原市| 新田县| 宜兴市| 措美县| 林口县| 仲巴县| 江华| 新沂市| 龙门县| 敦煌市| 大安市| 虎林市| 永新县| 杭州市| 昆山市| 阿拉善盟| 无锡市|