用CH372做U盘,程序如何写?高手请进!高分!!

用CH372做U盘,程序如何写?高手请进!高分!!,第1张

#pragma NOAREGS //禁止编译器使用绝对寄存器寻址,一定要加上#include <REG52.H> //51单片机头文件#include "CH375INC.H" //CH372/CH375头文件 ///////////////////丛衡//////////////////////////////说明: CH372总线地址// 采用别的方式,地址另外设定///////////////////////////////////////////////unsigned char volatile xdata CH375_CMD_PORT _at_ 0x03F1 unsigned char volatile xdata CH375_DAT_PORT _at_ 0x03F0/*********************延时程序********************/////////////////////////辩芹/////////////////////////函数:delay2us//说明:延时2us//入口:无//返回:无/////////////////////////////////////////////// voiddelay2us( ) { unsigned char i for ( i = 2i != 0i -- ) }/////////////////////////////////////////////////函数:delay50ms//说明:延时50ms//入口:无//返回:无///////////////////////////////////////////////voidDelay50ms( ) { unsigned char i, j for ( i="200"i!=0i-- ) for ( j="250"j!=0j-- ) }/*********************基本读写程序********************/////////////////////////////渗灶做/////////////////////函数:CH375_WR_CMD_PORT//说明:写USB命令//入口:unsigned char cmd:待写入命令//返回:无///////////////////////////////////////////////void CH375_WR_CMD_PORT( unsigned char cmd ){delay2us() CH375_CMD_PORT=cmd delay2us() }/////////////////////////////////////////////////函数:CH375_WR_DAT_PORT//说明:写一字节USB数据//入口:unsigned char dat:待写入一字节数据//返回:无///////////////////////////////////////////////void CH375_WR_DAT_PORT( unsigned char dat ){ CH375_DAT_PORT=dat } /////////////////////////////////////////////////函数:CH375_RD_DAT_PORT//说明:读一字节USB数据//入口:无//返回:从CH372/CH375读一字节数据///////////////////////////////////////////////unsigned char CH375_RD_DAT_PORT( void ){ return( CH375_DAT_PORT ) } /*********************初始化和中断服务程序********************//////////////////////////////////////////////////函数:CH375_Init//说明:CH372/CH375初始化//入口:无//返回:无///////////////////////////////////////////////voidCH375_Init( ) { /* 设置USB工作模式, 必要 *** 作 */unsigned char i CH375_WR_CMD_PORT( CMD_SET_USB_MODE ) //设置USB工作模式CH375_WR_DAT_PORT( 2 ) //设置为内置固件模式for ( i="100"i!=0i-- ){ /* 等待 *** 作成功,通常需要等待10uS-20uS */if ( CH375_RD_DAT_PORT( ) == CMD_RET_SUCCESS ) break } /* 下面启用USB中断,CH372/CH375的INT#引脚可以连接到单片机的中断引脚,中断为低电平有效或者下降沿有效,如果不使用中断,那么也可以用查询方式,由单片机程序查询CH372/CH375的INT#引脚为低电平 */IT0 = 0/* 置外部信号为低电平触发 */IE0 = 0/* 清中断标志 */EX0 = 1 /* 允许CH372中断,假定CH372的INT#引脚连接到单片机的INT0 */} /////////////////////////////////////////////////函数:mCh375Interrupt//说明:CH372/CH375中断程序//入口:无//返回:无///////////////////////////////////////////////void mCh375Interrupt( ) interrupt 0 using 1 { unsigned char i, length unsigned char data buffer[64] unsigned char InterruptStatus CH375_WR_CMD_PORT( CMD_GET_STATUS ) //获取中断状态并取消中断请求 InterruptStatus = CH375_RD_DAT_PORT( ) //获取中断状态//采用边沿触发的外部中断请求,CPU在相应中断后,自动清除中断标志switch ( InterruptStatus ){ case USB_INT_BUS_RESET1: //USB总线复位{ break}case USB_INT_BUS_RESET2: //USB总线复位{ break}case USB_INT_BUS_RESET3: //USB总线复位{ break}case USB_INT_BUS_RESET4: //USB总线复位{ break}case USB_INT_EP0_SETUP: {//端点0 的接收器接收到数据,SETUP 事务成功,内部固件模式时不需要处理break}case USB_INT_EP0_OUT:{//端点0 的接收器接收到数据,OUT 事务成功,内部固件模式时不需要处理break }case USB_INT_EP0_IN:{ //端点0 的发送器发送完数据,IN 事务成功,内部固件模式时不需要处理break }case USB_INT_EP2_OUT://批量端点/端点2接收到数据,OUT成功{ //从当前USB中断的端点缓冲区读取数据块,并释放缓冲区 CH375_WR_CMD_PORT( CMD_RD_USB_DATA ) length = CH375_RD_DAT_PORT( ) /* 首先读取后续数据长度 */ for ( i = 0i <lengthi ++ ) buffer[ i ] = CH375_RD_DAT_PORT( ) //接收数据包 /* -----------测试数据正确性,将接收到的命令包数据返回给PC机----------- */ CH375_WR_CMD_PORT( CMD_WR_USB_DATA7 ) /* 向USB端点2的发送缓冲区写入数据块 */ CH375_WR_DAT_PORT( length ) /* 首先写入后续数据长度,回传刚接收到的数据长度 */ for ( i = 0i <lengthi ++ ) CH375_WR_DAT_PORT( buffer[ i ] ) /* 数据返回,由计算机应用程序测试数据是否正确 */ /* ------------------------------------------------------------------------------------------------------ */ break } case USB_INT_EP2_IN: //批量端点/端点2发送完数据,IN成功{ CH375_WR_CMD_PORT( CMD_UNLOCK_USB ) //释放当前USB缓冲区break } default: { CH375_WR_CMD_PORT( CMD_UNLOCK_USB ) break } } }/////////////////////////////////////////////////函数:main//说明:主程序。对CH372初始化,对USB进行读写及其他程序//入口:无//返回:无///////////////////////////////////////////////main( ) { Delay50ms( ) CH375_Init( )//对CH375/CH372初始化EA = 1 //允许中断while(1)}

