找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4950|回复: 0
打印 上一主题 下一主题
收起左侧

ARM 流水灯C语言

[复制链接]
跳转到指定楼层
楼主
ID:83710 发表于 2015-6-26 23:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include"2440addr.h"    //定义了各个特殊功能寄存器地址和名称,要使用必须调用该头文件
/*=== 如果不调用该头文件,必须把要使用的定义名称和地址语句在主程序前声明
#define rGPBCON    (*(volatile unsigned *)0x56000010)//Port B control
#define rGPBDAT    (*(volatile unsigned *)0x56000014)//Port B data
#define rGPBUP     (*(volatile unsigned *)0x56000018)//Pull-up control */   
/*  自定义简单延迟程序  */
int delay(int times)
{
    int i;
    for(i=0;i<times;i++);
    return 0;
}

/*  主程序  */
void xmain(void)     //主函数名称与主函数入口地址对应,在2440init.s中有定义
{                    //不能随意写成main,或者Main等,要查看在2440init.s文件(见下图)


        rGPBCON |=0x3fc00;                 //GPB5-8  able output
        rGPBCON &=0x15400;              //GPBCON两位管理GPBDAT的方向(见下面对应关系,00-in,01-out, 10-other,11-无用);
         // 方向控制GPBCON            d21d20    d19d18 d17d16   d15d14d13d12   d11d10 d9d8   d7d6  d5d4   d3d2  d1d0
         // 输入输出sfr GPDAT            d10            d9         d8           d7        d6           d5       d4        d3      d2       d1      d0   
        rGPBUP  |=0x1e0;                     //disable GPB5-8 pull up res,GPBUP一位管一位,0-链接上拉电阻,1-关闭上拉电祖



while(1)
    {

             rGPBDAT|=0x1e0;//GPB7 output 0
             rGPBDAT&=0xeff;      
             delay(50000000);//调用汇编语言编写的延时程序

             rGPBDAT|=0x1e0;//GPB7 output 0
             rGPBDAT&=0xf7f;      
             delay(50000000);//调用汇编语言编写的延时程序


             rGPBDAT|=0x1e0;//GPB7 output 0
             rGPBDAT&=0xfbf;      
             delay(50000000);//调用汇编语言编写的延时程序

             rGPBDAT|=0x1e0;//GPB7 output 0
             rGPBDAT&=0xfdf;      
             delay(50000000);//调用汇编语言编写的延时程序


    }
}



下图是不调用相关文件,但使用的sfr必须定义


下图是不定义sfr,但必须使用头文件2440addr.h,由于头文件2440addr.h中的设置在Def.h和Option.h中进行了设置,所以,调用2440addr.h必须调用后两者。否则编译出错!






分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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