L结构处理器编程及应用 《第一版》
长沙理依信息科技有限公司
二OO六年十月
前言
L结构处理器是采用新型体系结构(L计算机处理器体系结构)的、具有多任务处理功能的系列嵌入式处理器的总称,统称为LSSP,可广泛用于生产过程控制、自动检测、数据采集与处理、科技计算、商业管理和办公室自动化等方面。它除了具有体积小、重量轻、可靠性高、通用性强等优点外,尤其是极具特色的快速多任务处理可广泛用于卫星定向、汽车火花控制、音频与视频控制、交通自动管理、微波炉控制、中央空调控制、温控和湿控等专用控制上。
L结构处理器所构成的计算机应用系统特点是:
L结构处理器芯片所构成的应用系统有较大的可靠性。
系统扩展和系统配置规范,容易构成各种规模的应用系统。
构成极具特色的多任务计算机系统,相当多的测试和控制功能由软件实现,故具有很强的柔性特点.有优异的性能价格比。
目前的嵌入式处理器应用技术是使用嵌入式处理器和可编程逻辑器件相结合构成的新一代电子应用技术,这是工程应用技术发展的一个新趋势,L结构处理器正是这种新技术的最佳结果。选择L结构处理器就意味着选择了最新技术。
现有的L结构处理器是字长为16位的嵌入式处理器,其最具特色是不用中断而用事件触发;不用软件编程形成的时间复用方式的多任务而用芯片内部硬件自动实现的多道程序并发机制来完成多任务的处理。
为了让编程人员掌握L结构处理器应用系统软件编程和设计,编写了本分文档,为了节省篇幅,突出重点,对于L结构处理器的结构和基本原理不作介绍。
文档共分成7部分:
第1部分强调L结构处理器的软件设计要点。
第2部分介绍多任务设计方法。介绍了不相关联的多个任务分别通过相应的道程序并发执行各个任务;对于具有相同的程序段,只是程序参数和运算结果不同时,分解成多个任务由各个道程序并发运行;子程序在多任务情况下的调用、0道程序的处理及数据存储单元的分配。
第3部分介绍了多道程序运行时的同步和互斥问题。用了一个背包加密和解密设计项目,通过11个步骤,用数据标志位或同步标志位控制道程序之间的同步和互斥。
第4部分介绍了外部事件的处理。6个外部事件与通过外部事件激活的道程序的处理方式中,给出了同一个外部事件多次激活道程序的执行程序,阐述了多个外部事件多次激活道程序的方法。
第5部分介绍了系统硬件接口程序。包括人机对话通道接口程序如键盘、显示器及计数/定时器等接口程序。
第6部分总线设计介绍了几种常用的总线标准及芯片接口程序。如I2C接口程序、SPI接口处理程序及一总线接口处理程序等。
第7部分为通用软件设计方法。介绍了程序语言编写方法,L结构处理器的汇编语言编程技巧等。
由于作者开发设计L结构处理器应用软件的时间不长,文档中的错误与不妥之处在所难免,敬请谅解且请批评指正。
目录
一、程序设计的要点 3
二、最简硬件系统及其软件设计框架 3
1、硬件系统最简构成方案 3
2、软件设计最基本框架 3
三、多任务 3
1、不相关联的多任务 3
2、相同的运算程序段用多道程序处理 3
3、子程序在多道程序中的调用 3
4、多任务处理应以0道程序为基准 3
5、多任务中应建立好道程序的存储数据区和共享数据区 3
四、多道程序间的同步与互斥 3
一)、多道程序同步与互斥 3
1. 由私人密钥产生公开密钥 3
2. 加密 3
3. 解密 3
4. 程序流程及密钥求解 3
5. 同步方式与互斥方式细化多道程序的任务 3
6.启动0道程序且数据初始化同时分发各道程序 3
7.1~30道程序中的同步与互斥处理 3
8.输入明文 3
9. 同步并发1~15道加密程序 3
10. 同步并发16~30道解密程序 3
11. 输出明文 3
二)、设置同步标志位 3
1.同步标志初始化 3
2.加密后开启同步标志 3
3.同步标志启动解密道程序 3
五、事件处理 3
1、多个不同事件的处理 3
2、同一事件多次发生的处理 3
3、多个不同事件的多次发生处理 3
六、硬件接口程序设计 3
1、 定时器程序设计方法及实例 3
2、 键盘设计 3
1)、简单行列结构键盘设计 3
2)、外部事件触发定时扫描行列键盘的设计 3
3)、编码键盘 3
3、 显示程序设计方法及实例 3
1)、串行接口8位共阴极LED驱动器MAX7219与LSSP的接口电路 3
2)、段式LCD显示器与LSSP连结的驱动接口 3
七、总线标准常用芯片及程序设计 3
1、 I2C总线及接口程序设计 3
2、 SPI总线及接口程序设计 3
3、 一总线接口及程序设计 错误!未定义书签。
八、常用程序的设计方法 3
1、 程序流程图的画法 3
2、 简单程序 3
3、 分支程序 3
4、 循环程序 3
5、 查表程序 3
6、 子程序 3
7、 散转程序 3
(1)、使用转移指令表的散转程序 3
(2)、使用地址偏移量的散转程序 3
(3)、使用转向地址表的散转程序 3
(4)、使用转向地址偏移量表的散转程序 3
一、程序设计的要点
1. LSSP最多可支持32道程序的并发执行,程序道号依次为#0 - #31;
2. 0道程序应作为程序设计的基础: 启动或复位后,系统首先启动0道执行。这样在程序设计时,必须以0道程序为基础,整个程序的规划应以0道程序为基准。
3. 数据的共享:在设计多道程序中的一个主要问题是确定多道程序的数据共享,每道程序除了要完成本道的程序任务外,还要实现其它道程序之间的数据共享。在L结构处理器中,共享数据是通过定义共享数据(PD … ENDS)段实现的。
4. 0道程序负责共享数据的初始化:多道程序的共享数据一般由0道程序负责进行初始化,以保证多道程序的正常运行。
5. 0道程序根据系统设计的要求激活相应道的程序:每道程序都由0道程序激活执行,也只有0道程序才能激活其它道程序。
6. 0道程序激活某道程序后,在该道程序处于执行状态时,0道程序不得再次激活该道程序;只有当该道程序执行结束且退出后,0道程序才能再次激活该道程序。
7. 其它道程序不能激活程序。
8. 程序存储单元的区域范围为0000H—7FFF,每个存储单元为32位二进制的数。
9. 数据存储单元的区域范围为0000H—3FE0,每个存储单元为16位二进制的数。
10. 每道程序都有各自独立的16个通用寄存器。
11. 由22个特殊寄存器,用于访问外部EEPROM和RAM的地址寄存器、访问外部EEPROM和SRAM的数据寄存器、用户可编程的I/O以及Watchdog寄存器等。具体使用方式,请详见《说明书》。
二、最简硬件系统及其软件设计框架
1、硬件系统最简构成方案
LSSP芯片有100个脚位,它与AT28LV010芯片相连可组成最简的LSSP硬件应用系统。AT28LV010是一款拥有1Mbit电可擦除的只读存储器。LSSP系统每条汇编指令占32位,有220
评论