-
前言:首先简单介绍一下外界干扰对单片机的2点影响:(1)异常复位在刚上电或外部复位引脚为复位电平时,单片机系统进入一个预定的状态——复位状态。在复位状态下,控制寄存器的值是确定的,而数据寄存器的值是随机的,程序计数器也被赋予一个确定的值。但多数情况下控制寄存器的初始值并非我们需要的,不确定的数据寄存器的值也是无法使用的,需要初始化把它们设置成一个预期的、确定的且安全的状态。初始...[详细]
-
这里简单介绍一下STM32的中断分组:STM32将中断分为5个组,组为0~4,最多设置16个中断优先级。该分组的设置是由SCB-AIRCR寄存器的bit10~8,来定义的,具体分配关系表如下:第0组:所有4位用于指定响应优先级第1组:最高1位用于指定抢占优先级,最低3位用于指定响应优先级第2组:最高2位用于指定抢占优先级,最低两位用于指定响应优先级第3组:最高3位用...[详细]
-
解决办法很简单,如下:首先就是有没有编译,编译之后有没有报错,有错会导致无法下载,然后安装下面步骤选中USE...[详细]
-
1引言随着科学研究对图像采集的要求日益提高,对号码图像采集系统的存储量、速度都提出了越来越高的技术要求。为了实现号码图像的自动读取,以前采用CCD图像传感器加显示器推出新型高集成视频解码/解交织和缩放系统方案。视频解码芯片SA7113实现号码图像的采集,经过数据缓存器FIFO后存入外扩的随机存储器RAM中,图像的截取是通过可编程逻辑器件CPLD来实现的。虽然该种方法实现了图像的截...[详细]
-
/****************************************Copyright(c)*********************--------------FileInfo------------------------------------------------**Filename:main.c**LastmodifiedDate:2011/04...[详细]
-
通过修改输出的pwm波的频率来达到不同的音频单片机源程序如下:#includestm32f10x.h#includeled.h#includedelay.h#includesys.h#includetimer.h#defineproport10000//Tclk/(psc+1)=72000000/(7199+1)#defineL1(...[详细]
-
矩阵键盘,Proteus提供了多种矩阵键盘,有计算器,电话机,以及自定义的布局,封装多个按键更形象生动。为了理清内部连线图,还是使用按键进行搭建。再讲矩阵键盘的原理前,还是讲讲为什么用矩阵键盘?当按键数量很多时,为了节约IO的资源,通常会将按键排列成矩阵形式,每个按键通过行和列来识别,例如8个IO可识别4*4=16个按键,比直接驱动8个按键多了一倍。原理1-反转扫描法:默认状...[详细]
-
一:STM32F030控制蜂鸣器定时响(1)main.c中:u16StartTime=0;voidmain(){ StartTime=500;//蜂鸣器响的时长 SPEEK(1);}voidSPEEK(u8num){TIM_Cmd(TIM2,ENABLE);//开启时钟}(2)hardware_conf.h中:#defineSpeak(tmp...[详细]
-
使用的是stm32f103rct6.最近在写一个单定时器捕获4路pwm波的程序,那就必须在中断函数中改变检测边沿,通过手动记录捕获值来手动计算pwm的频率和脉宽值。网上也有很多相关程序,但是我在写的时候却碰到了一个对于初学者来说非常不起眼的问题,导致结果怎么都不对:如图中所示,我正在用TIM4_CH1,因为看见其他的结构体都是自己定义一边再使用的,于是我将‘TIM_TypeDef’这个结构...[详细]
-
对51单片机内存的认识,很多人有误解,最常见的是以下两种①超过变量128后必须使用compact模式编译实际的情况是只要内存占用量不超过256.0就可以用small模式编译②128以上的某些地址为特殊寄存器使用,不能给程序用与PC机不同,51单片机不使用线性编址,特殊寄存器与RAM使用重复的重复的地址。但访问时采用不同的指令,所以并不会占用RAM空间。...[详细]
-
//定时器2通道2输入捕获配置//arr:自动重装值//psc:时钟预分频数voidTIM2_CH1_Cap_Init(u32arr,u16psc){GPIO_InitTypeDefGPIO_InitStructure;TIM_TimeBaseInitTypeDefTIM_TimeBaseStructure;TIM_ICInitTypeDefTIM2...[详细]
-
1什么是中断在生活中经常会遇到这样的情况:正在书房看书时,突然客厅的电话响了,人们往往会停止看书,转而去接电话,接完电话后又回书房接着看书。这种停止当前工作,转而去做其他工作,做完后又返回来做先前工作的现象称为中断。单片机也有类似的中断现象,当单片机正在执行某程序时,如果突然出现意外情况,它就需要停止当前正在执行的程序,转而去执行处理意外情况的程序(又称中断子程序),执行处理完后又接着...[详细]
-
P1口的字节地址为90H,位地址为90H~97H。对P1口的操作,可以采用字节操作,也可以采用位操作。复位以后,口锁存器为1。 例:在下图中,P1.0~P1.3作为输出线,接指示灯L0~L3。P1.4~P1.7作为输入线接四个开关K0~K3。 例1的子程序采用字节操作指令将开关状态送指示灯显示,Ki闭合,Li亮。 例1KLA:MOVA,P1 SW...[详细]
-
从单片机起,watchdog就是必不可少的.在各种应用环境中,程序很可能跑飞或死掉,这时候就需要通过watchdog来保证整个系统重新恢复到正常状态.照旧,给出s3c2440的datasheet说明:概述:watchdogtimer用于由于噪声或者系统错误引起的程序跑飞了的情况下恢复处理器的正常操作.它可以被用作一个可以请求中断服务的普通16bit的内部定时器.wat...[详细]
-
在GD固件库的时钟配置函数里看到这样一段神秘代码,研究分析后不得不佩服原厂固件库里的细节处理:查看定义是一段代码,对AHB2分频后延时了一段时间:在这段代码后面可以看到程序将RCU_CFG0和RCU_CFG1两个时钟寄存器做了复位:如果是程序复位启动后第一次执行这段代码,应该是没有什么意义的,但产品设计时一般都会有一个BootLoader和APP两段程序,当BootLoade...[详细]