完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include"STC12C5A60S2.h"
#include"intrins.h" #define uchar unsigned char #define uint unsigned int ***it dj1=P1^0; uint tt; uint cs; void timer0Init(); void Delay500ms(); void Delay500ms() //@11.0592MHz { unsigned char i, j, k; _nop_(); _nop_(); i = 22; j = 3; k = 227; do { do { while (--k); } while (--j); } while (--i); } void main() { Timer0Init(); while(1); { cs=20; Delay500ms(); } } void Timer0Init(void) //50微秒@11.0592MHz { AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0xD7; //设置定时初值 TH0 = 0xFD; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 } void timer0() interrupt 1 { TH0=0XFD; TL0=0XD7; tt++; if(tt>=400) { tt=0; } if(tt<=cs) { dj1=1; } else { dj1=0; } } 这样无法形成PWM波吗?? |
|
相关推荐
9个回答
|
|
初步看了一下,是可以输出的,可能占空比太小,观察不到,你的P10接的是什么?
|
|
|
|
你好 我接的是舵机信号线 采用的是jx舵机 |
|
|
|
你试一下把输出换成一个LED灯,然后主函数里CS从0到400然后400到0这样循环改变,每次隔5ms,看看LED灯是不是呼吸灯效果。 最好还是示波器看,最直观! |
|
|
|
小S咯 发表于 2017-7-19 16:34 非常感谢 我这就是试试 示波器很贵的吧。。。有软件可以模拟吗 |
|
|
|
|
|
|
|
呜呜呜 试了 果然 亮不起来 void main() { Timer0Init(); while(1); { cs=20; Delay5ms(); if(tt==0) { tt=400; } } } |
|
|
|
本帖最后由 小S咯 于 2017-7-19 17:30 编辑
你的有错,试试这样 void main() { Timer0Init(); uchar i=1; cs=0; while(1); { cs=cs+i; if(cs>=400) i=-1; if(cs<=0) i=1; Delay5ms(); } } 补充内容 (2017-7-20 08:26): while(1);多了; |
|
|
|
刚才写错了 cs=cs+i才是
|
|
|
|
while(1);多了一个分号。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
690 浏览 0 评论
735 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
624 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
1099 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
1092 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11795 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 14:22 , Processed in 0.910235 second(s), Total 91, Slave 73 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号