hnpdcdn
发表于 2024-12-23 22:56:43
由于等级问题,无法上传完整图片,截两个图吧
hnpdcdn
发表于 2024-12-23 22:57:35
由于等级问题,无法上传完整图片,截两个图吧
hnpdcdn
发表于 2024-12-23 23:00:40
hnpdcdn 发表于 2024-12-23 22:56
由于等级问题,无法上传完整图片,截两个图吧
hnpdcdn
发表于 2024-12-23 23:02:03
服了,图片就是发不上来,就上传为附件吧
hnpdcdn
发表于 2024-12-24 08:15:10
hnpdcdn
发表于 2024-12-24 09:08:30
hnpdcdn
发表于 2024-12-24 09:12:18
我就不信传不上来了
hnpdcdn
发表于 2024-12-24 10:02:17
第六集(上),花式点灯和之前无异,遂使用usb免冷启动代码进行更改。
isp软件更改如下,完成编译后自动下载。
1、如何用电脑串口发送时间更改闪烁速度并断电保存呢?
2、有阻塞,虽然时间很短,但是依旧是阻塞了串口,看来得学到中断才行~
272761180
发表于 2024-12-24 10:18:46
<p>给贴主认真的态度点赞!<img alt="qiang" class="emoji" src="https://www.stcaimcu.com/static/image/smiley/default/qiang.gif" title="qiang" /></p>
hnpdcdn
发表于 2024-12-24 10:27:59
第六集下——本想用for循环的,但是就循环三次,实在没必要了~
作业:
#include "ai8051u.h" //调用头文件
#include "stc32_stc8_usb.h" //调用头文件
#define FOSC24000000UL
char *USER_DEVICEDESC = NULL;
char *USER_PRODUCTDESC = NULL;
char *USER_STCISPCMD = "@STCISP#";
void dalay_ms(u16 ms)
{
u16 i;
do
{
i = FOSC/6000;
while(--i);
}while(--ms);
}
void main(void) //主函数
{
WTST=0;
CKCON=0;
P_SW2 |= 0x80; //B7位写1,使能访问XFR
P0M1 = 0x00; P0M0 = 0x00;
P1M1 = 0x00; P1M0 = 0x00;
P2M1 = 0x00; P2M0 = 0x00;
P3M1 = 0x00; P3M0 = 0x00;
P4M1 = 0x00; P4M0 = 0x00;
P5M1 = 0x00; P5M0 = 0x00;
P6M1 = 0x00; P6M0 = 0x00;
P7M1 = 0x00; P7M0 = 0x00;
P3M0 &=~0x03;
P3M1 = 0x03;
IRC48MCR =0x80;
while (!(IRC48MCR & 0x01));
USBCLK=0x00;
USBCON=0x90;
usb_init(); //USB CDC 接口配置
EUSB = 1; //使能USB中断
EA = 1; //
while (DeviceState != DEVSTATE_CONFIGURED); //等待USB完成配置
while(1)
{
P40 = 0; //SOS
dalay_ms(500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(1500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(1500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(1500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(500);
P40 = 1;
dalay_ms(500);
P40 = 0;
dalay_ms(500);
P40 = 1;
dalay_ms(500);
if (bUsbOutReady) //如果接收到了数据
{
USB_SendData(UsbOutBuffer,OutNumber); //发送数据缓冲区,长度(接收数据原样返回, 用于测试)
printf_hid("\r\nOK");
usb_OUT_done();
}
}
}