基于RlTOS和ISP功能的数字仪表系统设计与实现

[09-12 17:48:08]   来源:http://www.88dzw.com  单片机学习   阅读:8558

文章摘要:关键部分的程序源代码及注释如下:unsigned int AI)C0809(void){unsigned int wait=3;ChannelChooseA=1;ChannelChooseB=0;ChannelChooseC=0;ADStartPulse=0;ADStartPulse=1;//产生A/D转换的启动脉冲(上升沿部分)delay();//保证启动脉冲的高电平宽度至少大于100μsADStartPulse=0;//产生A/D转换的启动脉冲(下降沿部分)wait--;wait--; //指令延时以保证达到:EOC变为低电平所需的硬件迟滞要求。‘whilefADConvertEOC==0

基于RlTOS和ISP功能的数字仪表系统设计与实现,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

关键部分的程序源代码及注释如下:

unsigned int AI)C0809(void)

{

unsigned int wait=3;

ChannelChooseA=1;

ChannelChooseB=0;

ChannelChooseC=0;

ADStartPulse=0;

ADStartPulse=1;//产生A/D转换的启动脉冲

(上升沿部分)

delay();//保证启动脉冲的高电平宽度

至少大于100μs

ADStartPulse=0;//产生A/D转换的启动脉冲

(下降沿部分)

wait--;

wait--; //指令延时以保证达到:EOC

变为低电平所需的硬件迟滞要求。

‘whilefADConvertEOC==0):

return(Result);/将A/[)转换后的量化值返

回到主函数中。

}

3.2液晶显示模块

MSl2232B型图形点阵液晶显示(LCM)模块左右分为Master和Slave控制器,上下共分4页,左边列地址为0-61,右边列地址为0-61,对该器件的操作关键是按时序图正确配置好主、辅控制器的工作状态。利用AT89S52访问LCM时有二种常用的方法,即存储器映射寄存器寻址和模拟接口时序,本系统采用后一种方法。主要函数模块源代码分析:

void MasterWriteD(unsigned char Ramdata)

//向Master控制器写数据

{

ReadOrWrite=0;

InstructionOrData=1;

MasterEl=1;

P0=Ramdata;

MasterEl:0;

}

void MasterWriteI(unsigned char Ramdata)

//向Master控制器写指令

{

ReadOrWrite=0;

InstructionOrData=0;

MasterEl=1;

P0=Ramdata;

MasterE1=O;

}

void ReadState(void) //检测主、辅控制器工作状态

{

ReadOrWrite=1;

InstructionOrData=0;

MasterEl=1:

SlaveE2=1;

PO=0xff;

while(BusStateBusy==1);

}

void SetPage(unsigned char page0,unsigned char pagel)

{

MasterWriteI(0xb8 pagel);

SlaveWriteI(0xb8 page0);

}

void SetColumn(unsigned char address0,unsigned char addressl)

{

MasterWriteI(0x3f & addressl);

SlaveWfiteI(0x3f & address0);

}

//在主控制器操作的左边LCM屏上显示一列信息(由8个像素点构成)

上一页  [1] [2] [3] [4] [5]  下一页


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习

《基于RlTOS和ISP功能的数字仪表系统设计与实现》相关文章

分类导航
最新更新
热门排行