查看UART在硬件上的信息,阅读JZ2440原理图可以看到: JZ2440开发板的UART0是可以跟USB相接的,用于打印调试,UART1,UART2两个串口用来外接模块.所以本文仅对UART0进行操作. 从上图可以看到,UART0的TXD0和RXD0对应GPH2和GPH3,硬件上获取的信息大概就就是这些,接下来对芯片手册的UART部分进行分析: 首先需要设置UART0的TXD0和RXD0引脚,对应的GPHCON,GPHDAT,GPHUP寄存器见下图: GPHCON: 将GPH2和GPH3分别设…
本文是对韦东山嵌入式第一期学习的记录之一,如有您需要查找的信息,可以继续往下阅读. 想要用按键点亮LED灯,就需要知道按键和LED灯的相关信息,这样才可以进行之后的操作.阅读JZ2440的原理图,可以得到以下信息(见下方图片) JZ2440开发板用到了S2,S3,S4三个按键,nLED1,nLED2,nLED4三盏LED灯,它们对应的寄存器位分别是: 按键:S2(EINT0)——GPF0 S3(EINT2)——GPF2 S4(EINT11)——GPG3 LED:  nLED1——GPF4 nLE…
想要修改ARM芯片的时钟,需要去查询芯片手册和原理图,获取相关的信息(见下方图片) 首先来看时钟的结构图 根据结构图可以看出,时钟源有两种选择:1. XTIpll和XTOpll所连接的晶振 2. EXTCLK引脚外接一个时钟源 OM[3:2]用来选择到底使用哪个时钟源 再查看原理图,可以发现:OM3和OM2硬件上都是接GND,所以可以知道:采用12MHz晶振作为时钟源 阅读芯片手册,还可以查询到其他寄存器的相关信息,见下图: JZ2440内部使用三种时钟: FCLK: 用于ARM920T芯片,即…
一.下载源码:ftp://ftp.denx.de/pub/u-boot/ 二.初始化编译: ①新建一个单板: cd board/samsung/ cp smdk2410 smdk2440 -rf   cd ../../include/configs/ cp smdk2410.h smdk2440.h       修改boadrs.cfg : 复制2410一行,并改为2440 make , 烧写调试. ②make menuconfig      #根据自身需求进一步配置 ③修改Makefile ,…
一.下载U-boot源码:ftp://ftp.denx.de/pub/u-boot/ 二.uboot的启动过程: 部分硬件初始化——>加载完整uboot到RAM——>跳转到第二阶段入口开始执行,整个过程最重要的两个文件: /arch/arm/cpu/arm920t/start.S,涉及到特定硬件设备的读写寄存器操作以及特定体系结构的汇编语言(中断.时钟等). board/samsung/smdk2440/lowlevel_init.S,完成底层的初始化(内存控制器等). 具体流程如下: 1 s…
凡走过必留下痕迹,学点什么都会有用的. 本系列博文总结了自己在学习嵌入式Linux编程过程中的收获,若有错误,恳请指正,谢谢! --参考教材韦东山系列教材 bootloader 是一个用于启动linux内核的C程序,为了达到最终启动内核的目的需要完成以下几个步骤: step1:硬件相关初始化,为启动内核准备硬件平台: step2:将内核从NAND FLASH读取到SDRAM: step3:设置需要传递给内核的启动参数: step4:跳转到SDRAM,运行内核: 下面将详细讲述各个步骤细节: 第一…
<Node.js开发实战详解>学习笔记 ——持续更新中 一.NodeJS设计模式 1 . 单例模式 顾名思义,单例就是保证一个类只有一个实例,实现的方法是,先判断实例是否存在,如果存在则直接返回,若不存在,则创建实例对象,并将实例对象保存在静态变量中,当下次请求时,则可以直接返回这个对象实例,这就确保了一个类只有一个实例对象.举个例子吧~一间学校刚刚起建还没有图书馆,有的同学就向领导提意见:"hey! 哥们,能不能帮我们建一个图书馆? "(想要一个图书馆实例),然后领导说:…
title: Jz2440开发板熟悉 tags: ARM date: 2018-10-14 15:05:56 --- 概述 外部晶振为12M Nand Flash 256M,Nor Flash 2M,SDRAM 32*2=64M 分区 内容 Nand flash地址分配 bootloader分区 Uboot分区 0---256k 环境变量分区 环境变量(参数) 256k---256k+128k kernel 分区 Linux内核 256k+128k-256k+128k+2M Rootfs分区 根…
上一节学习了使用Cocos2d-x播放音乐的方法,但是那种方法一般只适合于播放较大的音乐,而一般比较短小的音乐(如游戏中的打斗.按键音效等)则要通过playEffect来播放.本节使用该方法以及之前学到的菜单按钮的用法,制作了一个简单的“钢琴”游戏,其中部分代码如范例3-8所示,完整代码详见源文件本章目录下的ChapterThree06项目. [范例3-8 利用Cocos2d-x实现简单的钢琴] #include "HelloWorldScene.h" #include "S…
<Cocos2d-x游戏开发实战精解>学习笔记1--在Cocos2d中显示图像 <Cocos2d-x游戏开发实战精解>学习笔记2--在Cocos2d-x中显示一行文字 之前的内容主要都是介绍如何在屏幕上显示图像,事实上除了图像之外,音乐的播放也可以被理解为一种显示的方式,本节将学习在Cocos2d-x中播放声音的方法. (1)在HelloWorld.h中对HelloWorld类进行如下定义: class HelloWorld : public Cocos2d::Layer { pu…