一、利用三星已经写好的初始化文件


1。先见项目文件夹
2。建立项目保存在新建文件夹中
3。将ARM三星写好的INIT文件夹中的INC和SRC两个文件夹拖入新建文件夹中。
4。建立C文件,如LCD1602.c,编写void xmain()函数,或void xxxx()函数
5。添加SRC中的2440init到项目中来。
6。将2440init中的相应主函数入口修改为LCD1602.c中的函数xmain,这一点很重要,这样其他函数可通过添加头文件编写,否则没法执行。见下图 






二、编写自己的初始化
1。先建项目文件夹
2。再建立项目并保存在新建文件夹中(路径用英文)
3。建立 自己的初始化函数init.s。初始化文件一定要用汇编语言。至少需要下列代码(这个跟重要)
                    MPORT   name                    AREA    Init,CODE,READONLY
                    ENTRY  
                    bl  name
                    end
   注意:name一定要是主函数名,其他函数可以按照C文件的一般编写方法编写,如下列程序代码:
#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 name(int times)
{
    int i;
    for(i=0;i    return 0;
}

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


        rGPBCON |=0x3fc00;  //GPB5-8  able output,先让11 1111 11xx xxxx xxxx
        rGPBCON &=0x157ff;  //  00-in 01-out          01   0101 01xx xxxx xxxx
                                         //                             P8   P6P7 P5P4 P3P2 P1P0
                                               //                        G    G G  G x       x x  x x
while(1)
    {

             rGPBDAT|=0x1e0;//GPB8 output 0           1  111x xxxx
             rGPBDAT&=0xeff;//                                 0  111x xxxx
             delay(5);//调用汇编语言编写的延时程序 

             rGPBDAT|=0x1e0;//GPB7 output 0           1  111x xxxx
             rGPBDAT&=0xf7f;//                                 1  011x xxxx
             delay(5);//调用汇编语言编写的延时程序 


             rGPBDAT|=0x1e0;//GPB6 output 0           1  111x xxxx
             rGPBDAT&=0xfbf;//                                 1  101x xxxx      
             delay(5);//调用汇编语言编写的延时程序 

             rGPBDAT|=0x1e0;//GPB5 output 0           1  111x xxxx
             rGPBDAT&=0xfdf;//                                 1  110x xxxx       
             delay(5);//调用汇编语言编写的延时程序 


    }
}

也可继续按照下列步骤再添加
4。用添加头文件的方式把自己需要的子函数以头文件.h的方式编写,需要几个编写几个
5。编写自己的主函数,主义主函数的名称要用初始化函数中的名称。
6。将以上文件添加到项目中来。 

关键字:三星  ARM初始化 引用地址:三星2440 ARM初始化

上一篇:ARM读取DS1302汇编程序
下一篇:ARM 2440裸奔实现电子时钟

推荐阅读

片上大容量FIFO存储器和速率更快的串行接口让传感器高效工作,延长系统睡眠时间 意法半导体的LSM6DSO iNEMO™惯性测量单元(IMU)是一款整合Always-On(始终处于工作状态)3D加速度计和3D陀螺仪的系统级封装,不仅本身具有极高的能效和精确度,还能让整个嵌入式系统具有更高的能效。系统级能效的提高,两个重要特性功不可没。LSM6DSO集成一个9KB的FIFO存储...
原理:利用单片机内部的FVR稳压电源,ADC进行检测判断单片机的VDD电压是否足够,不足进行输出显示。应用:当单片机的供电是由电池供电时,可以测量单片机的供电是否足够,指示电池电量不足。实际电路测试功能可行,已经应用在具体电路上。软件:MPLAB X IDE v4.15 proteus 8.6.1、仿真电路图;2、源程序加注释。说明:1、利用PIC16F1501内部的FVR...
适合机器人的精密驱动装置由于采用直径仅22mm的直流无刷电机和内置运动控制器,机电式夹具系统也可以像气动夹具那样瞬间实现高效能。(版权所有:Schunk)当今社会离不开机器人技术。机器人技术的应用领域非常广泛,它们需要保障过程安全性、可靠性和经济效益。FAULHABER(参阅“企业介绍”)的驱动系统在满足这些要求方面发挥重要作用。它们依靠坚固耐用...
10月27-29日,中国 MEMS 制造大会暨微纳制造与传感器展览会在苏州如期举办。大会旨在汇聚全球MEMS制造产业资源,加强MEMS设计、研发、加工制造、封装测试等全产业链联动关系,促进以MEMS制造为主线的产业资源垂直整合,加速突破我国MEMS制造领域发展瓶颈。在29日召开的MEMS制造大会上,上海矽睿科技股份有限公司(以下简称“矽睿科技”)产品工程高级总...

史海拾趣

问答坊 | AI 解惑

呵呵,移动

使用了长达9年的中国移动通信服务热线1860/1861在全国31省(自治区、直辖市)统一升位,变更为10086。 升位后的10086提供话费与积分查询、业务咨询与办理、梦网业务定制关系查询与退订等多种服务。为保证客户顺利转换,6月18日后,1860/1861与1008 ...…

查看全部问答∨

中国已成世界第一光伏生产国

高交会开展以来,以光伏太阳能为代表的新能源参展项目受到不少追捧。记者在国家高新技术成果展区看到,力诺太阳 、天威保变等新能源公司展台十分热闹,昨日举行的中国太阳能光伏产学研合作联盟启动大会暨发展论坛也人满为患。   记者在现场看到 ...…

查看全部问答∨

15075040

怎样学好单片机?…

查看全部问答∨

关于AT89S52

我刚买了一个AY-USB-51F的机子,为什么会出现编程器不存在,,…

查看全部问答∨

ISD1760语音芯片SPI不能播放,独立模式可以播放

程序如下:(硬件应该没问题) SPI.H #ifndef _SPI_H_   #define _SPI_H_   #include<reg51.h>   //#include "typedef.h"   #define uchar unsigned char #define uint unsigned int #def ...…

查看全部问答∨

万利的STM3210E,请问用哪个版本的iar?

                                 我买了万利的STM3210E,请问用哪个版本的iar来测试和调试比较好?…

查看全部问答∨

【求助】已经是第6块了,我该怎么办?

这两天在拿430的F449与FG439的开发板做通讯实验。可是突然两块都烧不进程序了。 具体情况是Downloading aplication提示框消失后就弹出个红色错误提示框,说FATAL ERROR failed to write memory at 0x1100 session aborted 然后确定三个 ...…

查看全部问答∨

公司一直采用8051F和ARM系列单片机,采用下TI的试试

&nbsp; &nbsp; &nbsp; &nbsp;打算应用于低功耗的LED声光产品中,看了TI的介绍被TI的低功耗和节能吸引,在全球倡导绿色环保的大背景下,相信节能,减排,绿色,环保的产品更能深入人心。…

查看全部问答∨

大家帮我看看串口接收中断的小麻烦。。。

各位高手,有2个大麻烦: 1、下好程序后,串口有接收到数据可以跳中断,但是,第二次下程序后,就不能跳到中断处理函数了,必须重新上电后才可以重新跳中断,这是为什么尼? 2、我想用串口接收中断来接收一个字符串,以目前来看只能接收到 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved