wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4558|回復: 1
收起左側

pic16f1939單片機pwm XC編譯器例子

[復制鏈接]
ID:869731 發表于 2020-12-28 19:34 | 顯示全部樓層 |閱讀模式
LED5運行閃亮,LED0 漸亮漸暗

#include "xc.h"                     // 調用頭文件

// CONFIG1
#pragma config FOSC = HS            // Oscillator Selection (HS Oscillator, High-speed crystal/resonator connected between OSC1 and OSC2 pins)
#pragma config WDTE = OFF           // Watchdog Timer Enable (WDT disabled)
#pragma config PWRTE = OFF          // Power-up Timer Enable (PWRT disabled)
#pragma config MCLRE = ON           // MCLR Pin Function Select (MCLR/VPP pin function is MCLR)
#pragma config CP = OFF             // Flash Program Memory Code Protection (Program memory code protection is disabled)
#pragma config CPD = OFF            // Data Memory Code Protection (Data memory code protection is disabled)
#pragma config BOREN = OFF          // Brown-out Reset Enable (Brown-out Reset disabled)
#pragma config CLKOUTEN = OFF       // Clock Out Enable (CLKOUT function is disabled. I/O or oscillator function on the CLKOUT pin)
#pragma config IESO = ON            // Internal/External Switchover (Internal/External Switchover mode is enabled)
#pragma config FCMEN = ON           // Fail-Safe Clock Monitor Enable (Fail-Safe Clock Monitor is enabled)

// CONFIG2
#pragma config WRT = OFF            // Flash Memory Self-Write Protection (Write protection off)
#pragma config VCAPEN = OFF         // Voltage Regulator Capacitor Enable (All VCAP pin functionality is disabled)
#pragma config PLLEN = OFF          // PLL Enable (4x PLL disabled)
#pragma config STVREN = ON          // Stack Overflow/Underflow Reset Enable (Stack Overflow or Underflow will cause a Reset)
#pragma config BORV = LO            // Brown-out Reset Voltage Selection (Brown-out Reset Voltage (Vbor), low trip point selected.)
#pragma config LVP = OFF            // Low-Voltage Programming Enable (High-voltage on MCLR/VPP must be used for programming)

//-------------------------------------------------------------------------------

#define _XTAL_FREQ      8000000L    //外部 8MHz

#define LED0  LATCbits.LATC2        //LED宏定義
#define LED1  LATCbits.LATC1
#define LED2  LATCbits.LATC0
#define LED3  LATAbits.LATA5
#define LED4  LATAbits.LATA3
#define LED5  LATAbits.LATA2

#define SCLK  LATBbits.LATB0        //74HC595時鐘
#define SDAT  LATBbits.LATB1        //74HC595數據
#define SRCK  LATCbits.LATC5        //74HC595鎖存

#define KEY0  PORTEbits.RE3         //KEY宏定義
#define KEY1  PORTBbits.RB5
#define KEY2  PORTBbits.RB4

//-------------------------------------------------------------------------------

#define TMR1HPRELOAD    0xF0        //定時器初值
#define TMR1LPRELOAD    0x9B

unsigned char TickClock  = 0;      //2.5mS 時基
unsigned char Tmr1conunt = 0;      //定時計數

//-------------------------------------------------------------------------------
//        TMR1定時器初始化
//-------------------------------------------------------------------------------
void TMR1_Init(void)
{           
        T1CONbits.TMR1CS = 0;   //TMR1時鐘 FOSC/4         
        T1CONbits.T1CKPS = 1;   //輸入分頻比1:2
        TMR1H  = 0xF0;          //8MHz  4mS
        TMR1L  = 0x5F;
        TMR1IF = 0;             //清中斷標志
        TMR1IE = 1;             //中斷允許
}

//-------------------------------------------------------------------------------
//        中斷程序
//-------------------------------------------------------------------------------
void interrupt SystemISR(void)
{
        if(TMR1IE & TMR1IF)              // TMR1中斷
        {
                TMR1IF= 0;
                TMR1H = 0xF0;
                TMR1L = 0x5F;
                TickClock = 1;                 // 標志位
                Tmr1conunt ++;           // 計數
        }               
}

