分别用汇编,汇编+C两种方式

***************************************
汇编编程led_on.s
****************************************
.text
.global _start
_start:
  ldr ro,=0x***  //要操作的寄存器地址GPFCON
  mov r1,#0x***   //要修改的寄存器值
  str r1,[r0]

ldr ro,=0x***  //要操作的寄存器地址GPFDATE
  mov r1,#0x***   //要修改的寄存器值
  str r1,[r0]
  
  
main_loop:
  b main_loop

***********************
makefile

led_on:led_on.s
 arm_linux_gcc     -g -c led_on.s -o led_on.o.
 arm_linux_ld      -Ttext 0x00000000 -g led_on.o -o led_on_elf
 arm_inux_objcopy  -o binary -S led_on.bin led_on_elf
clean:
 rm -f led_on_elf led_on.bin *.o

******************************************
汇编和c混合编码crto.s  led_on_c.c
******************************************
.text
.global _start
_start:
  ldr ro,=0x53000000  //禁止看门狗
  mov r1,#0x0
  str r1,[r0]
  
  ldr sp,=1024*4      //设置堆栈
  bl main
main_loop:
  b main_loop

*************************
#define  GPFCON   ***    //需要操作的寄存器地址
#define  GPFDAT   ***

int main()
{

GPFCON=0x00000;
 GPFDAT=0x10000;

return 0;
}
************************
makefile
led_on_c.bin : crt0.S  led_on_c.c
 arm-linux-gcc -g -c -o crt0.o crt0.S
 arm-linux-gcc -g -c -o led_on_c.o led_on_c.c
 
 arm-linux-ld -Ttext 0x0000000 -g  crt0.o led_on_c.o -o led_on_c_elf
 
 arm-linux-objcopy -O binary -S led_on_c_elf led_on_c.bin
 
 arm-linux-objdump -D -m arm  led_on_c_elf > led_on_c.dis
clean:
 
 rm -f led_on_c.dis led_on_c.bin led_on_c_elf *.o

JZs3c2440裸板程序GPIO操作总结的更多相关文章

  1. 【arm学习】我的第一个裸板程序

    初学ARM感觉写个裸板程序还真的不容易,可能是没有用到ADS,keil之类的开发平台的缘故吧.编译,链接过程在linux平台上完成,这样学起来更有实感,还能顺便熟悉linux环境,以及命令,何乐而不为 ...

  2. 6410裸板程序,led、蜂鸣器、按键…

    //***************************************************************** //作者:昊天 // //功能:在ok6410板子上跑裸板程序, ...

  3. 第8课.第一个ARM裸板程序(点亮led)及申引

    1.原理图 2.芯片手册 3.几条汇编代码 1.ldr:读内存 ldr R0, [R1] 假设R1的值是x,读取地址x上的数据(4字节),保存到R0中 ldr R0, =0x12345678 (4字节 ...

  4. 【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)

    作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42239705  参考博客 : [嵌入式开发]嵌入式 开发环境 (远 ...

  5. Mini2440 通过 SPI 操作 OLED (裸板下使用 SPI 控制器)

    在裸板下使用 SPI 的话,有两种方法可选: 使用 IO 口模拟 SPI 进行操作 使用 SPI 控制器进行操作 这里我们选用控制器的方式,简单方便. 初始化 SPI static void SPIC ...

  6. ARM裸板开发:04_MMU 链接地址与运行地址不一致时,(SDRAM)初始化程序地址无关码问题的分析

    ARM裸板开发过程,程序的链接地址设置为为0x30000000,而前期的启动代码以及相关硬件的初始化代码需要在内部iRAM(steppingstone,起始地址0x0)的4K中运行.链接地址与运行地址 ...

  7. RK3399/NanoPC-T4开发板使用/sys/class/gpio操作外接GPIO设备-【申嵌视频-RK3399篇】

    实验2:RK3399/NanoPC-T4开发板使用/sys/class/gpio操作外接GPIO设备,比如外接一个LED模块,通过GPIO1_A0管脚 1 介绍   LED模块   Matrix-LE ...

  8. iTOP-4412 开发板的 GPIO 是怎么操作的?

    Exynos4412 全部的 GPIO 都有固定的地址,为了方便操作这些 GPIO.Linux 内核 在 gpio-exynos4.h 里面定义了一些 GPIO 的宏.比如: #define EXYN ...

  9. S5PV210裸板驱动:启动

    以往2440和6410的启动方式,只要我们把裸板代码烧写到NAND FLASH的开始位置,当开发板上点启动时,处理器会自动从NAND FLASH上拷贝前面一段的代码到内部的RAM中执行.按照以前的方法 ...

随机推荐

  1. 转载:JMS-ActiveMQ浅析

    ActiveMQ 即时通讯服务 浅析 一. 概述与介绍 ActiveMQ 是Apache出品,最流行的.功能强大的即时通讯和集成模式的开源服务器.ActiveMQ 是一个完全支持JMS1.1和J2EE ...

  2. sqlite3把字段为int32(用c++的time(nullptr)获取的)的秒数显示为年月日时分秒

    select id, type, msg, datetime(updateTime, 'unixepoch', 'localtime') from ServerLog

  3. 利用python进行数据分析 (学习笔记)

    第一章:准备工作 1.重要的Python库 (1)NumPy:Python科学计算的基础包.功能有:

  4. 在ubuntu上搭建turnserver

    这边文章的目的:搭建turnserver,设定开机启动 1.下载turnserver的源码,最新的地址https://code.google.com/p/rfc5766-turn-server/ no ...

  5. dbms_job.submit 单次执行

    DBMS_JOB.SUBMIT用于定时任务,基本用法如下: DBMS_JOB.SUBMIT(:jobno,//job号                                      'yo ...

  6. EF 用CallContext上下文管理

    public class ObjectContextFactory { private static CIK_NewsEntities context; public static DbContext ...

  7. c#多播委托

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cons ...

  8. corefile的设置与使用

    一.简介 corefile是Linux下程序崩溃时生成的文件,可以用来分析程序崩溃的原因,因为它内部包含了程序崩溃时的堆栈信息. 二.corefile的设置 默认情况下,程序崩溃是不会生成corefi ...

  9. 通用的linux下安装配置svn独立服务

    参考资料: http://www.blogjava.net/zhouf/articles/251476.html http://www.cnblogs.com/thinksasa/archive/20 ...

  10. 源码安装python

    编译安装新版本python 一般来说python是linux系统的标配,但是版本一般却很老,而系统上面的很多服务可能与老的python存在依赖关系,我们又不能直接卸载.所以一般,我们可以在一个单独的目 ...