新闻中心

EEPW首页>嵌入式系统>设计应用> 用单片机实现可编程逻辑器件的配置

用单片机实现可编程逻辑器件的配置

作者: 时间:2012-03-20 来源:网络 收藏

3.2 软件设计

在软件编程时,使用了串行口移位寄存器输入输出方式。本系统只需用到输出方式,串行数据通过RXD引脚输出,而在TXD引脚输出移位时钟。当一字节数据写入串行数据缓冲器SBUF时,就开始发送。在此期间,发送控制器送出移位信号,使发送移位寄存器的内容右移一位,直至最高位(D7位)数字移出后,停止发送数据和移位时钟脉冲。RXD、TXD时序如图3。由图3可知,它可以用来模拟时序。发送完一字节数据后,硬件置发送标志位TI为1,向CPU申请中断。若CPU响应中断,则从0023H单元开始执行串行中断服务程序。

为了提高速度,程序用汇编语言编写。上电后使nCONFIG脚由低到高复位待PLD;当判断到nSTATUS为高后,开始从外部FLASH存储器取数据串行移位。配置过程中,查询CONF_DONE。一旦为高,配置完成,但还要送40个DCLK脉冲,PLD才能进入用户工作状态。

用户设计PLD程序经MAXPLUS II或QUARTUS编译后将产生后缀后为.sof的SRAM目标文件。该文件含有除配置数据以外的控制字符,不能直接写入到PLD中去,需要利用软件的编程文件转换功能将文件转换成.rbf(Raw Binary File)十六进制文件。把.rbf文件烧写到存储器中,通过MOVX指令读入后,串行移位到PLD。

36.gif

部分asm语言源程序如下:

NCONFIG BIT P1.5

CONFDONE BIT P.6

NSTATUS BIT P1.7

ORG 000h

……

CLR SM0

CLR SM1 ;SM0,SM1为0,串口工作于方式0

CLR SM2 ;串口波特率为fosc/4

CLR REN

ANL 8EH,#0f8h ;地址8EH是CKCON单元,MD0、MD1、MD2清0



评论


相关推荐

技术专区

关闭