//-------------------------------------------------------------------------------
//        CCP1初始化
//-------------------------------------------------------------------------------
void CCP1_Init(void)
{
        CCP1CON = 0b00001100;         //CCP1 為PWM模式
        CCPTMRS0= 0b00000000;         //CCP1~4 時鐘來源TMR2
        CCPTMRS1= 0b00000000;         //CCP5 以Timer2 作為定時器
        CCP1IE = 0;
        CCP1IF = 0;
        
        T2CON = 0b01001100;           // Postcaler 1:10, T2ON
        PR2 = 249;                    // PWM周期 = (PR2+1)*4*TOSC
                                      // TOSC = 1/FOSC
        CCPR1L = 0x00;                // 占空比 0
        
        TMR2IF = 0;
        TMR2IE = 0;
}        

//-------------------------------------------------------------------------------
//        CCP占空比程序
//-------------------------------------------------------------------------------
unsigned int  PWM_Duty = 0;      //PWM 占空比
unsigned char PWM_FLAG  = 0;     //漸變標志位
void Conver_CCPR1L(unsigned int Duty)         //PWM 占空比轉換
{
        CCPR1L = (unsigned char)(Duty>>2);
        CCP1CON |= (unsigned char)((Duty&0x0003)<<4);
}

//-------------------------------------------------------------------------------
//        PWM控制LED部分
//-------------------------------------------------------------------------------
void PWM_LED(void)
{   
        if (TickClock == 1)             //2.5mS
        {
                TickClock = 0;
                if(PWM_FLAG == 1)       //PWM LED  漸暗   
                {
                        if(PWM_Duty != 0)  
                                PWM_Duty --;
                        else               
                                PWM_FLAG = 0;
                }
                else                    //PWM LED  漸亮
                {
                        if(PWM_Duty <1023)
                                PWM_Duty++;
                        else               
                                PWM_FLAG = 1;               
                }
                Conver_CCPR1L(PWM_Duty);                  
        }
}

//-------------------------------------------------------------------------------
//        系統初始化
//-------------------------------------------------------------------------------
void System_Init(void)
{
        ADCON1 = 0b10010011;            //Fosc/8 Vref = FVR
        ADCON0 = 0b00000001;            //ADON = 1 As AN0
        
        FVRCON = 0b10000011;            //Vref+ = 4.096V

        LATA  = 0b00000000;             //端口電平初始化
        LATB  = 0b00000000;
        LATC  = 0b00000000;
        LATD  = 0b00000000;
        LATE  = 0b00000000;
        
        TRISA  = 0b11000001;            //輸入
        ANSELA = 0b00000001;            //RA0模擬 LED   
                  
        TRISB  = 0b00110000;            //RB4 RB5 mTouch
        ANSELB = 0b00110000;            //74HC164 CLK DAT

        TRISC  = 0b10011000;            //UART I2C
        
        TRISD  = 0b00000000;            //輸出
        ANSELD = 0b00000000;            //數字I/O

        TRISE  = 0b00000000;            //輸出
        ANSELE = 0b00000000;            //數字I/O
}

//-------------------------------------------------------------------------------
//        LED燈開機顯示
//-------------------------------------------------------------------------------
void StartViewLED(void)
{
        LED0 = 1;                //LED0-LED5 亮
        LED1 = 1;
        LED2 = 1;
        LED3 = 1;
        LED4 = 1;
        LED5 = 1;
        __delay_ms(800);         //延時
        LED0 = 0;                //LED0-LED5 滅
        LED1 = 0;
        LED2 = 0;
        LED3 = 0;
        LED4 = 0;
        LED5 = 0;
        __delay_ms(50);          //延時
}
               
