保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

采用PDIUSBD12的USB系统固件程序设计


sbit D12_int_n=P1^1;

sbit D12_eot_n=P1^2;

sbit D12_DMAck_n=P1^3;

sbit D12_DMAreq=P1^4;

void main(void)

{

unsigned char ist;

P1=0xff;

D12_COMMAND=0xf3;

D12_DATA=0x06;//设置模式0

D12_DATA=0x03;//初始化频率12MHz

D12_COMMAND=0xd0;

D12_DATA=0x80;//设置地址0使能

D12_COMMAND=0xf3;//连接主机

D12_DATA=0x16;

while(1)

{ if(!D12_int_n)

{

D12_int();

}

}

}

在编写USB的固件程序时,需要注意:

①单片机的中断应设置为电平触发;中断后一定要读上次传输状态寄存器(命令40~45H),以清除中断寄存器中的中断标志。这样,PDIUSBD12的中断输出才能变回高电平,这一点非常重要。

②在接收到Setup包后,一定要调用D8命令重新使能端口0。

③在向IN端写完数据后,一定调用命令FAH,指明缓冲区中的数据有效,可以发送到主机。

④读写数据后,一定调用命令F2H,以保证可以接收新的包。

⑤可以通过调用命令FDH,检查PDIUSBD12是否工作。该命令要读两个字节数据。

固件程序的编程是整个USB外设开发中非常重要的一环,它直接影响到设计开发的产品的数据传输速度。例如,采用不同的传输类型、设置不同的分组大小、是否采用DMA方式、传输缓冲区的大小等都会使得传输速率发生很大的变化。还有在高速情况下的超时处理等,也包含了很多的内容。

总之,在USB技术应用越来越广泛的今天,只有掌握了固件程序的编写

,才可能开发出一个好的USB产品。

《采用PDIUSBD12的USB系统固件程序设计(第4页)》
本文链接地址:http://www.oyaya.net/fanwen/view/164072.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。