位置:51电子网 » 技术资料 » 单 片 机

BS2系统编程与应用实例

发布时间:2007/9/8 0:00:00 访问次数:1226

    摘要:针对BS2微功耗单片机应用系统硬件结构与指令系统的特点,以系统监控程序为例,着重分析系统程序设计方法与技巧;结合谷物流量在线测量系统,阐述BS2在实际工程中的应用。

    关键词:外围芯片 编程 数据采集 冲量传感器

在阅读了本刊2001年第10期《一种新颖的器件型嵌入式单片机系统》后,读者对BS2系统的硬件资源配置、指令系统与开发方式已经有了基本的认识,本文将从系统编程与应用的角度进一步给予详述。

一、BS2系统的变量类型与定义

BS2系统的PBASIC支持的变量类型有很特色,除了通常的字节(Byte)、字(Word)外,还有二进制位(bit)、半字节(nib),这显然既灵活又节省内存这间。比如,在使用BCD码时,用nib变量比Byte变量能节省一半内存。nib变量可以说明为数据,例如:number var nib(10)占用5个字节,可存放10个BCD码数据。PBASIC支持将端口地址定义为常量(con),再用指令对数量操作来实现端口激活、复位与数据输入/输出。与直接的I/O地址读/写相比,这种方式使程序的可读性大大改善。

通常在应用程序中首先定义系统变量。BS2系统中常用的系统端口变量定义如下:

CKL con 15 '所有SPI串行外围设备共

'享的时钟线

DATA_ con 14 '所有SPI串行外围设备共

'享的数据线

EE_CS1 con 13 'EEPROM1(U3)片选线

EE_CS0 con 12 'EEPROM0(U2)片选线

NJU_CE con 11 '时钟日历(NJU6355)允许

NJU_IO con 10 '时钟日历(NJU6355)读/写

PwrOn con $31 '外围可控电源启动

Shtdwn con 9 '外围可控电源关闭

b96 con $54 '传输速率9600bps。

二、BS2系统程序设计实例解析

1.系统初始化

程序启动运行时,通常需要执行以下初始化命令:

OUTH=PwrOn '打开外围设备电源

DIRH=$FF '设置端口高8位为输出

DIRL=$FF '设置端口低8位为输出

2.时钟/日历芯片NJU6355的访问与数据读取

NJU6355ED时钟/日历芯片包含13个BCD码存储器,分别用于存储当前的年、月、日、周、时、分、秒等信息,时间采取24小时制。时钟子程序将这13个变量转换为1个nib数组,定义为日期-时间数组DTG(13)。每个单元存放1个BCD码,其取值范围为0~9。BS2系统支持给数组下标命名,访问数组变量时可以通过下标名访问。例如:“Y10s”定义为常量1,通过DTG(Y10s)可以获得存放在DTG数组第一单元数据。日期-时间数组及下标变量定义如下:

Yls con 0 '存放“年份”个位

Y10s con 1 '存放“年份”十位

Mols con 2 '存放“月份”个位

Mo10s con 3 '存放“月份”十位

D1s con 4 '存放“日”个位

D10s con 5 '数组下标,存放“日”的

'十位数信息

Day con 6 '数组下标,存放“星期几”

    摘要:针对BS2微功耗单片机应用系统硬件结构与指令系统的特点,以系统监控程序为例,着重分析系统程序设计方法与技巧;结合谷物流量在线测量系统,阐述BS2在实际工程中的应用。

    关键词:外围芯片 编程 数据采集 冲量传感器

在阅读了本刊2001年第10期《一种新颖的器件型嵌入式单片机系统》后,读者对BS2系统的硬件资源配置、指令系统与开发方式已经有了基本的认识,本文将从系统编程与应用的角度进一步给予详述。

一、BS2系统的变量类型与定义

BS2系统的PBASIC支持的变量类型有很特色,除了通常的字节(Byte)、字(Word)外,还有二进制位(bit)、半字节(nib),这显然既灵活又节省内存这间。比如,在使用BCD码时,用nib变量比Byte变量能节省一半内存。nib变量可以说明为数据,例如:number var nib(10)占用5个字节,可存放10个BCD码数据。PBASIC支持将端口地址定义为常量(con),再用指令对数量操作来实现端口激活、复位与数据输入/输出。与直接的I/O地址读/写相比,这种方式使程序的可读性大大改善。

通常在应用程序中首先定义系统变量。BS2系统中常用的系统端口变量定义如下:

CKL con 15 '所有SPI串行外围设备共

'享的时钟线

DATA_ con 14 '所有SPI串行外围设备共

'享的数据线

EE_CS1 con 13 'EEPROM1(U3)片选线

EE_CS0 con 12 'EEPROM0(U2)片选线

NJU_CE con 11 '时钟日历(NJU6355)允许

NJU_IO con 10 '时钟日历(NJU6355)读/写

PwrOn con $31 '外围可控电源启动

Shtdwn con 9 '外围可控电源关闭

b96 con $54 '传输速率9600bps。

二、BS2系统程序设计实例解析

1.系统初始化

程序启动运行时,通常需要执行以下初始化命令:

OUTH=PwrOn '打开外围设备电源

DIRH=$FF '设置端口高8位为输出

DIRL=$FF '设置端口低8位为输出

2.时钟/日历芯片NJU6355的访问与数据读取

NJU6355ED时钟/日历芯片包含13个BCD码存储器,分别用于存储当前的年、月、日、周、时、分、秒等信息,时间采取24小时制。时钟子程序将这13个变量转换为1个nib数组,定义为日期-时间数组DTG(13)。每个单元存放1个BCD码,其取值范围为0~9。BS2系统支持给数组下标命名,访问数组变量时可以通过下标名访问。例如:“Y10s”定义为常量1,通过DTG(Y10s)可以获得存放在DTG数组第一单元数据。日期-时间数组及下标变量定义如下:

Yls con 0 '存放“年份”个位

Y10s con 1 '存放“年份”十位

Mols con 2 '存放“月份”个位

Mo10s con 3 '存放“月份”十位

D1s con 4 '存放“日”个位

D10s con 5 '数组下标,存放“日”的

'十位数信息

Day con 6 '数组下标,存放“星期几”

相关IC型号

热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!