//-------------------------------------------------------------------------------
//        主程序部分
//-------------------------------------------------------------------------------
void main(void)
{
        System_Init();               //系統初始化
        StartViewLED();              //開機LED顯示
        
        TMR1_Init();                 //TMR1初始化
        CCP1_Init();                 //CCP1初始化
        
        INTCONbits.PEIE = 1;         //外設中斷
        INTCONbits.GIE  = 1;         //系統中斷
        T1CONbits.TMR1ON= 1;         //TMR1使能
        while(1)
        {
                PWM_LED();                   //漸變
                if(Tmr1conunt > 199)         //500mS
                {
                        Tmr1conunt = 0;
                        LED5 = !LED5;        //運行燈
                }        
        }
}


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:1019848 發表于 2024-8-21 11:35 | 顯示全部樓層
中斷函數要改成:void __interrupt() isr(void)
不然會報錯
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
青青操在线播放| 国产亚洲欧美日韩在线观看一区二区| 国产精品666| xxxx性bbbb欧美| 欧美黑人乱大交ⅹxxxxx| 午夜福利视频一区二区| 亚洲高清视频在线播放| 亚洲国产www| 人妻无码中文字幕| 免费视频拗女稀缺一区二区| 美女视频一区二区三区在线| 99re5久久在热线播放| 亚洲精品7777xxxx青睐| 国产一起色一起爱| 人人插人人射| 99re在线视频播放| 91免费版在线观看| 青青九九免费视频在线| 91精品国产91久久久久游泳池 | 久久综合色一本| 96国产粉嫩美女| 91在线视频免费| 国产精品区二区三区日本| 国产麻豆一区二区三区在线观看| 国内一区在线| 亚洲成人a**址| 看一级黄色录像| 阿v天堂2018| 国产l精品国产亚洲区久久| 亚洲欧美aaa| av鲁丝一区鲁丝二区鲁丝三区| 亚洲女优在线观看| 国产一级一级片| 在线免费看91| 亚洲电影成人成人影院| 国产精品美女一区二区三区四区 | 国产精品亚洲αv天堂无码| 成人性生生活性生交12| 亚洲高清无码久久| 国产精品白丝喷水在线观看| 免费av网站在线| 99久久精品国产成人一区二区| 好男人官网在线| 免费看黄色网| 中出在线观看| 黄色羞羞视频在线观看| 不卡的国产精品| 精品国产乱码久久久久久蜜坠欲下| 欧美日本不卡高清| 国产自产高清不卡| 国产精品久久久久久久久免费相片| 精品久久久久久久久国产字幕| 欧美一级免费观看| 精品国产依人香蕉在线精品| 国产激情久久久久| 日本免费高清一区二区| 人妻无码视频一区二区三区| 国产亚洲无码精品| 精品人妻一区二区色欲产成人| 免费看黄网站在线观看| 激情网址大全| 国产免费视频在线| 成人h在线观看| 首页国产精品| 久久99精品久久久久久动态图| 国产欧美日韩亚州综合| 欧美色倩网站大全免费| 日韩亚洲精品电影| 97免费资源站| 欧美 日韩 国产在线观看| 国产精品无码永久免费不卡| 自拍偷拍18p| 国产一卡2卡3卡四卡网站| 性视频在线播放| 亚洲风情在线资源| 欧美大黑bbbbbbbbb在线| 国产中文一区二区三区| 天天综合网 天天综合色| 亚洲精品中文字幕有码专区| 国产精品欧美日韩一区二区| 777久久精品一区二区三区无码| 色诱av手机版| 国产免费a视频| 91sese| 大片免费播放在线视频| 国产精品3区| 视频一区国产视频| 亚洲一区中文日韩| 中文字幕精品一区久久久久| 91在线免费看片| 999香蕉视频| 青娱乐国产盛宴| 四虎成人免费| 久草福利在线视频| 91麻豆精品激情在线观看最新| 久久男女视频| 亚洲一区二区三区四区不卡| 中文字幕欧美精品日韩中文字幕| 成人av免费电影| 超碰在线97免费| 国产无套内射又大又猛又粗又爽| 欧美大交乱xxxxbbbb| 9i精品一二三区| 神马午夜久久| 99视频一区二区| 日韩精品一区二区三区在线观看| 国产精品福利在线观看网址| 国产va亚洲va在线va| 中日韩一级黄色片| 欧美成人精品福利网站| 激情影院在线观看| 99成人在线视频| 国产欧美日韩在线观看| 亚洲一区第一页| 美脚丝袜一区二区三区在线观看| 亚洲精品第三页| 中文字幕一区二区久久人妻| 男女人搞j网站| 亚洲精品tv| 精品在线免费观看| 欧美丰满一区二区免费视频| 国产精品九九九| 亚洲综合在线网站| 天天天天天天天干| 欧美xxxxxxxxx59| 在线观看视频一区二区三区| 国产suv精品一区二区三区| 欧美xxxx老人做受| 国产精品国产亚洲精品看不卡15| 亚洲一区二区三区黄色| 污视频在线免费| 91在线看黄| 中文无码久久精品| 亚洲一区二区av电影| 91精品国产色综合久久不卡98口| 97成人在线免费视频| 五月天综合激情网| 免费av播放| 小说区图片区色综合区| 国产精品网站在线观看| 欧美成人精品一区| 18禁免费无码无遮挡不卡网站| 无码人妻aⅴ一区二区三区有奶水| 好男人社区在线视频| 久久久久97| 国产精品美女久久久久高潮| 久久av在线看| 毛片av免费在线观看| 国产精品色综合| av网页在线| 99精品国产在热久久| 色噜噜狠狠色综合中国| 亚洲一区二区三区777| 丝袜熟女一区二区三区 | 国产精品永久免费在线| 波多野结衣中文字幕在线播放| 五月婷婷免费视频| 久久久男人天堂| 久久国产日韩欧美精品| 亚洲国产婷婷香蕉久久久久久| 日本一区视频在线播放| 九热这里只有精品| 污视频在线看操| 一区二区三区毛片免费| 色综合天天综合色综合av| 91影院未满十八岁禁止入内| 日韩不卡av在线| 性色88av老女人视频| 香蕉久久夜色精品国产更新时间| 亚洲制服欧美中文字幕中文字幕| 国产精品久久久久久久久免费| 欧美性生交xxxxx| 99久久99热久久精品免费看| 日韩精品久久久久久久软件91| 中文字幕第一区第二区| 日韩av电影在线网| 国产麻豆天美果冻无码视频| 国内自拍视频在线观看| 亚洲+变态+欧美+另类+精品| 亚洲va欧美va国产va天堂影院| 亚洲xxx大片| www青青草原| 日韩精品123| 亚洲欧美日韩国产一区二区| 日韩精品高清在线观看| 日本免费一级视频| 欧美激情福利视频在线观看免费| 久久久91麻豆精品国产一区| 亚洲免费av观看| 97超碰人人看人人 | 国产欧美久久久| 成人免费网站观看| 2022国产精品视频| 国产精品高清在线| 成人一级黄色大片| 色视频在线观看福利| 老鸭窝91久久精品色噜噜导演| 日韩精品在线看| 国产日韩成人内射视频| 欧美日韩亚洲国内综合网 | 日韩欧美自拍偷拍| 亚洲人精品午夜射精日韩| 亚洲一区免费在线| 国产亚洲字幕| 亚洲成年人影院| 欧美日韩一区二区视频在线观看| 久久久久久久久久一级| 91av久久| 国产精品夫妻自拍| 黑人巨大精品欧美一区二区小视频| www亚洲视频| 污片在线免费观看| 久久久噜噜噜久久中文字幕色伊伊| 国产精品免费福利| 国产无遮无挡120秒| 粗大黑人巨茎大战欧美成人| 91色在线porny| 国产精品综合不卡av| 国语对白一区二区| 欧美v亚洲v| 国产精品久久久久一区二区三区| 岛国视频一区| 中文在线字幕免费观| 欧亚一区二区| 精品久久久久久久久中文字幕| 在线观看成人av电影| 免费视频中文字幕| 精品一区二区三区在线| 日韩国产精品一区| 潘金莲一级淫片aaaaaaa| 天堂在线视频中文网| 麻豆91精品视频| 欧美一区二区.| 国产一级一片免费播放| 欧美巨大丰满猛性社交| 亚洲综合一区二区精品导航| 欧美aaa在线观看| 午夜国产一级| 亚洲中无吗在线| 在线观看国产精品91| aaaaaav| av网站在线免费观看| 国产午夜亚洲精品不卡| 欧美日韩在线一区二区三区| 自拍亚洲色图| 99久久.com| 久久精品国产欧美亚洲人人爽| 黄色激情小视频| 操喷在线视频| 欧美色视频日本高清在线观看| 欧美精品久久久久久久久久久| 日本黄视频网站| 视频一区欧美精品| 成人黄色在线观看| 亚洲精品字幕在线观看| 欧美日韩国产高清电影| 一区二区av在线| 三上悠亚在线观看视频| 中日韩脚交footjobhd| 色天使色偷偷av一区二区| www.涩涩涩| 宅男视频免费在线观看视频| 91女厕偷拍女厕偷拍高清| 亚洲高清不卡一区| 日本jizzjizz| 久久成人久久鬼色| 国产精品一区二区三区观看| 亚洲区小说区图片区| 真实国产乱子伦精品一区二区三区| 欧美精品videofree1080p| 国产精品久久久久久99| 日韩一区二区三区高清在线观看| 亚洲国产黄色片| 午夜影院黄色片| 亚洲精品**中文毛片| 欧美日韩国产综合久久 | 欧美午夜美女看片| 亚洲欧美自拍另类日韩| 久蕉依人在线视频| 亚洲乱码中文字幕| 男人的天堂日韩| 美州a亚洲一视本频v色道| 亚洲精品久久7777| 久久久久国产精品熟女影院| 亚洲热app| 一区二区激情小说| 日日躁夜夜躁aaaabbbb| www.亚洲视频| 欧美性猛交xxxx乱大交| 在线播放国产视频| 国产蜜臀一区二区打屁股调教| 在线免费不卡电影| 欧美做受高潮中文字幕 | 污的网站在线观看| 黄网站免费在线观看| 婷婷一区二区三区| 久久国产激情视频| 免费在线午夜视频| 色综合久久中文字幕| 在线观看av中文字幕| 性欧美18xxxhd| 精品粉嫩超白一线天av| www.av免费| 伊人精品久久| 欧美久久精品午夜青青大伊人| 中文字幕乱码中文字幕| 综合国产在线| 99在线视频播放| 日本成片免费高清| 91美女在线观看| 欧美日韩在线中文| 91在线视频| 91精品国产综合久久福利软件| 欧美乱大交做爰xxxⅹ小说| 精品一区二区三区中文字幕在线 | 特级xxxxx欧美| 久久99这里只有精品| 永久免费精品视频网站| 精东影业在线观看| 欧美日韩视频免费播放| 国产全是老熟女太爽了| 日本一区影院| 久久久亚洲影院你懂的| 亚洲热在线观看| 国产高清一区日本| 免费av观看网址| free性欧美hd另类精品| 精品乱人伦小说| 亚洲午夜18毛片在线看| 亚洲国产精品综合久久久| 成人av电影免费| 丁香视频免费观看| 午夜久久福利影院| 丰满少妇高潮一区二区| 亚洲一区二区三区在线免费| 性欧美视频videos6一9| 久久久免费网站| www.亚洲色图| 国产精品区在线| 欧美va视频| 久久久久久久久久久免费精品 | 国产一区网站| 亚洲free嫩bbb| 成人网18免费看| 午夜电影一区二区三区| 少妇高潮在线观看| 精品久久久久久久久久久下田| 91免费版网站在线观看| 黄网在线播放| 欧美日韩高清一区二区不卡| 欧美成人精品欧美一级乱黄| 亚洲国产日本| 8x8ⅹ国产精品一区二区二区| 国产精品久久久久久福利| 亚洲剧情一区二区| 99热这里只有精品1| 国产在线观看免费一区| 免费看黄色一级大片| 日本黄色一区| 国产激情久久久| 天天草天天操| 欧美性猛交xxxx乱大交退制版| 久久久久亚洲av无码专区| 亚洲无线视频| 青青在线视频免费观看| 成人bbav| 欧美一区二区三区免费视| 黄色大片免费观看| 欧美性猛交xxxx富婆| 中文在线第一页| 黑人巨大精品欧美黑白配亚洲| 亚洲视频第二页| 粉嫩av一区二区| 国产一区喷水| 淫片在线观看| 久久精品国产久精国产一老狼| 国产麻豆麻豆| 欧美日韩国产一区二区| 日本在线免费观看| 日本欧美一区二区在线观看| 男人搞女人网站| av日韩在线播放| 精品中文字幕人| 高清免费电影在线观看| 色综合视频一区中文字幕| 猛性xxxxx| 欧美日韩成人一区| 国产欧美日韩成人| 2020国产精品自拍| av免费播放网站| 亚洲国产国产亚洲一二三 | 黄色免费网站视频| 欧美色偷偷大香| 国产成人a人亚洲精品无码| 久久综合九色综合欧美就去吻 | 欧美激情三级| 国产精品免费观看高清| 毛片在线看网站| 性欧美办公室18xxxxhd| 日韩男人天堂|