51翻转速度有这么慢吗?

2020-02-01 16:17发布

本帖最后由 hongli3154 于 2013-1-23 12:23 编辑

单片机最小系统(24M)程序如下:
#include<reg52.h>
sbbit l=P1.0
void main()
{
         while(1)
{
            l=!l;

}
}
用示波器测只有333k。(电源曾经接反过一次难道是被烧坏了?STC的片子)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
wgui
1楼-- · 2020-02-02 20:40


sbit P1_0=P1^0;

void main()
{
while(1)
{
P1_0=0;
P1_0=1;
}
}


stc12c5a60s2/24m可输出2M以上,示波器实测。
wx85105157
2楼-- · 2020-02-02 21:02
 精彩回答 2  元偷偷看……
woshigeshuai
3楼-- · 2020-02-03 00:29
本帖最后由 woshigeshuai 于 2013-1-25 13:08 编辑

LZ的代码转换成汇编应该就是
WHILE:
       CPL      P1.0        ; 1周期
       AJMP    WHILE     ; 2周期
3+3 =一个频率 ,一个频率时间是6*(12/24)=3us  注:24是晶振

1秒=1 000 000us 除以3=333333.33333
laodangong
4楼-- · 2020-02-03 02:54
本帖最后由 laodangong 于 2013-1-25 14:29 编辑
woshigeshuai 发表于 2013-1-25 13:04 LZ的代码转换成汇编应该就是 WHILE: CPL P1.0 ; 1周期
ajmp 是三个时钟吧?

一周热门 更多>