找回密码
 立即注册
楼主: ygyfy

冲哥视频 《STC32位8051单片机原理及应用》学习打卡【已送实验箱】

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:143
  • 最近打卡:2025-01-30 03:33:01

2

主题

44

回帖

667

积分

高级会员

积分
667
发表于 2024-7-9 04:51:47 | 显示全部楼层

第15集 外部中断

之前学习的定时器中断,每隔一定时间周期性地产生中断。


中断系统是为使 CPU具有对外界紧急事件的实时处理能力而设置的。



当中央处理机 CPU 正在处理某件事的时候外界发生了紧急事件请求,要求 CPU 暂停当前的工作,转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称为中断。实现这种功能的部件称为中断系统,请示 CPU中断的请求源称为中断源。
优点1:CPU 总是先响应优先级别最高的中断请求。
优点2:可以按照优先级顺序来处理,处理完高优先级,再回去处理低优先级中断。
优点3:每一个中断源可以用软件独立地控制为开中断或关中断状态。
优点4:部分中断的优先级别均可由软件设置。


外部中断就是在单片机的一个引脚上,由于外部因素导致了一个高低电平的变化,通过捕获这个变化,单片机内部自主运行的程序就会暂时中断,转而去执行相应的中断处理程序,执行完后有回到原来中断的地方继续执行原来的程序。


引脚功能为INT开头的引脚为外部中断引脚,外部中断只能在这些引脚上才可以使用。
STM32G12K128的外部中断引脚

截图202407090437126320.jpg


定时器 0/1 控制寄存器(TCON)

IT0:外部中断源0触发控制位。IT0=0,上升沿或下降沿均可触发外部中断0。IT0=1,外部中断0程控为下降沿触发方式。
IE0:外部中断0请求源(INT0/P3.2)标志。IE0=1外部中断0向CPU请求中断,当CPU响应外部中断时,由硬件清“0”IE0(边沿触发方式)
最好在exit.c中写入IE0 = 0手动清零一次,以防止上电后自动进中断误进中断一次。
EX0:外部中断0中断允许位


外部中断应用

用于紧急事件处理,如本例说,密码锁从室内按一次开关打开门;电梯的应急急停开关;机械设备的应急停止开关等。


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:45
  • 最近打卡:2025-02-14 13:39:49
已绑定手机

19

主题

273

回帖

2152

积分

金牌会员

积分
2152
QQ
发表于 2024-7-9 14:39:17 | 显示全部楼层
感谢楼主的支持!给您【免费+包邮】送 实验箱!!!期待您更多的分享!!!
QQ:1638975601
手机:19952583876(微信同号)
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:143
  • 最近打卡:2025-01-30 03:33:01

2

主题

44

回帖

667

积分

高级会员

积分
667
发表于 2024-7-10 19:14:32 | 显示全部楼层
试验箱已收到,感谢STC的支持!先回去复习之前的章节把没做的实验做好,吃透些,然后继续进行后面的学习
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:143
  • 最近打卡:2025-01-30 03:33:01

2

主题

44

回帖

667

积分

高级会员

积分
667
发表于 2024-7-10 19:16:24 | 显示全部楼层
STC芯*** 发表于 2024-7-9 14:39
感谢楼主的支持!给您【免费+包邮】送 实验箱!!!期待您更多的分享!!!
...

感谢版主和STC的支持,也在此感谢华北的石经理,我会继续学习
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:143
  • 最近打卡:2025-01-30 03:33:01

2

主题

44

回帖

667

积分

高级会员

积分
667
发表于 2024-7-13 14:38:01 | 显示全部楼层

第16集 io中断

本帖最后由 ygyfy 于 2024-7-25 03:21 编辑

stc32g系列支持所有io口中断,有四种中断模式:上升沿,下降沿,低电平,高电平。每组io口都有独立的中断入口地址,且每个io口可独立设置中断模式。说明书中说,stc12k128版芯片的普通io口下降沿和上升沿中断暂时不要使用,不知道现在可以了不。

端口中断标志寄存器 PxINTF:0,没有中断请求;1,有中断请求。

端口中断模式配置PxIM0,PxIM1

P3IM0=0X00;
P3IM1=0XFF; //设置p3口为低电平中断

