• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

大神帮忙看一下SPWM波生成程序(51单片机)

帮忙看一下哪里出问题了,仿真总是出不来

 #include

unsigned char xdata x[]={255  , 256  , 255  , 256   ,255  , 256 ,  255  , 256  , 255   ,256  , 255 ,  256  , 255  , 256  , 256  , 256  , 256  , 256  , 256   ,256  , 256  , 255 ,  256 ,255  , 256  , 255  , 256  , 255  , 256 ,  255  , 256  , 255  , 256 ,  255  , 256  , 255  , 256  , 255  , 256  , 255  , 256  , 255 ,  256  , 255   ,256  , 255 ,256  , 255  , 256  , 255  , 256  , 255  , 256  , 255  , 256   ,255  , 256  , 255  , 256   ,255  , 256  , 255  , 256  , 255 ,  256  , 255  , 256  , 255 ,  256 ,255  , 256  , 255  , 256  , 255  , 256  , 255  , 256  , 256   ,256  , 256  , 256   ,256   ,256  , 256  , 255  , 256  , 255  , 256  , 255 ,  256  , 255  , 256,  255  , 256  , 255   ,256    };unsigned char xdata a[]={53  , 248   , 60 ,  235  ,  74 ,  221 ,   87  , 208  , 101  , 195  , 114  , 182 ,  126  , 169  , 139  , 157   ,151   ,145 ,  162 ,  134  , 173 ,  123 ,  184   ,113 ,  194 ,  103  , 203  ,  94  , 212  ,  86 ,  220  ,  78 ,  227  ,  71 ,  233 ,   65  , 239  ,  60 ,  244  ,  56  , 248 ,   52  , 251 ,   49 ,  253  ,  48   ,254  ,  47  , 255   , 47 ,  254 ,   48 ,  253  ,  49 ,  251  ,  52  , 248  ,  56 ,  244 ,   60  , 239  ,  65  , 233  ,  71 ,  227  ,  78 ,  220 ,   86 ,  212 ,94  , 203  , 103  , 194  , 113  , 184  , 123 ,  173  , 134 ,  162 ,  145   ,151  , 157  , 139  , 169  , 126  , 182 ,  114 ,  195  , 101  , 208  ,  87 ,  221  ,74  , 235  ,  60 ,  248  };

unsigned int i,j,k,m,l;

sbit L1=P0^5;sbit L2=P0^1;

void init(){

i=0;k=0;j=0;

TMOD=0x01;

TL0=256;TH0=256;

EA=1;

ET0=1;

TR0=1;

L1=0;L2=0;

}

void main(){

init();

while(1);

}

void timer0() interrupt 1 using 2

{

TL0=a[i];

TH0=x[i];

i++;

if(k)L1=~L1;

elseL2=~L2;

if(i==96)  {i=0; k=~k; }

}

全部回复(12)
正序查看
倒序查看
tyjunaaa
LV.2
2
2015-08-10 16:44
unsigned char 最大值255 是这个原因吗
0
回复
cryuncle
LV.1
3
2015-08-12 15:10
@tyjunaaa
unsignedchar最大值255是这个原因吗
额, 就算数字小也没有用啊,它输出的波形跟我赋值的数据就没有关系,不懂为啥
1
回复
2016-02-09 12:10
@cryuncle
额,就算数字小也没有用啊,它输出的波形跟我赋值的数据就没有关系,不懂为啥
你把p0.1和p0.5改成p1.0和p1.1
0
回复
MRLE
LV.1
5
2017-07-09 21:11
兄弟你这组数据是哪来的啊
0
回复
w88888888
LV.1
6
2017-07-31 16:39
汇编没问题,结果仿真是错的
0
回复
ruohan
LV.9
7
2017-08-01 08:49
@w88888888
汇编没问题,结果仿真是错的

能产生吗,,将一下

0
回复
慕青
LV.1
8
2017-08-03 10:19
@ruohan
能产生吗,,将一下
同求
0
回复
2017-08-03 14:52
用有PWM功能的单片机吧,这个软件做的做出来用不到没有什么意义
0
回复
mimimi_2
LV.1
10
2018-09-06 10:07

你好,你的SPWM波形表是咋生成的,我单片机还稍微有点了解,可最近就是这个SPWM表,让人痛苦不堪

0
回复
mimimi_2
LV.1
11
2018-09-06 11:13
@MRLE
兄弟你这组数据是哪来的啊
我买了个软件
1
回复
mimimi_2
LV.1
12
2018-09-06 17:29
@MRLE
兄弟你这组数据是哪来的啊
0
回复
STARTJACK
LV.1
13
2019-02-13 23:08
@mimimi_2
你好,你的SPWM波形表是咋生成的,我单片机还稍微有点了解,可最近就是这个SPWM表,让人痛苦不堪
老哥弄懂SPWM表了吗,求教啊,我也懵了好多天
0
回复