搜索
bottom↓
回复: 12

NEC单片机跑马灯例程

[复制链接]

出0入0汤圆

发表于 2009-4-12 13:44:53 | 显示全部楼层 |阅读模式
汇编语言写

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2009-7-9 09:17:23 | 显示全部楼层
在那里

出0入0汤圆

发表于 2009-7-24 16:50:29 | 显示全部楼层
难道这就是传说中的忽悠?!

出0入0汤圆

发表于 2009-7-31 16:17:40 | 显示全部楼层
东西呢

出0入0汤圆

发表于 2009-7-31 23:08:31 | 显示全部楼层
这种帖子不会删么?

出0入0汤圆

发表于 2009-10-9 22:04:36 | 显示全部楼层
2个月刚开始学习nec的片子的时候,逛到了此地,被忽悠了一把,此次,又被忽悠了一把。
决定将自己学习时改的demo程序发至此地,防止他人同样浪费时间无功而返。
以下程序仅仅实现了P2.2口的亮与灭。I0口输出电流。程序后附整个工程文件。可以用PM+直接打开。要安装78K0S的C编译器。
有误之处,敬请指正。
#pragma nop                           
#pragma sfr
#pragma ei
#pragma di
#pragma interrupt INTTM80 dly20ms      
void main(void);
void sysinit(void);
void debugint(void);
void hdwinit(void);
void T80Init(void);
void dly20ms(void);
void port_init(void);
void delay(unsigned int dly)
{
  while(dly>0)
    {
      dly--;
    }
}
void main(void)
{

                sysinit();
                hdwinit();
                debugint();
                port_init();
       
                NOP();
                NOP();
       
                EI();
                while(1)                          
                {
                P2=0;
                        P2.2=1;
                        delay(42000);
                P2.2=0;
                delay(42000);
                      }
}


void debugint(void)    /*     MINICUBE2  9234  must*/
{
        PM4.1 = 1;
        PMK3 = 0;
        INTM1 = 0x01;

}


void sysinit(void)   
{
          PCC=0x00;
   PPCC=0x00;                /* CPU clock*/  
   LSRCM=0x01;               /* Low-Speed internal oscillation*/
   OSTS=0x00;                /* Oscillation Stabilization Time */
}

void hdwinit(void)
{
        NOP();
        T80Init();
       
}


void T80Init(void)  
{
        TMC80 &= 0x7f;
        TMC80 &= 0x04;
        CR80 = 255;
        TMC80 |= 0x80;
        TMMK80 = 0;
}

void dly20ms(void)
{
}

void  port_init(void)
{
  PM2=0xf0;
  PM4=0xc3;
  P2=0x0f;
  P4.0=1;
}

附自己改的整个工程文件。
环境用的PM+,编译器用的78K0S C编译器。

点击此处下载 ourdev_489905.rar(文件大小:17K) (原文件名:9234CC.rar)

出0入0汤圆

发表于 2010-2-4 14:35:03 | 显示全部楼层
回复【6楼】paublo
-----------------------------------------------------------------------

To 6楼:
刚才试了试仁兄的程序,你的80有定义中断,但程序里面根本没有用到中断啊
还有 PM4=0xc3;P4.0=1; 这个你有用到吗??
你的P2.2口的亮灭好像在main函数里就已经实现了

void debugint(void)    /*     MINICUBE2  9234  must*/  
{
PM4.1 = 1;
PMK3 = 0;
INTM1 = 0x01;  

}

不明白了

出0入0汤圆

发表于 2010-3-17 14:38:23 | 显示全部楼层
MARK。。。。晚上练练。

出0入0汤圆

发表于 2010-3-24 21:24:51 | 显示全部楼层
用C吧,为什么还用ASM呢

出0入0汤圆

发表于 2010-4-9 10:45:37 | 显示全部楼层
好东西,

出0入0汤圆

发表于 2010-4-20 22:19:06 | 显示全部楼层
受教了!~~~

出0入0汤圆

发表于 2010-9-14 09:51:02 | 显示全部楼层
谢谢【6楼】的 paublo 兄弟。

出0入0汤圆

发表于 2010-9-16 16:08:19 | 显示全部楼层
学习一下呵呵
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-16 09:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表