- 打卡等级:以坛为家I
- 打卡总天数:245
- 最近打卡:2025-05-02 16:43:43
金牌会员
- 积分
- 1365
|
今日打开了STC8H_CDC汇编演示程序,根据演示程序下述几点理解不知是否有误:
1. 演示程序前面的定义和声明照搬
2. 主程序第一句长跳转到使用到的中断矢量地址区之后,参考演示程序清零0-7FH区域、设置堆栈#7FH、端口初始化等。
3. 之后开始用户程序
4. USB接收数据后自动调用"USB_OUT_CALLBACK:" 标号地址下的子程序。
5. 在子程序里用户处理接收到的数据,数量是:OUTNUMBER、USB接收缓冲区起始16位地址是:USBOUTBUFFER,(向上增加吗?)
6. USB回调子程序最后返回时:
SETB C ;返回1
RET
7. 用户通过USB-CDC发送数据按下述操作:
MOV R3,#01H
MOV R2,#HIGH sendbuffer ;发送数据缓冲区16位地址
MOV R1,#LOW sendbuffer ;发送数据缓冲区16位地址
MOV R5,sendnumber ;发送数据个数
MOV R4,#00H
LCALL _USB_SENDDATA ;调用USB-CDC发送数据
8. 还有什么遗漏的和理解错误吗?
9. 之前使用软复位语句引起死机等其它问题还会有吗? |
|