
arm裸机
Ston.V
2016年一个枯槁憔悴的春天,在华科毫无目的的浪费了一年半的时间后,我终于选定了嵌入式方向。其实这选择并不是突发奇想,当年有对智能家居,物联网感兴趣,但偶然进入软件这坑爹的专业,还好大二下开了计组,操原等课程,对底层产生兴趣,再加上计算机三级考试若干方向,又加之网课老师还不错就干脆跳坑。虽前路艰辛,愿初心不改。
2021夏天,回到华科读研,存储方向,仍然是嵌入式。是深坑但已经懒得爬出来了。
展开
-
arm汇编指令
//一般ARM官方风格汇编指令为大写,windows/ADS/MDK//实际运用一般用GNU风格,为小写,linux(1)•ARM采用RISC架构,CPU本身不能直接读取内存,而需要先将内存中内容加载入CPU中通用寄存器中才能被 CPU处理•ldr(loadregister)指令将内存内容加载入通用寄存器。•str(storeregiste原创 2016-08-03 12:18:41 · 282 阅读 · 0 评论 -
arm裸机学习告一段落
在很多个月后,裸机学习终于结束了。。。。学到了很多,但总怕会忘掉很多知识点,但是若不常用,总会忘的,不如总结一下不一样的东西。在裸机开发中,很关键的是分清层次结构与寄存器操作。分清层次:例如在按键中断中,有按键层次和系统层次两种中断,使能与清中断都要分别进行;在操作一个外设时,第一步当然是初始化它,例如uart_init(),在初始化函数中初始化它的时钟,模式,,电平,开关等等原创 2016-10-27 12:02:07 · 568 阅读 · 0 评论 -
虚拟机64位linux安装交叉编译工具链不成功问题
步骤: 1,将交叉编译工具放在共享文件夹,利用cp命令转移至/usr/local/arm 2.解压:gz格式:tar -zxvf dir.tar.gz bz2格式:tar -jxvf dir.tar.bz2 3.进入./bin 目录,利用ls -l命令查看当前工具。利用./arm-none-linux-gn原创 2016-08-03 10:58:56 · 2228 阅读 · 0 评论 -
位置无关码的理解和使用
1.位置无关码:CPU取指时用相对地址取指令(比如pc +4),只要其相对地址没有变,都能够取指并运行。位置相关码:利用绝对地址取指并运行,这就需要你存放程序(链接过程中)需要按照连接脚本的要求那样执行(Makefile里面有 -Ttext xxx指定或连接脚本)。2.对于ARM启动流程,一般先将BL1下载到ROM的0地址去运行,再将整个bootloder复制到DDR中去运原创 2017-04-10 20:01:28 · 2787 阅读 · 0 评论 -
S5pv210的x210中的内存装配
1.查询s5pv210用户手册中的内存接口:DRAM0:内存地址范围:0x20000000~0x3FFFFFFF(512MB),对应引脚是Xm1xxxxDRAM1: 内存地址范围:0x40000000~0x7FFFFFFF(1024MB),对应引脚是Xm2xxxx2.实际情况在x210中:在核心板原理图上面紧接着的细节还有原创 2017-04-10 21:45:57 · 815 阅读 · 0 评论 -
0-sdram初始化阶段代码
1.C中定义操作寄存器地址:*( (volatile unsigned int *) ADDR )错误写法:1).忘记加上*2).写成 *( volatile (unsigned int * ADDR) ),会报错error: expected ')' before numeric constant。原创 2017-04-11 16:53:38 · 298 阅读 · 0 评论 -
uart,iic,spi小结
同步/异步,并行/串行,差分/电平(USB和网络通信 就是 异步,串行,差分)TTL/CMOS 电平为0-5V,高为1,低为0(芯片之间);RS232电平中-3V~-15V表示1;+3~+15V表示0。(15米,抗干扰能力强)1.串口(UART,universal asynchronous reciver and transmitter)1.1主要特性:异步,串行,电平原创 2017-09-10 18:52:04 · 490 阅读 · 0 评论