![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux裸机
Amu@123
这个作者很懒,什么都没留下…
展开
-
ADC和触摸屏
一、ADC和触摸屏介绍这节内容我们来介绍S3c2440上边的ADC和触摸屏,ADC,Analog-to-Digital Converter的缩写,是一种把模拟信号转换为数字信号的转换器,比如我们要测量接有一个变阻器的电路的电压,2可以通过ADC进行转换,把电路的模拟信号转换为方便我们阅读的数字信号,S3c2440上的ADC是一个10位的转换器,可以接收8路的模拟输入信号,触摸屏的模拟电压信号也...原创 2020-04-04 21:00:21 · 745 阅读 · 1 评论 -
LCD初步测试
1、lcd基本知识今天这篇文章来介绍使用s3c2440来操作lcd的过程,在开始之前首先来介绍关于lcd的一些概念。lcd就是我们常说的显示设备,常用的是TFT lcd和STN lcd,lcd能显示一张图片就是因为在它内部存在一个电子枪,电子枪把缓存里的数据拿出来一个一个打到显示屏上,根据显示屏的分辨率来决定发出多少数据,关于更多它内部的工作细节我们在此不去深究,了解它的大概的工作原理就...原创 2020-03-28 18:04:34 · 1947 阅读 · 1 评论 -
SPI
SPI协议是我们学习的另一个重要的协议,在之前的文章中介绍了IIC协议的基本概念以及实际编程中的一些需要注意的部分,这篇文章中就来介绍SPI协议**1、**基本介绍SPI协议也是一种主从结构,和IIC不同的是SPI协议通常有四根线对于主设备来说1、SCLK:时钟线,由主设备产生,为从设备提供时钟同步吗,一般在SCK的上升沿锁存数据2、MOSI :"从入主出",主设备的输出线,数据高位先...原创 2019-11-25 23:09:38 · 404 阅读 · 0 评论 -
IIC(三)
前面两节分别介绍了IIC协议的硬件接口和jz2440开发板上的IIC控制器,这一节就来写程序进一步熟悉IIC协议的操作过程,首先来看一下本节程序的结构1、程序结构上面的图是本节程序的结构图,采用这种分层的方式编写程序,每一层都负责具体的一部分,这使得程序的结构性紧凑,降低程序之间的耦合性,在添加新设备的时候也是非常方便的1、测试程序:测试程序它主要是提供测试菜单,并进行初始化,一般是由最上...原创 2019-11-17 14:19:55 · 176 阅读 · 0 评论 -
IIC(二)
在上一节中了解了IIC协议的基本内容和硬件接口,其实可以发现,虽然IIC控制简单(只有SCL和SDA两条线),但是IIC的控制时序还是有一点麻烦的,在使用IIC协议操作设备时有两种方式,一种使用GPIO来模拟SDA和SCL,这时候就要严格按照上一节中IIC的时序要求来操作GPIO,比如IIC协议的数据时高位先行,那么就要把要发送的数据一位一位的进行拼装,然后将SCL的gpio引脚拉低,将数据发出去...原创 2019-11-13 23:36:15 · 230 阅读 · 0 评论 -
IIC(一)
在嵌入式领域IIC协议可谓是应用的非常广泛了,有很多IIC协议的设备,而且大多数开发板上都会具备IIC总线,所以,IIC的学习可以说是必不可少的,在我使用的这款jz2440开发板上同样支持IIC设备的控制,今天就来记录一下IIC的学习过程。1、IIC协议IIC是一种设备之间用来通信的协议,IIC协议非常简单,只要操作两根线就可以操作设备,来先看看IIC的物理协议接口从图中可以看出IIC是一...原创 2019-11-13 14:07:53 · 377 阅读 · 0 评论 -
Nand flash基本操作
在本节内容中总结之前的nand flash操作,在另一篇文章中介绍了关于nor flash的一些测试,在那里简单的介绍了一下nor flash和nand flash的一些区别,这篇文章就来详细讲解一些nand flash的操作过程使用开发板:jz2440nand flash芯片:1、nand flash引脚介绍在最开始的时候先来看一下jz2440上面的nand flash原理图,这一步好像...原创 2019-11-04 11:10:45 · 1822 阅读 · 0 评论 -
nor flash操作
这一节来了解在jz2440上的nor flash的操作,jz2440上有nor flash和nand flash,这两种flash是有差别的,基本的差别如下nornand接口像内存一样,引脚较多引脚少,可以复用容量小大读操作简单,像内存一样直接读复杂,需要使用指令写操作使用命令来写(慢)使用命令来写(快)特性无位反转存在位反转,坏...原创 2019-10-25 09:50:47 · 1304 阅读 · 0 评论 -
外部中断—按键
中断时学习每一款芯片都必须去了解的机制,CPU采用中断可以节省掉轮训带来的性能损耗,关于对jz2440的外部中断的学习,在此简单进行总结1、中断框架在jz2440芯片中,所有的中断都接到了中断控制器上,当发生中断的一瞬间,中断控制器首先获得了中断源发生的中断,然后根据配置选项是否上报CPU,CPU再对这个中断进行处理,在处理的过程中会由硬件设置跳转到固定的地方进行处理,这就是中断向量表从这...原创 2019-10-21 23:01:54 · 2948 阅读 · 0 评论 -
2440SDRAM的设置
在学习了jz2440的内存控制器和一些简单的内存设备之后,这一节完成了对JZ2440的SDRAM的设置,通过学习知道了JZ2440上面的SDRAM由两个32M的芯片组成64M的1、JZ2440对SDRAM的控制2、SDRAM的配置SDRAM的电路图如下在这个图上还可以看出SDRAM使用的片选引脚为LnGCS6,查找数据手册发现如下这个在我们之后的配置中会使用到,对应于JZ2440的B...原创 2019-10-17 00:00:22 · 157 阅读 · 0 评论 -
C语言点亮LED
上一个程序我们使用汇编来编写了第一个点亮LED的程序,总的来说程序并不复杂,使用纯汇编来编写程序我们只需了解相应的汇编指令,然后去查阅原理图和数据手册来完成整个程序的编写,但是汇编程序的可读性不是那么好,所以,我们还是需要使用更加高级的程序语言来进行编程,今天,就来写一个简单的C语言控制LED的程序在写程序之前,我们需要知道几个事情1、使用C语言之前需要具备什么环境?2、如何调用C语言?3...原创 2019-10-16 15:30:15 · 2099 阅读 · 0 评论 -
JZ2440点亮一个LED灯
和"hello world"在应用程序中的地位一样,在裸机程序中,点亮一个LED的程序也同样重要,这是打开我们学习裸机编程的一个大门,现在就介绍一下我的第一个裸机程序。实验所使用的开发板为三星的JZ2440开发板,编写程序之前,需要进行第一步查看原理图查看开发板原理图上面是LED在开发板上的原理图,从图上我们可以看到三个LED灯,它们的接法都是一样的,首先LED的一侧接入的是3.3V,学...原创 2019-09-23 23:36:53 · 319 阅读 · 0 评论 -
JZ2440关于代码重定位
关于裸机程序重定位的问题,我对基于jz2440的开发板上的重定位程序进行了分析,总结以下学习过程在开始之前,先简单说一下2440开发板的两种启动过程 1、nand flash启动,将编译好的程序烧入开发板的nand flash进行启动,这时CPU内部会自动 将nand flash内部的代码前4k拷贝到CPU片内SRAM上执行,所以此时CPU执行的0地址为 ...原创 2019-08-16 17:17:19 · 241 阅读 · 0 评论 -
S3C2440时钟体系
最近在学习S3C2440开发板,学习了时钟系统,在此写写学习笔记首先从开发板的数据手册可以发现,S3C2440上面有两个PLL,都是以晶振作为时钟源的,其中MPLL作为CPU的时钟源,UPLL作为USB的时钟源,而MPLL时钟又分为三个部分,FCLK,HCLK, PCLK。其中FCLK作为CPU时钟源,HCLK作为AHB高速总线时钟源,PCLK为APB低速总线上的外设提供时钟。从上面的图中可以...原创 2019-08-05 00:33:39 · 143 阅读 · 0 评论