关于C8051F系列的简单程序

[复制链接]
3055|5
 楼主| zxx6176 发表于 2012-3-10 13:00 | 显示全部楼层 |阅读模式
大家好 我刚工作 以前学习都用的STC51单片机 现在让我用C8051感觉很不顺手
首先说下 我准备做 唤醒和正常工作之间的转换。
现在我在做实验, 想让P0^3对应的灯 亮5秒 灭5秒
一开始 我没有进行端口匹配 灯都带不亮, 后来灯亮了,我就发现,单步循环可是实现亮灭,但 程序跑起来 就不行了 完成不了我想要的。

void main()
{

   XBR2    = 0x40;     //设置 交叉开关
  while(1)
{   
P0        =  0xf0;       // 2灯亮                                       
    delay(5);     
P0        =  0xf8;       // 2灯灭                                    
    delay(5);
}

}

PS:我感觉自己的程序 交叉开关也设置了,唯一没有设置的就是晶振
OSCICN  OSCICL  这两个寄存器,想问下大家 , 怎么设置才能达到
以前STC那种板子的标准。
yewuyi 发表于 2012-3-10 13:12 | 显示全部楼层
完成不了你想的?那具体现象是什么呢?

单步调试也是程序跑起来的一种形式,你自己想想有哪些区别?
NE5532 发表于 2012-3-10 13:16 | 显示全部楼层
delay(5); 的延时多多长??
sunhq02 发表于 2012-3-10 13:22 | 显示全部楼层
你的看门狗似乎没有关
c8051是默认开狗的
ningling_21 发表于 2012-3-10 22:46 | 显示全部楼层
首先关闭内部看门狗;
另:如果延时太短了,是看不到闪灯的;
关于配置单片机,有个专门的配置软件可以用。
各个型号不同,配置也不同的。
 楼主| zxx6176 发表于 2012-3-12 15:48 | 显示全部楼层
本帖最后由 zxx6176 于 2012-3-12 15:50 编辑

您好问题已经解决了 主要是看门狗没关,现在已经开始 按照自己的思路 先亮灭3次 再灭1分钟
但新的问题出现了, 我把原来的 亮灭语句 放在子程序里 单片机只进行第一个子程序,不知道 这位大哥 有没有遇到过类似现象。 2# yewuyi
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

60

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部