久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
stc8a8k單片機+編碼器控制PWM輸出測試程序
[打印本頁]
作者:
stlong
時間:
2021-7-7 12:01
標題:
stc8a8k單片機+編碼器控制PWM輸出測試程序
stc8a8k單片機+AB相編碼器控制PWM輸出測試程序,
#include "stc8.h"
#include "intrins.h"
//測試工作頻率為11.0592MHz
//sfr INTCLKO = 0x8f;
#define EX2 0x10
#define EX3 0x20
#define EX4 0x40
#define CYCLE 30000
int val = 0;
int val1 = 200;
int val2 = 5;
bit dir = 0;
bit ccw = 0;
bit cw = 0;
void PWM_init(void);
void exint_init(void);
/*****************************************************************/
void Delay100us() //@11.0592MHz
{
unsigned char i, j;
_nop_();
_nop_();
i = 2;
j = 15;
do
{
while (--j);
} while (--i);
}
void Delay500us() //@11.0592MHz
{
unsigned char i, j;
_nop_();
_nop_();
i = 6;
j = 93;
do
{
while (--j);
} while (--i);
}
/**********************************************************************/
void exint_init() //外部中斷初始化
{
// IT0 = 0; //使能INT0上升沿和下降沿中斷
IT0 = 1; //使能INT0下降沿中斷
EX0 = 1; //使能INT0中斷
// IT1 = 0; //使能INT1上升沿和下降沿中斷
// IT1 = 1; //使能INT1下降沿中斷
// EX1 = 1; //使能INT1中斷
INTCLKO = EX2; //使能INT2下降沿中斷
//INTCLKO |= EX3; //使能INT3下降沿中斷
//INTCLKO |= EX4; //使能INT4下降沿中斷
// EA = 1;
}
void PWM_init() //PWM初始化設置
{
P_SW2 = 0x80;
PWMCKS = 0x00; // PWM時鐘為系統時鐘
PWMC = CYCLE; //設置PWM周期為
PWM0T1 = 0x0000;
PWM0T2 = 0x0001;
//PWM0CR = 0x88; //使能PWM0-P1.0輸出
//PWM0CR = 0x80; //使能PWM0-P2.0輸出
PWM0CR = 0x90; //使能PWM0-P6.0輸出
PWM1T1= 0x0000;
PWM1T2= 0x0001;
//PWM1CR = 0x88; //使能PWM1-P1.1輸出
//PWM1CR = 0x80; //使能PWM1-P2.1輸出
PWM1CR = 0x90; //使能PWM1-P6.1輸出
PWM2T1 = 0x0000;
PWM2T2 = 0x0001;
//PWM2CR = 0x88; //使能PWM2-P1.2輸出
//PWM2CR = 0x80; //使能PWM2-P2.2輸出
PWM2CR = 0x90; //使能PWM2-P6.2輸出
PWM3T1 = 0x0000;
PWM3T2 = 0x0001;
//PWM3CR = 0x88; //使能PWM2-P1.3輸出
//PWM3CR = 0x80; //使能PWM2-P2.3輸出
PWM3CR = 0x90; //使能PWM2-P6.3輸出
PWM4T1 = 0x0000;
PWM4T2 = 0x0001;
//PWM4CR = 0x88; //使能PWM4-P1.4輸出
//PWM4CR = 0x80; //使能PWM4-P2.4輸出
PWM4CR = 0x90; //使能PWM4-P6.4輸出
PWM5T1 = 0x0000;
PWM5T2 = 0x0001;
//PWM5CR = 0x88; //使能PWM5-P1.5輸出
//PWM5CR = 0x80; //使能PWM5-P2.5輸出
PWM5CR = 0x90; //使能PWM5-P6.5輸出
PWM6T1 = 0x0000;
PWM6T2 = 0x0001;
//PWM6CR = 0x88; //使能PWM5-P1.6輸出
//PWM6CR = 0x80; //使能PWM6-P2.6輸出
PWM6CR= 0x90; //使能PWM6-P6.6輸出
PWM7T1 = 0x0000;
PWM7T2 = 0x0001;
//PWM7CR = 0x88; //使能PWM7-P1.7輸出
//PWM7CR = 0x80; //使能PWM7-P2.7輸出
PWM7CR = 0x90; //使能PWM7-P6.7輸出
P_SW2 = 0x00;
PWMCR = 0xc0; //啟動PWM模塊
//EA = 1;
}
/*************************************************************/
void main()
{
// P0M0 = 0x00; P0M1 = 0x00; //設置P0.0~P0.7為雙向口模式
// P1M0 = 0xff; P1M1 = 0x00; //設置P1.0~P1.7為推挽輸出模式
// P2M0 = 0x00; P2M1 = 0xff; //設置P2.0~P2.7為高阻輸入模式
// P3M0 = 0xff; P3M1 = 0xff; //設置P3.0~P3.7為開漏模式
// P4M0 = 0xff; P4M1 = 0xff; //設置P4.0~P4.7為開漏模式
// P5M0 = 0xff; P5M1 = 0xff; //設置P5.0~P5.7為開漏模式
// P6M0 = 0xff; P6M1 = 0xff; //設置P6.0~P6.7為開漏模式
// P7M0 = 0xff; P7M1 = 0xff; //設置P7.0~P7.7為開漏模式
exint_init();
PWM_init();
EA = 1;
PCON = 0x02; //MCU進入掉電模式
_nop_(); //掉電喚醒后立即進入中斷服務程序
_nop_();
while (1)
{
if(P36==0)
{
val+=val2;
Delay500us();
if (val >=30000) val=0 ;
}
}
}
/***********************************************************************/
void PWM_Isr() interrupt 22
{
//static bit dir = 1;
//static int val = 0;
if (PWMCFG & 0x80)
{
PWMCFG &= ~0x80; //清中斷標志
_push_(P_SW2);
P_SW2 |= 0x80;
PWM0T2 = val;
PWM1T2 = val;
PWM2T2 = val;
PWM3T2 = val;
PWM4T2 = val;
PWM5T2 = val;
PWM6T2 = val;
PWM7T2 = val;
_pop_(P_SW2);
}
}
/***********************************************************************/
void INT0_Isr() interrupt 0
{
if((P32==0)&&(P33==1)) ccw=1,cw=0;
else ccw=0;
if((P32==0)&&(P33==0)) cw=1,ccw=0;
else cw=0;
if(ccw==1)
{
val+=val1;
if (val >=30000) val=0 ;
}
if(cw==1)
{
val-=val1;
if (val <=0) val=30000;
}
}
/*
void INT1_Isr() interrupt 2
{
}
*/
void INT2_Isr() interrupt 10
{
P50=!P50;
P51=!P51;
}
/*
void INT3_Isr() interrupt 11
{
P60 = !P60; //測試端口
}
void INT4_Isr() interrupt 16
{
P60 = !P60; //測試端口
}
*/
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
日韩成人在线看
|
黄色av网站在线观看
|
成人在线免费观看av
|
一区二区三区四区毛片
|
久草欧美
|
精品日韩
|
天天夜天天操
|
国产欧美精品一区
|
最新日韩在线
|
国产午夜亚洲精品不卡
|
一区二区精品在线
|
午夜欧美日韩
|
国产福利免费视频
|
日韩国产一区二区三区
|
国产高清精品一区
|
99久久久99久久国产片鸭王
|
99re视频在线观看
|
成av在线
|
国产成人精品久久二区二区91
|
免费在线观看h片
|
仙人掌旅馆在线观看
|
91国自产
|
亚洲 欧美 日韩 在线
|
午夜天堂精品久久久久
|
福利片在线观看
|
91亚洲精
|
精品人伦一区二区三区蜜桃网站
|
欧美videosex性极品hd
|
久久高清亚洲
|
日日夜夜精品视频
|
亚洲精品高清视频在线观看
|
五十女人一级毛片
|
日韩一区二区三区四区五区
|
啪啪精品
|
亚洲九九精品
|
日韩成人免费在线视频
|
99福利
|
久久精品久久久久久
|
欧美视频一区
|
国产精品久久久久一区二区三区
|
欧美日韩网站
|