0-31号中断中,13号是保留中断号,我们可借用此中断号。
中断号拓展工具在官网——软件工具——工具软件——keil中断拓展插件中下载,安装插件后可以直接调用超过31的中断号,如p3口的中断号40.

作者建议把中断程序复制到主函数里面去执行。

中断源高优先级可以打断低优先级,同一优先级中断源靠前的先执行然后再执行靠后的,一个中断源在执行的时候不能被打断。本例定时器0和p3中断优先级初始值均为00(最低级优先级)。

外部中断和io口中断的区别:外部中断只有单次触发,要么就是按下要么就是松开也就是上升下降沿或者单独的下降沿才能执行;io中断高电平或者低电平中断,可持续执行。

先写这些吧,回去慢慢学习下之前学习的内容,因为有不少,因为各种各样的原因,比如,因为冲哥只是简单提了一句,但是我没详细理解,如取反,移位,组合起来运用就不熟悉了,又如本集,主程序中,有一句LOCK_State ^=  (1<<(KEY_NUM-1));                        //获取当前是第几个按钮按下,{1-8}-》这句就没理解好,^=应该怎么理解?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:143
  • 最近打卡:2025-01-30 03:33:01

2

主题

44

回帖

667

积分

高级会员

积分
667
发表于 2024-7-25 03:18:33 | 显示全部楼层

第17集 模数转换器ADC


模数转换器是将模拟信号(如采集到的电压)转换成数字信号(0和1组成的二进制数)的电子元件。

32G12K128的外部基准电路连接在20脚。

基准电路.png


使用ADC功能时有Vref引脚的单片机Vref引脚不能悬空,必须接外部参考电压或者将其接到单片机的电源VCC。

12位ADC转换结果=4096*(ADC通道被转换的输入电压Vin/ADC外部参考源的电压Vref)

反推其被测电压Vin=12位ADC转换结果/4096*基准电压Vref

ADC口应设置为高阻输入,可通过STCAI-ISP软件进行设置P1.0口

预编译.png


关于预编译这部分不太理解,想简单写1或者0,视频之后有解释,留个记号

预编译解释.png


简单交个作业

IMG_20240725_013546.jpg


  1.   {
  2.                         Show_Tab[0] = adc_val/1000%10;
  3.                         Show_Tab[1] = adc_val/100%10;       
  4.                         Show_Tab[2] = adc_val/10%10;               
  5.                     Show_Tab[3] = adc_val%10;       
  6.                         Show_Tab[4] = ADC_CAL_Voltage(adc_val)/1000%10;
  7.                         Show_Tab[5] = ADC_CAL_Voltage(adc_val)/100%10;       
  8.                         Show_Tab[6] = ADC_CAL_Voltage(adc_val)/10%10;               
  9.                     Show_Tab[7] = ADC_CAL_Voltage(adc_val)%10;
  10.                         if(ADC_CAL_Voltage(adc_val)>=2200)
  11.                         BEEP=0;
  12.                         else
  13.                         BEEP=1;
  14.                 }
复制代码

再次感谢STC赠送的试验箱!也感谢冲哥的视频!

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:130
  • 最近打卡:2025-05-07 18:17:53

13

主题

164

回帖

375

积分

中级会员

积分
375
发表于 2024-8-27 14:57:58 | 显示全部楼层
哇塞,看到你拿到试验箱了,突然就有动力了,横不得一天肝完所有视频
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:130
  • 最近打卡:2025-05-07 18:17:53

13

主题

164

回帖

375

积分

中级会员

积分
375
发表于 2024-8-27 22:28:28 | 显示全部楼层
ygy*** 发表于 2024-6-6 19:00
补焊了两个TJA1050及其周边几个小元件做can通讯实验

can贵不贵
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:143
  • 最近打卡:2025-01-30 03:33:01

2

主题

44

回帖

667

积分

高级会员

积分
667
发表于 2024-8-28 15:52:27 | 显示全部楼层

我买了好几家的,最贵的2.5一片,TJA1050,高速CAN用。低速的1020没买
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:327
  • 最近打卡:2025-05-08 13:27:17
已绑定手机

21

主题

487

回帖

1063

积分

金牌会员

积分
1063
发表于 2024-8-30 08:14:30 | 显示全部楼层
签到曾积分
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-9 09:16 , Processed in 0.131362 second(s), 113 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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