找回密码
 立即注册
楼主: 芯Skye

《8051U深度入门到32位51大型实战视频》学习打卡

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:13
  • 最近打卡:2025-04-27 09:58:37

8

主题

37

回帖

367

积分

版主

积分
367
发表于 2025-1-23 15:48:57 | 显示全部楼层
第十三集 中断系统已手敲代码,测试通过
截图202501231548411805.jpg
任务一:按下P33,P01的LED改变原来的状态
#include "config.h"
#include "task.h"        
#include "io.h"
char *USER_DEVICEDESC = NULL;
char *USER_PRODUCTDESC = NULL;
char *USER_STCISPCMD = "@STCISP#";
void Delay3000ms(void)        //@24.000MHz
{
        unsigned long edata i;
        _nop_();
        _nop_();
        i = 17999998UL;
        while (i) i--;
}
void main(void)
{
        Sys_init();    //系统初始化
        usb_init();     //USB CDC 接口配置                              
        IE2 |= 0x80;                                   
         Timer0_Init();
         Init_595();
        INT1_Init();
        EA = 1;                                                                                       
         P40 = 0;
         while (DeviceState!=DEVSTATE_CONFIGURED);   
          while(1)
          {
        if (bUsbOutReady)                                                        
        {
        usb_OUT_done();                                                        
        }
                P00=!P00;
                Delay3000ms();        
           }
}
void Timer0_Isr(void) interrupt 1                //1毫秒执行一次
{
Task_Marks_Handler_Callback        ();    //系统计时
}
测试视频:



13.外部中断.7z

123.86 KB, 下载次数: 7

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:13
  • 最近打卡:2025-04-27 09:58:37

8

主题

37

回帖

367

积分

版主

积分
367
发表于 2025-1-24 15:06:00 | 显示全部楼层
第十四集IO中断,已手敲代码测试成功
任务一:IO中断程序,LED灯亮灭
#include "io.h"
void P3_IO_Init(void)
{   P3IM0=0X00;
        P3IM1=0X00;
        P3INTE=0X08;
}
void  P3_IO_ISR(void) interrupt 40        
{   u8 intf;
        intf=P3INTF;
        if(intf)
        {
          P3INTF=0;
                if(intf&0x08)
                {
                        P01=!P01;
                }        
                }
        P01=!P01;
  }
学习视频:

任务二:P33口显示数字1,P47显示数字2
#include "config.h"
#include "task.h"        
#include "io.h"
char *USER_DEVICEDESC = NULL;
char *USER_PRODUCTDESC = NULL;
char *USER_STCISPCMD = "@STCISP#";
void Delay3000ms(void)        //@24.000MHz
{
        unsigned long edata i;
        _nop_();
        _nop_();
        i = 17999998UL;
        while (i) i--;
}
void main(void)
{
        Sys_init();    //系统初始化
        usb_init();     //USB CDC 接口配置                              
        IE2 |= 0x80;                                   
          Timer0_Init();
                Init_595();
        //INT1_Init();
        P3_IO_Init();
        P4_IO_Init();
       EA = 1;                                                                                       
       P40 = 0;
       while (DeviceState!=DEVSTATE_CONFIGURED);   
          while(1)
          {
                if (bUsbOutReady)                                                        
        {
            //USB_SendData(UsbOutBuffer,OutNumber);

            usb_OUT_done();                                                        
        }
       Task_Pro_Handler_Callback();      //执行功能函数
        passward[0]=0;      
           }
}
void Timer0_Isr(void) interrupt 1                //1毫秒执行一次
{
    Task_Marks_Handler_Callback        ();    //系统计时

}
学习视频:

任务三:实现P33,P47口的I0中断 ,P47口中断优先P33口中断
#include "io.h"
void P3_IO_Init(void)
{   P3IM0=0X00;
        P3IM1=0Xff;
        P3INTE=0X08;      
}
void  P3_IO_ISR(void) interrupt 40        
{   u8 intf;
        intf=P3INTF;
        if(intf)
        {
          P3INTF=0;
                if(intf&0x08)
                {
                        passward[0]=1;
                }        
               
        }

}
void P4_IO_Init(void)
{   P4IM0=0X00;
        P4IM1=0Xff;
        P4INTE=0X80;
        PINIPH |=(1<<4);
        PINIPL |=(1<<4);      
}
void  P4_IO_ISR(void) interrupt 41
{   u8 intf;
        intf=P4INTF;
        if(intf)
        {
          P4INTF=0;
                if(intf&0x80)
                {
                        passward[0]=2;
                }        
        }
}
学习视频:

14.IO中断.zip (161.28 KB, 下载次数: 7)

回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-6 11:18 , Processed in 0.123182 second(s), 52 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表