亲,您好,冬季设置取暖温度,先打开电源,选中冬季模式,按向上温度就上升,按下温度就下降。当壁挂炉出水温度达到设定温度时会自动停止工作,然后进入待机状态。若壁挂炉内部水的温度下降时,壁挂炉又会重新点火加热。夏季使用壁挂炉只要将壁挂炉切换到夏季1、调节壁挂炉内各部件的运行。2、控制锅炉燃烧状态。3、记录运行参数(温度、时间段、运行模式)。4、电路板分低压部分、高压部分。低压部分负责控制与调节,高压部分负责点火。电路板的名称有:线路板,PCB板,铝基板,高频板,厚铜板,阻抗板,PCB,超薄线路板,超薄电路板,印刷(铜刻蚀技术)电路板等。电路板使电路迷你化、直观化,对于固定电路的批量生产和优化用电器布局起重要作用。电路板可称为印刷线路板或印刷电路板,英文名称为(Printed Circuit Board)PCB。 希望我的解答对您有所帮助啦, 最后再次祝您身体健康,心情愉快!!!

浏览更多不如直接问

美的壁挂炉主板程序调整方法

在线

5926位答主在线答

服务保障

专业

响应快

马上提问

40345人对答主服务作出评价

回答切中要害 老师态度很好 回答专业迅速 回答很耐心认真 大平台保障,服务好 回答切中要害 老师态度很好 回答专业迅速 回答很耐心认真 大平台保障,服务好

抢首赞

分享评论

凯阅 家用壁挂炉燃气冷凝天然气暖气地暖洗浴采暖两用炉 电阻壁挂3U无线Wi-Fi(白色) 8到12千瓦

¥1289 元¥1999 元

购买

京东广告

燃气炉壁挂炉-京东咐斗锋居家好货,新人价低至0.01,又潮又实用!

燃气炉壁挂炉-京东居家,新客享福利,低价好物集结,品类齐全,畅选无忧,来这买准没错!

北京京东世纪贸易有限公司广告

美的壁挂炉主板程序调整方法

西西老师1A

累计解决1000单

美的壁挂炉主板程序调整方法您衡晌好 亲 长按“设置”+“+”键进入参数设定,时钟显示区域显示当前设置状态的代码和参数。比例阀最大火力调节“PH”、比例阀最小火力调节“PL”、比例阀点火力调节“PI”、采暖销源回差温度设定“CH”、升温保护“dU”、温度变化保护“UU”、温度变化保护时间“dd”、背光延时时间设定“BL”,进入设定相关参数状态,按“+”“-”键调节相对应状态的大小,设定好参数后按“设置”键进入下一状态设定。 希望可以帮到您哦,谢谢!祝您生活愉快!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12229484.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存