·上一文章:编码器、译码器位的扩展及应用
·下一文章:SST89E58RD2单片机在增强系统抗干扰性能方面的应用
2.6 串口通信接口
MAX232实现RS232与TTL电平的转换,使PC机与单片机传输信息。如果传输距离超过RS232要求的距离,可在两者之间增加RS232/RS485转换模块,则达到RS485的传输要求。
3 系统软件设计
整个软件设计分为显示和通信两部分。软件设计语言采用汇编语言和Keil C51语言。在C8051F系列自带的IDE编程环境结合Keil环境实现显示功能。通信部分上位机部分则直接在PC机VC++环境下实现。
3.1 显示部分
显示部分采用动态扫描方式,实现汉字、图像、数字字符等数据信息的控制以及显示等功能。采用行扫描方式,当选通第1行LED点阵时,对应列数据,由于74HC595器件的特殊性,通过将每个器件的串行数据输入引脚14(SER)与下一个器件的串行数据输出引脚9(Q'H)级联,可以把需要显示的数据信息依次存入74HC595器件内,通过其锁存器功能将数据锁存,待40列数据都存入74HC595器件内时,把输出有效引脚13(OE)置为低电平,则40列数据一起输出,达到一行显示的效果。依次类推,实现整个显示屏的显示功能。
显示部分的设计还要考虑最示方式和显示状态等。显示方式有上移、下移、左移、右移等,其实现取决于从数据存储区中取出数据放入显示缓冲区时取数的顺序,左右移每次取出中位数据,上下移则每次取出1行数据。显示状态则要考虑到显示数字的移动速度和停留时间等。
一般程序中将数据存储器分为显示缓冲区、数据存储区和接收缓冲区3部分。接收缓冲区存放PC机传给单片机要显示的数据;经处理后按一定规律存储在数据存储区;再根据显示方式依次从数据存储区中取出数据放入显示缓冲区中显示。图为4为显示部分程序流程。