打印

Atlys开发板FPGA Design Flow LAB4的KPSM3程序

[复制链接]
1846|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
星星之火红|  楼主 | 2012-10-24 23:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这个程序的主要目的是执行一个回送测试(loop back test),然后将“Xilinx Rules”这个字符串显示在PC上的超级终端上。
因为只能8位8位的发,所以需要写好多次。
首先是端口定义:
CONSTANT switch_in        , 00    ; Switch read port
CONSTANT leds_out         , 01    ; LED write port
CONSTANT uart_data_rx     , 02    ; UART receive read port
CONSTANT uart_data_tx     , 03    ; UART transmit write port
CONSTANT data_present     , 04    ; UART stat read port, lsb
CONSTANT buffer_full      , 05    ; UART stat read port, lsb

其次是将对应的asiii码写入端口(58696C586E782052756C6573)
cold_start:     LOAD     s0, all_clear     ; zero out reg s0
                LOAD     s1, ascii_X       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_i       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_l       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_i       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_n       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_x       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_SPACE   ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_R       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_u       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_l       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_e       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_s       ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_EXCLAIM ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_CR      ;
                OUTPUT   s1, uart_data_tx  ;
                LOAD     s1, ascii_LF      ;
                OUTPUT   s1, uart_data_tx  ;
补充:因为program.psm开头预定义了端口地址,所以这里直接用它的名字就行了,上次做的那个程序有点麻烦了,可以改成

loop:           INPUT    s1, switch_in     ; read switch state
                OUTPUT   s1, leds_out    ; write it to leds

相关帖子

沙发
shang651| | 2012-10-24 23:33 | 只看该作者
谢谢分享啊。哈哈。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

101

主题

1782

帖子

22

粉丝