1.1课:怎么看原理图之GPIO和门电路
(1)GPIO和门电路:输入输出引脚,三极管,上拉下拉电阻,与或非门等等
(2)协议类接口(双方约定信号的协议,双方满足时序要求)
<1>UART:
<2>IIC
<3>SPI
<4>NAND:
怎么设置时序:
(1)看2440手册,确定能设置什么参数;
(2)看外设手册,入nandflash,确定取值;
(3)计算,看2440,看看怎么计算,看看参数的含义;
<5>LCD:
VClock:电子枪 没来一个时钟移动一个信号;
HSYNC:水平方向换行(同步)信号;一行320个点
VSync:垂直方向的同步信号;240行后调回第一行
VD0~VD23:数据,RGB等等;
DE:数据使能;
视频数据从哪来?
分配一个显存SDRAM。将数据扔给信号线,打出来,再去取;不断循环。
怎么设置时序?
1.弄清2440能设置哪些值,这些值得含义是什么。
2.看LCD手册,弄清楚这些值取什么值。
3.计算,这些值是以多少个时钟为单位的,这些值是多少秒,换算成是多少时钟,再将这些时钟也写入2440寄存器中。
<6>总结协议类:
连线,不说了;
理解代码,弄清楚数据怎么传输?各引脚怎么配合;
设置时序:2440发出的各个信号,要让外界的芯片能反应过来;
(1)看2440手册弄清楚能设置哪些参数,这些参数的含义;(以CLK为单位)
(2)看外设芯片手册,弄清楚这些参数的取值范围;(以秒为单位)
(3)根据前两条计算2440的寄存器取值;
注:关于设计时序,通过时序写程序在第二期视频也有详细讲到,后续继续关注,韦老大的书中各个章节也有讲每种硬件的配置等等内容。
(3)类似内存的接口
<1>NOR,SDRAM,网卡,(书第六章讲的很详细,再详细的时序图第二期有讲)
<2>不同位宽外设的接线,访问过程(16或者32位的外设访问时不同)
<3>怎么确定访问地址,设置内存控制器
Q1:地址线,数据线上接有众多的设备,怎么样做到只访问其中一个,其他的不受影响?
A1:每一个芯片都有自己的片选引脚,访问之前,CS信号都设置低电平(低电平有效),其他的芯片CS拉高。
Q2:CS是否需要手工来设置?
A2:不需要。2440内有一个内存控制器,CPU访问某个地址时,CPU发出地址信号给“”“内存控制器”,内存控制器根据该地址决定让哪一个CS输出低电平。见书P88上方的表,访问每个存储器,CPU的内存控制器的寄存器的地址是不同的