李自成
发表于 2025-3-11 20:55:24
第12课,系统复位 4种硬复位,1种软复位, 上电复位,低压复位,复位脚,看门狗复位,Usb初始化函数,看门狗复位的寄存器WDT_CONTR = 0X34; 软件复位的寄存器IAP_CONTR = 0X20是复位模式; 0X60是USB下载模式;演示代码中,用户所有的操作都放到了计时周期函数内,程序运行时,哪怕只是按一次按钮,也在计时周期任务中。
李自成
发表于 2025-3-12 21:47:10
第13课,外部中断 主任务时,临时中断主任务,去做另一个任务。中断初始化函数void INT1_Init(void)
{
IT1 = 1; //下降沿中断
EX1 = 1; //打开中断允许
EA = 1; //打开总中断
}
中断执行函数void INT_ISR(void) interrupt 2
{
P01 = !P01;
} 在main函数中执行初始化函数
李自成
发表于 2025-3-13 11:21:13
第14课,IO中断每个端口都可设置上升或下降沿中断,还有高低电平中断,每个端口只支持一种模式,上一课是硬件中断,必须是有中断功能的端口才行,这一课是软件中断,每个端口都可以设置中断功能。端口中断初始化函数:void P3_IO_Init(void)
{
P3IM0 = 0X00; //IO中断模式设置为了下降沿
P3IM1 = 0Xff;
P3INTE= 0X08; //打开中断
}
端口中断时执行的代码:
void P3_IO_ISR(void) interrupt 40
{
u8 intf;
intf = P3INTF;
if( intf ) //判断也没有IO触发了中断
{
P3INTF = 0;
if( intf & 0x08 )//判断是否是P33按钮按下
{
passward = 1;
//P01 = !P01;
}
}
}
中断优先级设置,系统时钟也要设置优先级,
李自成
发表于 2025-3-13 21:07:08
第15课,定时器做计数器 定时器初始化函数,中断函数 中执行计数加减 结果显示任务task。先不作课后。 用最快的时间把第一遍视频过一遍,知道硬件都能实现什么功能,视频中都讲了些什么,为以后实践打基础先。
李自成
发表于 2025-3-16 22:22:16
第16课,ds18b20测温,主要难度在于读到温度数据后如何解析数据。在数码管中显示温度数据。
第17课,串口简单应用 开启单片机串口功能,如何与电脑间收发数据。
第18课,串口高级应用,先讲了校验位 后讲了串口超时中断,发送结束自动中断执行程序
第19课 模数转换器adc,模拟电压转化成数字信号
第20课,模数转换应用,adc测温,,采集输入电压,通过分压计算等方式,转换为温度
第21课,eprom存储简单数据,记录上电次数,上电读eprom某一扇区,再写入一次,
李自成
发表于 2025-3-20 11:00:02
21集后没视频了??