嵌入式程序很大程度上要依靠自己的力量去工作。开始一个新项目时,处理熟悉编程的语法、编译环境,还要假定什么东西都没有运转起来,甚至连标准库都没有。所以嵌入式系统可能是程序员碰到的最难的计算机平台了。
嵌入式系统至少都有一个可以被软件控制的LED(发光二极管)。所以嵌入式中大量用到汇编语言。因为许多嵌入式系统,刚开始只有有限的驱动程序。下面我们来看下,和汇编有密切联系的可编程芯片。
cpu要和外设交换信息,需要通过接口芯片。目前的芯片大部分是多通道、多功能的。所谓多通道就是指一个接口芯片可以与多个外设;多功能可以通过不同的电路状态实现多种接口功能。
可编程接口芯片是指,接口电路可以由计算机指令控制的接口芯片。
例如:
8255A并行接口芯片的编程
组成:
1、数据总线缓冲器——提供数据信息(地址信息、数据信息)
2、三个8位端口PA、PB、PC——间接外设和CPU
3、控制电路——控制芯片的状态(是否选中、读、写、三个端口的选择)
编程:
初始化——规定其工作方式(那个端口输入、那个端口输出、如何复位)
具体的控制命令
应用:
键盘接口:通过行、列线找到键盘按下的具体位置。
七段LED显示器接口:可以显示7位的数码数字,PA(8位)控制位数,PB(8位)控制数码数字的高亮段数
其它芯片
8253可编程定时器/计数器
工作原理:通过两种电压相与,形成不同的计数频率
串行接口芯片
工作原理:在单条1位宽的传输线上,一位一位地按顺序分时传送