-
在STM32参考手册的第13、14章中,都有一张定时器的框图,下面是第14章中定时器框图的局部,图中黄色框所示的是auto-reloadregister,在下面的第14.3.2节CounterModes就解释了auto-reloadregister的用法。在图中可以看到auto-reloadregister这个框有一个阴影,有些其它寄存器也有用阴影表示,如我用蓝色标出的Captu...[详细]
-
字符串转intatoi函数原型intatoi(constchar*nptr);intval=atoi(12);这样va就l等于12int转字符串itoa函数原型:char*itoa(intvalue,char*string,intradix);intnumber=123456;charstring;itoa(number,string,10);stri...[详细]
-
日前,德州仪器(TI)与国际汽车供应商Continental愉悦宣布,双方合作推出首款支持闪存技术的65纳米ARMCortex安全微控制器已投入量产。支持电子制动系统(PACE)高级控制的Continental处理器是ContinentalMK100系列电子稳定控制(ESC)系统的基础。该新近创新是过去15年中众多联合技术研发推广的汽车安全产品之一,该产品...[详细]
-
此处附上接收中断源码#ifdef_RAISONANCE_voidUSART_RX_IRQHandler(void)interrupt28#endifuint8_tcnt_USART;#ifdef_IAR_SYSTEMS_#pragmavector=30__interruptvoidUSART_RX_IRQHandler(void)#endif{/*I...[详细]
-
AT89S52型单片机介绍AT89S52是一个8位单片机,片内ROM全部采用FLASHROM技术,与MCS-51系列完全兼容,它能以3V的超低电压工作,晶振时钟最高可达24MHz。AT89S52是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。第31引脚需要接高电位使单片机选用内部程序存储器;第9引脚是复位引脚,要接一个上电手动复位电路;...[详细]
-
简单粗暴法:(直接将地址写出)利用左移简化语句:利用库函数:(先讲解一下这个库函数)之后写我们的代码(0X01是全亮一暗,稍微改动了一下):4.数组灵活操控:(先讲解单片机的数组code只读不可写用来节约内存)之后是代码:...[详细]
-
以前在伴随着开发平台的转换中,我尝试过各种各样的开发环境,而在最近一段时间的开发中我使用了VisualStudioCode来作为代码编辑器,其优异的工程管理,超快的启动速度,各种各样功能强大的插件,使我立刻爱上了这个文本编辑器。但是在开发中来来回回在编辑器和Keil等IDE之间来回切换对我造成了不少不方便,另外由于希望能够在windows下使用gcc工具链开发,所以我尝试使用插件来完整的在v...[详细]
-
今天与大家分享TQ2440裸奔程序。//=========================================//NAME:main.c//DESC:TQ2440流水灯测试程序//板载LED为PB//=========================================#defineU32unsignedint#define_ISR_...[详细]
-
数字输入/输出端口有下列特性:□每个输入/输出位都可以独立编程。□允许任意组合输入、输出。□P1和P2所有8个位都可以分别设置为中断。□可以独立操作输入和输出数据寄存器。□可以分别设置上拉或下拉电阻。一般是数字电路中讲到这个问题。当数字电路的输出端,输出低电平的时候,外接器件将把电流,“灌入”数字电路的输出端。当数字电路的输出端,输出高电平的时候,...[详细]
-
MMU是硬件对内存管理的支持,具体的,每个处理器之间或多或少有一些差异,而每个处理器的不同架构之间的实现也有差别,技术不断在进步,而实际的需求,性能的提升,使用场景的复杂化,都促使其不断的发展。MMU主要功能之一是虚拟地址到物理地址的转换,这个需要软件和硬件配合完成,软件需要针对不同的硬件进行策略。这里主要分析ARMv7-A体系架构下的MMU的基本原理。ARM官方的d...[详细]
-
8051单片机内部有两个16位的定时/计数器:T0和T1定时器用途:延时和脉宽测量读取方式:软件读取和中断公式:T(初值)=2^N-定时时间/机器周期时间机器周期时间=12/foscN:代表几位定时器,有13168位定时器定时时间:希望设定时间,例如希望设定时间是65.535,初值就是0fosc:晶振频率,一般用的多的晶振频率是12四种工作方式,在TMOD中设置...[详细]
-
当你的keil工程同时有c文件和CPP文件,那么c文件的函数在cpp文件中肯定无法访问了。正常的include“”xxx.h“”那肯定是不行的,编译会提示说c文件中函数未定义。那么只要稍微修改一下就好了。externC{#includeXXX.h}在cpp中这样包含c文件就ok了...[详细]
-
之前想用stm32的DAC输出正弦波,才用的方案是在死循环里面用for循环输出36点的电压值模拟成一个完整的正弦波。发现最多只能输出个20KHz的波形,在示波器下面能够看到明显的梯度。后来用DMA+ADC的模式发现可以上100K(不过频率有点飘),下面吧代码贴出来voidDAC_DMA_Configuration(void){DAC_InitTypeDefDAC_Init...[详细]
-
引言婴儿培养箱主要应用于早产儿、低体重儿、病危儿或发育不良的新生儿的临床医疗。在儿科的医疗护理中占有重要地位,是医院不可或缺的医疗器械。由于此类婴儿的特殊性,所以婴儿培养箱对控制精度、稳定性能和安全性都有较高要求。现今市场上的婴儿培养箱大多采用传统的PID算法。常规PID算法是过程控制中应用最为广泛的一种基本控制规律,具有稳定性高、鲁棒性好等优点。但其对时变非线性系统来说控制就难以达到很好的...[详细]
-
一、裸机开发的一般流程注意:这是假定你已经搭建好了裸机开发环境我们裸机的一般开发流程:图1-1:图1-1裸机开发流程由于在这篇文章里是体验裸机程序,所以我们跳过了1、2步骤。直接从第三步开始:二、交叉工具链的安装:在这里,我们编写的程序是要在开发板运行的,不是在pc机,所以pc机的gcc等编译器不再适用了,我们必须按照交叉工具链。由于我们的程序是要在ARM架构运行的。所以安装的...[详细]