分别用汇编,汇编+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

转载于:https://www.cnblogs.com/summer-xwq/p/4126786.html

JZs3c2440裸板程序GPIO操作总结相关推荐

  1. 【嵌入式开发】LED 驱动 ( LED发光二极管原理 | 底板原理图分析 | 核心板原理图分析 | GPIO | 裸板程序烧写流程 )

    文章目录 开发板 的 LED 灯 作用 : 嵌入式软件的开发初期, 如 开发 BootLoader 代码 或者 Kernel 内核代码 过程中, 有效的调试方法有限, 此时通常使用 开发板上的 LED ...

  2. TQ210——TFTP裸板程序下载

    TQ210--TFTP裸板程序下载 1. 直接下载u-boot.bin到内存运行(使用DNW中的的210USB启动下载),在DNW中输入命令可以直接查看修改u-boot.bin 2. 通过tftp下载 ...

  3. 第0课第2节_刚接触开发板之烧写裸板程序

    第0课第2节_刚接触开发板之烧写裸板程序 tftp用法 q //退出菜单 help tftp print //显示IP set ipaddr 192.168.31.203 //设置开发板IP set ...

  4. tiny4412裸板程序之点灯(一)

    最近折腾tiny4412开发板,先用裸板点个灯,玩一下裸板程序,后面打算移植最新的uboot和内核到tiny4412开发板上去. 原理图中,4个led用到的是GPM4_0 - GPM4_4. 看芯片手 ...

  5. 2021-10-18使用eop烧写裸板程序

    安装串口驱动 使用串口软件MobaXterm->点Session->找到串口->选择串口->设置波特率115200->点击Advanced Serial setting- ...

  6. 使用eop烧写裸板程序步骤

    初次使用eop烧写裸板程序步骤 1.eop连接到PC. 2.安装驱动(若安装失败,则需要禁用驱动签名即可,步骤看我之前发布的文章). 3.安装App. 4.开发板连接eop,eop连接PC. 5.执行 ...

  7. 在riscv sifive u740开发板上运行FreeRTOS及裸板程序

    riscv是当前比较火热的玩意,sifive的u740开发板是当前性能还不错的板子. sifive官方提供了一个SDK,https://github.com/sifive/freedom-e-sdk ...

  8. TQ2440串口裸板程序uart0

    开发环境 系统:ubuntu 10.04.4 单板:TQ2440 编译器:arm-linux-gcc-4.3.2 搭建开发环境详见ubuntu 10.04.4开发环境配置. 目标:实现tq2440 u ...

  9. OpenJTAG调试S3C2440裸板程序

    0x00 懵逼 当你写好的初始化代码head.S和链接脚本uart.lds共同编译出来的*.bin,烧录到NandFlash中的时候,发现串口输出一片空白,这时你的想法是什么,砸电脑还是干点其他有用的 ...

最新文章

  1. 推荐一本DD刚撸完的书,顺便送一波!
  2. Arrays.sort与Arrays.parallelSort
  3. 随想录(程序调试与dll注入)
  4. Anaconda安装过程中出现InvalidArchiveError
  5. C导出接口与C++导出接口对比
  6. 3.企业应用架构模式 --- 映射到关系数据库
  7. 理解Towards Understanding Ensemble, Knowledge Distillation and Self-Distillation in Deep Learning
  8. Fiddler4 抓取Chrome浏览器的Http(s)
  9. 流程图基本图形的含义
  10. 加密WebSphere Application Server系统密码
  11. Win10如何关闭自动更新
  12. amCharts 5.2.31 Crack
  13. ps快速切图,文件命名图片自动导出
  14. 《股票作手回忆录》书中的精髓:上世纪美国最伟大的交易员杰西·利弗莫尔带给我们的交易思想精华。
  15. vue2打包兼容ie11白屏报错问题汇总
  16. YOLOv5 + Tesseract-OCR 实现车牌号文本识别
  17. stty 命令中文使用详解
  18. 浅谈Vue渐进式的理解
  19. 行为识别论文笔记|TSN|Temporal Segment Networks: Towards Good Practices for Deep Action Recognition
  20. 颜色类中英文词汇大全(5)

热门文章

  1. Node.js文件操作二
  2. poj1548Robots dfs实践
  3. jQuery中live函数的替代-【jQuery】
  4. MSSOAP与WebService
  5. AutoCAD 2010建筑土木制图高清实例视频教程
  6. 一加6手机突然没信号没服务器,如何从技术上解决手机信号问题?一加6替你想到了...
  7. mysql 表与表之间的条件比对_《MySQL数据库》关联查询
  8. linux内核中TCP接收的实现
  9. (72)FPGA模块调用(VHDL调用Verilog)
  10. linux服务器拓扑图,Linux服务器作为网关的DNS分离解析服务(CentOS 7版本)