首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

以前使用过F103的USB, 其中需要一个晶体管接到D+端以控制USB的在线状态。

以前使用过F103的USB, 其中需要一个晶体管接到D+端以控制USB的在线状态。

以前使用过F103的USB, 其中需要一个晶体管接到D+端以控制USB的在线状态。
首次使用F105后发现,这个晶体管没有了,但是出现了一个PA9接到Vbus的情况。
我的问题是:
1. PA9接到Vbus起到什么作用?
2. PA9可以耐受5V的Vbus输入吗?
3. USB peripheral 连接时,需要PA9接到Vbus吗?
A1
1)检测Vbus是否有电压
2)这个问题可以看数据手册
3)USB协议规定,在VBus没有电压时,不允许USB设备在D+和D-信号线上加载任何电压;检测Vbus是否有电压的目的就在与此。如果要符合USB协议的规定,就需要检测Vbus,否则不需要。
1# pingbanmoshi
本人是用汇编的,但发现操作AUXC会影响B寄存器的值,请问是什么原因?
    MOV     B, #100         ;1:
    CLR      AUXC            ;2:
    MOV     A, #250         ;3:
    DIV      AB                 ;4:
   
    CLR      AUXC            ;5:
    MOV     A, #250         ;6:
    DIV      AB                 ;7:
我采用的是16位的除法,在执行完第四句后,B的值为0x32,但执行完5句后,B的值为0x30,不知什么原因?
a1
AUXC是8bit寄存器,不是ACC, 所以 CLR AUXC变成了清除位-》CLR  F0.1
细节决定成败!
返回列表